{"type":"snapshot","id":"dcf14b3aca09","ts":"2026-09-15T13:30:05+00:00","symbol":"TNON","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":"7af27459965e","ts":"2026-09-15T13:30:05+00:00","symbol":"RLGT","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":"120ac30aa960","ts":"2026-09-15T13:30:05+00:00","symbol":"IMMX","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":"d311af7e5016","ts":"2026-09-15T13:30:05+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":"08b604c22e9d","ts":"2026-09-15T13:30:05+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":"5f805a4447f2","ts":"2026-09-15T13:30:05+00:00","symbol":"ALMU","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":"21fb1217e7ed","ts":"2026-09-15T13:30:05+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":"9b446c0c8736","ts":"2026-09-15T13:30:05+00:00","symbol":"EXK","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":"d2a3977a4d94","ts":"2026-09-15T13:30:05+00:00","symbol":"STLA","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":"19bdf3fd6520","ts":"2026-09-15T13:30:05+00:00","symbol":"TGB","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":"7fc81ddd851b","ts":"2026-09-15T13:30:05+00:00","symbol":"CGNT","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":"849fc9535831","ts":"2026-09-15T13:30:05+00:00","symbol":"CXM","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":"e79159fd75f5","ts":"2026-09-15T13:30:05+00:00","symbol":"VNCE","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":"894042b1c8b4","ts":"2026-09-15T13:30:05+00:00","symbol":"BB","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":"6b8ce2ce1e12","ts":"2026-09-15T13:30:05+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":"a17324f8392a","ts":"2026-09-15T13:30:05+00:00","symbol":"SWVL","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":"e1934569b906","ts":"2026-09-15T13:30:05+00:00","symbol":"RDW","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":"04e09a3f1303","ts":"2026-09-15T13:30:05+00:00","symbol":"FLNC","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":"1c67af9bb333","ts":"2026-09-15T13:30:05+00:00","symbol":"SVRA","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":"1131cf209dd6","ts":"2026-09-15T13:30:05+00:00","symbol":"NCLH","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":"6b44c769ce00","ts":"2026-09-15T13:30:05+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":"6da7ea87b90e","ts":"2026-09-15T13:30:05+00:00","symbol":"DRVN","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":"9dc40e38368a","ts":"2026-09-15T13:30:05+00:00","symbol":"ONDS","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":"d5f28e9ad5c9","ts":"2026-09-15T13:30:05+00:00","symbol":"INFQ","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":"3352333f06d0","ts":"2026-09-15T13:30:05+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":"eb1738360836","ts":"2026-09-15T13:30:05+00:00","symbol":"AGNC","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":"b858a948df9b","ts":"2026-09-15T13:30:05+00:00","symbol":"ACHR","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":"0821d294cee9","ts":"2026-09-15T13:30:05+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":"aaa2d77adac8","ts":"2026-09-15T13:30:05+00:00","symbol":"CLSK","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":"6c6b513555ab","ts":"2026-09-15T13:30:05+00:00","symbol":"RUM","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":"699b7d46be9b","ts":"2026-09-15T13:32:05+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.24 below VWAP $6.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":6.24,"vwap":6.3119,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":4.0,"volume_pace":5.797,"trend":"negative","recent_slope_pct":-0.8774,"volatility":"high"},"price":6.24,"volume":{"bars":2,"last_bar_volume":62269.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":199,"trade_rate":6.633333,"buy_vol":10189.0,"sell_vol":11266.0,"unclassified_vol":0.0,"imbalance":-0.050198,"bid":6.18,"ask":6.27,"spread_pct":1.445783,"quote_size_imbalance":null,"quote_age_s":4.586965},"context":{"vwap":6.312325,"price_vs_vwap_pct":-1.145776,"ema9":6.323,"ema20":6.337143,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-2.5,"dist_to_hod_atr":1.611511,"atr":0.099286,"spread_atr":0.906475,"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":"b35eea1a2faf","ts":"2026-09-15T13:32:05+00:00","symbol":"RLGT","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.489,"vwap":9.4203,"ext_from_open_pct":0.41,"max_ext_allowed_pct":5.0,"volume_pace":27.545,"trend":"positive","recent_slope_pct":0.6562,"volatility":"low"},"price":9.489,"volume":{"bars":2,"last_bar_volume":72425.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":63619.0,"sell_vol":1744.0,"unclassified_vol":0.0,"imbalance":0.946636,"bid":9.42,"ask":9.5,"spread_pct":0.845666,"quote_size_imbalance":null,"quote_age_s":4.998874},"context":{"vwap":9.420133,"price_vs_vwap_pct":0.73106,"ema9":9.39,"ema20":9.376905,"ema_stack":true,"ema_warm":false,"hod":9.5,"dist_to_hod_pct":-0.115789,"dist_to_hod_atr":0.099676,"atr":0.110357,"spread_atr":0.724919,"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":"64275a9b20a0","ts":"2026-09-15T13:32:05+00:00","symbol":"NOK","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.89,"vwap":9.8488,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":3.085,"trend":"positive","recent_slope_pct":0.2029,"volatility":"medium"},"price":9.89,"volume":{"bars":2,"last_bar_volume":558816.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":335,"trade_rate":11.166667,"buy_vol":134315.0,"sell_vol":100400.0,"unclassified_vol":0.0,"imbalance":0.144494,"bid":9.88,"ask":9.89,"spread_pct":0.101163,"quote_size_imbalance":null,"quote_age_s":0.00567},"context":{"vwap":9.848192,"price_vs_vwap_pct":0.424521,"ema9":9.85954,"ema20":9.85449,"ema_stack":true,"ema_warm":false,"hod":9.8985,"dist_to_hod_pct":-0.085872,"dist_to_hod_atr":0.14192,"atr":0.059893,"spread_atr":0.166965,"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":"6942222c17e9","ts":"2026-09-15T13:32:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.89 below VWAP $5.90","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.895,"vwap":5.9046,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":5.0,"volume_pace":6.027,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.895,"volume":{"bars":2,"last_bar_volume":121907.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":162,"trade_rate":5.4,"buy_vol":16502.0,"sell_vol":20303.0,"unclassified_vol":0.0,"imbalance":-0.103274,"bid":5.89,"ask":5.9,"spread_pct":0.169635,"quote_size_imbalance":null,"quote_age_s":0.007904},"context":{"vwap":5.904573,"price_vs_vwap_pct":-0.162121,"ema9":5.895,"ema20":5.895,"ema_stack":false,"ema_warm":false,"hod":5.94,"dist_to_hod_pct":-0.757576,"dist_to_hod_atr":0.777778,"atr":0.057857,"spread_atr":0.17284,"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":"c5c775017dd0","ts":"2026-09-15T13:32:05+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.30x 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.3999,"vwap":6.369,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.295,"trend":"positive","recent_slope_pct":0.3524,"volatility":"high"},"price":6.3999,"volume":{"bars":2,"last_bar_volume":39208.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":146,"trade_rate":4.866667,"buy_vol":9702.0,"sell_vol":8057.0,"unclassified_vol":0.0,"imbalance":0.092629,"bid":6.35,"ask":6.4,"spread_pct":0.784314,"quote_size_imbalance":null,"quote_age_s":4.393175},"context":{"vwap":6.368249,"price_vs_vwap_pct":0.497009,"ema9":6.355,"ema20":6.355,"ema_stack":false,"ema_warm":false,"hod":6.45,"dist_to_hod_pct":-0.776744,"dist_to_hod_atr":0.383279,"atr":0.130714,"spread_atr":0.382514,"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":"4b906b3be497","ts":"2026-09-15T13:32:05+00:00","symbol":"EXK","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.81,"vwap":9.7781,"ext_from_open_pct":0.62,"max_ext_allowed_pct":4.0,"volume_pace":4.058,"trend":"flat","recent_slope_pct":0.0765,"volatility":"high"},"price":9.81,"volume":{"bars":2,"last_bar_volume":11748.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":35,"trade_rate":1.166667,"buy_vol":669.0,"sell_vol":4012.0,"unclassified_vol":0.0,"imbalance":-0.714164,"bid":9.8,"ask":9.82,"spread_pct":0.203874,"quote_size_imbalance":null,"quote_age_s":2.089495},"context":{"vwap":9.777271,"price_vs_vwap_pct":0.334743,"ema9":9.796,"ema20":9.795476,"ema_stack":true,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-0.203459,"dist_to_hod_atr":0.229527,"atr":0.087136,"spread_atr":0.229527,"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":"4980c1b0ef2f","ts":"2026-09-15T13:32:05+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.26","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.255,"vwap":5.259,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":3.52,"trend":"flat","recent_slope_pct":-0.0238,"volatility":"medium"},"price":5.255,"volume":{"bars":2,"last_bar_volume":31289.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":2432.0,"sell_vol":7211.0,"unclassified_vol":0.0,"imbalance":-0.495593,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.038241},"context":{"vwap":5.258958,"price_vs_vwap_pct":-0.075253,"ema9":5.258,"ema20":5.257738,"ema_stack":false,"ema_warm":false,"hod":5.27,"dist_to_hod_pct":-0.28463,"dist_to_hod_atr":0.777778,"atr":0.019286,"spread_atr":0.518519,"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":"99581e6e4938","ts":"2026-09-15T13:32:05+00:00","symbol":"TGB","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":7.89,"vwap":7.8806,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":4.0,"volume_pace":2.94,"trend":"positive","recent_slope_pct":0.0951,"volatility":"medium"},"price":7.89,"volume":{"bars":2,"last_bar_volume":7361.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":22,"trade_rate":0.733333,"buy_vol":3797.0,"sell_vol":2012.0,"unclassified_vol":0.0,"imbalance":0.307282,"bid":7.87,"ask":7.91,"spread_pct":0.506971,"quote_size_imbalance":null,"quote_age_s":0.494556},"context":{"vwap":7.88048,"price_vs_vwap_pct":0.120805,"ema9":7.878,"ema20":7.876429,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":0.45677,"atr":0.087571,"spread_atr":0.45677,"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":"17d701063fac","ts":"2026-09-15T13:32:05+00:00","symbol":"CXM","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.7486,"vwap":5.7255,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":3.778,"trend":"flat","recent_slope_pct":0.0748,"volatility":"high"},"price":5.7486,"volume":{"bars":2,"last_bar_volume":9146.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":852.0,"sell_vol":3448.0,"unclassified_vol":0.0,"imbalance":-0.603721,"bid":5.73,"ask":5.76,"spread_pct":0.522193,"quote_size_imbalance":null,"quote_age_s":2.822122},"context":{"vwap":5.725493,"price_vs_vwap_pct":0.403578,"ema9":5.74316,"ema20":5.741505,"ema_stack":true,"ema_warm":false,"hod":5.77,"dist_to_hod_pct":-0.370884,"dist_to_hod_atr":0.373892,"atr":0.057236,"spread_atr":0.524148,"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":"306bae73ecdb","ts":"2026-09-15T13:32:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.50 below VWAP $7.70","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.5,"vwap":7.7035,"ext_from_open_pct":-2.09,"max_ext_allowed_pct":4.0,"volume_pace":5.459,"trend":"negative","recent_slope_pct":-1.1572,"volatility":"high"},"price":7.5,"volume":{"bars":2,"last_bar_volume":7784.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":332.0,"sell_vol":2103.0,"unclassified_vol":0.0,"imbalance":-0.72731,"bid":7.5,"ask":7.79,"spread_pct":3.793329,"quote_size_imbalance":null,"quote_age_s":1.288168},"context":{"vwap":7.706479,"price_vs_vwap_pct":-2.67929,"ema9":7.642,"ema20":7.659286,"ema_stack":false,"ema_warm":false,"hod":7.8188,"dist_to_hod_pct":-4.077352,"dist_to_hod_atr":1.80375,"atr":0.176743,"spread_atr":1.640802,"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":"a6be742ef00c","ts":"2026-09-15T13:32:05+00:00","symbol":"BB","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":7.7401,"vwap":7.7082,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":2.599,"trend":"positive","recent_slope_pct":0.2732,"volatility":"medium"},"price":7.7401,"volume":{"bars":2,"last_bar_volume":28454.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":72,"trade_rate":2.4,"buy_vol":11494.0,"sell_vol":8580.0,"unclassified_vol":0.0,"imbalance":0.145163,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":4.467506},"context":{"vwap":7.707269,"price_vs_vwap_pct":0.425972,"ema9":7.70442,"ema20":7.701005,"ema_stack":true,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-0.640565,"dist_to_hod_atr":0.310199,"atr":0.160864,"spread_atr":0.062164,"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":"12a6c6ff61cf","ts":"2026-09-15T13:32:05+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.00 below VWAP $5.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":5.005,"vwap":5.0317,"ext_from_open_pct":-0.89,"max_ext_allowed_pct":4.0,"volume_pace":3.609,"trend":"negative","recent_slope_pct":-0.2703,"volatility":"high"},"price":5.005,"volume":{"bars":2,"last_bar_volume":105658.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":471,"trade_rate":15.7,"buy_vol":19261.0,"sell_vol":63772.0,"unclassified_vol":0.0,"imbalance":-0.536064,"bid":4.99,"ask":5.02,"spread_pct":0.599401,"quote_size_imbalance":null,"quote_age_s":2.145197},"context":{"vwap":5.032101,"price_vs_vwap_pct":-0.538558,"ema9":5.02588,"ema20":5.029138,"ema_stack":false,"ema_warm":false,"hod":5.08,"dist_to_hod_pct":-1.476378,"dist_to_hod_atr":1.251043,"atr":0.05995,"spread_atr":0.500417,"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":"bdbbc23020b8","ts":"2026-09-15T13:32:05+00:00","symbol":"RDW","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.54,"vwap":10.487,"ext_from_open_pct":1.25,"max_ext_allowed_pct":4.0,"volume_pace":6.726,"trend":"flat","recent_slope_pct":0.0555,"volatility":"medium"},"price":10.54,"volume":{"bars":2,"last_bar_volume":80550.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":316,"trade_rate":10.533333,"buy_vol":18716.0,"sell_vol":22961.0,"unclassified_vol":0.0,"imbalance":-0.101855,"bid":10.53,"ask":10.54,"spread_pct":0.094922,"quote_size_imbalance":null,"quote_age_s":0.883781},"context":{"vwap":10.486563,"price_vs_vwap_pct":0.509575,"ema9":10.53064,"ema20":10.529414,"ema_stack":true,"ema_warm":false,"hod":10.63,"dist_to_hod_pct":-0.84666,"dist_to_hod_atr":0.458382,"atr":0.196343,"spread_atr":0.050931,"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":"ece72fa1aed2","ts":"2026-09-15T13:32:05+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"trend negative (slope -0.168%, flat band 0.122%)","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.4701,"vwap":9.4611,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":6.065,"trend":"negative","recent_slope_pct":-0.1683,"volatility":"high"},"price":9.4701,"volume":{"bars":2,"last_bar_volume":22481.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":112,"trade_rate":3.733333,"buy_vol":8115.0,"sell_vol":5938.0,"unclassified_vol":0.0,"imbalance":0.154914,"bid":9.45,"ask":9.46,"spread_pct":0.105764,"quote_size_imbalance":null,"quote_age_s":0.550176},"context":{"vwap":9.461065,"price_vs_vwap_pct":0.095501,"ema9":9.4936,"ema20":9.498,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.628541,"dist_to_hod_atr":0.347678,"atr":0.172286,"spread_atr":0.058043,"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":"aa9361cacad2","ts":"2026-09-15T13:32:05+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.31 below VWAP $5.34","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.3134,"vwap":5.3434,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":3.0,"volume_pace":2.399,"trend":"negative","recent_slope_pct":-0.1561,"volatility":"medium"},"price":5.3134,"volume":{"bars":2,"last_bar_volume":646.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":5,"trade_rate":0.166667,"buy_vol":215.0,"sell_vol":343.0,"unclassified_vol":0.0,"imbalance":-0.229391,"bid":5.3,"ask":5.32,"spread_pct":0.376648,"quote_size_imbalance":null,"quote_age_s":6.179626},"context":{"vwap":5.343767,"price_vs_vwap_pct":-0.568276,"ema9":5.326,"ema20":5.328095,"ema_stack":false,"ema_warm":false,"hod":5.405,"dist_to_hod_pct":-1.694727,"dist_to_hod_atr":0.925921,"atr":0.098929,"spread_atr":0.202166,"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":"f1480738285f","ts":"2026-09-15T13:32:05+00:00","symbol":"NCLH","event":"REJECT","bot":{"state":"REJECT","reason":"price $14.79 below VWAP $14.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":14.7896,"vwap":14.7921,"ext_from_open_pct":0.13,"max_ext_allowed_pct":4.0,"volume_pace":3.102,"trend":"flat","recent_slope_pct":-0.0689,"volatility":"medium"},"price":14.7896,"volume":{"bars":2,"last_bar_volume":33604.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":72,"trade_rate":2.4,"buy_vol":3844.0,"sell_vol":9902.0,"unclassified_vol":0.0,"imbalance":-0.44071,"bid":14.75,"ask":14.78,"spread_pct":0.203183,"quote_size_imbalance":null,"quote_age_s":0.787648},"context":{"vwap":14.79218,"price_vs_vwap_pct":-0.01744,"ema9":14.8064,"ema20":14.808286,"ema_stack":false,"ema_warm":false,"hod":14.85,"dist_to_hod_pct":-0.406734,"dist_to_hod_atr":0.617226,"atr":0.097857,"spread_atr":0.306569,"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":"bdbb29d923ea","ts":"2026-09-15T13:32:05+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.46,"vwap":8.4159,"ext_from_open_pct":1.08,"max_ext_allowed_pct":4.0,"volume_pace":3.731,"trend":"flat","recent_slope_pct":0.0591,"volatility":"high"},"price":8.46,"volume":{"bars":2,"last_bar_volume":85277.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":165,"trade_rate":5.5,"buy_vol":47652.0,"sell_vol":11464.0,"unclassified_vol":0.0,"imbalance":0.612152,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.876398},"context":{"vwap":8.415406,"price_vs_vwap_pct":0.529904,"ema9":8.452,"ema20":8.450952,"ema_stack":true,"ema_warm":false,"hod":8.48,"dist_to_hod_pct":-0.235849,"dist_to_hod_atr":0.131394,"atr":0.152214,"spread_atr":0.065697,"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":"d13d4fe074b7","ts":"2026-09-15T13:32:05+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.73 below VWAP $12.77","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.73,"vwap":12.7745,"ext_from_open_pct":-1.93,"max_ext_allowed_pct":4.0,"volume_pace":16.496,"trend":"flat","recent_slope_pct":-0.1574,"volatility":"medium"},"price":12.73,"volume":{"bars":2,"last_bar_volume":47887.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":26,"trade_rate":0.866667,"buy_vol":1497.0,"sell_vol":1958.0,"unclassified_vol":0.0,"imbalance":-0.13343,"bid":12.63,"ask":12.83,"spread_pct":1.571092,"quote_size_imbalance":null,"quote_age_s":15.328088},"context":{"vwap":12.774631,"price_vs_vwap_pct":-0.349374,"ema9":12.742,"ema20":12.756667,"ema_stack":false,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-3.009524,"dist_to_hod_atr":1.111558,"atr":0.355357,"spread_atr":0.562814,"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":"b4a1b53d84d1","ts":"2026-09-15T13:32:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.19 below VWAP $7.20","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.1915,"vwap":7.1968,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":1.762,"trend":"negative","recent_slope_pct":-0.2533,"volatility":"medium"},"price":7.1915,"volume":{"bars":2,"last_bar_volume":74291.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":247,"trade_rate":8.233333,"buy_vol":21089.0,"sell_vol":19920.0,"unclassified_vol":0.0,"imbalance":0.028506,"bid":7.19,"ask":7.2,"spread_pct":0.138985,"quote_size_imbalance":null,"quote_age_s":0.019773},"context":{"vwap":7.196798,"price_vs_vwap_pct":-0.073613,"ema9":7.22208,"ema20":7.225181,"ema_stack":false,"ema_warm":false,"hod":7.23,"dist_to_hod_pct":-0.532503,"dist_to_hod_atr":0.400743,"atr":0.096071,"spread_atr":0.104089,"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":"1c22611e80bc","ts":"2026-09-15T13:32:05+00:00","symbol":"INFQ","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.5727,"vwap":12.5568,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":2.965,"trend":"flat","recent_slope_pct":-0.0429,"volatility":"high"},"price":12.5727,"volume":{"bars":2,"last_bar_volume":9398.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":26,"trade_rate":0.866667,"buy_vol":103.0,"sell_vol":6120.0,"unclassified_vol":0.0,"imbalance":-0.966897,"bid":12.55,"ask":12.63,"spread_pct":0.635425,"quote_size_imbalance":null,"quote_age_s":1.625744},"context":{"vwap":12.555192,"price_vs_vwap_pct":0.139449,"ema9":12.5968,"ema20":12.589833,"ema_stack":false,"ema_warm":false,"hod":12.69,"dist_to_hod_pct":-0.92435,"dist_to_hod_atr":0.751063,"atr":0.156179,"spread_atr":0.512234,"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":"6622c5e7a6e2","ts":"2026-09-15T13:32:05+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.22 below VWAP $11.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":11.225,"vwap":11.2316,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":4.0,"volume_pace":4.066,"trend":"flat","recent_slope_pct":0.112,"volatility":"high"},"price":11.225,"volume":{"bars":2,"last_bar_volume":298034.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":491,"trade_rate":16.366667,"buy_vol":42805.0,"sell_vol":56481.0,"unclassified_vol":0.0,"imbalance":-0.137743,"bid":11.22,"ask":11.23,"spread_pct":0.089087,"quote_size_imbalance":null,"quote_age_s":1.94937},"context":{"vwap":11.231679,"price_vs_vwap_pct":-0.059469,"ema9":11.19992,"ema20":11.19991,"ema_stack":true,"ema_warm":false,"hod":11.355,"dist_to_hod_pct":-1.14487,"dist_to_hod_atr":0.729459,"atr":0.178214,"spread_atr":0.056112,"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":"393dce11b1ae","ts":"2026-09-15T13:32:05+00:00","symbol":"AGNC","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.1098,"vwap":10.1002,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":6.207,"trend":"flat","recent_slope_pct":-0.001,"volatility":"low"},"price":10.1098,"volume":{"bars":2,"last_bar_volume":44082.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":23367.0,"sell_vol":25668.0,"unclassified_vol":0.0,"imbalance":-0.046926,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":3.136735},"context":{"vwap":10.100071,"price_vs_vwap_pct":0.096323,"ema9":10.107,"ema20":10.108571,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.100791,"dist_to_hod_atr":0.210216,"atr":0.048521,"spread_atr":0.206095,"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":"081d561c5fc4","ts":"2026-09-15T13:32:05+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.51 below VWAP $5.51","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.5055,"vwap":5.5123,"ext_from_open_pct":0.83,"max_ext_allowed_pct":3.0,"volume_pace":2.51,"trend":"negative","recent_slope_pct":-0.1768,"volatility":"medium"},"price":5.5055,"volume":{"bars":2,"last_bar_volume":31379.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":59,"trade_rate":1.966667,"buy_vol":1585.0,"sell_vol":7547.0,"unclassified_vol":0.0,"imbalance":-0.652869,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":3.055058},"context":{"vwap":5.512321,"price_vs_vwap_pct":-0.123741,"ema9":5.522,"ema20":5.523571,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.801802,"dist_to_hod_atr":0.519167,"atr":0.085714,"spread_atr":0.116667,"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":"bf57f2a2df5b","ts":"2026-09-15T13:32:05+00:00","symbol":"USDE","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.98 below VWAP $7.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":6.9821,"vwap":7.0168,"ext_from_open_pct":-0.26,"max_ext_allowed_pct":4.0,"volume_pace":10.483,"trend":"flat","recent_slope_pct":-0.1997,"volatility":"high"},"price":6.9821,"volume":{"bars":2,"last_bar_volume":21886.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":116,"trade_rate":3.866667,"buy_vol":3347.0,"sell_vol":1104.0,"unclassified_vol":0.0,"imbalance":0.503932,"bid":6.92,"ask":7.02,"spread_pct":1.43472,"quote_size_imbalance":null,"quote_age_s":0.658026},"context":{"vwap":7.017077,"price_vs_vwap_pct":-0.498461,"ema9":7.001,"ema20":7.005714,"ema_stack":false,"ema_warm":false,"hod":7.12,"dist_to_hod_pct":-1.936798,"dist_to_hod_atr":0.838516,"atr":0.164457,"spread_atr":0.608061,"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":"71ffa1e54416","ts":"2026-09-15T13:32:05+00:00","symbol":"CLSK","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.97,"vwap":12.9554,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":4.0,"volume_pace":4.656,"trend":"positive","recent_slope_pct":0.2707,"volatility":"high"},"price":12.97,"volume":{"bars":2,"last_bar_volume":69250.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":359,"trade_rate":11.966667,"buy_vol":38648.0,"sell_vol":22145.0,"unclassified_vol":0.0,"imbalance":0.271462,"bid":12.96,"ask":12.98,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":1.81777},"context":{"vwap":12.955032,"price_vs_vwap_pct":0.115535,"ema9":12.903,"ema20":12.901429,"ema_stack":true,"ema_warm":false,"hod":13.12,"dist_to_hod_pct":-1.143293,"dist_to_hod_atr":0.599349,"atr":0.250271,"spread_atr":0.079913,"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":"d6b9f945c2e3","ts":"2026-09-15T13:32:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.78 below VWAP $7.82","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.7762,"vwap":7.823,"ext_from_open_pct":0.99,"max_ext_allowed_pct":4.0,"volume_pace":3.826,"trend":"negative","recent_slope_pct":-0.9197,"volatility":"high"},"price":7.7762,"volume":{"bars":2,"last_bar_volume":144463.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":297,"trade_rate":9.9,"buy_vol":34880.0,"sell_vol":50357.0,"unclassified_vol":0.0,"imbalance":-0.181576,"bid":7.77,"ask":7.82,"spread_pct":0.641437,"quote_size_imbalance":null,"quote_age_s":1.690677},"context":{"vwap":7.824292,"price_vs_vwap_pct":-0.614645,"ema9":7.88732,"ema20":7.904438,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-2.309045,"dist_to_hod_atr":0.598419,"atr":0.307143,"spread_atr":0.162791,"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":"1657a7d6f8ec","ts":"2026-09-15T13:32:10+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.41 below VWAP $12.42","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.4128,"vwap":12.4167,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":5.0,"volume_pace":6.589,"trend":"flat","recent_slope_pct":-0.0692,"volatility":"high"},"price":12.4128,"volume":{"bars":2,"last_bar_volume":25.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":23.0,"sell_vol":77.0,"unclassified_vol":0.0,"imbalance":-0.54,"bid":12.16,"ask":12.53,"spread_pct":2.997165,"quote_size_imbalance":null,"quote_age_s":31.491272},"context":{"vwap":12.416665,"price_vs_vwap_pct":-0.031124,"ema9":12.434,"ema20":12.431905,"ema_stack":false,"ema_warm":false,"hod":12.5,"dist_to_hod_pct":-0.6976,"dist_to_hod_atr":0.498286,"atr":0.175,"spread_atr":2.114286,"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":"bc2939bff951","ts":"2026-09-15T13:32:10+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.90 below VWAP $13.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":12.9,"vwap":13.0208,"ext_from_open_pct":-1.15,"max_ext_allowed_pct":5.0,"volume_pace":9.744,"trend":"negative","recent_slope_pct":-0.3153,"volatility":"medium"},"price":12.9,"volume":{"bars":2,"last_bar_volume":4397.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":28,"trade_rate":0.933333,"buy_vol":952.0,"sell_vol":1085.0,"unclassified_vol":0.0,"imbalance":-0.065292,"bid":12.81,"ask":12.99,"spread_pct":1.395349,"quote_size_imbalance":null,"quote_age_s":22.72972},"context":{"vwap":13.020774,"price_vs_vwap_pct":-0.927545,"ema9":12.98334,"ema20":12.982481,"ema_stack":false,"ema_warm":false,"hod":13.27,"dist_to_hod_pct":-2.788244,"dist_to_hod_atr":0.92368,"atr":0.400571,"spread_atr":0.449358,"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":"31d0b0edc757","ts":"2026-09-15T13:32:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.86 below VWAP $7.88","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.86,"vwap":7.88,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":4.0,"volume_pace":2.94,"trend":"flat","recent_slope_pct":-0.0952,"volatility":"high"},"price":7.86,"volume":{"bars":2,"last_bar_volume":7361.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":5597.0,"sell_vol":1904.0,"unclassified_vol":0.0,"imbalance":0.492334,"bid":7.84,"ask":7.88,"spread_pct":0.508906,"quote_size_imbalance":null,"quote_age_s":1.050907},"context":{"vwap":7.88048,"price_vs_vwap_pct":-0.259882,"ema9":7.878,"ema20":7.876429,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.882724,"dist_to_hod_atr":0.799347,"atr":0.087571,"spread_atr":0.45677,"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":"5b6503ef8baa","ts":"2026-09-15T13:32:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.24 below VWAP $8.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":8.2447,"vwap":8.3772,"ext_from_open_pct":-1.02,"max_ext_allowed_pct":5.0,"volume_pace":4.1,"trend":"negative","recent_slope_pct":-0.9062,"volatility":"medium"},"price":8.2447,"volume":{"bars":2,"last_bar_volume":2887.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":42.0,"sell_vol":1591.0,"unclassified_vol":0.0,"imbalance":-0.948561,"bid":8.21,"ask":8.26,"spread_pct":0.607165,"quote_size_imbalance":null,"quote_age_s":1.314062},"context":{"vwap":8.377595,"price_vs_vwap_pct":-1.586312,"ema9":8.364,"ema20":8.380238,"ema_stack":false,"ema_warm":false,"hod":8.5,"dist_to_hod_pct":-3.003529,"dist_to_hod_atr":1.492359,"atr":0.171071,"spread_atr":0.292276,"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":"c74a81572cc1","ts":"2026-09-15T13:32:10+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.10","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.1,"vwap":10.1001,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":5.97,"trend":"flat","recent_slope_pct":-0.0495,"volatility":"low"},"price":10.1,"volume":{"bars":2,"last_bar_volume":44082.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":116,"trade_rate":3.866667,"buy_vol":19333.0,"sell_vol":24622.0,"unclassified_vol":0.0,"imbalance":-0.120328,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":8.136735},"context":{"vwap":10.100071,"price_vs_vwap_pct":-0.000706,"ema9":10.107,"ema20":10.108571,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.197628,"dist_to_hod_atr":0.412189,"atr":0.048521,"spread_atr":0.206095,"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":"0a794dba7f14","ts":"2026-09-15T13:32:15+00:00","symbol":"AGNC","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.1099,"vwap":10.1002,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":5.753,"trend":"flat","recent_slope_pct":-0.0005,"volatility":"low"},"price":10.1099,"volume":{"bars":2,"last_bar_volume":44082.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":19780.0,"sell_vol":24717.0,"unclassified_vol":0.0,"imbalance":-0.110951,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":13.136735},"context":{"vwap":10.100071,"price_vs_vwap_pct":0.097313,"ema9":10.107,"ema20":10.108571,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.099802,"dist_to_hod_atr":0.208155,"atr":0.048521,"spread_atr":0.206095,"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":"62676acf704d","ts":"2026-09-15T13:32:15+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.95 below VWAP $12.95","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.9531,"vwap":12.955,"ext_from_open_pct":-0.74,"max_ext_allowed_pct":4.0,"volume_pace":4.405,"trend":"positive","recent_slope_pct":0.2055,"volatility":"high"},"price":12.9531,"volume":{"bars":2,"last_bar_volume":69250.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":359,"trade_rate":11.966667,"buy_vol":40781.0,"sell_vol":25705.0,"unclassified_vol":0.0,"imbalance":0.226755,"bid":12.93,"ask":12.95,"spread_pct":0.15456,"quote_size_imbalance":null,"quote_age_s":0.035259},"context":{"vwap":12.955032,"price_vs_vwap_pct":-0.014916,"ema9":12.903,"ema20":12.901429,"ema_stack":true,"ema_warm":false,"hod":13.12,"dist_to_hod_pct":-1.272104,"dist_to_hod_atr":0.666876,"atr":0.250271,"spread_atr":0.079913,"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":"2b7f47016977","ts":"2026-09-15T13:32:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.40 below VWAP $9.42","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.4,"vwap":9.4207,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":5.0,"volume_pace":26.98,"trend":"flat","recent_slope_pct":0.1858,"volatility":"low"},"price":9.4,"volume":{"bars":2,"last_bar_volume":72425.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":86,"trade_rate":2.866667,"buy_vol":15616.0,"sell_vol":6087.0,"unclassified_vol":0.0,"imbalance":0.439064,"bid":9.42,"ask":9.45,"spread_pct":0.317965,"quote_size_imbalance":null,"quote_age_s":4.980005},"context":{"vwap":9.420133,"price_vs_vwap_pct":-0.213725,"ema9":9.39,"ema20":9.376905,"ema_stack":true,"ema_warm":false,"hod":9.5,"dist_to_hod_pct":-1.052632,"dist_to_hod_atr":0.906149,"atr":0.110357,"spread_atr":0.271845,"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":"14cfbcca5d6d","ts":"2026-09-15T13:32:20+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.10","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.1,"vwap":10.1002,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":5.644,"trend":"flat","recent_slope_pct":-0.0495,"volatility":"low"},"price":10.1,"volume":{"bars":2,"last_bar_volume":44082.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":28350.0,"sell_vol":31685.0,"unclassified_vol":0.0,"imbalance":-0.055551,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.434777},"context":{"vwap":10.100071,"price_vs_vwap_pct":-0.000706,"ema9":10.107,"ema20":10.108571,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.197628,"dist_to_hod_atr":0.412189,"atr":0.048521,"spread_atr":0.206095,"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":"d4fb4745e25a","ts":"2026-09-15T13:32:20+00:00","symbol":"CLSK","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.9588,"vwap":12.9552,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":4.0,"volume_pace":4.253,"trend":"positive","recent_slope_pct":0.2275,"volatility":"high"},"price":12.9588,"volume":{"bars":2,"last_bar_volume":69250.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":357,"trade_rate":11.9,"buy_vol":39933.0,"sell_vol":25976.0,"unclassified_vol":0.0,"imbalance":0.211762,"bid":12.95,"ask":12.96,"spread_pct":0.07719,"quote_size_imbalance":null,"quote_age_s":0.38694},"context":{"vwap":12.955032,"price_vs_vwap_pct":0.029082,"ema9":12.903,"ema20":12.901429,"ema_stack":true,"ema_warm":false,"hod":13.12,"dist_to_hod_pct":-1.228659,"dist_to_hod_atr":0.644101,"atr":0.250271,"spread_atr":0.039957,"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":"e52b8da22769","ts":"2026-09-15T13:32:30+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":11.255,"vwap":11.2322,"ext_from_open_pct":-0.04,"max_ext_allowed_pct":4.0,"volume_pace":3.598,"trend":"positive","recent_slope_pct":0.2456,"volatility":"high"},"price":11.255,"volume":{"bars":2,"last_bar_volume":298034.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":496,"trade_rate":16.533333,"buy_vol":46722.0,"sell_vol":34770.0,"unclassified_vol":0.0,"imbalance":0.146665,"bid":11.25,"ask":11.26,"spread_pct":0.088849,"quote_size_imbalance":null,"quote_age_s":0.262665},"context":{"vwap":11.231679,"price_vs_vwap_pct":0.207633,"ema9":11.19992,"ema20":11.19991,"ema_stack":true,"ema_warm":false,"hod":11.355,"dist_to_hod_pct":-0.880669,"dist_to_hod_atr":0.561122,"atr":0.178214,"spread_atr":0.056112,"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":"1bd01c813bd0","ts":"2026-09-15T13:32:30+00:00","symbol":"AGNC","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.11,"vwap":10.1003,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":5.281,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":10.11,"volume":{"bars":2,"last_bar_volume":44082.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":65,"trade_rate":2.166667,"buy_vol":10995.0,"sell_vol":22089.0,"unclassified_vol":0.0,"imbalance":-0.335328,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.858146},"context":{"vwap":10.100071,"price_vs_vwap_pct":0.098303,"ema9":10.107,"ema20":10.108571,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.098814,"dist_to_hod_atr":0.206095,"atr":0.048521,"spread_atr":0.206095,"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":"f45012f26ab2","ts":"2026-09-15T13:32:35+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.10","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.1,"vwap":10.1001,"ext_from_open_pct":0.1,"max_ext_allowed_pct":5.0,"volume_pace":5.231,"trend":"flat","recent_slope_pct":-0.0495,"volatility":"low"},"price":10.1,"volume":{"bars":2,"last_bar_volume":44082.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":72,"trade_rate":2.4,"buy_vol":28754.0,"sell_vol":11689.0,"unclassified_vol":0.0,"imbalance":0.421952,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.305722},"context":{"vwap":10.100071,"price_vs_vwap_pct":-0.000706,"ema9":10.107,"ema20":10.108571,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.197628,"dist_to_hod_atr":0.412189,"atr":0.048521,"spread_atr":0.206095,"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":"5eaa492cb001","ts":"2026-09-15T13:32:40+00:00","symbol":"ONDS","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":7.225,"vwap":7.1982,"ext_from_open_pct":1.05,"max_ext_allowed_pct":3.0,"volume_pace":1.481,"trend":"flat","recent_slope_pct":-0.0208,"volatility":"medium"},"price":7.225,"volume":{"bars":2,"last_bar_volume":74291.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":155,"trade_rate":5.166667,"buy_vol":27500.0,"sell_vol":21922.0,"unclassified_vol":0.0,"imbalance":0.112865,"bid":7.22,"ask":7.23,"spread_pct":0.138408,"quote_size_imbalance":null,"quote_age_s":0.557899},"context":{"vwap":7.196798,"price_vs_vwap_pct":0.391872,"ema9":7.22208,"ema20":7.225181,"ema_stack":false,"ema_warm":false,"hod":7.23,"dist_to_hod_pct":-0.069156,"dist_to_hod_atr":0.052045,"atr":0.096071,"spread_atr":0.104089,"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":"579e8192ecfd","ts":"2026-09-15T13:32:40+00:00","symbol":"ACHR","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":5.515,"vwap":5.5122,"ext_from_open_pct":1.01,"max_ext_allowed_pct":3.0,"volume_pace":2.036,"trend":"flat","recent_slope_pct":-0.0906,"volatility":"medium"},"price":5.515,"volume":{"bars":2,"last_bar_volume":31379.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":64,"trade_rate":2.133333,"buy_vol":9752.0,"sell_vol":5275.0,"unclassified_vol":0.0,"imbalance":0.29793,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":0.293139},"context":{"vwap":5.512321,"price_vs_vwap_pct":0.0486,"ema9":5.522,"ema20":5.523571,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.630631,"dist_to_hod_atr":0.408333,"atr":0.085714,"spread_atr":0.116667,"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":"1381098e386b","ts":"2026-09-15T13:32:45+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.77 below VWAP $9.78","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.77,"vwap":9.7783,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":3.376,"trend":"flat","recent_slope_pct":-0.1277,"volatility":"high"},"price":9.77,"volume":{"bars":2,"last_bar_volume":11748.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":2545.0,"sell_vol":8305.0,"unclassified_vol":0.0,"imbalance":-0.530876,"bid":9.76,"ask":9.77,"spread_pct":0.102407,"quote_size_imbalance":null,"quote_age_s":0.094425},"context":{"vwap":9.777271,"price_vs_vwap_pct":-0.074369,"ema9":9.796,"ema20":9.795476,"ema_stack":false,"ema_warm":false,"hod":9.83,"dist_to_hod_pct":-0.610376,"dist_to_hod_atr":0.688581,"atr":0.087136,"spread_atr":0.114764,"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":"a577f3217e52","ts":"2026-09-15T13:32:45+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.09,"vwap":5.0373,"ext_from_open_pct":0.79,"max_ext_allowed_pct":5.0,"volume_pace":3.421,"trend":"positive","recent_slope_pct":0.5743,"volatility":"high"},"price":5.09,"volume":{"bars":2,"last_bar_volume":105658.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":260,"trade_rate":8.666667,"buy_vol":46924.0,"sell_vol":20450.0,"unclassified_vol":0.0,"imbalance":0.392941,"bid":5.08,"ask":5.09,"spread_pct":0.196657,"quote_size_imbalance":null,"quote_age_s":0.453063},"context":{"vwap":5.032101,"price_vs_vwap_pct":1.150597,"ema9":5.02588,"ema20":5.029138,"ema_stack":false,"ema_warm":false,"hod":5.08,"dist_to_hod_pct":0.19685,"dist_to_hod_atr":-0.166806,"atr":0.05995,"spread_atr":0.166806,"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":"7669835f948d","ts":"2026-09-15T13:32:45+00:00","symbol":"FLNC","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":9.4745,"vwap":9.4613,"ext_from_open_pct":1.33,"max_ext_allowed_pct":5.0,"volume_pace":4.872,"trend":"flat","recent_slope_pct":-0.1451,"volatility":"high"},"price":9.4745,"volume":{"bars":2,"last_bar_volume":22481.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":7286.0,"sell_vol":408.0,"unclassified_vol":0.0,"imbalance":0.893943,"bid":9.47,"ask":9.49,"spread_pct":0.21097,"quote_size_imbalance":null,"quote_age_s":0.926841},"context":{"vwap":9.461065,"price_vs_vwap_pct":0.142007,"ema9":9.4936,"ema20":9.498,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.582371,"dist_to_hod_atr":0.322139,"atr":0.172286,"spread_atr":0.116086,"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":"0082f9a933b3","ts":"2026-09-15T13:32:45+00:00","symbol":"RUM","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":7.8401,"vwap":7.8238,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":3.152,"trend":"flat","recent_slope_pct":-0.5096,"volatility":"high"},"price":7.8401,"volume":{"bars":2,"last_bar_volume":144463.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":132,"trade_rate":4.4,"buy_vol":28208.0,"sell_vol":11446.0,"unclassified_vol":0.0,"imbalance":0.422706,"bid":7.84,"ask":7.87,"spread_pct":0.381922,"quote_size_imbalance":null,"quote_age_s":4.358397},"context":{"vwap":7.824292,"price_vs_vwap_pct":0.202042,"ema9":7.88732,"ema20":7.904438,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.506281,"dist_to_hod_atr":0.390372,"atr":0.307143,"spread_atr":0.097674,"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":"3d5e53ea5729","ts":"2026-09-15T13:32:55+00:00","symbol":"RLGT","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.5,"vwap":9.4277,"ext_from_open_pct":0.53,"max_ext_allowed_pct":5.0,"volume_pace":24.438,"trend":"positive","recent_slope_pct":0.7142,"volatility":"low"},"price":9.5,"volume":{"bars":2,"last_bar_volume":72425.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":16525.0,"sell_vol":2173.0,"unclassified_vol":0.0,"imbalance":0.767569,"bid":9.41,"ask":9.5,"spread_pct":0.951877,"quote_size_imbalance":null,"quote_age_s":2.923166},"context":{"vwap":9.420133,"price_vs_vwap_pct":0.847831,"ema9":9.39,"ema20":9.376905,"ema_stack":true,"ema_warm":false,"hod":9.5,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.110357,"spread_atr":0.815534,"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":"f61e1fff3a94","ts":"2026-09-15T13:32:55+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.50 below VWAP $5.51","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.505,"vwap":5.5123,"ext_from_open_pct":0.82,"max_ext_allowed_pct":4.0,"volume_pace":1.927,"trend":"negative","recent_slope_pct":-0.1814,"volatility":"medium"},"price":5.505,"volume":{"bars":2,"last_bar_volume":31379.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":106,"trade_rate":3.533333,"buy_vol":20669.0,"sell_vol":3367.0,"unclassified_vol":0.0,"imbalance":0.719837,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":0.087867},"context":{"vwap":5.512321,"price_vs_vwap_pct":-0.132812,"ema9":5.522,"ema20":5.523571,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.810811,"dist_to_hod_atr":0.525,"atr":0.085714,"spread_atr":0.116667,"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":"3460e345a68a","ts":"2026-09-15T13:33:00+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"trend negative (slope -0.169%, flat band 0.161%)","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.47,"vwap":9.4615,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":4.501,"trend":"negative","recent_slope_pct":-0.1688,"volatility":"high"},"price":9.47,"volume":{"bars":2,"last_bar_volume":22481.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":5987.0,"sell_vol":1666.0,"unclassified_vol":0.0,"imbalance":0.564615,"bid":9.46,"ask":9.48,"spread_pct":0.211193,"quote_size_imbalance":null,"quote_age_s":1.679116},"context":{"vwap":9.461065,"price_vs_vwap_pct":0.094444,"ema9":9.4936,"ema20":9.498,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.629591,"dist_to_hod_atr":0.348259,"atr":0.172286,"spread_atr":0.116086,"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":"cd5c6bd63b1b","ts":"2026-09-15T13:33:05+00:00","symbol":"FRMI","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":5.07,"vwap":5.0369,"ext_from_open_pct":0.4,"max_ext_allowed_pct":4.0,"volume_pace":3.112,"trend":"positive","recent_slope_pct":0.3819,"volatility":"high"},"price":5.07,"volume":{"bars":3,"last_bar_volume":79764.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":4456.0,"sell_vol":5453.0,"unclassified_vol":0.0,"imbalance":-0.100616,"bid":5.06,"ask":5.08,"spread_pct":0.394477,"quote_size_imbalance":null,"quote_age_s":3.248291},"context":{"vwap":5.03693,"price_vs_vwap_pct":0.656556,"ema9":5.036704,"ema20":5.033982,"ema_stack":true,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-0.392927,"dist_to_hod_atr":0.318417,"atr":0.062811,"spread_atr":0.318417,"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":"6cbdf7df229a","ts":"2026-09-15T13:33:05+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.43 below VWAP $5.47","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.43,"vwap":5.4714,"ext_from_open_pct":3.04,"max_ext_allowed_pct":5.0,"volume_pace":8.581,"trend":"negative","recent_slope_pct":-1.1775,"volatility":"high"},"price":5.43,"volume":{"bars":2,"last_bar_volume":681.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":5.27,"ask":5.58,"spread_pct":5.714286,"quote_size_imbalance":null,"quote_age_s":1.43038},"context":{"vwap":5.471416,"price_vs_vwap_pct":-0.756961,"ema9":5.562,"ema20":5.560952,"ema_stack":false,"ema_warm":false,"hod":5.5788,"dist_to_hod_pct":-2.66724,"dist_to_hod_atr":0.517642,"atr":0.287457,"spread_atr":1.078422,"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":"1423991db5ec","ts":"2026-09-15T13:33:05+00:00","symbol":"MARA","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":11.305,"vwap":11.2407,"ext_from_open_pct":0.4,"max_ext_allowed_pct":4.0,"volume_pace":3.402,"trend":"positive","recent_slope_pct":0.3647,"volatility":"high"},"price":11.305,"volume":{"bars":3,"last_bar_volume":242206.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":482,"trade_rate":16.066667,"buy_vol":66466.0,"sell_vol":59749.0,"unclassified_vol":0.0,"imbalance":0.053219,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.217544},"context":{"vwap":11.238821,"price_vs_vwap_pct":0.588844,"ema9":11.218936,"ema20":11.208966,"ema_stack":true,"ema_warm":false,"hod":11.355,"dist_to_hod_pct":-0.440335,"dist_to_hod_atr":0.287264,"atr":0.174056,"spread_atr":0.057453,"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":"41b362a9eb74","ts":"2026-09-15T13:33:05+00:00","symbol":"RUM","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":7.84,"vwap":7.827,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":2.879,"trend":"flat","recent_slope_pct":-0.1422,"volatility":"high"},"price":7.84,"volume":{"bars":3,"last_bar_volume":69524.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":148,"trade_rate":4.933333,"buy_vol":15877.0,"sell_vol":16189.0,"unclassified_vol":0.0,"imbalance":-0.00973,"bid":7.81,"ask":7.87,"spread_pct":0.765306,"quote_size_imbalance":null,"quote_age_s":1.209082},"context":{"vwap":7.826757,"price_vs_vwap_pct":0.169197,"ema9":7.886856,"ema20":7.902587,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.507538,"dist_to_hod_atr":0.405517,"atr":0.295918,"spread_atr":0.202759,"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":"5785226cfccf","ts":"2026-09-15T13:33:20+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":6.5015,"vwap":6.4712,"ext_from_open_pct":2.71,"max_ext_allowed_pct":3.0,"volume_pace":0.408,"trend":"positive","recent_slope_pct":1.0834,"volatility":"high"},"price":6.5015,"volume":{"bars":3,"last_bar_volume":179155.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":401,"trade_rate":13.366667,"buy_vol":41710.0,"sell_vol":59723.0,"unclassified_vol":0.0,"imbalance":-0.177585,"bid":6.5,"ask":6.51,"spread_pct":0.153728,"quote_size_imbalance":null,"quote_age_s":0.13909},"context":{"vwap":6.457778,"price_vs_vwap_pct":0.677045,"ema9":6.407,"ema20":6.379762,"ema_stack":true,"ema_warm":false,"hod":6.69,"dist_to_hod_pct":-2.817638,"dist_to_hod_atr":1.297261,"atr":0.145306,"spread_atr":0.06882,"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":"aab12757ff16","ts":"2026-09-15T13:33:20+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":11.31,"vwap":11.2422,"ext_from_open_pct":0.44,"max_ext_allowed_pct":4.0,"volume_pace":3.258,"trend":"positive","recent_slope_pct":0.378,"volatility":"high"},"price":11.31,"volume":{"bars":3,"last_bar_volume":242206.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":443,"trade_rate":14.766667,"buy_vol":63126.0,"sell_vol":54835.0,"unclassified_vol":0.0,"imbalance":0.070286,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.36867},"context":{"vwap":11.238821,"price_vs_vwap_pct":0.633332,"ema9":11.218936,"ema20":11.208966,"ema_stack":true,"ema_warm":false,"hod":11.355,"dist_to_hod_pct":-0.396301,"dist_to_hod_atr":0.258537,"atr":0.174056,"spread_atr":0.057453,"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":"987e93139a51","ts":"2026-09-15T13:33:30+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.46 below VWAP $6.47","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.4601,"vwap":6.469,"ext_from_open_pct":2.06,"max_ext_allowed_pct":3.0,"volume_pace":0.408,"trend":"positive","recent_slope_pct":0.8925,"volatility":"high"},"price":6.4601,"volume":{"bars":3,"last_bar_volume":179155.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":390,"trade_rate":13.0,"buy_vol":35150.0,"sell_vol":58473.0,"unclassified_vol":0.0,"imbalance":-0.249116,"bid":6.46,"ask":6.47,"spread_pct":0.154679,"quote_size_imbalance":null,"quote_age_s":0.045084},"context":{"vwap":6.457778,"price_vs_vwap_pct":0.035958,"ema9":6.407,"ema20":6.379762,"ema_stack":true,"ema_warm":false,"hod":6.69,"dist_to_hod_pct":-3.436472,"dist_to_hod_atr":1.582177,"atr":0.145306,"spread_atr":0.06882,"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":"f1d4ba378d88","ts":"2026-09-15T13:33:30+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.20 below VWAP $7.20","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.195,"vwap":7.1994,"ext_from_open_pct":0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.231,"trend":"flat","recent_slope_pct":-0.1075,"volatility":"medium"},"price":7.195,"volume":{"bars":3,"last_bar_volume":90779.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":176,"trade_rate":5.866667,"buy_vol":30476.0,"sell_vol":20885.0,"unclassified_vol":0.0,"imbalance":0.186737,"bid":7.19,"ask":7.2,"spread_pct":0.138985,"quote_size_imbalance":null,"quote_age_s":0.310139},"context":{"vwap":7.19919,"price_vs_vwap_pct":-0.058199,"ema9":7.221644,"ema20":7.224678,"ema_stack":false,"ema_warm":false,"hod":7.25,"dist_to_hod_pct":-0.758621,"dist_to_hod_atr":0.588267,"atr":0.093495,"spread_atr":0.106958,"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":"b053e340470a","ts":"2026-09-15T13:33:35+00:00","symbol":"ONDS","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":7.225,"vwap":7.2002,"ext_from_open_pct":1.05,"max_ext_allowed_pct":3.0,"volume_pace":1.214,"trend":"flat","recent_slope_pct":0.0173,"volatility":"medium"},"price":7.225,"volume":{"bars":3,"last_bar_volume":90779.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":160,"trade_rate":5.333333,"buy_vol":11235.0,"sell_vol":19872.0,"unclassified_vol":0.0,"imbalance":-0.277655,"bid":7.22,"ask":7.23,"spread_pct":0.138408,"quote_size_imbalance":null,"quote_age_s":0.228648},"context":{"vwap":7.19919,"price_vs_vwap_pct":0.358514,"ema9":7.221644,"ema20":7.224678,"ema_stack":false,"ema_warm":false,"hod":7.25,"dist_to_hod_pct":-0.344828,"dist_to_hod_atr":0.267394,"atr":0.093495,"spread_atr":0.106958,"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":"6801b01a9e58","ts":"2026-09-15T13:33:50+00:00","symbol":"FLNC","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":9.47,"vwap":9.4614,"ext_from_open_pct":1.28,"max_ext_allowed_pct":5.0,"volume_pace":3.662,"trend":"flat","recent_slope_pct":-0.0908,"volatility":"high"},"price":9.47,"volume":{"bars":3,"last_bar_volume":14766.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":1779.0,"sell_vol":1514.0,"unclassified_vol":0.0,"imbalance":0.080474,"bid":9.46,"ask":9.48,"spread_pct":0.211193,"quote_size_imbalance":null,"quote_age_s":0.022055},"context":{"vwap":9.46148,"price_vs_vwap_pct":0.090053,"ema9":9.48888,"ema20":9.495333,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.629591,"dist_to_hod_atr":0.366858,"atr":0.163551,"spread_atr":0.122286,"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":"ded5fda10e7e","ts":"2026-09-15T13:34:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.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":7.71,"vwap":7.7121,"ext_from_open_pct":0.13,"max_ext_allowed_pct":3.0,"volume_pace":1.493,"trend":"flat","recent_slope_pct":0.0242,"volatility":"medium"},"price":7.71,"volume":{"bars":4,"last_bar_volume":10442.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":28,"trade_rate":0.933333,"buy_vol":866.0,"sell_vol":1835.0,"unclassified_vol":0.0,"imbalance":-0.358756,"bid":7.71,"ask":7.72,"spread_pct":0.129618,"quote_size_imbalance":null,"quote_age_s":1.517361},"context":{"vwap":7.712137,"price_vs_vwap_pct":-0.027711,"ema9":7.716629,"ema20":7.707943,"ema_stack":false,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-1.026958,"dist_to_hod_atr":0.556234,"atr":0.143824,"spread_atr":0.069529,"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":"03296653104e","ts":"2026-09-15T13:34:05+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.055,"vwap":5.038,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":2.453,"trend":"flat","recent_slope_pct":0.1978,"volatility":"high"},"price":5.055,"volume":{"bars":4,"last_bar_volume":14613.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":2130.0,"sell_vol":8467.0,"unclassified_vol":0.0,"imbalance":-0.597999,"bid":5.05,"ask":5.06,"spread_pct":0.197824,"quote_size_imbalance":null,"quote_age_s":10.538632},"context":{"vwap":5.037919,"price_vs_vwap_pct":0.339044,"ema9":5.040363,"ema20":5.035984,"ema_stack":true,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-0.687623,"dist_to_hod_atr":0.578827,"atr":0.060467,"spread_atr":0.165379,"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":"a4aa659f5820","ts":"2026-09-15T13:34:05+00:00","symbol":"RUM","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":7.85,"vwap":7.8274,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":2.233,"trend":"flat","recent_slope_pct":-0.0721,"volatility":"high"},"price":7.85,"volume":{"bars":4,"last_bar_volume":15653.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":871.0,"sell_vol":9187.0,"unclassified_vol":0.0,"imbalance":-0.826805,"bid":7.83,"ask":7.86,"spread_pct":0.382409,"quote_size_imbalance":null,"quote_age_s":0.679645},"context":{"vwap":7.827305,"price_vs_vwap_pct":0.289947,"ema9":7.877485,"ema20":7.896626,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.38191,"dist_to_hod_atr":0.391844,"atr":0.280724,"spread_atr":0.106866,"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":"85c03e787387","ts":"2026-09-15T13:34:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.47% 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.5,"vwap":9.4803,"ext_from_open_pct":0.53,"max_ext_allowed_pct":4.0,"volume_pace":29.089,"trend":"flat","recent_slope_pct":0.4004,"volatility":"low"},"price":9.5,"volume":{"bars":4,"last_bar_volume":102034.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":53198.0,"sell_vol":17344.0,"unclassified_vol":0.0,"imbalance":0.508265,"bid":9.46,"ask":9.6,"spread_pct":1.469045,"quote_size_imbalance":null,"quote_age_s":0.792909},"context":{"vwap":9.478369,"price_vs_vwap_pct":0.228218,"ema9":9.4496,"ema20":9.408759,"ema_stack":true,"ema_warm":false,"hod":9.66,"dist_to_hod_pct":-1.656315,"dist_to_hod_atr":1.326904,"atr":0.120581,"spread_atr":1.161041,"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":"6943f1de3d75","ts":"2026-09-15T13:34:10+00:00","symbol":"BB","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":7.7132,"vwap":7.7121,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":1.463,"trend":"flat","recent_slope_pct":0.0325,"volatility":"medium"},"price":7.7132,"volume":{"bars":4,"last_bar_volume":10442.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":860.0,"sell_vol":1665.0,"unclassified_vol":0.0,"imbalance":-0.318812,"bid":7.71,"ask":7.72,"spread_pct":0.129618,"quote_size_imbalance":null,"quote_age_s":2.973079},"context":{"vwap":7.712137,"price_vs_vwap_pct":0.013782,"ema9":7.716629,"ema20":7.707943,"ema_stack":false,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-0.985879,"dist_to_hod_atr":0.533985,"atr":0.143824,"spread_atr":0.069529,"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":"2cfc7c5f08da","ts":"2026-09-15T13:34:25+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.46 below VWAP $9.46","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.46,"vwap":9.4618,"ext_from_open_pct":1.18,"max_ext_allowed_pct":4.0,"volume_pace":3.291,"trend":"flat","recent_slope_pct":-0.0728,"volatility":"high"},"price":9.46,"volume":{"bars":4,"last_bar_volume":10091.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":58,"trade_rate":1.933333,"buy_vol":39.0,"sell_vol":5991.0,"unclassified_vol":0.0,"imbalance":-0.987065,"bid":9.45,"ask":9.46,"spread_pct":0.105764,"quote_size_imbalance":null,"quote_age_s":2.388179},"context":{"vwap":9.46173,"price_vs_vwap_pct":-0.01828,"ema9":9.486104,"ema20":9.493397,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.734523,"dist_to_hod_atr":0.451371,"atr":0.155083,"spread_atr":0.064482,"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":"26ad2938c8c7","ts":"2026-09-15T13:34:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.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":7.71,"vwap":7.7122,"ext_from_open_pct":0.13,"max_ext_allowed_pct":4.0,"volume_pace":1.375,"trend":"flat","recent_slope_pct":0.0242,"volatility":"medium"},"price":7.71,"volume":{"bars":4,"last_bar_volume":10442.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":1163.0,"sell_vol":1301.0,"unclassified_vol":0.0,"imbalance":-0.056006,"bid":7.71,"ask":7.72,"spread_pct":0.129618,"quote_size_imbalance":null,"quote_age_s":0.006205},"context":{"vwap":7.712137,"price_vs_vwap_pct":-0.027711,"ema9":7.716629,"ema20":7.707943,"ema_stack":false,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-1.026958,"dist_to_hod_atr":0.556234,"atr":0.143824,"spread_atr":0.069529,"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":"1e3e463338c0","ts":"2026-09-15T13:34:35+00:00","symbol":"BB","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":7.715,"vwap":7.7122,"ext_from_open_pct":0.19,"max_ext_allowed_pct":4.0,"volume_pace":1.35,"trend":"flat","recent_slope_pct":0.0372,"volatility":"medium"},"price":7.715,"volume":{"bars":4,"last_bar_volume":10442.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":1054.0,"sell_vol":1192.0,"unclassified_vol":0.0,"imbalance":-0.061443,"bid":7.71,"ask":7.72,"spread_pct":0.129618,"quote_size_imbalance":null,"quote_age_s":3.532266},"context":{"vwap":7.712137,"price_vs_vwap_pct":0.037121,"ema9":7.716629,"ema20":7.707943,"ema_stack":false,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-0.962773,"dist_to_hod_atr":0.52147,"atr":0.143824,"spread_atr":0.069529,"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":"879f7b6517fa","ts":"2026-09-15T13:34:35+00:00","symbol":"FLNC","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":9.4676,"vwap":9.4619,"ext_from_open_pct":1.26,"max_ext_allowed_pct":4.0,"volume_pace":3.184,"trend":"flat","recent_slope_pct":-0.0568,"volatility":"high"},"price":9.4676,"volume":{"bars":4,"last_bar_volume":10091.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":788.0,"sell_vol":686.0,"unclassified_vol":0.0,"imbalance":0.069199,"bid":9.46,"ask":9.47,"spread_pct":0.105652,"quote_size_imbalance":null,"quote_age_s":0.994378},"context":{"vwap":9.46173,"price_vs_vwap_pct":0.062044,"ema9":9.486104,"ema20":9.493397,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.654774,"dist_to_hod_atr":0.402365,"atr":0.155083,"spread_atr":0.064482,"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":"96901782bd9e","ts":"2026-09-15T13:34:45+00:00","symbol":"RLGT","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.6,"vwap":9.4864,"ext_from_open_pct":1.59,"max_ext_allowed_pct":5.0,"volume_pace":26.662,"trend":"positive","recent_slope_pct":0.6098,"volatility":"low"},"price":9.6,"volume":{"bars":4,"last_bar_volume":102034.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":1912.0,"sell_vol":10410.0,"unclassified_vol":0.0,"imbalance":-0.689661,"bid":9.53,"ask":9.6,"spread_pct":0.731835,"quote_size_imbalance":null,"quote_age_s":2.699934},"context":{"vwap":9.478369,"price_vs_vwap_pct":1.283252,"ema9":9.4496,"ema20":9.408759,"ema_stack":true,"ema_warm":false,"hod":9.66,"dist_to_hod_pct":-0.621118,"dist_to_hod_atr":0.497589,"atr":0.120581,"spread_atr":0.580521,"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":"783df8f4d1d3","ts":"2026-09-15T13:34:50+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.45 below VWAP $9.46","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.4483,"vwap":9.4616,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":3.098,"trend":"flat","recent_slope_pct":-0.0976,"volatility":"high"},"price":9.4483,"volume":{"bars":4,"last_bar_volume":10091.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":86,"trade_rate":2.866667,"buy_vol":1276.0,"sell_vol":5755.0,"unclassified_vol":0.0,"imbalance":-0.637036,"bid":9.44,"ask":9.45,"spread_pct":0.105876,"quote_size_imbalance":null,"quote_age_s":0.487379},"context":{"vwap":9.46173,"price_vs_vwap_pct":-0.141936,"ema9":9.486104,"ema20":9.493397,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.857293,"dist_to_hod_atr":0.526814,"atr":0.155083,"spread_atr":0.064482,"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":"6803e1fd21cb","ts":"2026-09-15T13:34:50+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.81 below VWAP $7.83","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.8142,"vwap":7.8283,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":2.003,"trend":"flat","recent_slope_pct":-0.1635,"volatility":"high"},"price":7.8142,"volume":{"bars":4,"last_bar_volume":15653.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":130,"trade_rate":4.333333,"buy_vol":13221.0,"sell_vol":19368.0,"unclassified_vol":0.0,"imbalance":-0.188622,"bid":7.81,"ask":7.84,"spread_pct":0.383387,"quote_size_imbalance":null,"quote_age_s":2.316218},"context":{"vwap":7.827305,"price_vs_vwap_pct":-0.167427,"ema9":7.877485,"ema20":7.896626,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.831658,"dist_to_hod_atr":0.519371,"atr":0.280724,"spread_atr":0.106866,"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":"732f0b97299c","ts":"2026-09-15T13:35:00+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.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":7.7123,"vwap":7.7123,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":1.275,"trend":"flat","recent_slope_pct":0.0302,"volatility":"medium"},"price":7.7123,"volume":{"bars":4,"last_bar_volume":10442.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":1046.0,"sell_vol":3495.0,"unclassified_vol":0.0,"imbalance":-0.539309,"bid":7.71,"ask":7.72,"spread_pct":0.129618,"quote_size_imbalance":null,"quote_age_s":0.006183},"context":{"vwap":7.712137,"price_vs_vwap_pct":0.002112,"ema9":7.716629,"ema20":7.707943,"ema_stack":false,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-0.997433,"dist_to_hod_atr":0.540242,"atr":0.143824,"spread_atr":0.069529,"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":"e22ab27a97f5","ts":"2026-09-15T13:35:00+00:00","symbol":"RUM","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":7.85,"vwap":7.8292,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":1.947,"trend":"flat","recent_slope_pct":-0.0721,"volatility":"high"},"price":7.85,"volume":{"bars":4,"last_bar_volume":15653.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":87,"trade_rate":2.9,"buy_vol":8866.0,"sell_vol":5582.0,"unclassified_vol":0.0,"imbalance":0.227298,"bid":7.81,"ask":7.85,"spread_pct":0.510856,"quote_size_imbalance":null,"quote_age_s":1.315636},"context":{"vwap":7.827305,"price_vs_vwap_pct":0.289947,"ema9":7.877485,"ema20":7.896626,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.38191,"dist_to_hod_atr":0.391844,"atr":0.280724,"spread_atr":0.142489,"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":"f26c870e0ff7","ts":"2026-09-15T13:35:05+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.9469,"vwap":5.9043,"ext_from_open_pct":0.62,"max_ext_allowed_pct":4.0,"volume_pace":3.718,"trend":"positive","recent_slope_pct":0.3958,"volatility":"medium"},"price":5.9469,"volume":{"bars":5,"last_bar_volume":179707.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":330,"trade_rate":11.0,"buy_vol":51529.0,"sell_vol":25823.0,"unclassified_vol":0.0,"imbalance":0.332325,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.444191},"context":{"vwap":5.902732,"price_vs_vwap_pct":0.748261,"ema9":5.90128,"ema20":5.896985,"ema_stack":true,"ema_warm":false,"hod":5.96,"dist_to_hod_pct":-0.219799,"dist_to_hod_atr":0.213498,"atr":0.061359,"spread_atr":0.162976,"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":"60b9b8593625","ts":"2026-09-15T13:35:05+00:00","symbol":"FLNC","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":9.4645,"vwap":9.4615,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":2.988,"trend":"flat","recent_slope_pct":-0.0169,"volatility":"high"},"price":9.4645,"volume":{"bars":5,"last_bar_volume":12655.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":80,"trade_rate":2.666667,"buy_vol":2195.0,"sell_vol":6589.0,"unclassified_vol":0.0,"imbalance":-0.500228,"bid":9.44,"ask":9.45,"spread_pct":0.105876,"quote_size_imbalance":null,"quote_age_s":1.048415},"context":{"vwap":9.461536,"price_vs_vwap_pct":0.031326,"ema9":9.477883,"ema20":9.488788,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.687303,"dist_to_hod_atr":0.443836,"atr":0.147577,"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":-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":"73a4d54f0623","ts":"2026-09-15T13:35:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.60 below VWAP $12.60","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.5987,"vwap":12.5994,"ext_from_open_pct":0.79,"max_ext_allowed_pct":4.0,"volume_pace":3.035,"trend":"flat","recent_slope_pct":-0.0891,"volatility":"high"},"price":12.5987,"volume":{"bars":5,"last_bar_volume":134401.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":128,"trade_rate":4.266667,"buy_vol":12008.0,"sell_vol":116304.0,"unclassified_vol":0.0,"imbalance":-0.812831,"bid":12.62,"ask":12.66,"spread_pct":0.316456,"quote_size_imbalance":null,"quote_age_s":0.769833},"context":{"vwap":12.599364,"price_vs_vwap_pct":-0.005269,"ema9":12.618362,"ema20":12.603194,"ema_stack":false,"ema_warm":false,"hod":12.69,"dist_to_hod_pct":-0.719464,"dist_to_hod_atr":0.623602,"atr":0.146408,"spread_atr":0.27321,"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":"a1a64b53e45a","ts":"2026-09-15T13:35:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.82 below VWAP $7.83","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.818,"vwap":7.8289,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":1.96,"trend":"flat","recent_slope_pct":0.1121,"volatility":"high"},"price":7.818,"volume":{"bars":5,"last_bar_volume":46011.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":97,"trade_rate":3.233333,"buy_vol":9246.0,"sell_vol":19543.0,"unclassified_vol":0.0,"imbalance":-0.357671,"bid":7.8,"ask":7.82,"spread_pct":0.256082,"quote_size_imbalance":null,"quote_age_s":0.837964},"context":{"vwap":7.82916,"price_vs_vwap_pct":-0.142545,"ema9":7.871988,"ema20":7.892186,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.78392,"dist_to_hod_atr":0.531634,"atr":0.267101,"spread_atr":0.074878,"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":"8e8ef86561f1","ts":"2026-09-15T13:35:10+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.45 below VWAP $9.46","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.445,"vwap":9.4614,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":2.945,"trend":"flat","recent_slope_pct":-0.0581,"volatility":"high"},"price":9.445,"volume":{"bars":5,"last_bar_volume":12655.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":78,"trade_rate":2.6,"buy_vol":2232.0,"sell_vol":6452.0,"unclassified_vol":0.0,"imbalance":-0.485951,"bid":9.44,"ask":9.45,"spread_pct":0.105876,"quote_size_imbalance":null,"quote_age_s":0.626042},"context":{"vwap":9.461536,"price_vs_vwap_pct":-0.174771,"ema9":9.477883,"ema20":9.488788,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.89192,"dist_to_hod_atr":0.57597,"atr":0.147577,"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":-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":"912504608797","ts":"2026-09-15T13:35:10+00:00","symbol":"INFQ","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.66,"vwap":12.5997,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":3.003,"trend":"flat","recent_slope_pct":0.0079,"volatility":"high"},"price":12.66,"volume":{"bars":5,"last_bar_volume":134401.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":107,"trade_rate":3.566667,"buy_vol":12686.0,"sell_vol":115125.0,"unclassified_vol":0.0,"imbalance":-0.801488,"bid":12.64,"ask":12.68,"spread_pct":0.315956,"quote_size_imbalance":null,"quote_age_s":1.328373},"context":{"vwap":12.599364,"price_vs_vwap_pct":0.481263,"ema9":12.618362,"ema20":12.603194,"ema_stack":true,"ema_warm":false,"hod":12.69,"dist_to_hod_pct":-0.236407,"dist_to_hod_atr":0.204908,"atr":0.146408,"spread_atr":0.27321,"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":"115cf38dceac","ts":"2026-09-15T13:35:15+00:00","symbol":"IMMX","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":12.4483,"vwap":12.4299,"ext_from_open_pct":-0.33,"max_ext_allowed_pct":5.0,"volume_pace":3.719,"trend":"flat","recent_slope_pct":0.0597,"volatility":"high"},"price":12.4483,"volume":{"bars":5,"last_bar_volume":8642.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":1419.0,"sell_vol":5026.0,"unclassified_vol":0.0,"imbalance":-0.559659,"bid":12.42,"ask":12.51,"spread_pct":0.722022,"quote_size_imbalance":null,"quote_age_s":1.46665},"context":{"vwap":12.429552,"price_vs_vwap_pct":0.150833,"ema9":12.422088,"ema20":12.425364,"ema_stack":false,"ema_warm":false,"hod":12.63,"dist_to_hod_pct":-1.438638,"dist_to_hod_atr":1.017892,"atr":0.178506,"spread_atr":0.504184,"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":"e95d79c51722","ts":"2026-09-15T13:35:20+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.03 below VWAP $5.04","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.03,"vwap":5.0384,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":3.0,"volume_pace":1.989,"trend":"flat","recent_slope_pct":0.07,"volatility":"high"},"price":5.03,"volume":{"bars":5,"last_bar_volume":8729.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":45,"trade_rate":1.5,"buy_vol":1563.0,"sell_vol":13842.0,"unclassified_vol":0.0,"imbalance":-0.797079,"bid":5.03,"ask":5.04,"spread_pct":0.19861,"quote_size_imbalance":null,"quote_age_s":0.196281},"context":{"vwap":5.038369,"price_vs_vwap_pct":-0.166109,"ema9":5.043751,"ema20":5.038014,"ema_stack":false,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-1.178782,"dist_to_hod_atr":1.049512,"atr":0.057169,"spread_atr":0.174919,"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":"7ceab664c4de","ts":"2026-09-15T13:35:25+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.13% 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":12.44,"vwap":12.4309,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":4.0,"volume_pace":3.897,"trend":"flat","recent_slope_pct":0.0463,"volatility":"high"},"price":12.44,"volume":{"bars":5,"last_bar_volume":8642.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":28,"trade_rate":0.933333,"buy_vol":1610.0,"sell_vol":9061.0,"unclassified_vol":0.0,"imbalance":-0.698248,"bid":12.33,"ask":12.47,"spread_pct":1.129032,"quote_size_imbalance":null,"quote_age_s":3.768933},"context":{"vwap":12.429552,"price_vs_vwap_pct":0.084057,"ema9":12.422088,"ema20":12.425364,"ema_stack":false,"ema_warm":false,"hod":12.63,"dist_to_hod_pct":-1.504355,"dist_to_hod_atr":1.064389,"atr":0.178506,"spread_atr":0.784287,"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":"4b409dcf59da","ts":"2026-09-15T13:35:40+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.60 below VWAP $12.60","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.6,"vwap":12.6001,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":2.81,"trend":"flat","recent_slope_pct":-0.0871,"volatility":"high"},"price":12.6,"volume":{"bars":5,"last_bar_volume":134401.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":78,"trade_rate":2.6,"buy_vol":1668.0,"sell_vol":7004.0,"unclassified_vol":0.0,"imbalance":-0.615314,"bid":12.58,"ask":12.62,"spread_pct":0.31746,"quote_size_imbalance":null,"quote_age_s":0.022433},"context":{"vwap":12.599364,"price_vs_vwap_pct":0.005049,"ema9":12.618362,"ema20":12.603194,"ema_stack":false,"ema_warm":false,"hod":12.69,"dist_to_hod_pct":-0.70922,"dist_to_hod_atr":0.614723,"atr":0.146408,"spread_atr":0.27321,"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":"27d68bcdca30","ts":"2026-09-15T13:35:45+00:00","symbol":"INFQ","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.63,"vwap":12.601,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":2.815,"trend":"flat","recent_slope_pct":-0.0396,"volatility":"high"},"price":12.63,"volume":{"bars":5,"last_bar_volume":134401.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":117,"trade_rate":3.9,"buy_vol":3567.0,"sell_vol":10399.0,"unclassified_vol":0.0,"imbalance":-0.489188,"bid":12.62,"ask":12.65,"spread_pct":0.237436,"quote_size_imbalance":null,"quote_age_s":0.009002},"context":{"vwap":12.599364,"price_vs_vwap_pct":0.243156,"ema9":12.618362,"ema20":12.603194,"ema_stack":true,"ema_warm":false,"hod":12.69,"dist_to_hod_pct":-0.472813,"dist_to_hod_atr":0.409815,"atr":0.146408,"spread_atr":0.204908,"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":"d7583cde2160","ts":"2026-09-15T13:35:55+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.0407,"vwap":5.0386,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":1.86,"trend":"flat","recent_slope_pct":0.1123,"volatility":"high"},"price":5.0407,"volume":{"bars":5,"last_bar_volume":8729.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":3529.0,"sell_vol":4634.0,"unclassified_vol":0.0,"imbalance":-0.135367,"bid":5.03,"ask":5.04,"spread_pct":0.19861,"quote_size_imbalance":null,"quote_age_s":0.1946},"context":{"vwap":5.038369,"price_vs_vwap_pct":0.046262,"ema9":5.043751,"ema20":5.038014,"ema_stack":false,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-0.968566,"dist_to_hod_atr":0.862349,"atr":0.057169,"spread_atr":0.174919,"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":"a56b3ff4ad87","ts":"2026-09-15T13:35:55+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.27 below VWAP $11.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":11.265,"vwap":11.2714,"ext_from_open_pct":0.04,"max_ext_allowed_pct":3.0,"volume_pace":2.626,"trend":"flat","recent_slope_pct":0.1815,"volatility":"high"},"price":11.265,"volume":{"bars":5,"last_bar_volume":278032.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":355,"trade_rate":11.833333,"buy_vol":48817.0,"sell_vol":103983.0,"unclassified_vol":0.0,"imbalance":-0.361034,"bid":11.26,"ask":11.27,"spread_pct":0.088771,"quote_size_imbalance":null,"quote_age_s":0.021445},"context":{"vwap":11.267496,"price_vs_vwap_pct":-0.022149,"ema9":11.268519,"ema20":11.235593,"ema_stack":false,"ema_warm":false,"hod":11.425,"dist_to_hod_pct":-1.400438,"dist_to_hod_atr":0.97806,"atr":0.163589,"spread_atr":0.061129,"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":"e43953601bcb","ts":"2026-09-15T13:35:55+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.97 below VWAP $13.00","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.975,"vwap":12.998,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":2.899,"trend":"flat","recent_slope_pct":0.1459,"volatility":"high"},"price":12.975,"volume":{"bars":5,"last_bar_volume":59846.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":194,"trade_rate":6.466667,"buy_vol":38782.0,"sell_vol":46590.0,"unclassified_vol":0.0,"imbalance":-0.091459,"bid":12.97,"ask":12.99,"spread_pct":0.154083,"quote_size_imbalance":null,"quote_age_s":0.021224},"context":{"vwap":12.993165,"price_vs_vwap_pct":-0.139807,"ema9":12.987056,"ema20":12.945759,"ema_stack":false,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.480638,"dist_to_hod_atr":0.863299,"atr":0.225878,"spread_atr":0.088544,"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":"18455e40666a","ts":"2026-09-15T13:36:00+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.04 below VWAP $5.04","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.0362,"vwap":5.0385,"ext_from_open_pct":-0.27,"max_ext_allowed_pct":4.0,"volume_pace":1.841,"trend":"flat","recent_slope_pct":0.0945,"volatility":"high"},"price":5.0362,"volume":{"bars":5,"last_bar_volume":8729.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":67,"trade_rate":2.233333,"buy_vol":5057.0,"sell_vol":3525.0,"unclassified_vol":0.0,"imbalance":0.178513,"bid":5.03,"ask":5.04,"spread_pct":0.19861,"quote_size_imbalance":null,"quote_age_s":0.556868},"context":{"vwap":5.038369,"price_vs_vwap_pct":-0.043053,"ema9":5.043751,"ema20":5.038014,"ema_stack":false,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-1.056974,"dist_to_hod_atr":0.941062,"atr":0.057169,"spread_atr":0.174919,"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":"2d09d0ecce91","ts":"2026-09-15T13:36:00+00:00","symbol":"CLSK","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.0,"vwap":12.9996,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":2.918,"trend":"flat","recent_slope_pct":0.1843,"volatility":"high"},"price":13.0,"volume":{"bars":5,"last_bar_volume":59846.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":185,"trade_rate":6.166667,"buy_vol":40912.0,"sell_vol":51179.0,"unclassified_vol":0.0,"imbalance":-0.111488,"bid":12.99,"ask":13.01,"spread_pct":0.153846,"quote_size_imbalance":null,"quote_age_s":0.217593},"context":{"vwap":12.993165,"price_vs_vwap_pct":0.052602,"ema9":12.987056,"ema20":12.945759,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.290812,"dist_to_hod_atr":0.75262,"atr":0.225878,"spread_atr":0.088544,"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":"089bf8ea0814","ts":"2026-09-15T13:36:05+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":11.288,"vwap":11.2715,"ext_from_open_pct":0.25,"max_ext_allowed_pct":3.0,"volume_pace":2.608,"trend":"flat","recent_slope_pct":-0.0743,"volatility":"high"},"price":11.288,"volume":{"bars":6,"last_bar_volume":259944.0,"baseline_avg":376938.8,"bar_rvol":0.689619,"raw_accel":-0.065057,"smooth_accel":-0.455933,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":376,"trade_rate":12.533333,"buy_vol":47476.0,"sell_vol":88206.0,"unclassified_vol":0.0,"imbalance":-0.300187,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":0.097579},"context":{"vwap":11.271456,"price_vs_vwap_pct":0.146781,"ema9":11.268795,"ema20":11.238861,"ema_stack":true,"ema_warm":false,"hod":11.425,"dist_to_hod_pct":-1.199125,"dist_to_hod_atr":0.851665,"atr":0.160861,"spread_atr":0.062165,"own_change_pct":0.625006,"rel_strength_pct":{"SPY":0.690804,"IWM":0.841494}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":-2},"missing":["momentum"],"volume_pressure":-0.207015},"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":"c04a6d9a5c40","ts":"2026-09-15T13:36:10+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.27 below VWAP $11.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":11.2667,"vwap":11.2715,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":2.611,"trend":"flat","recent_slope_pct":-0.112,"volatility":"high"},"price":11.2667,"volume":{"bars":6,"last_bar_volume":259944.0,"baseline_avg":376938.8,"bar_rvol":0.689619,"raw_accel":-0.065057,"smooth_accel":-0.455933,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":428,"trade_rate":14.266667,"buy_vol":71054.0,"sell_vol":84219.0,"unclassified_vol":0.0,"imbalance":-0.084786,"bid":11.26,"ask":11.27,"spread_pct":0.088771,"quote_size_imbalance":null,"quote_age_s":0.331059},"context":{"vwap":11.271456,"price_vs_vwap_pct":-0.042192,"ema9":11.268795,"ema20":11.238861,"ema_stack":false,"ema_warm":false,"hod":11.425,"dist_to_hod_pct":-1.385558,"dist_to_hod_atr":0.984077,"atr":0.160861,"spread_atr":0.062165,"own_change_pct":0.625006,"rel_strength_pct":{"SPY":0.690804,"IWM":0.841494}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":0},"missing":["momentum"],"volume_pressure":-0.05847},"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":"b76b00805d45","ts":"2026-09-15T13:36:10+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.96 below VWAP $13.00","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.9617,"vwap":12.9995,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":2.851,"trend":"flat","recent_slope_pct":-0.1662,"volatility":"high"},"price":12.9617,"volume":{"bars":6,"last_bar_volume":133503.0,"baseline_avg":139618.4,"bar_rvol":0.956199,"raw_accel":1.230776,"smooth_accel":-0.307809,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":159,"trade_rate":5.3,"buy_vol":38266.0,"sell_vol":35978.0,"unclassified_vol":0.0,"imbalance":0.030817,"bid":12.96,"ask":12.98,"spread_pct":0.154202,"quote_size_imbalance":null,"quote_age_s":0.760755},"context":{"vwap":12.999614,"price_vs_vwap_pct":-0.291653,"ema9":12.989645,"ema20":12.950925,"ema_stack":false,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.581625,"dist_to_hod_atr":0.941801,"atr":0.221172,"spread_atr":0.090427,"own_change_pct":0.775194,"rel_strength_pct":{"SPY":0.840992,"IWM":0.991682}},"vas":{"raw":null,"score":null,"components":{"rvol":-1,"accel":-2,"momentum":null,"imbalance":0},"missing":["momentum"],"volume_pressure":0.029467},"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":"a4000fafd339","ts":"2026-09-15T13:36:40+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":11.295,"vwap":11.2732,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":2.572,"trend":"flat","recent_slope_pct":-0.062,"volatility":"high"},"price":11.295,"volume":{"bars":6,"last_bar_volume":259944.0,"baseline_avg":376938.8,"bar_rvol":0.689619,"raw_accel":-0.065057,"smooth_accel":-0.455933,"accel_momentum":null,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.784094},"flow":{"window_s":30,"trades":524,"trade_rate":17.466667,"buy_vol":86991.0,"sell_vol":56433.0,"unclassified_vol":0.0,"imbalance":0.213061,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.218921},"context":{"vwap":11.271456,"price_vs_vwap_pct":0.208885,"ema9":11.268795,"ema20":11.238861,"ema_stack":true,"ema_warm":false,"hod":11.425,"dist_to_hod_pct":-1.137856,"dist_to_hod_atr":0.808149,"atr":0.160861,"spread_atr":0.062165,"own_change_pct":0.625006,"rel_strength_pct":{"SPY":0.690804,"IWM":0.841494}},"vas":{"raw":null,"score":null,"components":{"rvol":-2,"accel":-2,"momentum":null,"imbalance":1},"missing":["momentum"],"volume_pressure":0.146931},"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":"ec5d2dc0c4f3","ts":"2026-09-15T13:37:05+00:00","symbol":"TGB","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":7.8854,"vwap":7.8736,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":1.309,"trend":"flat","recent_slope_pct":0.1599,"volatility":"medium"},"price":7.8854,"volume":{"bars":7,"last_bar_volume":5180.0,"baseline_avg":15075.333333,"bar_rvol":0.343608,"raw_accel":-0.263263,"smooth_accel":-0.103744,"accel_momentum":0.589354,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":704.0,"sell_vol":1725.0,"unclassified_vol":0.0,"imbalance":-0.420338,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.600571},"context":{"vwap":7.873267,"price_vs_vwap_pct":0.154099,"ema9":7.871097,"ema20":7.871978,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.562421,"dist_to_hod_atr":0.631704,"atr":0.070603,"spread_atr":0.141638,"own_change_pct":-0.063371,"rel_strength_pct":{"SPY":-0.115404,"IWM":0.170559}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.144431},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":null}}}
{"type":"snapshot","id":"21d520302d22","ts":"2026-09-15T13:37:05+00:00","symbol":"MARA","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":11.3157,"vwap":11.2739,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":2.456,"trend":"flat","recent_slope_pct":-0.0977,"volatility":"high"},"price":11.3157,"volume":{"bars":7,"last_bar_volume":227914.0,"baseline_avg":357439.666667,"bar_rvol":0.637629,"raw_accel":-0.123219,"smooth_accel":0.010478,"accel_momentum":0.466411,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":null},"flow":{"window_s":30,"trades":277,"trade_rate":9.233333,"buy_vol":28576.0,"sell_vol":20762.0,"unclassified_vol":0.0,"imbalance":0.158377,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.14246},"context":{"vwap":11.273813,"price_vs_vwap_pct":0.371539,"ema9":11.276636,"ema20":11.245445,"ema_stack":true,"ema_warm":false,"hod":11.425,"dist_to_hod_pct":-0.956674,"dist_to_hod_atr":0.692023,"atr":0.157943,"spread_atr":0.063314,"own_change_pct":0.964286,"rel_strength_pct":{"SPY":0.912253,"IWM":1.198216}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.100986},"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":"c9a590c5471a","ts":"2026-09-15T13:37:35+00:00","symbol":"DRVN","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.895,"vwap":12.792,"ext_from_open_pct":-0.65,"max_ext_allowed_pct":4.0,"volume_pace":6.809,"trend":"flat","recent_slope_pct":0.3893,"volatility":"medium"},"price":12.895,"volume":{"bars":7,"last_bar_volume":2580.0,"baseline_avg":16883.333333,"bar_rvol":0.152813,"raw_accel":-0.528423,"smooth_accel":-0.829076,"accel_momentum":0.093997,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":3.078404},"flow":{"window_s":30,"trades":298,"trade_rate":9.933333,"buy_vol":15585.0,"sell_vol":14733.0,"unclassified_vol":0.0,"imbalance":0.028102,"bid":12.88,"ask":12.94,"spread_pct":0.464756,"quote_size_imbalance":null,"quote_age_s":1.545628},"context":{"vwap":12.767794,"price_vs_vwap_pct":0.996302,"ema9":12.742988,"ema20":12.749312,"ema_stack":false,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-1.752381,"dist_to_hod_atr":0.805075,"atr":0.285688,"spread_atr":0.21002,"own_change_pct":1.425178,"rel_strength_pct":{"SPY":1.373146,"IWM":1.659109}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.004294},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":null}}}
{"type":"snapshot","id":"45eae1da164b","ts":"2026-09-15T13:37:45+00:00","symbol":"CXM","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.745,"vwap":5.7345,"ext_from_open_pct":0.79,"max_ext_allowed_pct":4.0,"volume_pace":1.652,"trend":"flat","recent_slope_pct":0.0084,"volatility":"high"},"price":5.745,"volume":{"bars":7,"last_bar_volume":7446.0,"baseline_avg":12293.166667,"bar_rvol":0.605702,"raw_accel":0.093553,"smooth_accel":-0.099361,"accel_momentum":0.689728,"rvol_3bar":null,"trend_3bar":"INSUFFICIENT","projected_rvol":0.841552},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1210.0,"sell_vol":5520.0,"unclassified_vol":0.0,"imbalance":-0.640416,"bid":5.74,"ask":5.75,"spread_pct":0.174064,"quote_size_imbalance":null,"quote_age_s":3.916969},"context":{"vwap":5.733444,"price_vs_vwap_pct":0.20156,"ema9":5.747122,"ema20":5.744349,"ema_stack":false,"ema_warm":false,"hod":5.77,"dist_to_hod_pct":-0.433276,"dist_to_hod_atr":0.51402,"atr":0.048636,"spread_atr":0.205608,"own_change_pct":-0.104243,"rel_strength_pct":{"SPY":-0.156275,"IWM":0.129688}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.387902},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":["not_decelerating"],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":null}}}
{"type":"snapshot","id":"a9b5c0aa1d36","ts":"2026-09-15T13:38:05+00:00","symbol":"CXM","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.755,"vwap":5.7349,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":1.617,"trend":"flat","recent_slope_pct":-0.0026,"volatility":"high"},"price":5.755,"volume":{"bars":8,"last_bar_volume":8029.0,"baseline_avg":11600.714286,"bar_rvol":0.692113,"raw_accel":0.078297,"smooth_accel":0.809942,"accel_momentum":0.909303,"rvol_3bar":[0.508514,0.605702,0.692113],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1306.0,"sell_vol":670.0,"unclassified_vol":0.0,"imbalance":0.321862,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":4.471071},"context":{"vwap":5.734588,"price_vs_vwap_pct":0.355937,"ema9":5.747397,"ema20":5.744744,"ema_stack":true,"ema_warm":false,"hod":5.77,"dist_to_hod_pct":-0.259965,"dist_to_hod_atr":0.326965,"atr":0.045877,"spread_atr":0.217976,"own_change_pct":0.019139,"rel_strength_pct":{"SPY":-0.020378,"IWM":0.160713}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.222765},"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":"41532477248d","ts":"2026-09-15T13:38:05+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.045,"vwap":5.0386,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":1.522,"trend":"flat","recent_slope_pct":-0.0313,"volatility":"high"},"price":5.045,"volume":{"bars":8,"last_bar_volume":31432.0,"baseline_avg":59794.714286,"bar_rvol":0.525665,"raw_accel":1.102661,"smooth_accel":-0.263496,"accel_momentum":0.470376,"rvol_3bar":[0.400541,0.215944,0.525665],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":8049.0,"sell_vol":7052.0,"unclassified_vol":0.0,"imbalance":0.066022,"bid":5.04,"ask":5.05,"spread_pct":0.198216,"quote_size_imbalance":null,"quote_age_s":3.622729},"context":{"vwap":5.038552,"price_vs_vwap_pct":0.127981,"ema9":5.040402,"ema20":5.037615,"ema_stack":true,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-0.884086,"dist_to_hod_atr":0.869478,"atr":0.051755,"spread_atr":0.193217,"own_change_pct":-0.688976,"rel_strength_pct":{"SPY":-0.728493,"IWM":-0.547403}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.034706},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a8496e615191","ts":"2026-09-15T13:38:05+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":11.295,"vwap":11.2748,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":2.213,"trend":"flat","recent_slope_pct":-0.0984,"volatility":"high"},"price":11.295,"volume":{"bars":8,"last_bar_volume":63735.0,"baseline_avg":338936.0,"bar_rvol":0.188044,"raw_accel":-0.720355,"smooth_accel":-0.252529,"accel_momentum":-0.263008,"rvol_3bar":[0.689619,0.637629,0.188044],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":22139.0,"sell_vol":11815.0,"unclassified_vol":0.0,"imbalance":0.304058,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.041694},"context":{"vwap":11.274695,"price_vs_vwap_pct":0.180096,"ema9":11.283029,"ema20":11.25146,"ema_stack":true,"ema_warm":false,"hod":11.425,"dist_to_hod_pct":-1.137856,"dist_to_hod_atr":0.872,"atr":0.149083,"spread_atr":0.067077,"own_change_pct":0.120407,"rel_strength_pct":{"SPY":0.08089,"IWM":0.261981}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.057176},"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":"67d7981810a2","ts":"2026-09-15T13:38:15+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.87 below VWAP $7.87","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.87,"vwap":7.8737,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.216,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":7.87,"volume":{"bars":8,"last_bar_volume":9963.0,"baseline_avg":13661.714286,"bar_rvol":0.729264,"raw_accel":0.923359,"smooth_accel":0.147485,"accel_momentum":0.251229,"rvol_3bar":[0.421417,0.343608,0.729264],"trend_3bar":"MIXED","projected_rvol":0.117994},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":63.0,"sell_vol":1405.0,"unclassified_vol":0.0,"imbalance":-0.914169,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.222164},"context":{"vwap":7.873745,"price_vs_vwap_pct":-0.047567,"ema9":7.871877,"ema20":7.872266,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.75662,"dist_to_hod_atr":0.89568,"atr":0.066988,"spread_atr":0.14928,"own_change_pct":0.254615,"rel_strength_pct":{"SPY":0.215098,"IWM":0.396189}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.666671},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0a0f2d0edacb","ts":"2026-09-15T13:38:20+00:00","symbol":"TNON","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":6.26,"vwap":6.1948,"ext_from_open_pct":-1.18,"max_ext_allowed_pct":5.0,"volume_pace":4.327,"trend":"flat","recent_slope_pct":0.7012,"volatility":"high"},"price":6.26,"volume":{"bars":8,"last_bar_volume":60201.0,"baseline_avg":55763.0,"bar_rvol":1.079587,"raw_accel":2.57658,"smooth_accel":-0.061538,"accel_momentum":0.231126,"rvol_3bar":[1.08004,0.270387,1.079587],"trend_3bar":"MIXED","projected_rvol":0.685616},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":14988.0,"sell_vol":3310.0,"unclassified_vol":0.0,"imbalance":0.638212,"bid":6.23,"ask":6.29,"spread_pct":0.958466,"quote_size_imbalance":null,"quote_age_s":0.416303},"context":{"vwap":6.193173,"price_vs_vwap_pct":1.07905,"ema9":6.19093,"ema20":6.246844,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-2.1875,"dist_to_hod_atr":1.231661,"atr":0.113668,"spread_atr":0.527855,"own_change_pct":0.441935,"rel_strength_pct":{"SPY":0.402419,"IWM":0.583509}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.689005},"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":"6060a1e019cf","ts":"2026-09-15T13:38:25+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.43% 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.34,"vwap":6.1974,"ext_from_open_pct":0.08,"max_ext_allowed_pct":5.0,"volume_pace":4.344,"trend":"flat","recent_slope_pct":0.9581,"volatility":"high"},"price":6.34,"volume":{"bars":8,"last_bar_volume":60201.0,"baseline_avg":55763.0,"bar_rvol":1.079587,"raw_accel":2.57658,"smooth_accel":-0.061538,"accel_momentum":0.231126,"rvol_3bar":[1.08004,0.270387,1.079587],"trend_3bar":"MIXED","projected_rvol":0.828592},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":20230.0,"sell_vol":3742.0,"unclassified_vol":0.0,"imbalance":0.687802,"bid":6.25,"ask":6.34,"spread_pct":1.429706,"quote_size_imbalance":null,"quote_age_s":0.040896},"context":{"vwap":6.193173,"price_vs_vwap_pct":2.370795,"ema9":6.19093,"ema20":6.246844,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-0.9375,"dist_to_hod_atr":0.527855,"atr":0.113668,"spread_atr":0.791782,"own_change_pct":0.441935,"rel_strength_pct":{"SPY":0.402419,"IWM":0.583509}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.742542},"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":"dd7be7772b49","ts":"2026-09-15T13:38:25+00:00","symbol":"TGB","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":7.875,"vwap":7.8737,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":1.195,"trend":"flat","recent_slope_pct":0.0127,"volatility":"high"},"price":7.875,"volume":{"bars":8,"last_bar_volume":9963.0,"baseline_avg":13661.714286,"bar_rvol":0.729264,"raw_accel":0.923359,"smooth_accel":0.147485,"accel_momentum":0.251229,"rvol_3bar":[0.421417,0.343608,0.729264],"trend_3bar":"MIXED","projected_rvol":0.123498},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":363.0,"sell_vol":1402.0,"unclassified_vol":0.0,"imbalance":-0.588669,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.163875},"context":{"vwap":7.873745,"price_vs_vwap_pct":0.015935,"ema9":7.871877,"ema20":7.872266,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.693569,"dist_to_hod_atr":0.82104,"atr":0.066988,"spread_atr":0.14928,"own_change_pct":0.254615,"rel_strength_pct":{"SPY":0.215098,"IWM":0.396189}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.429295},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f6201afba395","ts":"2026-09-15T13:38:35+00:00","symbol":"TNON","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":6.33,"vwap":6.2045,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":5.0,"volume_pace":4.511,"trend":"flat","recent_slope_pct":0.9261,"volatility":"high"},"price":6.33,"volume":{"bars":8,"last_bar_volume":60201.0,"baseline_avg":55763.0,"bar_rvol":1.079587,"raw_accel":2.57658,"smooth_accel":-0.061538,"accel_momentum":0.231126,"rvol_3bar":[1.08004,0.270387,1.079587],"trend_3bar":"MIXED","projected_rvol":1.443292},"flow":{"window_s":30,"trades":307,"trade_rate":10.233333,"buy_vol":32795.0,"sell_vol":13791.0,"unclassified_vol":0.0,"imbalance":0.407934,"bid":6.33,"ask":6.36,"spread_pct":0.472813,"quote_size_imbalance":null,"quote_age_s":0.443015},"context":{"vwap":6.193173,"price_vs_vwap_pct":2.209327,"ema9":6.19093,"ema20":6.246844,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-1.09375,"dist_to_hod_atr":0.61583,"atr":0.113668,"spread_atr":0.263927,"own_change_pct":0.441935,"rel_strength_pct":{"SPY":0.402419,"IWM":0.583509}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.4404},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a0a78d96778","ts":"2026-09-15T13:38:35+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.87 below VWAP $7.87","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.87,"vwap":7.8737,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.182,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":7.87,"volume":{"bars":8,"last_bar_volume":9963.0,"baseline_avg":13661.714286,"bar_rvol":0.729264,"raw_accel":0.923359,"smooth_accel":0.147485,"accel_momentum":0.251229,"rvol_3bar":[0.421417,0.343608,0.729264],"trend_3bar":"MIXED","projected_rvol":0.203781},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":362.0,"sell_vol":1261.0,"unclassified_vol":0.0,"imbalance":-0.553913,"bid":7.86,"ask":7.88,"spread_pct":0.25413,"quote_size_imbalance":null,"quote_age_s":0.478986},"context":{"vwap":7.873745,"price_vs_vwap_pct":-0.047567,"ema9":7.871877,"ema20":7.872266,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.75662,"dist_to_hod_atr":0.89568,"atr":0.066988,"spread_atr":0.29856,"own_change_pct":0.254615,"rel_strength_pct":{"SPY":0.215098,"IWM":0.396189}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.403949},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7e44e61d507e","ts":"2026-09-15T13:38:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.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":6.35,"vwap":6.2099,"ext_from_open_pct":0.24,"max_ext_allowed_pct":5.0,"volume_pace":4.614,"trend":"flat","recent_slope_pct":0.9901,"volatility":"high"},"price":6.35,"volume":{"bars":8,"last_bar_volume":60201.0,"baseline_avg":55763.0,"bar_rvol":1.079587,"raw_accel":2.57658,"smooth_accel":-0.061538,"accel_momentum":0.231126,"rvol_3bar":[1.08004,0.270387,1.079587],"trend_3bar":"MIXED","projected_rvol":1.631117},"flow":{"window_s":30,"trades":392,"trade_rate":13.066667,"buy_vol":43294.0,"sell_vol":22369.0,"unclassified_vol":0.0,"imbalance":0.318673,"bid":6.27,"ask":6.35,"spread_pct":1.267829,"quote_size_imbalance":null,"quote_age_s":1.073973},"context":{"vwap":6.193173,"price_vs_vwap_pct":2.532263,"ema9":6.19093,"ema20":6.246844,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-0.78125,"dist_to_hod_atr":0.439879,"atr":0.113668,"spread_atr":0.703806,"own_change_pct":0.441935,"rel_strength_pct":{"SPY":0.402419,"IWM":0.583509}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.344035},"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":"a86e8373c7c4","ts":"2026-09-15T13:38:45+00:00","symbol":"TGB","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":7.88,"vwap":7.8737,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":1.193,"trend":"flat","recent_slope_pct":0.0254,"volatility":"high"},"price":7.88,"volume":{"bars":8,"last_bar_volume":9963.0,"baseline_avg":13661.714286,"bar_rvol":0.729264,"raw_accel":0.923359,"smooth_accel":0.147485,"accel_momentum":0.251229,"rvol_3bar":[0.421417,0.343608,0.729264],"trend_3bar":"MIXED","projected_rvol":0.459093},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":3415.0,"sell_vol":886.0,"unclassified_vol":0.0,"imbalance":0.588003,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.742118},"context":{"vwap":7.873745,"price_vs_vwap_pct":0.079437,"ema9":7.871877,"ema20":7.872266,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.630517,"dist_to_hod_atr":0.7464,"atr":0.066988,"spread_atr":0.14928,"own_change_pct":0.254615,"rel_strength_pct":{"SPY":0.215098,"IWM":0.396189}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.428809},"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":"ccf6bcc08661","ts":"2026-09-15T13:38:45+00:00","symbol":"BB","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":7.745,"vwap":7.7107,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.991,"trend":"flat","recent_slope_pct":0.0913,"volatility":"medium"},"price":7.745,"volume":{"bars":8,"last_bar_volume":10297.0,"baseline_avg":27380.714286,"bar_rvol":0.376068,"raw_accel":-0.255943,"smooth_accel":0.75396,"accel_momentum":0.84744,"rvol_3bar":[0.739841,0.46694,0.376068],"trend_3bar":"DECELERATING","projected_rvol":0.423607},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":1116.0,"sell_vol":2892.0,"unclassified_vol":0.0,"imbalance":-0.443114,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.638083},"context":{"vwap":7.709722,"price_vs_vwap_pct":0.457573,"ema9":7.709871,"ema20":7.707097,"ema_stack":true,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-0.577664,"dist_to_hod_atr":0.403604,"atr":0.111496,"spread_atr":0.08969,"own_change_pct":-0.644745,"rel_strength_pct":{"SPY":-0.684262,"IWM":-0.503172}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.166641},"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":"11fef34aaf5e","ts":"2026-09-15T13:38:50+00:00","symbol":"TNON","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":6.295,"vwap":6.2076,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":5.0,"volume_pace":4.581,"trend":"flat","recent_slope_pct":0.8137,"volatility":"high"},"price":6.295,"volume":{"bars":8,"last_bar_volume":60201.0,"baseline_avg":55763.0,"bar_rvol":1.079587,"raw_accel":2.57658,"smooth_accel":-0.061538,"accel_momentum":0.231126,"rvol_3bar":[1.08004,0.270387,1.079587],"trend_3bar":"MIXED","projected_rvol":1.49256},"flow":{"window_s":30,"trades":367,"trade_rate":12.233333,"buy_vol":35668.0,"sell_vol":20946.0,"unclassified_vol":0.0,"imbalance":0.260042,"bid":6.27,"ask":6.32,"spread_pct":0.794281,"quote_size_imbalance":null,"quote_age_s":0.27041},"context":{"vwap":6.193173,"price_vs_vwap_pct":1.644188,"ema9":6.19093,"ema20":6.246844,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-1.640625,"dist_to_hod_atr":0.923745,"atr":0.113668,"spread_atr":0.439879,"own_change_pct":0.441935,"rel_strength_pct":{"SPY":0.402419,"IWM":0.583509}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.280738},"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":"1651ed9c40d6","ts":"2026-09-15T13:39:05+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.87 below VWAP $7.87","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.87,"vwap":7.8737,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.149,"trend":"flat","recent_slope_pct":-0.0254,"volatility":"high"},"price":7.87,"volume":{"bars":9,"last_bar_volume":4709.0,"baseline_avg":13199.375,"bar_rvol":0.356759,"raw_accel":-0.527351,"smooth_accel":-0.065392,"accel_momentum":-0.212877,"rvol_3bar":[0.343608,0.729264,0.356759],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":3053.0,"sell_vol":34.0,"unclassified_vol":0.0,"imbalance":0.977972,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":5.005788},"context":{"vwap":7.873657,"price_vs_vwap_pct":-0.046441,"ema9":7.872502,"ema20":7.872526,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.75662,"dist_to_hod_atr":0.942923,"atr":0.063632,"spread_atr":0.157154,"own_change_pct":0.574713,"rel_strength_pct":{"SPY":0.445738,"IWM":0.627168}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.348901},"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":"4d4b8206844c","ts":"2026-09-15T13:39:05+00:00","symbol":"RUM","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":7.84,"vwap":7.8246,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":1.277,"trend":"flat","recent_slope_pct":0.2644,"volatility":"high"},"price":7.84,"volume":{"bars":9,"last_bar_volume":20418.0,"baseline_avg":93569.25,"bar_rvol":0.218213,"raw_accel":-0.127149,"smooth_accel":-0.193715,"accel_momentum":0.021229,"rvol_3bar":[0.436922,0.116102,0.218213],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":461.0,"sell_vol":10010.0,"unclassified_vol":0.0,"imbalance":-0.911947,"bid":7.82,"ask":7.86,"spread_pct":0.510204,"quote_size_imbalance":null,"quote_age_s":1.110036},"context":{"vwap":7.824597,"price_vs_vwap_pct":0.196858,"ema9":7.833063,"ema20":7.862536,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.507538,"dist_to_hod_atr":0.544542,"atr":0.220369,"spread_atr":0.181514,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.128975,"IWM":0.052455}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.198998},"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":"e1c7e0cc65b7","ts":"2026-09-15T13:39:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.21 below VWAP $6.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":6.2075,"vwap":6.208,"ext_from_open_pct":-2.01,"max_ext_allowed_pct":4.0,"volume_pace":4.616,"trend":"flat","recent_slope_pct":0.3874,"volatility":"high"},"price":6.2075,"volume":{"bars":9,"last_bar_volume":78977.0,"baseline_avg":56317.75,"bar_rvol":1.402347,"raw_accel":0.311889,"smooth_accel":-0.149777,"accel_momentum":-0.088239,"rvol_3bar":[0.270387,1.079587,1.402347],"trend_3bar":"ACCELERATING","projected_rvol":1.280165},"flow":{"window_s":30,"trades":252,"trade_rate":8.4,"buy_vol":11619.0,"sell_vol":22032.0,"unclassified_vol":0.0,"imbalance":-0.309441,"bid":6.17,"ask":6.21,"spread_pct":0.646204,"quote_size_imbalance":null,"quote_age_s":0.63343},"context":{"vwap":6.207366,"price_vs_vwap_pct":0.002164,"ema9":6.203744,"ema20":6.247621,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-3.007813,"dist_to_hod_atr":1.616018,"atr":0.11912,"spread_atr":0.335796,"own_change_pct":3.903654,"rel_strength_pct":{"SPY":3.77468,"IWM":3.956109}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.433944},"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":"8f16dfa8ff6d","ts":"2026-09-15T13:39:25+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.45 below VWAP $8.46","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.4514,"vwap":8.4572,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":1.56,"trend":"flat","recent_slope_pct":-0.1819,"volatility":"high"},"price":8.4514,"volume":{"bars":9,"last_bar_volume":50061.0,"baseline_avg":165333.75,"bar_rvol":0.302788,"raw_accel":-0.374496,"smooth_accel":-0.352597,"accel_momentum":-0.498551,"rvol_3bar":[0.459491,0.45084,0.302788],"trend_3bar":"DECELERATING","projected_rvol":0.348401},"flow":{"window_s":30,"trades":197,"trade_rate":6.566667,"buy_vol":11236.0,"sell_vol":16449.0,"unclassified_vol":0.0,"imbalance":-0.188297,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":1.147659},"context":{"vwap":8.456944,"price_vs_vwap_pct":-0.065556,"ema9":8.489318,"ema20":8.475972,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.785009,"dist_to_hod_atr":1.224167,"atr":0.125473,"spread_atr":0.079698,"own_change_pct":-0.117855,"rel_strength_pct":{"SPY":-0.24683,"IWM":-0.0654}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.057014},"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":"18e3176bedfc","ts":"2026-09-15T13:39:25+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.82 below VWAP $7.82","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.82,"vwap":7.8246,"ext_from_open_pct":1.56,"max_ext_allowed_pct":4.0,"volume_pace":1.234,"trend":"flat","recent_slope_pct":0.2132,"volatility":"high"},"price":7.82,"volume":{"bars":9,"last_bar_volume":20418.0,"baseline_avg":93569.25,"bar_rvol":0.218213,"raw_accel":-0.127149,"smooth_accel":-0.193715,"accel_momentum":0.021229,"rvol_3bar":[0.436922,0.116102,0.218213],"trend_3bar":"MIXED","projected_rvol":0.040834},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":796.0,"sell_vol":10800.0,"unclassified_vol":0.0,"imbalance":-0.862711,"bid":7.82,"ask":7.86,"spread_pct":0.510204,"quote_size_imbalance":null,"quote_age_s":9.99875},"context":{"vwap":7.824597,"price_vs_vwap_pct":-0.058746,"ema9":7.833063,"ema20":7.862536,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.758794,"dist_to_hod_atr":0.635299,"atr":0.220369,"spread_atr":0.181514,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.128975,"IWM":0.052455}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.188255},"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":"86abfcfd5d8b","ts":"2026-09-15T13:39:30+00:00","symbol":"TGB","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":7.875,"vwap":7.8736,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":1.121,"trend":"flat","recent_slope_pct":-0.0127,"volatility":"high"},"price":7.875,"volume":{"bars":9,"last_bar_volume":4709.0,"baseline_avg":13199.375,"bar_rvol":0.356759,"raw_accel":-0.527351,"smooth_accel":-0.065392,"accel_momentum":-0.212877,"rvol_3bar":[0.343608,0.729264,0.356759],"trend_3bar":"MIXED","projected_rvol":0.348956},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":738.0,"sell_vol":1565.0,"unclassified_vol":0.0,"imbalance":-0.359097,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.005768},"context":{"vwap":7.873657,"price_vs_vwap_pct":0.017062,"ema9":7.872502,"ema20":7.872526,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.693569,"dist_to_hod_atr":0.864346,"atr":0.063632,"spread_atr":0.157154,"own_change_pct":0.574713,"rel_strength_pct":{"SPY":0.445738,"IWM":0.627168}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.128111},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c38fb6b8681a","ts":"2026-09-15T13:39:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.41 (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":10.74,"vwap":10.5713,"ext_from_open_pct":3.17,"max_ext_allowed_pct":3.0,"volume_pace":2.988,"trend":"flat","recent_slope_pct":0.2718,"volatility":"medium"},"price":10.74,"volume":{"bars":9,"last_bar_volume":65962.0,"baseline_avg":75004.25,"bar_rvol":0.879443,"raw_accel":1.84417,"smooth_accel":0.437914,"accel_momentum":0.35699,"rvol_3bar":[0.942585,0.281436,0.879443],"trend_3bar":"MIXED","projected_rvol":0.979598},"flow":{"window_s":30,"trades":183,"trade_rate":6.1,"buy_vol":19216.0,"sell_vol":17521.0,"unclassified_vol":0.0,"imbalance":0.046139,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.006429},"context":{"vwap":10.563925,"price_vs_vwap_pct":1.666754,"ema9":10.631242,"ema20":10.593757,"ema_stack":true,"ema_warm":false,"hod":10.7,"dist_to_hod_pct":0.373832,"dist_to_hod_atr":-0.257518,"atr":0.155329,"spread_atr":0.06438,"own_change_pct":-0.187266,"rel_strength_pct":{"SPY":-0.316241,"IWM":-0.134811}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.040576},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"419a0878ba87","ts":"2026-09-15T13:39:30+00:00","symbol":"RUM","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":7.86,"vwap":7.8251,"ext_from_open_pct":2.08,"max_ext_allowed_pct":4.0,"volume_pace":1.245,"trend":"flat","recent_slope_pct":0.3154,"volatility":"high"},"price":7.86,"volume":{"bars":9,"last_bar_volume":20418.0,"baseline_avg":93569.25,"bar_rvol":0.218213,"raw_accel":-0.127149,"smooth_accel":-0.193715,"accel_momentum":0.021229,"rvol_3bar":[0.436922,0.116102,0.218213],"trend_3bar":"MIXED","projected_rvol":0.334105},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":12603.0,"sell_vol":3028.0,"unclassified_vol":0.0,"imbalance":0.612565,"bid":7.82,"ask":7.86,"spread_pct":0.510204,"quote_size_imbalance":null,"quote_age_s":14.99875},"context":{"vwap":7.824597,"price_vs_vwap_pct":0.452462,"ema9":7.833063,"ema20":7.862536,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.256281,"dist_to_hod_atr":0.453785,"atr":0.220369,"spread_atr":0.181514,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.128975,"IWM":0.052455}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.133669},"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":"cd704a8b7290","ts":"2026-09-15T13:39:35+00:00","symbol":"TNON","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":6.21,"vwap":6.2082,"ext_from_open_pct":-1.97,"max_ext_allowed_pct":4.0,"volume_pace":4.612,"trend":"flat","recent_slope_pct":0.3955,"volatility":"high"},"price":6.21,"volume":{"bars":9,"last_bar_volume":78977.0,"baseline_avg":56317.75,"bar_rvol":1.402347,"raw_accel":0.311889,"smooth_accel":-0.149777,"accel_momentum":-0.088239,"rvol_3bar":[0.270387,1.079587,1.402347],"trend_3bar":"ACCELERATING","projected_rvol":1.168208},"flow":{"window_s":30,"trades":239,"trade_rate":7.966667,"buy_vol":19014.0,"sell_vol":16183.0,"unclassified_vol":0.0,"imbalance":0.080433,"bid":6.18,"ask":6.21,"spread_pct":0.484262,"quote_size_imbalance":null,"quote_age_s":0.049253},"context":{"vwap":6.207366,"price_vs_vwap_pct":0.042439,"ema9":6.203744,"ema20":6.247621,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-2.96875,"dist_to_hod_atr":1.59503,"atr":0.11912,"spread_atr":0.251847,"own_change_pct":3.903654,"rel_strength_pct":{"SPY":3.77468,"IWM":3.956109}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.112795},"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":"f29baf667e2c","ts":"2026-09-15T13:39:35+00:00","symbol":"RDW","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.75,"vwap":10.5749,"ext_from_open_pct":3.27,"max_ext_allowed_pct":5.0,"volume_pace":3.033,"trend":"flat","recent_slope_pct":0.2905,"volatility":"medium"},"price":10.75,"volume":{"bars":9,"last_bar_volume":65962.0,"baseline_avg":75004.25,"bar_rvol":0.879443,"raw_accel":1.84417,"smooth_accel":0.437914,"accel_momentum":0.35699,"rvol_3bar":[0.942585,0.281436,0.879443],"trend_3bar":"MIXED","projected_rvol":1.220891},"flow":{"window_s":30,"trades":181,"trade_rate":6.033333,"buy_vol":34916.0,"sell_vol":17794.0,"unclassified_vol":0.0,"imbalance":0.324834,"bid":10.73,"ask":10.75,"spread_pct":0.18622,"quote_size_imbalance":null,"quote_age_s":0.99881},"context":{"vwap":10.563925,"price_vs_vwap_pct":1.761416,"ema9":10.631242,"ema20":10.593757,"ema_stack":true,"ema_warm":false,"hod":10.7,"dist_to_hod_pct":0.46729,"dist_to_hod_atr":-0.321898,"atr":0.155329,"spread_atr":0.128759,"own_change_pct":-0.187266,"rel_strength_pct":{"SPY":-0.316241,"IWM":-0.134811}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.285673},"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":"358921deb746","ts":"2026-09-15T13:39:40+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.18 below VWAP $6.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":6.1786,"vwap":6.2075,"ext_from_open_pct":-2.47,"max_ext_allowed_pct":4.0,"volume_pace":4.596,"trend":"flat","recent_slope_pct":0.2944,"volatility":"high"},"price":6.1786,"volume":{"bars":9,"last_bar_volume":78977.0,"baseline_avg":56317.75,"bar_rvol":1.402347,"raw_accel":0.311889,"smooth_accel":-0.149777,"accel_momentum":-0.088239,"rvol_3bar":[0.270387,1.079587,1.402347],"trend_3bar":"ACCELERATING","projected_rvol":1.099769},"flow":{"window_s":30,"trades":236,"trade_rate":7.866667,"buy_vol":16093.0,"sell_vol":17692.0,"unclassified_vol":0.0,"imbalance":-0.047329,"bid":6.17,"ask":6.18,"spread_pct":0.161943,"quote_size_imbalance":null,"quote_age_s":1.49107},"context":{"vwap":6.207366,"price_vs_vwap_pct":-0.463412,"ema9":6.203744,"ema20":6.247621,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-3.459375,"dist_to_hod_atr":1.85863,"atr":0.11912,"spread_atr":0.083949,"own_change_pct":3.903654,"rel_strength_pct":{"SPY":3.77468,"IWM":3.956109}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.066371},"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":"bef710fb836b","ts":"2026-09-15T13:39:45+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.03 below VWAP $5.04","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.03,"vwap":5.0393,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":3.0,"volume_pace":1.392,"trend":"flat","recent_slope_pct":0.0204,"volatility":"high"},"price":5.03,"volume":{"bars":9,"last_bar_volume":21433.0,"baseline_avg":56249.375,"bar_rvol":0.381035,"raw_accel":-0.318115,"smooth_accel":0.264487,"accel_momentum":0.527983,"rvol_3bar":[0.215944,0.525665,0.381035],"trend_3bar":"MIXED","projected_rvol":0.589044},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":5425.0,"sell_vol":11210.0,"unclassified_vol":0.0,"imbalance":-0.347761,"bid":5.02,"ask":5.03,"spread_pct":0.199005,"quote_size_imbalance":null,"quote_age_s":0.533846},"context":{"vwap":5.03934,"price_vs_vwap_pct":-0.185349,"ema9":5.042322,"ema20":5.038794,"ema_stack":false,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-1.178782,"dist_to_hod_atr":1.182237,"atr":0.050751,"spread_atr":0.197039,"own_change_pct":-0.098912,"rel_strength_pct":{"SPY":-0.227887,"IWM":-0.046457}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.132509},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"01cdd59504b8","ts":"2026-09-15T13:39:55+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.87 below VWAP $7.87","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.87,"vwap":7.8736,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.079,"trend":"flat","recent_slope_pct":-0.0254,"volatility":"high"},"price":7.87,"volume":{"bars":9,"last_bar_volume":4709.0,"baseline_avg":13199.375,"bar_rvol":0.356759,"raw_accel":-0.527351,"smooth_accel":-0.065392,"accel_momentum":-0.212877,"rvol_3bar":[0.343608,0.729264,0.356759],"trend_3bar":"MIXED","projected_rvol":0.231829},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1238.0,"sell_vol":1565.0,"unclassified_vol":0.0,"imbalance":-0.116661,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.148589},"context":{"vwap":7.873657,"price_vs_vwap_pct":-0.046441,"ema9":7.872502,"ema20":7.872526,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.75662,"dist_to_hod_atr":0.942923,"atr":0.063632,"spread_atr":0.157154,"own_change_pct":0.574713,"rel_strength_pct":{"SPY":0.445738,"IWM":0.627168}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.04162},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ac2932d70e5a","ts":"2026-09-15T13:40:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.9084,"target":6.39,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":45.1,"room_to_5d_high_atr":3.84},"price":6.2099,"vwap":6.2076,"ext_from_open_pct":-1.97,"max_ext_allowed_pct":5.0,"volume_pace":4.522,"trend":"flat","recent_slope_pct":0.2617,"volatility":"high"},"price":6.2099,"volume":{"bars":10,"last_bar_volume":51907.0,"baseline_avg":58835.444444,"bar_rvol":0.88224,"raw_accel":-0.342758,"smooth_accel":0.546546,"accel_momentum":0.696323,"rvol_3bar":[1.079587,1.402347,0.88224],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":9312.0,"sell_vol":8725.0,"unclassified_vol":0.0,"imbalance":0.032544,"bid":6.19,"ask":6.21,"spread_pct":0.322581,"quote_size_imbalance":null,"quote_age_s":5.738545},"context":{"vwap":6.207643,"price_vs_vwap_pct":0.036366,"ema9":6.200995,"ema20":6.242133,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-2.970313,"dist_to_hod_atr":1.596368,"atr":0.119083,"spread_atr":0.16795,"own_change_pct":1.85109,"rel_strength_pct":{"SPY":1.733818,"IWM":1.900051}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.028712},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"36ca68435321","ts":"2026-09-15T13:40:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 480.0s, plan says WATCH; stop 9.82, target 10.20 (prev_day_high), R:R 1.21; R:R 1.21 < 2.0 at 9.99; breakout: 1-min close > 10.05 on >= 862814 sh","plan":{"state":"WATCH","setup":"","stop":9.82,"target":10.2,"target_label":"prev_day_high","reward_risk":1.21,"pos_in_5d_range_pct":22.5,"room_to_5d_high_atr":2.47},"price":9.9919,"vwap":9.9159,"ext_from_open_pct":1.65,"max_ext_allowed_pct":3.0,"volume_pace":1.793,"trend":"flat","recent_slope_pct":0.1027,"volatility":"medium"},"price":9.9919,"volume":{"bars":10,"last_bar_volume":680139.0,"baseline_avg":563550.222222,"bar_rvol":1.206883,"raw_accel":0.497467,"smooth_accel":0.491335,"accel_momentum":0.107132,"rvol_3bar":[0.978329,0.786863,1.206883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":284,"trade_rate":9.466667,"buy_vol":77369.0,"sell_vol":286314.0,"unclassified_vol":0.0,"imbalance":-0.574525,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.04599},"context":{"vwap":9.91486,"price_vs_vwap_pct":0.777012,"ema9":9.960116,"ema20":9.917986,"ema_stack":true,"ema_warm":false,"hod":10.0399,"dist_to_hod_pct":-0.478092,"dist_to_hod_atr":0.740606,"atr":0.064812,"spread_atr":0.154293,"own_change_pct":0.726724,"rel_strength_pct":{"SPY":0.609452,"IWM":0.775685}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.693384},"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":"74137e30bab0","ts":"2026-09-15T13:40:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.0s, plan says WATCH; stop 5.82, target 6.03 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 6.03; breakout: 1-min close > 6.05 on >= 529843 sh","plan":{"state":"WATCH","setup":"","stop":5.82,"target":6.03,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":113.5,"room_to_5d_high_atr":-0.3},"price":6.03,"vwap":5.9579,"ext_from_open_pct":2.03,"max_ext_allowed_pct":4.0,"volume_pace":4.645,"trend":"positive","recent_slope_pct":0.1497,"volatility":"medium"},"price":6.03,"volume":{"bars":10,"last_bar_volume":214621.0,"baseline_avg":368629.222222,"bar_rvol":0.582214,"raw_accel":-0.634141,"smooth_accel":0.146793,"accel_momentum":-2.362367,"rvol_3bar":[1.345759,1.718384,0.582214],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":263,"trade_rate":8.766667,"buy_vol":68324.0,"sell_vol":28816.0,"unclassified_vol":0.0,"imbalance":0.406712,"bid":6.02,"ask":6.03,"spread_pct":0.165975,"quote_size_imbalance":null,"quote_age_s":0.285299},"context":{"vwap":5.957615,"price_vs_vwap_pct":1.214992,"ema9":5.968267,"ema20":5.936041,"ema_stack":true,"ema_warm":false,"hod":6.04,"dist_to_hod_pct":-0.165563,"dist_to_hod_atr":0.166714,"atr":0.059983,"spread_atr":0.166714,"own_change_pct":1.090604,"rel_strength_pct":{"SPY":0.973332,"IWM":1.139565}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.236793},"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":"93767ee67950","ts":"2026-09-15T13:40:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 80.0s, plan says WATCH; stop 7.67, target 7.83 (premarket_high), R:R 0.78; R:R 0.78 < 2.0 at 7.76; breakout: 1-min close > 7.80 on >= 36292 sh","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":55.0,"room_to_5d_high_atr":0.7},"price":7.76,"vwap":7.7172,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.994,"trend":"flat","recent_slope_pct":0.2247,"volatility":"medium"},"price":7.76,"volume":{"bars":10,"last_bar_volume":26090.0,"baseline_avg":23983.888889,"bar_rvol":1.087814,"raw_accel":0.877924,"smooth_accel":0.148863,"accel_momentum":0.206805,"rvol_3bar":[0.376068,0.550321,1.087814],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2862.0,"sell_vol":11343.0,"unclassified_vol":0.0,"imbalance":-0.597043,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":1.029622},"context":{"vwap":7.716837,"price_vs_vwap_pct":0.559331,"ema9":7.728097,"ema20":7.71668,"ema_stack":true,"ema_warm":false,"hod":7.79,"dist_to_hod_pct":-0.385109,"dist_to_hod_atr":0.292292,"atr":0.102637,"spread_atr":0.097431,"own_change_pct":0.733893,"rel_strength_pct":{"SPY":0.616621,"IWM":0.782854}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.649472},"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":"197e2713c030","ts":"2026-09-15T13:40:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.28,"pos_in_5d_range_pct":40.3,"room_to_5d_high_atr":1.3},"price":10.73,"vwap":10.5805,"ext_from_open_pct":3.07,"max_ext_allowed_pct":3.0,"volume_pace":2.989,"trend":"flat","recent_slope_pct":0.1495,"volatility":"medium"},"price":10.73,"volume":{"bars":10,"last_bar_volume":77405.0,"baseline_avg":73999.555556,"bar_rvol":1.04602,"raw_accel":0.173479,"smooth_accel":0.280278,"accel_momentum":-0.157637,"rvol_3bar":[0.281436,0.879443,1.04602],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":176,"trade_rate":5.866667,"buy_vol":8866.0,"sell_vol":17733.0,"unclassified_vol":0.0,"imbalance":-0.333358,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.213653},"context":{"vwap":10.579951,"price_vs_vwap_pct":1.418242,"ema9":10.654993,"ema20":10.608637,"ema_stack":true,"ema_warm":false,"hod":10.77,"dist_to_hod_pct":-0.371402,"dist_to_hod_atr":0.259768,"atr":0.153984,"spread_atr":0.064942,"own_change_pct":0.866041,"rel_strength_pct":{"SPY":0.748769,"IWM":0.915002}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.348699},"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":"22c850720451","ts":"2026-09-15T13:40:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2988,"target":8.59,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":8.1,"room_to_5d_high_atr":3.77},"price":8.49,"vwap":8.4578,"ext_from_open_pct":1.43,"max_ext_allowed_pct":3.0,"volume_pace":1.479,"trend":"flat","recent_slope_pct":-0.02,"volatility":"high"},"price":8.49,"volume":{"bars":10,"last_bar_volume":43020.0,"baseline_avg":152525.666667,"bar_rvol":0.282051,"raw_accel":-0.140648,"smooth_accel":-0.514176,"accel_momentum":-0.161579,"rvol_3bar":[0.45084,0.302788,0.282051],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":5718.0,"sell_vol":4377.0,"unclassified_vol":0.0,"imbalance":0.132838,"bid":8.49,"ask":8.5,"spread_pct":0.117716,"quote_size_imbalance":null,"quote_age_s":0.146614},"context":{"vwap":8.457785,"price_vs_vwap_pct":0.380886,"ema9":8.489695,"ema20":8.477422,"ema_stack":true,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.336432,"dist_to_hod_atr":0.952071,"atr":0.120789,"spread_atr":0.082789,"own_change_pct":-1.136364,"rel_strength_pct":{"SPY":-1.253636,"IWM":-1.087402}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.037467},"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":"ed689c1ebdbf","ts":"2026-09-15T13:40:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 375.0s, plan says WATCH; stop 7.17, target 7.47 (prev_day_high), R:R 1.87; R:R 1.87 < 2.0 at 7.28; breakout: 1-min close > 7.31 on >= 234515 sh","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.47,"target_label":"prev_day_high","reward_risk":1.87,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2276,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":0.0664,"volatility":"medium"},"price":7.275,"volume":{"bars":10,"last_bar_volume":87614.0,"baseline_avg":163980.222222,"bar_rvol":0.534296,"raw_accel":-0.189892,"smooth_accel":0.055821,"accel_momentum":0.248051,"rvol_3bar":[0.547127,0.632614,0.534296],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":14397.0,"sell_vol":42984.0,"unclassified_vol":0.0,"imbalance":-0.498196,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.691011},"context":{"vwap":7.227547,"price_vs_vwap_pct":0.656555,"ema9":7.258378,"ema20":7.246038,"ema_stack":true,"ema_warm":false,"hod":7.3,"dist_to_hod_pct":-0.342466,"dist_to_hod_atr":0.35074,"atr":0.071278,"spread_atr":0.140296,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.117272,"IWM":0.048961}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.266184},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e1f5d89dc449","ts":"2026-09-15T13:40:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.5609,"target":13.18,"target_label":"prev_day_high","reward_risk":1.83,"pos_in_5d_range_pct":19.9,"room_to_5d_high_atr":1.93},"price":12.78,"vwap":12.6264,"ext_from_open_pct":2.24,"max_ext_allowed_pct":4.0,"volume_pace":2.846,"trend":"flat","recent_slope_pct":0.1676,"volatility":"high"},"price":12.78,"volume":{"bars":10,"last_bar_volume":27905.0,"baseline_avg":64593.333333,"bar_rvol":0.432011,"raw_accel":0.275599,"smooth_accel":-0.59847,"accel_momentum":-0.686812,"rvol_3bar":[0.992196,0.312814,0.432011],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":3216.0,"sell_vol":2775.0,"unclassified_vol":0.0,"imbalance":0.07361,"bid":12.77,"ask":12.79,"spread_pct":0.156495,"quote_size_imbalance":null,"quote_age_s":0.400428},"context":{"vwap":12.626282,"price_vs_vwap_pct":1.217444,"ema9":12.701186,"ema20":12.654506,"ema_stack":true,"ema_warm":false,"hod":12.81,"dist_to_hod_pct":-0.234192,"dist_to_hod_atr":0.149131,"atr":0.201166,"spread_atr":0.099421,"own_change_pct":1.107595,"rel_strength_pct":{"SPY":0.990323,"IWM":1.156556}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.0318},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e68c38b1d34c","ts":"2026-09-15T13:40:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 125.0s, plan says WATCH; stop 5.68, target 5.83 (prev_day_high), R:R 0.49; R:R 0.49 < 2.0 at 5.78; breakout: 1-min close > 5.79 on >= 15292 sh","plan":{"state":"WATCH","setup":"","stop":5.6819,"target":5.83,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":91.0,"room_to_5d_high_atr":0.12},"price":5.7815,"vwap":5.7417,"ext_from_open_pct":1.43,"max_ext_allowed_pct":4.0,"volume_pace":1.527,"trend":"flat","recent_slope_pct":0.1732,"volatility":"high"},"price":5.7815,"volume":{"bars":10,"last_bar_volume":5451.0,"baseline_avg":10721.555556,"bar_rvol":0.508415,"raw_accel":-0.249174,"smooth_accel":0.225551,"accel_momentum":-0.544123,"rvol_3bar":[0.692113,0.650873,0.508415],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1142.0,"sell_vol":5910.0,"unclassified_vol":0.0,"imbalance":-0.67612,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":1.534149},"context":{"vwap":5.739305,"price_vs_vwap_pct":0.735193,"ema9":5.759894,"ema20":5.751487,"ema_stack":true,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.146805,"dist_to_hod_atr":0.192325,"atr":0.044196,"spread_atr":0.226264,"own_change_pct":0.521286,"rel_strength_pct":{"SPY":0.404014,"IWM":0.570247}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.34375},"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":"915fc28e102f","ts":"2026-09-15T13:40:10+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.3154,"target":9.65,"target_label":"prev_day_high","reward_risk":1.19,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":3.11},"price":9.4683,"vwap":9.4549,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":1.903,"trend":"flat","recent_slope_pct":0.097,"volatility":"high"},"price":9.4683,"volume":{"bars":10,"last_bar_volume":8776.0,"baseline_avg":30718.444444,"bar_rvol":0.285692,"raw_accel":-0.408386,"smooth_accel":-0.149747,"accel_momentum":-0.366463,"rvol_3bar":[0.314257,0.453584,0.285692],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":430.0,"sell_vol":2265.0,"unclassified_vol":0.0,"imbalance":-0.680891,"bid":9.46,"ask":9.47,"spread_pct":0.105652,"quote_size_imbalance":null,"quote_age_s":0.233839},"context":{"vwap":9.454919,"price_vs_vwap_pct":0.141521,"ema9":9.447836,"ema20":9.466349,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.647429,"dist_to_hod_atr":0.537119,"atr":0.114872,"spread_atr":0.087053,"own_change_pct":0.052938,"rel_strength_pct":{"SPY":-0.064334,"IWM":0.101899}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.194525},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5155a4f4749c","ts":"2026-09-15T13:40:10+00:00","symbol":"NCLH","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":14.6438,"target":14.99,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":25.9,"room_to_5d_high_atr":2.01},"price":14.77,"vwap":14.7695,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.14,"trend":"flat","recent_slope_pct":0.0919,"volatility":"medium"},"price":14.77,"volume":{"bars":10,"last_bar_volume":30712.0,"baseline_avg":50414.777778,"bar_rvol":0.609186,"raw_accel":-0.300522,"smooth_accel":0.320314,"accel_momentum":-0.545279,"rvol_3bar":[0.232418,0.857086,0.609186],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":1948.0,"sell_vol":5257.0,"unclassified_vol":0.0,"imbalance":-0.459264,"bid":14.76,"ask":14.77,"spread_pct":0.067728,"quote_size_imbalance":null,"quote_age_s":0.660383},"context":{"vwap":14.769518,"price_vs_vwap_pct":0.003262,"ema9":14.755308,"ema20":14.770622,"ema_stack":false,"ema_warm":false,"hod":14.85,"dist_to_hod_pct":-0.538721,"dist_to_hod_atr":1.063986,"atr":0.075189,"spread_atr":0.132998,"own_change_pct":0.169607,"rel_strength_pct":{"SPY":0.052335,"IWM":0.218568}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.279778},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"03a8274f22d3","ts":"2026-09-15T13:40:10+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.6,"target":13.84,"target_label":"range_20d_high","reward_risk":5.2,"pos_in_5d_range_pct":54.0,"room_to_5d_high_atr":1.45},"price":12.8,"vwap":12.7941,"ext_from_open_pct":-1.39,"max_ext_allowed_pct":4.0,"volume_pace":5.343,"trend":"flat","recent_slope_pct":-0.067,"volatility":"medium"},"price":12.8,"volume":{"bars":10,"last_bar_volume":3154.0,"baseline_avg":15181.555556,"bar_rvol":0.207752,"raw_accel":-0.168992,"smooth_accel":2.928235,"accel_momentum":-0.954849,"rvol_3bar":[2.141779,0.0572,0.207752],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":1251.0,"sell_vol":671.0,"unclassified_vol":0.0,"imbalance":0.301769,"bid":12.75,"ask":12.85,"spread_pct":0.78125,"quote_size_imbalance":null,"quote_age_s":0.298041},"context":{"vwap":12.794085,"price_vs_vwap_pct":0.046235,"ema9":12.80313,"ema20":12.780378,"ema_stack":false,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-2.47619,"dist_to_hod_atr":1.333693,"atr":0.243684,"spread_atr":0.410367,"own_change_pct":0.540964,"rel_strength_pct":{"SPY":0.423692,"IWM":0.589926}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.062693},"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":"c3329481193e","ts":"2026-09-15T13:40:10+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 125.0s, plan says WATCH; stop 11.12, target 11.44 (premarket_high), R:R 0.48; R:R 0.48 < 2.0 at 11.34; breakout: 1-min close > 11.39 on >= 406358 sh","plan":{"state":"WATCH","setup":"","stop":11.1182,"target":11.44,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":26.3,"room_to_5d_high_atr":1.21},"price":11.335,"vwap":11.2786,"ext_from_open_pct":0.67,"max_ext_allowed_pct":4.0,"volume_pace":1.966,"trend":"flat","recent_slope_pct":0.049,"volatility":"high"},"price":11.335,"volume":{"bars":10,"last_bar_volume":117410.0,"baseline_avg":287960.555556,"bar_rvol":0.407729,"raw_accel":-0.244262,"smooth_accel":-0.560638,"accel_momentum":-0.152164,"rvol_3bar":[0.188044,0.510147,0.407729],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":276,"trade_rate":9.2,"buy_vol":32444.0,"sell_vol":34642.0,"unclassified_vol":0.0,"imbalance":-0.032764,"bid":11.34,"ask":11.35,"spread_pct":0.088145,"quote_size_imbalance":null,"quote_age_s":0.005558},"context":{"vwap":11.278245,"price_vs_vwap_pct":0.503229,"ema9":11.293539,"ema20":11.26251,"ema_stack":true,"ema_warm":false,"hod":11.425,"dist_to_hod_pct":-0.787746,"dist_to_hod_atr":0.659068,"atr":0.136556,"spread_atr":0.07323,"own_change_pct":-0.527704,"rel_strength_pct":{"SPY":-0.644976,"IWM":-0.478743}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.013359},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b18c7aeddcce","ts":"2026-09-15T13:40:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.20 below VWAP $6.21","plan":{"state":"PASS","setup":"","stop":5.8985,"target":6.39,"target_label":"prev_day_high","reward_risk":0.63,"pos_in_5d_range_pct":45.0,"room_to_5d_high_atr":3.85},"price":6.2,"vwap":6.2077,"ext_from_open_pct":-2.13,"max_ext_allowed_pct":5.0,"volume_pace":4.482,"trend":"flat","recent_slope_pct":0.2298,"volatility":"high"},"price":6.2,"volume":{"bars":10,"last_bar_volume":51907.0,"baseline_avg":58835.444444,"bar_rvol":0.88224,"raw_accel":-0.342758,"smooth_accel":0.546546,"accel_momentum":0.696323,"rvol_3bar":[1.079587,1.402347,0.88224],"trend_3bar":"MIXED","projected_rvol":0.603582},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":9448.0,"sell_vol":5725.0,"unclassified_vol":0.0,"imbalance":0.24537,"bid":6.19,"ask":6.2,"spread_pct":0.161421,"quote_size_imbalance":null,"quote_age_s":0.425859},"context":{"vwap":6.207643,"price_vs_vwap_pct":-0.123115,"ema9":6.200995,"ema20":6.242133,"ema_stack":false,"ema_warm":false,"hod":6.4,"dist_to_hod_pct":-3.125,"dist_to_hod_atr":1.679503,"atr":0.119083,"spread_atr":0.083975,"own_change_pct":1.85109,"rel_strength_pct":{"SPY":1.733818,"IWM":1.900051}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.216475},"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":"74fe2b4a61e7","ts":"2026-09-15T13:40:15+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7705,"target":8.0,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.67},"price":7.8888,"vwap":7.8738,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":0.0033,"volatility":"medium"},"price":7.8888,"volume":{"bars":10,"last_bar_volume":2805.0,"baseline_avg":12256.0,"bar_rvol":0.228867,"raw_accel":-0.404332,"smooth_accel":-0.049336,"accel_momentum":0.016056,"rvol_3bar":[0.729264,0.356759,0.228867],"trend_3bar":"DECELERATING","projected_rvol":0.65111},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1359.0,"sell_vol":638.0,"unclassified_vol":0.0,"imbalance":0.361042,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":2.966143},"context":{"vwap":7.873607,"price_vs_vwap_pct":0.192958,"ema9":7.872001,"ema20":7.872286,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.519546,"dist_to_hod_atr":0.69309,"atr":0.059444,"spread_atr":0.168226,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.117272,"IWM":0.048961}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.082631},"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":"5249075725e8","ts":"2026-09-15T13:40:15+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.58,"target":13.18,"target_label":"prev_day_high","reward_risk":1.73,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":1.91},"price":12.8,"vwap":12.6299,"ext_from_open_pct":2.4,"max_ext_allowed_pct":4.0,"volume_pace":2.859,"trend":"flat","recent_slope_pct":0.1989,"volatility":"high"},"price":12.8,"volume":{"bars":10,"last_bar_volume":27905.0,"baseline_avg":64593.333333,"bar_rvol":0.432011,"raw_accel":0.275599,"smooth_accel":-0.59847,"accel_momentum":-0.686812,"rvol_3bar":[0.992196,0.312814,0.432011],"trend_3bar":"MIXED","projected_rvol":0.842192},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":14288.0,"sell_vol":3920.0,"unclassified_vol":0.0,"imbalance":0.56942,"bid":12.8,"ask":12.81,"spread_pct":0.078094,"quote_size_imbalance":null,"quote_age_s":0.516977},"context":{"vwap":12.626282,"price_vs_vwap_pct":1.375844,"ema9":12.701186,"ema20":12.654506,"ema_stack":true,"ema_warm":false,"hod":12.81,"dist_to_hod_pct":-0.078064,"dist_to_hod_atr":0.04971,"atr":0.201166,"spread_atr":0.04971,"own_change_pct":1.107595,"rel_strength_pct":{"SPY":0.990323,"IWM":1.156556}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.245995},"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":"114914b0f9ed","ts":"2026-09-15T13:40:15+00:00","symbol":"RUM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7003,"target":8.07,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":53.6,"room_to_5d_high_atr":1.03},"price":7.89,"vwap":7.8252,"ext_from_open_pct":2.47,"max_ext_allowed_pct":4.0,"volume_pace":1.164,"trend":"flat","recent_slope_pct":0.2669,"volatility":"high"},"price":7.89,"volume":{"bars":10,"last_bar_volume":18416.0,"baseline_avg":85441.333333,"bar_rvol":0.21554,"raw_accel":-0.137841,"smooth_accel":-0.626817,"accel_momentum":-0.433102,"rvol_3bar":[0.116102,0.218213,0.21554],"trend_3bar":"MIXED","projected_rvol":0.196392},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":4210.0,"sell_vol":1713.0,"unclassified_vol":0.0,"imbalance":0.421577,"bid":7.87,"ask":7.9,"spread_pct":0.380469,"quote_size_imbalance":null,"quote_age_s":0.115174},"context":{"vwap":7.82492,"price_vs_vwap_pct":0.831698,"ema9":7.83225,"ema20":7.859342,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-0.879397,"dist_to_hod_atr":0.33579,"atr":0.208464,"spread_atr":0.14391,"own_change_pct":-0.267516,"rel_strength_pct":{"SPY":-0.384788,"IWM":-0.218555}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.090867},"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":"09a75c272f41","ts":"2026-09-15T13:40:20+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":4.9581,"target":5.1,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":5.0,"room_to_5d_high_atr":2.21},"price":5.055,"vwap":5.0391,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":1.733,"trend":"flat","recent_slope_pct":0.0603,"volatility":"high"},"price":5.055,"volume":{"bars":10,"last_bar_volume":39008.0,"baseline_avg":52380.888889,"bar_rvol":0.744699,"raw_accel":0.819997,"smooth_accel":0.725801,"accel_momentum":0.461314,"rvol_3bar":[0.525665,0.381035,0.744699],"trend_3bar":"MIXED","projected_rvol":8.264636},"flow":{"window_s":30,"trades":204,"trade_rate":6.8,"buy_vol":133342.0,"sell_vol":24959.0,"unclassified_vol":0.0,"imbalance":0.684664,"bid":5.05,"ask":5.06,"spread_pct":0.197824,"quote_size_imbalance":null,"quote_age_s":0.084076},"context":{"vwap":5.038372,"price_vs_vwap_pct":0.330031,"ema9":5.037857,"ema20":5.037004,"ema_stack":true,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-0.687623,"dist_to_hod_atr":0.680776,"atr":0.051412,"spread_atr":0.194508,"own_change_pct":-0.737548,"rel_strength_pct":{"SPY":-0.85482,"IWM":-0.688586}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.509869},"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":"113c6d3d4fb2","ts":"2026-09-15T13:40:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7767,"target":8.0,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":2.65},"price":7.895,"vwap":7.874,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.055,"trend":"flat","recent_slope_pct":0.019,"volatility":"medium"},"price":7.895,"volume":{"bars":10,"last_bar_volume":2805.0,"baseline_avg":12256.0,"bar_rvol":0.228867,"raw_accel":-0.404332,"smooth_accel":-0.049336,"accel_momentum":0.016056,"rvol_3bar":[0.729264,0.356759,0.228867],"trend_3bar":"DECELERATING","projected_rvol":0.602154},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":2223.0,"sell_vol":852.0,"unclassified_vol":0.0,"imbalance":0.445854,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.477723},"context":{"vwap":7.873607,"price_vs_vwap_pct":0.271702,"ema9":7.872001,"ema20":7.872286,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.441362,"dist_to_hod_atr":0.58879,"atr":0.059444,"spread_atr":0.168226,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.117272,"IWM":0.048961}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.102041},"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":"2c48d1aa00fa","ts":"2026-09-15T13:40:25+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.825,"vwap":10.5892,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":3.023,"trend":"flat","recent_slope_pct":0.3265,"volatility":"medium"},"price":10.825,"volume":{"bars":10,"last_bar_volume":77405.0,"baseline_avg":73999.555556,"bar_rvol":1.04602,"raw_accel":0.173479,"smooth_accel":0.280278,"accel_momentum":-0.157637,"rvol_3bar":[0.281436,0.879443,1.04602],"trend_3bar":"ACCELERATING","projected_rvol":1.166375},"flow":{"window_s":30,"trades":180,"trade_rate":6.0,"buy_vol":20737.0,"sell_vol":18400.0,"unclassified_vol":0.0,"imbalance":0.059713,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.163203},"context":{"vwap":10.579951,"price_vs_vwap_pct":2.316167,"ema9":10.654993,"ema20":10.608637,"ema_stack":true,"ema_warm":false,"hod":10.77,"dist_to_hod_pct":0.510678,"dist_to_hod_atr":-0.35718,"atr":0.153984,"spread_atr":0.064942,"own_change_pct":0.866041,"rel_strength_pct":{"SPY":0.748769,"IWM":0.915002}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.062461},"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":"c90c000b2122","ts":"2026-09-15T13:40:25+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.13,"pos_in_5d_range_pct":32.4,"room_to_5d_high_atr":1.47},"price":5.525,"vwap":5.5005,"ext_from_open_pct":1.19,"max_ext_allowed_pct":4.0,"volume_pace":1.048,"trend":"flat","recent_slope_pct":0.2347,"volatility":"medium"},"price":5.525,"volume":{"bars":10,"last_bar_volume":72251.0,"baseline_avg":77031.333333,"bar_rvol":0.937943,"raw_accel":2.751772,"smooth_accel":0.808759,"accel_momentum":-0.077822,"rvol_3bar":[1.187252,0.134511,0.937943],"trend_3bar":"MIXED","projected_rvol":2.143325},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":80361.0,"sell_vol":13813.0,"unclassified_vol":0.0,"imbalance":0.706649,"bid":5.52,"ask":5.53,"spread_pct":0.180995,"quote_size_imbalance":null,"quote_age_s":0.477768},"context":{"vwap":5.499331,"price_vs_vwap_pct":0.466765,"ema9":5.492433,"ema20":5.503243,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.45045,"dist_to_hod_atr":0.410651,"atr":0.060879,"spread_atr":0.16426,"own_change_pct":0.1785,"rel_strength_pct":{"SPY":0.061228,"IWM":0.227461}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.662797},"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":"f1a073d86e7d","ts":"2026-09-15T13:40:30+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.45 below VWAP $9.45","plan":{"state":"PASS","setup":"","stop":9.297,"target":9.48,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":9.9,"room_to_5d_high_atr":3.14},"price":9.4499,"vwap":9.455,"ext_from_open_pct":1.07,"max_ext_allowed_pct":3.0,"volume_pace":1.87,"trend":"flat","recent_slope_pct":0.0581,"volatility":"high"},"price":9.4499,"volume":{"bars":10,"last_bar_volume":8776.0,"baseline_avg":30718.444444,"bar_rvol":0.285692,"raw_accel":-0.408386,"smooth_accel":-0.149747,"accel_momentum":-0.366463,"rvol_3bar":[0.314257,0.453584,0.285692],"trend_3bar":"MIXED","projected_rvol":0.295197},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":1062.0,"sell_vol":3472.0,"unclassified_vol":0.0,"imbalance":-0.531539,"bid":9.49,"ask":9.5,"spread_pct":0.105319,"quote_size_imbalance":null,"quote_age_s":2.704515},"context":{"vwap":9.454919,"price_vs_vwap_pct":-0.053086,"ema9":9.447836,"ema20":9.466349,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.840504,"dist_to_hod_atr":0.697297,"atr":0.114872,"spread_atr":0.087053,"own_change_pct":0.052938,"rel_strength_pct":{"SPY":-0.064334,"IWM":0.101899}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.151856},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7cec1af982af","ts":"2026-09-15T13:40:30+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.69,"target":13.84,"target_label":"range_20d_high","reward_risk":5.39,"pos_in_5d_range_pct":58.5,"room_to_5d_high_atr":1.31},"price":12.87,"vwap":12.7957,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":4.0,"volume_pace":5.312,"trend":"flat","recent_slope_pct":0.042,"volatility":"medium"},"price":12.87,"volume":{"bars":10,"last_bar_volume":3154.0,"baseline_avg":15181.555556,"bar_rvol":0.207752,"raw_accel":-0.168992,"smooth_accel":2.928235,"accel_momentum":-0.954849,"rvol_3bar":[2.141779,0.0572,0.207752],"trend_3bar":"MIXED","projected_rvol":0.681748},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2562.0,"sell_vol":2613.0,"unclassified_vol":0.0,"imbalance":-0.009855,"bid":12.83,"ask":12.92,"spread_pct":0.699029,"quote_size_imbalance":null,"quote_age_s":2.924104},"context":{"vwap":12.794085,"price_vs_vwap_pct":0.593363,"ema9":12.80313,"ema20":12.780378,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-1.942857,"dist_to_hod_atr":1.046436,"atr":0.243684,"spread_atr":0.36933,"own_change_pct":0.540964,"rel_strength_pct":{"SPY":0.423692,"IWM":0.589926}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.002047},"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":"355865f9e86e","ts":"2026-09-15T13:40:35+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 7.77, target 8.00 (premarket_high), R:R 0.93; target 0.11 away > ~0.09 reachable in 374 min","plan":{"state":"PASS","setup":"","stop":7.7717,"target":8.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8741,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":1.043,"trend":"flat","recent_slope_pct":0.0063,"volatility":"medium"},"price":7.89,"volume":{"bars":10,"last_bar_volume":2805.0,"baseline_avg":12256.0,"bar_rvol":0.228867,"raw_accel":-0.404332,"smooth_accel":-0.049336,"accel_momentum":0.016056,"rvol_3bar":[0.729264,0.356759,0.228867],"trend_3bar":"DECELERATING","projected_rvol":0.502564},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2224.0,"sell_vol":1369.0,"unclassified_vol":0.0,"imbalance":0.237963,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":1.959028},"context":{"vwap":7.873607,"price_vs_vwap_pct":0.208199,"ema9":7.872001,"ema20":7.872286,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":0.672903,"atr":0.059444,"spread_atr":0.168226,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.117272,"IWM":0.048961}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.054462},"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":"bc2a9f274917","ts":"2026-09-15T13:40:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.825,"vwap":10.59,"ext_from_open_pct":3.99,"max_ext_allowed_pct":3.0,"volume_pace":2.988,"trend":"flat","recent_slope_pct":0.3265,"volatility":"medium"},"price":10.825,"volume":{"bars":10,"last_bar_volume":77405.0,"baseline_avg":73999.555556,"bar_rvol":1.04602,"raw_accel":0.173479,"smooth_accel":0.280278,"accel_momentum":-0.157637,"rvol_3bar":[0.281436,0.879443,1.04602],"trend_3bar":"ACCELERATING","projected_rvol":0.914878},"flow":{"window_s":30,"trades":170,"trade_rate":5.666667,"buy_vol":19898.0,"sell_vol":16983.0,"unclassified_vol":0.0,"imbalance":0.079038,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.933493},"context":{"vwap":10.579951,"price_vs_vwap_pct":2.316167,"ema9":10.654993,"ema20":10.608637,"ema_stack":true,"ema_warm":false,"hod":10.77,"dist_to_hod_pct":0.510678,"dist_to_hod_atr":-0.35718,"atr":0.153984,"spread_atr":0.064942,"own_change_pct":0.866041,"rel_strength_pct":{"SPY":0.748769,"IWM":0.915002}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.082675},"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":"8ab659e54228","ts":"2026-09-15T13:40:35+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.3321,"target":9.65,"target_label":"prev_day_high","reward_risk":1.08,"pos_in_5d_range_pct":11.5,"room_to_5d_high_atr":3.08},"price":9.485,"vwap":9.4553,"ext_from_open_pct":1.44,"max_ext_allowed_pct":3.0,"volume_pace":1.871,"trend":"flat","recent_slope_pct":0.1324,"volatility":"high"},"price":9.485,"volume":{"bars":10,"last_bar_volume":8776.0,"baseline_avg":30718.444444,"bar_rvol":0.285692,"raw_accel":-0.408386,"smooth_accel":-0.149747,"accel_momentum":-0.366463,"rvol_3bar":[0.314257,0.453584,0.285692],"trend_3bar":"MIXED","projected_rvol":0.391314},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":1247.0,"sell_vol":5646.0,"unclassified_vol":0.0,"imbalance":-0.638184,"bid":9.48,"ask":9.49,"spread_pct":0.10543,"quote_size_imbalance":null,"quote_age_s":1.099246},"context":{"vwap":9.454919,"price_vs_vwap_pct":0.318149,"ema9":9.447836,"ema20":9.466349,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.472193,"dist_to_hod_atr":0.39174,"atr":0.114872,"spread_atr":0.087053,"own_change_pct":0.052938,"rel_strength_pct":{"SPY":-0.064334,"IWM":0.101899}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.182324},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"35f58c6592a9","ts":"2026-09-15T13:40:35+00:00","symbol":"NCLH","event":"REJECT","bot":{"state":"REJECT","reason":"price $14.76 below VWAP $14.77","plan":{"state":"PASS","setup":"","stop":14.6288,"target":14.8,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":24.8,"room_to_5d_high_atr":2.04},"price":14.755,"vwap":14.7693,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":1.118,"trend":"flat","recent_slope_pct":0.0716,"volatility":"medium"},"price":14.755,"volume":{"bars":10,"last_bar_volume":30712.0,"baseline_avg":50414.777778,"bar_rvol":0.609186,"raw_accel":-0.300522,"smooth_accel":0.320314,"accel_momentum":-0.545279,"rvol_3bar":[0.232418,0.857086,0.609186],"trend_3bar":"MIXED","projected_rvol":0.378732},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":7189.0,"sell_vol":2993.0,"unclassified_vol":0.0,"imbalance":0.4121,"bid":14.75,"ask":14.76,"spread_pct":0.067774,"quote_size_imbalance":null,"quote_age_s":0.814083},"context":{"vwap":14.769518,"price_vs_vwap_pct":-0.098298,"ema9":14.755308,"ema20":14.770622,"ema_stack":false,"ema_warm":false,"hod":14.85,"dist_to_hod_pct":-0.639731,"dist_to_hod_atr":1.263483,"atr":0.075189,"spread_atr":0.132998,"own_change_pct":0.169607,"rel_strength_pct":{"SPY":0.052335,"IWM":0.218568}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.251046},"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":"6c76ae73703e","ts":"2026-09-15T13:40:35+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":33.3,"room_to_5d_high_atr":1.45},"price":5.53,"vwap":5.5007,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":1.034,"trend":"flat","recent_slope_pct":0.2529,"volatility":"medium"},"price":5.53,"volume":{"bars":10,"last_bar_volume":72251.0,"baseline_avg":77031.333333,"bar_rvol":0.937943,"raw_accel":2.751772,"smooth_accel":0.808759,"accel_momentum":-0.077822,"rvol_3bar":[1.187252,0.134511,0.937943],"trend_3bar":"MIXED","projected_rvol":1.583578},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":45931.0,"sell_vol":7520.0,"unclassified_vol":0.0,"imbalance":0.718621,"bid":5.52,"ask":5.53,"spread_pct":0.180995,"quote_size_imbalance":null,"quote_age_s":3.120844},"context":{"vwap":5.499331,"price_vs_vwap_pct":0.557685,"ema9":5.492433,"ema20":5.503243,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.36036,"dist_to_hod_atr":0.328521,"atr":0.060879,"spread_atr":0.16426,"own_change_pct":0.1785,"rel_strength_pct":{"SPY":0.061228,"IWM":0.227461}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.674025},"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":"6038da7a76c7","ts":"2026-09-15T13:40:40+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.13,"pos_in_5d_range_pct":32.4,"room_to_5d_high_atr":1.47},"price":5.525,"vwap":5.5005,"ext_from_open_pct":1.19,"max_ext_allowed_pct":4.0,"volume_pace":1.026,"trend":"flat","recent_slope_pct":0.2347,"volatility":"medium"},"price":5.525,"volume":{"bars":10,"last_bar_volume":72251.0,"baseline_avg":77031.333333,"bar_rvol":0.937943,"raw_accel":2.751772,"smooth_accel":0.808759,"accel_momentum":-0.077822,"rvol_3bar":[1.187252,0.134511,0.937943],"trend_3bar":"MIXED","projected_rvol":1.386858},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":35989.0,"sell_vol":3609.0,"unclassified_vol":0.0,"imbalance":0.817718,"bid":5.52,"ask":5.53,"spread_pct":0.180995,"quote_size_imbalance":null,"quote_age_s":3.232717},"context":{"vwap":5.499331,"price_vs_vwap_pct":0.466765,"ema9":5.492433,"ema20":5.503243,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.45045,"dist_to_hod_atr":0.410651,"atr":0.060879,"spread_atr":0.16426,"own_change_pct":0.1785,"rel_strength_pct":{"SPY":0.061228,"IWM":0.227461}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.766973},"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":"3eba5290734e","ts":"2026-09-15T13:40:45+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.74,"target":13.84,"target_label":"range_20d_high","reward_risk":5.11,"pos_in_5d_range_pct":61.7,"room_to_5d_high_atr":1.2},"price":12.92,"vwap":12.7983,"ext_from_open_pct":-0.46,"max_ext_allowed_pct":4.0,"volume_pace":5.283,"trend":"flat","recent_slope_pct":0.1197,"volatility":"medium"},"price":12.92,"volume":{"bars":10,"last_bar_volume":3154.0,"baseline_avg":15181.555556,"bar_rvol":0.207752,"raw_accel":-0.168992,"smooth_accel":2.928235,"accel_momentum":-0.954849,"rvol_3bar":[2.141779,0.0572,0.207752],"trend_3bar":"MIXED","projected_rvol":0.686447},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":3928.0,"sell_vol":2494.0,"unclassified_vol":0.0,"imbalance":0.223295,"bid":12.83,"ask":12.92,"spread_pct":0.699029,"quote_size_imbalance":null,"quote_age_s":1.644572},"context":{"vwap":12.794085,"price_vs_vwap_pct":0.984169,"ema9":12.80313,"ema20":12.780378,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-1.561905,"dist_to_hod_atr":0.841253,"atr":0.243684,"spread_atr":0.36933,"own_change_pct":0.540964,"rel_strength_pct":{"SPY":0.423692,"IWM":0.589926}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.04639},"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":"5a1641c6d232","ts":"2026-09-15T13:40:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":33.3,"room_to_5d_high_atr":1.45},"price":5.53,"vwap":5.5008,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":1.027,"trend":"flat","recent_slope_pct":0.2529,"volatility":"medium"},"price":5.53,"volume":{"bars":10,"last_bar_volume":72251.0,"baseline_avg":77031.333333,"bar_rvol":0.937943,"raw_accel":2.751772,"smooth_accel":0.808759,"accel_momentum":-0.077822,"rvol_3bar":[1.187252,0.134511,0.937943],"trend_3bar":"MIXED","projected_rvol":1.361264},"flow":{"window_s":30,"trades":152,"trade_rate":5.066667,"buy_vol":26228.0,"sell_vol":3973.0,"unclassified_vol":0.0,"imbalance":0.736896,"bid":5.52,"ask":5.53,"spread_pct":0.180995,"quote_size_imbalance":null,"quote_age_s":0.506299},"context":{"vwap":5.499331,"price_vs_vwap_pct":0.557685,"ema9":5.492433,"ema20":5.503243,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.36036,"dist_to_hod_atr":0.328521,"atr":0.060879,"spread_atr":0.16426,"own_change_pct":0.1785,"rel_strength_pct":{"SPY":0.061228,"IWM":0.227461}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.691167},"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":"811ef804c1b6","ts":"2026-09-15T13:40:55+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9592,"target":13.8,"target_label":"premarket_high","reward_risk":3.65,"pos_in_5d_range_pct":59.3,"room_to_5d_high_atr":0.84},"price":13.14,"vwap":13.0166,"ext_from_open_pct":0.69,"max_ext_allowed_pct":5.0,"volume_pace":3.107,"trend":"flat","recent_slope_pct":0.1618,"volatility":"medium"},"price":13.14,"volume":{"bars":10,"last_bar_volume":882.0,"baseline_avg":5331.666667,"bar_rvol":0.165427,"raw_accel":-0.338293,"smooth_accel":-0.861276,"accel_momentum":0.04396,"rvol_3bar":[0.055845,0.059119,0.165427],"trend_3bar":"ACCELERATING","projected_rvol":0.524823},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1275.0,"sell_vol":505.0,"unclassified_vol":0.0,"imbalance":0.432584,"bid":13.06,"ask":13.15,"spread_pct":0.686761,"quote_size_imbalance":null,"quote_age_s":0.633698},"context":{"vwap":13.01375,"price_vs_vwap_pct":0.970126,"ema9":12.967356,"ema20":12.98158,"ema_stack":false,"ema_warm":false,"hod":13.27,"dist_to_hod_pct":-0.979653,"dist_to_hod_atr":0.44538,"atr":0.291886,"spread_atr":0.30834,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.643989,"IWM":-1.477756}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.071561},"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":"afa4ce8202de","ts":"2026-09-15T13:41:00+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":12.9292,"target":13.8,"target_label":"premarket_high","reward_risk":3.82,"pos_in_5d_range_pct":57.3,"room_to_5d_high_atr":0.89},"price":13.11,"vwap":13.0161,"ext_from_open_pct":0.46,"max_ext_allowed_pct":5.0,"volume_pace":3.083,"trend":"flat","recent_slope_pct":0.1156,"volatility":"medium"},"price":13.11,"volume":{"bars":10,"last_bar_volume":882.0,"baseline_avg":5331.666667,"bar_rvol":0.165427,"raw_accel":-0.338293,"smooth_accel":-0.861276,"accel_momentum":0.04396,"rvol_3bar":[0.055845,0.059119,0.165427],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1276.0,"sell_vol":485.0,"unclassified_vol":0.0,"imbalance":0.449177,"bid":13.06,"ask":13.15,"spread_pct":0.686761,"quote_size_imbalance":null,"quote_age_s":0.24949},"context":{"vwap":13.01375,"price_vs_vwap_pct":0.739601,"ema9":12.967356,"ema20":12.98158,"ema_stack":false,"ema_warm":false,"hod":13.27,"dist_to_hod_pct":-1.205727,"dist_to_hod_atr":0.54816,"atr":0.291886,"spread_atr":0.30834,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.578074,"IWM":-1.603703}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.074306},"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":"158f4b6c60ac","ts":"2026-09-15T13:41:00+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.5424,"target":10.935,"target_label":"prev_day_high","reward_risk":1.65,"pos_in_5d_range_pct":37.3,"room_to_5d_high_atr":1.36},"price":10.6906,"vwap":10.5906,"ext_from_open_pct":2.7,"max_ext_allowed_pct":3.0,"volume_pace":2.932,"trend":"flat","recent_slope_pct":0.0759,"volatility":"medium"},"price":10.6906,"volume":{"bars":10,"last_bar_volume":77405.0,"baseline_avg":73999.555556,"bar_rvol":1.04602,"raw_accel":0.173479,"smooth_accel":0.280278,"accel_momentum":-0.157637,"rvol_3bar":[0.281436,0.879443,1.04602],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":9321.0,"sell_vol":6974.0,"unclassified_vol":0.0,"imbalance":0.144032,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.003905},"context":{"vwap":10.579951,"price_vs_vwap_pct":1.04584,"ema9":10.654993,"ema20":10.608637,"ema_stack":true,"ema_warm":false,"hod":10.77,"dist_to_hod_pct":-0.737233,"dist_to_hod_atr":0.515639,"atr":0.153984,"spread_atr":0.064942,"own_change_pct":0.866041,"rel_strength_pct":{"SPY":0.814684,"IWM":0.789056}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.15066},"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":"ba363f5f935f","ts":"2026-09-15T13:41:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.522,"target":9.7481,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":427.6,"room_to_5d_high_atr":-4.72},"price":9.642,"vwap":9.5879,"ext_from_open_pct":2.03,"max_ext_allowed_pct":4.0,"volume_pace":21.319,"trend":"flat","recent_slope_pct":-0.2577,"volatility":"low"},"price":9.642,"volume":{"bars":11,"last_bar_volume":19955.0,"baseline_avg":52288.8,"bar_rvol":0.38163,"raw_accel":-0.577788,"smooth_accel":-0.33327,"accel_momentum":-0.058741,"rvol_3bar":[0.570341,0.894333,0.38163],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1492.0,"sell_vol":3316.0,"unclassified_vol":0.0,"imbalance":-0.379368,"bid":9.64,"ask":9.7,"spread_pct":0.620476,"quote_size_imbalance":null,"quote_age_s":0.031804},"context":{"vwap":9.587716,"price_vs_vwap_pct":0.566179,"ema9":9.655035,"ema20":9.560006,"ema_stack":false,"ema_warm":false,"hod":9.8,"dist_to_hod_pct":-1.612245,"dist_to_hod_atr":1.212071,"atr":0.130355,"spread_atr":0.46028,"own_change_pct":-0.553846,"rel_strength_pct":{"SPY":-0.605202,"IWM":-0.630831}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.144778},"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":"486543907fd9","ts":"2026-09-15T13:41:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.86,"target":13.8,"target_label":"premarket_high","reward_risk":2.76,"pos_in_5d_range_pct":57.3,"room_to_5d_high_atr":0.89},"price":13.11,"vwap":13.0175,"ext_from_open_pct":0.46,"max_ext_allowed_pct":4.0,"volume_pace":3.111,"trend":"flat","recent_slope_pct":0.3615,"volatility":"medium"},"price":13.11,"volume":{"bars":11,"last_bar_volume":2566.0,"baseline_avg":4886.7,"bar_rvol":0.525099,"raw_accel":1.100395,"smooth_accel":-0.672555,"accel_momentum":0.188721,"rvol_3bar":[0.059119,0.165427,0.525099],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1213.0,"sell_vol":709.0,"unclassified_vol":0.0,"imbalance":0.262227,"bid":13.06,"ask":13.15,"spread_pct":0.686761,"quote_size_imbalance":null,"quote_age_s":0.071145},"context":{"vwap":13.016058,"price_vs_vwap_pct":0.721742,"ema9":12.995885,"ema20":12.99381,"ema_stack":true,"ema_warm":false,"hod":13.27,"dist_to_hod_pct":-1.205727,"dist_to_hod_atr":0.55521,"atr":0.288179,"spread_atr":0.312305,"own_change_pct":0.846154,"rel_strength_pct":{"SPY":0.794798,"IWM":0.769169}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.137695},"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":"31bbcf3cea15","ts":"2026-09-15T13:41:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.28,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":1.09},"price":10.855,"vwap":10.6271,"ext_from_open_pct":4.27,"max_ext_allowed_pct":5.0,"volume_pace":3.398,"trend":"flat","recent_slope_pct":0.3735,"volatility":"medium"},"price":10.855,"volume":{"bars":11,"last_bar_volume":54863.0,"baseline_avg":74340.1,"bar_rvol":0.738,"raw_accel":-0.291221,"smooth_accel":0.49273,"accel_momentum":0.212452,"rvol_3bar":[0.879443,1.04602,0.738],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":302,"trade_rate":10.066667,"buy_vol":136743.0,"sell_vol":12481.0,"unclassified_vol":0.0,"imbalance":0.832721,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":0.94948},"context":{"vwap":10.590582,"price_vs_vwap_pct":2.496731,"ema9":10.662115,"ema20":10.616443,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":0.23084,"dist_to_hod_atr":-0.162905,"atr":0.153464,"spread_atr":0.065162,"own_change_pct":1.045369,"rel_strength_pct":{"SPY":0.994012,"IWM":0.968384}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.614548},"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":"644b04c96f62","ts":"2026-09-15T13:41:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.3421,"target":9.65,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":12.0,"room_to_5d_high_atr":3.07},"price":9.495,"vwap":9.4565,"ext_from_open_pct":1.55,"max_ext_allowed_pct":3.0,"volume_pace":1.837,"trend":"flat","recent_slope_pct":0.2341,"volatility":"high"},"price":9.495,"volume":{"bars":11,"last_bar_volume":11325.0,"baseline_avg":28524.2,"bar_rvol":0.397031,"raw_accel":0.290451,"smooth_accel":-0.117246,"accel_momentum":0.032502,"rvol_3bar":[0.453584,0.285692,0.397031],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":2463.0,"sell_vol":5743.0,"unclassified_vol":0.0,"imbalance":-0.399708,"bid":9.49,"ask":9.5,"spread_pct":0.105319,"quote_size_imbalance":null,"quote_age_s":0.210763},"context":{"vwap":9.456001,"price_vs_vwap_pct":0.412431,"ema9":9.459609,"ema20":9.470192,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.367261,"dist_to_hod_atr":0.312035,"atr":0.112167,"spread_atr":0.089153,"own_change_pct":0.938598,"rel_strength_pct":{"SPY":0.887242,"IWM":0.861613}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.158696},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d548217a2ed7","ts":"2026-09-15T13:41:05+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 12.87, target 13.84 (range_20d_high), R:R 6.88; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.8664,"target":13.84,"target_label":"range_20d_high","reward_risk":6.88,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":1.06},"price":12.99,"vwap":12.8018,"ext_from_open_pct":0.08,"max_ext_allowed_pct":5.0,"volume_pace":5.171,"trend":"flat","recent_slope_pct":0.2244,"volatility":"medium"},"price":12.99,"volume":{"bars":11,"last_bar_volume":9157.0,"baseline_avg":13978.8,"bar_rvol":0.655063,"raw_accel":1.620254,"smooth_accel":-0.6666,"accel_momentum":-3.594835,"rvol_3bar":[0.0572,0.207752,0.655063],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1261.0,"sell_vol":254.0,"unclassified_vol":0.0,"imbalance":0.664686,"bid":12.97,"ask":13.02,"spread_pct":0.384763,"quote_size_imbalance":null,"quote_age_s":3.864184},"context":{"vwap":12.801824,"price_vs_vwap_pct":1.469918,"ema9":12.840484,"ema20":12.800332,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-1.028571,"dist_to_hod_atr":0.55952,"atr":0.241278,"spread_atr":0.20723,"own_change_pct":2.242424,"rel_strength_pct":{"SPY":2.191068,"IWM":2.165439}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.435412},"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":"13c94949c500","ts":"2026-09-15T13:41:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says PASS; stop 12.44, target 12.72 (premarket_high), R:R 0.27; R:R 0.27 < 2.0 at 12.66; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.4425,"target":12.72,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":14.3,"room_to_5d_high_atr":2.06},"price":12.6616,"vwap":12.6388,"ext_from_open_pct":1.29,"max_ext_allowed_pct":4.0,"volume_pace":2.739,"trend":"flat","recent_slope_pct":-0.1099,"volatility":"high"},"price":12.6616,"volume":{"bars":11,"last_bar_volume":35616.0,"baseline_avg":60924.5,"bar_rvol":0.584592,"raw_accel":0.27633,"smooth_accel":-0.631922,"accel_momentum":-0.033452,"rvol_3bar":[0.312814,0.432011,0.584592],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":10678.0,"sell_vol":3328.0,"unclassified_vol":0.0,"imbalance":0.524775,"bid":12.89,"ask":12.91,"spread_pct":0.155039,"quote_size_imbalance":null,"quote_age_s":1.291102},"context":{"vwap":12.638782,"price_vs_vwap_pct":0.180542,"ema9":12.737349,"ema20":12.676172,"ema_stack":false,"ema_warm":false,"hod":12.9058,"dist_to_hod_pct":-1.892173,"dist_to_hod_atr":1.242769,"atr":0.196497,"spread_atr":0.101783,"own_change_pct":1.914557,"rel_strength_pct":{"SPY":1.863201,"IWM":1.837572}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.30678},"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":"1d1d1b4241ff","ts":"2026-09-15T13:41:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 180.0s, plan says PASS; stop 11.15, target 11.44 (premarket_high), R:R 0.35; R:R 0.35 < 2.0 at 11.36; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1472,"target":11.44,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":28.4,"room_to_5d_high_atr":1.18},"price":11.364,"vwap":11.2842,"ext_from_open_pct":0.92,"max_ext_allowed_pct":3.0,"volume_pace":1.92,"trend":"flat","recent_slope_pct":0.1507,"volatility":"high"},"price":11.364,"volume":{"bars":11,"last_bar_volume":176452.0,"baseline_avg":270905.5,"bar_rvol":0.651342,"raw_accel":0.50287,"smooth_accel":-0.185595,"accel_momentum":0.375043,"rvol_3bar":[0.510147,0.407729,0.651342],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":251,"trade_rate":8.366667,"buy_vol":35554.0,"sell_vol":51260.0,"unclassified_vol":0.0,"imbalance":-0.180916,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.235066},"context":{"vwap":11.283754,"price_vs_vwap_pct":0.711168,"ema9":11.309831,"ema20":11.273224,"ema_stack":true,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-0.664336,"dist_to_hod_atr":0.55266,"atr":0.137517,"spread_atr":0.072718,"own_change_pct":0.932573,"rel_strength_pct":{"SPY":0.881216,"IWM":0.855588}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.117838},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa9fe9e9fdcf","ts":"2026-09-15T13:41:05+00:00","symbol":"RUM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7138,"target":8.07,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":54.3,"room_to_5d_high_atr":1.02},"price":7.9035,"vwap":7.8293,"ext_from_open_pct":2.64,"max_ext_allowed_pct":3.0,"volume_pace":1.147,"trend":"flat","recent_slope_pct":0.3308,"volatility":"high"},"price":7.9035,"volume":{"bars":11,"last_bar_volume":55463.0,"baseline_avg":78738.8,"bar_rvol":0.704392,"raw_accel":1.817569,"smooth_accel":-0.084406,"accel_momentum":0.54241,"rvol_3bar":[0.218213,0.21554,0.704392],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":286.0,"sell_vol":2090.0,"unclassified_vol":0.0,"imbalance":-0.759259,"bid":7.89,"ask":7.91,"spread_pct":0.253165,"quote_size_imbalance":null,"quote_age_s":3.014859},"context":{"vwap":7.829264,"price_vs_vwap_pct":0.948183,"ema9":7.84436,"ema20":7.862528,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-0.709799,"dist_to_hod_atr":0.281392,"atr":0.200788,"spread_atr":0.099608,"own_change_pct":1.7533,"rel_strength_pct":{"SPY":1.701944,"IWM":1.676315}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.534816},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"92c0d9002dff","ts":"2026-09-15T13:41:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says WATCH; stop 7.77, target 8.00 (premarket_high), R:R 0.93; R:R 0.93 < 2.0 at 7.89; breakout: 1-min close > 7.90 on >= 16027 sh","plan":{"state":"WATCH","setup":"","stop":7.7717,"target":8.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8742,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":0.996,"trend":"flat","recent_slope_pct":0.0571,"volatility":"medium"},"price":7.89,"volume":{"bars":11,"last_bar_volume":4424.0,"baseline_avg":11310.9,"bar_rvol":0.391127,"raw_accel":0.564509,"smooth_accel":-0.461622,"accel_momentum":-0.412285,"rvol_3bar":[0.356759,0.228867,0.391127],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":230.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.991342,"bid":7.88,"ask":7.9,"spread_pct":0.253485,"quote_size_imbalance":null,"quote_age_s":10.005693},"context":{"vwap":7.874162,"price_vs_vwap_pct":0.201145,"ema9":7.875601,"ema20":7.873973,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":0.701956,"atr":0.056984,"spread_atr":0.350978,"own_change_pct":0.190476,"rel_strength_pct":{"SPY":0.13912,"IWM":0.113491}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.387741},"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":"0459a488f3a4","ts":"2026-09-15T13:41:10+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $12.50 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":12.58,"target":13.18,"target_label":"prev_day_high","reward_risk":0.9,"pos_in_5d_range_pct":25.4,"room_to_5d_high_atr":1.8},"price":12.895,"vwap":12.6391,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":2.722,"trend":"flat","recent_slope_pct":0.2546,"volatility":"high"},"price":12.895,"volume":{"bars":11,"last_bar_volume":35616.0,"baseline_avg":60924.5,"bar_rvol":0.584592,"raw_accel":0.27633,"smooth_accel":-0.631922,"accel_momentum":-0.033452,"rvol_3bar":[0.312814,0.432011,0.584592],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":8130.0,"sell_vol":3238.0,"unclassified_vol":0.0,"imbalance":0.430331,"bid":12.88,"ask":12.91,"spread_pct":0.232648,"quote_size_imbalance":null,"quote_age_s":1.078231},"context":{"vwap":12.638782,"price_vs_vwap_pct":2.027239,"ema9":12.737349,"ema20":12.676172,"ema_stack":true,"ema_warm":false,"hod":12.9058,"dist_to_hod_pct":-0.083683,"dist_to_hod_atr":0.054963,"atr":0.196497,"spread_atr":0.152674,"own_change_pct":1.914557,"rel_strength_pct":{"SPY":1.863201,"IWM":1.837572}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.251568},"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":"21dba0385bbd","ts":"2026-09-15T13:41:10+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.8002,"target":13.2,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":33.3,"room_to_5d_high_atr":1.09},"price":13.03,"vwap":12.9916,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":4.0,"volume_pace":2.145,"trend":"flat","recent_slope_pct":0.1152,"volatility":"high"},"price":13.03,"volume":{"bars":11,"last_bar_volume":55038.0,"baseline_avg":107464.6,"bar_rvol":0.51215,"raw_accel":0.423679,"smooth_accel":-0.306101,"accel_momentum":0.224643,"rvol_3bar":[0.697697,0.335845,0.51215],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":205,"trade_rate":6.833333,"buy_vol":15239.0,"sell_vol":5582.0,"unclassified_vol":0.0,"imbalance":0.463811,"bid":13.02,"ask":13.03,"spread_pct":0.076775,"quote_size_imbalance":null,"quote_age_s":0.418586},"context":{"vwap":12.991458,"price_vs_vwap_pct":0.296674,"ema9":12.983477,"ema20":12.962002,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.063022,"dist_to_hod_atr":0.765159,"atr":0.182969,"spread_atr":0.054654,"own_change_pct":0.038462,"rel_strength_pct":{"SPY":-0.012895,"IWM":-0.038523}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.237541},"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":"7822d04c2e02","ts":"2026-09-15T13:41:25+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 560.0s, plan says PASS; stop 9.82, target 10.02 (premarket_high), R:R 0.13; R:R 0.13 < 2.0 at 9.99; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.82,"target":10.015,"target_label":"premarket_high","reward_risk":0.13,"pos_in_5d_range_pct":22.5,"room_to_5d_high_atr":2.47},"price":9.992,"vwap":9.9305,"ext_from_open_pct":1.65,"max_ext_allowed_pct":3.0,"volume_pace":1.844,"trend":"flat","recent_slope_pct":-0.0271,"volatility":"medium"},"price":9.992,"volume":{"bars":11,"last_bar_volume":507203.0,"baseline_avg":575209.1,"bar_rvol":0.881772,"raw_accel":-0.254266,"smooth_accel":0.207652,"accel_momentum":-0.283683,"rvol_3bar":[0.786863,1.206883,0.881772],"trend_3bar":"MIXED","projected_rvol":2.187128},"flow":{"window_s":30,"trades":728,"trade_rate":24.266667,"buy_vol":211584.0,"sell_vol":343257.0,"unclassified_vol":0.0,"imbalance":-0.237317,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.19865},"context":{"vwap":9.923785,"price_vs_vwap_pct":0.687387,"ema9":9.975093,"ema20":9.92913,"ema_stack":true,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.577114,"dist_to_hod_atr":0.89967,"atr":0.064468,"spread_atr":0.155116,"own_change_pct":0.954719,"rel_strength_pct":{"SPY":0.903362,"IWM":0.877734}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.209259},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"81a7ebf2e927","ts":"2026-09-15T13:41:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.41 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.16,"pos_in_5d_range_pct":52.4,"room_to_5d_high_atr":1.04},"price":10.885,"vwap":10.6286,"ext_from_open_pct":4.56,"max_ext_allowed_pct":4.0,"volume_pace":3.372,"trend":"flat","recent_slope_pct":0.4292,"volatility":"medium"},"price":10.885,"volume":{"bars":11,"last_bar_volume":54863.0,"baseline_avg":74340.1,"bar_rvol":0.738,"raw_accel":-0.291221,"smooth_accel":0.49273,"accel_momentum":0.212452,"rvol_3bar":[0.879443,1.04602,0.738],"trend_3bar":"MIXED","projected_rvol":4.99231},"flow":{"window_s":30,"trades":374,"trade_rate":12.466667,"buy_vol":146922.0,"sell_vol":17313.0,"unclassified_vol":0.0,"imbalance":0.789168,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.00931},"context":{"vwap":10.590582,"price_vs_vwap_pct":2.780001,"ema9":10.662115,"ema20":10.616443,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":0.507849,"dist_to_hod_atr":-0.358391,"atr":0.153464,"spread_atr":0.065162,"own_change_pct":1.045369,"rel_strength_pct":{"SPY":0.994012,"IWM":0.968384}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.582406},"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":"87300b9d2c98","ts":"2026-09-15T13:41:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 385.0s, plan says PASS; stop 5.82, target 6.03 (premarket_high), R:R 0.24; R:R 0.24 < 2.0 at 5.99; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.82,"target":6.03,"target_label":"premarket_high","reward_risk":0.24,"pos_in_5d_range_pct":108.1,"room_to_5d_high_atr":-0.18},"price":5.99,"vwap":5.9687,"ext_from_open_pct":1.35,"max_ext_allowed_pct":4.0,"volume_pace":4.887,"trend":"positive","recent_slope_pct":0.0249,"volatility":"medium"},"price":5.99,"volume":{"bars":11,"last_bar_volume":419399.0,"baseline_avg":353228.4,"bar_rvol":1.187331,"raw_accel":0.954138,"smooth_accel":-0.091357,"accel_momentum":-0.23815,"rvol_3bar":[1.718384,0.582214,1.187331],"trend_3bar":"MIXED","projected_rvol":1.746275},"flow":{"window_s":30,"trades":424,"trade_rate":14.133333,"buy_vol":194518.0,"sell_vol":113899.0,"unclassified_vol":0.0,"imbalance":0.261396,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":0.005112},"context":{"vwap":5.965524,"price_vs_vwap_pct":0.410288,"ema9":5.982614,"ema20":5.945942,"ema_stack":true,"ema_warm":false,"hod":6.05,"dist_to_hod_pct":-0.991736,"dist_to_hod_atr":1.020185,"atr":0.058813,"spread_atr":0.170031,"own_change_pct":1.940928,"rel_strength_pct":{"SPY":1.889572,"IWM":1.863943}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.310364},"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":"e15a95cab4fd","ts":"2026-09-15T13:41:30+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.87 below VWAP $7.87","plan":{"state":"PASS","setup":"","stop":7.7517,"target":8.0,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":20.0,"room_to_5d_high_atr":2.71},"price":7.87,"vwap":7.8747,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.097,"trend":"flat","recent_slope_pct":0.0063,"volatility":"high"},"price":7.87,"volume":{"bars":11,"last_bar_volume":4424.0,"baseline_avg":11310.9,"bar_rvol":0.391127,"raw_accel":0.564509,"smooth_accel":-0.461622,"accel_momentum":-0.412285,"rvol_3bar":[0.356759,0.228867,0.391127],"trend_3bar":"MIXED","projected_rvol":2.793588},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1785.0,"sell_vol":14014.0,"unclassified_vol":0.0,"imbalance":-0.774036,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.005669},"context":{"vwap":7.874162,"price_vs_vwap_pct":-0.052851,"ema9":7.875601,"ema20":7.873973,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.75662,"dist_to_hod_atr":1.052934,"atr":0.056984,"spread_atr":0.175489,"own_change_pct":0.190476,"rel_strength_pct":{"SPY":0.13912,"IWM":0.113491}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.302747},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"96e0e02612c4","ts":"2026-09-15T13:41:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 390.0s, plan says WATCH; stop 5.82, target 6.02 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 6.02; breakout: 1-min close > 6.06 on >= 538866 sh","plan":{"state":"WATCH","setup":"","stop":5.82,"target":6.02,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":112.2,"room_to_5d_high_atr":-0.27},"price":6.02,"vwap":5.9697,"ext_from_open_pct":1.86,"max_ext_allowed_pct":4.0,"volume_pace":4.875,"trend":"positive","recent_slope_pct":0.1246,"volatility":"medium"},"price":6.02,"volume":{"bars":11,"last_bar_volume":419399.0,"baseline_avg":353228.4,"bar_rvol":1.187331,"raw_accel":0.954138,"smooth_accel":-0.091357,"accel_momentum":-0.23815,"rvol_3bar":[1.718384,0.582214,1.187331],"trend_3bar":"MIXED","projected_rvol":1.595065},"flow":{"window_s":30,"trades":442,"trade_rate":14.733333,"buy_vol":208526.0,"sell_vol":110633.0,"unclassified_vol":0.0,"imbalance":0.306722,"bid":6.01,"ask":6.02,"spread_pct":0.166251,"quote_size_imbalance":null,"quote_age_s":0.512681},"context":{"vwap":5.965524,"price_vs_vwap_pct":0.913178,"ema9":5.982614,"ema20":5.945942,"ema_stack":true,"ema_warm":false,"hod":6.05,"dist_to_hod_pct":-0.495868,"dist_to_hod_atr":0.510092,"atr":0.058813,"spread_atr":0.170031,"own_change_pct":1.940928,"rel_strength_pct":{"SPY":1.889572,"IWM":1.863943}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.36418},"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":"5a5a45d64dd9","ts":"2026-09-15T13:41:35+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.58,"target":13.18,"target_label":"prev_day_high","reward_risk":1.07,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":1.83},"price":12.87,"vwap":12.6407,"ext_from_open_pct":2.96,"max_ext_allowed_pct":3.0,"volume_pace":2.648,"trend":"flat","recent_slope_pct":0.2157,"volatility":"high"},"price":12.87,"volume":{"bars":11,"last_bar_volume":35616.0,"baseline_avg":60924.5,"bar_rvol":0.584592,"raw_accel":0.27633,"smooth_accel":-0.631922,"accel_momentum":-0.033452,"rvol_3bar":[0.312814,0.432011,0.584592],"trend_3bar":"ACCELERATING","projected_rvol":0.198541},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":3004.0,"sell_vol":3829.0,"unclassified_vol":0.0,"imbalance":-0.120738,"bid":12.86,"ask":12.88,"spread_pct":0.1554,"quote_size_imbalance":null,"quote_age_s":0.294369},"context":{"vwap":12.638782,"price_vs_vwap_pct":1.829435,"ema9":12.737349,"ema20":12.676172,"ema_stack":true,"ema_warm":false,"hod":12.9058,"dist_to_hod_pct":-0.277395,"dist_to_hod_atr":0.182191,"atr":0.196497,"spread_atr":0.101783,"own_change_pct":1.914557,"rel_strength_pct":{"SPY":1.863201,"IWM":1.837572}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.070582},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"278cde90ae37","ts":"2026-09-15T13:41:40+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7567,"target":8.0,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.7},"price":7.875,"vwap":7.8749,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":1.093,"trend":"flat","recent_slope_pct":0.019,"volatility":"high"},"price":7.875,"volume":{"bars":11,"last_bar_volume":4424.0,"baseline_avg":11310.9,"bar_rvol":0.391127,"raw_accel":0.564509,"smooth_accel":-0.461622,"accel_momentum":-0.412285,"rvol_3bar":[0.356759,0.228867,0.391127],"trend_3bar":"MIXED","projected_rvol":2.28881},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3235.0,"sell_vol":14014.0,"unclassified_vol":0.0,"imbalance":-0.624906,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":3.258701},"context":{"vwap":7.874162,"price_vs_vwap_pct":0.010648,"ema9":7.875601,"ema20":7.873973,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.693569,"dist_to_hod_atr":0.965189,"atr":0.056984,"spread_atr":0.175489,"own_change_pct":0.190476,"rel_strength_pct":{"SPY":0.13912,"IWM":0.113491}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.244418},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ac618c2d0b79","ts":"2026-09-15T13:41:45+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $12.50 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":12.58,"target":13.18,"target_label":"prev_day_high","reward_risk":0.95,"pos_in_5d_range_pct":25.0,"room_to_5d_high_atr":1.81},"price":12.888,"vwap":12.641,"ext_from_open_pct":3.1,"max_ext_allowed_pct":3.0,"volume_pace":2.614,"trend":"flat","recent_slope_pct":0.2437,"volatility":"high"},"price":12.888,"volume":{"bars":11,"last_bar_volume":35616.0,"baseline_avg":60924.5,"bar_rvol":0.584592,"raw_accel":0.27633,"smooth_accel":-0.631922,"accel_momentum":-0.033452,"rvol_3bar":[0.312814,0.432011,0.584592],"trend_3bar":"ACCELERATING","projected_rvol":0.175124},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2177.0,"sell_vol":3832.0,"unclassified_vol":0.0,"imbalance":-0.27542,"bid":12.85,"ask":12.88,"spread_pct":0.233191,"quote_size_imbalance":null,"quote_age_s":0.048976},"context":{"vwap":12.638782,"price_vs_vwap_pct":1.971853,"ema9":12.737349,"ema20":12.676172,"ema_stack":true,"ema_warm":false,"hod":12.9058,"dist_to_hod_pct":-0.137922,"dist_to_hod_atr":0.090587,"atr":0.196497,"spread_atr":0.152674,"own_change_pct":1.914557,"rel_strength_pct":{"SPY":1.863201,"IWM":1.837572}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.161009},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b67ff044ddf7","ts":"2026-09-15T13:41:45+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.49 below VWAP $5.50","plan":{"state":"PASS","setup":"","stop":5.4272,"target":5.5297,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":25.8,"room_to_5d_high_atr":1.61},"price":5.4894,"vwap":5.5006,"ext_from_open_pct":0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.103,"volatility":"medium"},"price":5.4894,"volume":{"bars":11,"last_bar_volume":82554.0,"baseline_avg":76553.3,"bar_rvol":1.078386,"raw_accel":0.1426,"smooth_accel":-0.029579,"accel_momentum":-0.838338,"rvol_3bar":[0.134511,0.937943,1.078386],"trend_3bar":"ACCELERATING","projected_rvol":0.264165},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":4657.0,"sell_vol":3803.0,"unclassified_vol":0.0,"imbalance":0.100946,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":1.092703},"context":{"vwap":5.500532,"price_vs_vwap_pct":-0.202377,"ema9":5.497947,"ema20":5.504839,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-1.091892,"dist_to_hod_atr":1.014315,"atr":0.059745,"spread_atr":0.167379,"own_change_pct":0.803506,"rel_strength_pct":{"SPY":0.75215,"IWM":0.726521}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.108858},"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":"47b3cb118c8b","ts":"2026-09-15T13:41:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 405.0s, plan says PASS; stop 5.82, target 6.03 (premarket_high), R:R 0.11; R:R 0.11 < 2.0 at 6.01; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.82,"target":6.03,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":110.8,"room_to_5d_high_atr":-0.24},"price":6.01,"vwap":5.97,"ext_from_open_pct":1.69,"max_ext_allowed_pct":4.0,"volume_pace":4.831,"trend":"positive","recent_slope_pct":0.0914,"volatility":"medium"},"price":6.01,"volume":{"bars":11,"last_bar_volume":419399.0,"baseline_avg":353228.4,"bar_rvol":1.187331,"raw_accel":0.954138,"smooth_accel":-0.091357,"accel_momentum":-0.23815,"rvol_3bar":[1.718384,0.582214,1.187331],"trend_3bar":"MIXED","projected_rvol":1.295454},"flow":{"window_s":30,"trades":399,"trade_rate":13.3,"buy_vol":125416.0,"sell_vol":75571.0,"unclassified_vol":0.0,"imbalance":0.248001,"bid":6.01,"ask":6.02,"spread_pct":0.166251,"quote_size_imbalance":null,"quote_age_s":0.250886},"context":{"vwap":5.965524,"price_vs_vwap_pct":0.745548,"ema9":5.982614,"ema20":5.945942,"ema_stack":true,"ema_warm":false,"hod":6.05,"dist_to_hod_pct":-0.661157,"dist_to_hod_atr":0.680123,"atr":0.058813,"spread_atr":0.170031,"own_change_pct":1.940928,"rel_strength_pct":{"SPY":1.889572,"IWM":1.863943}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.294459},"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":"07d711c04e34","ts":"2026-09-15T13:41:50+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.87 below VWAP $7.87","plan":{"state":"PASS","setup":"","stop":7.7529,"target":8.0,"target_label":"premarket_high","reward_risk":1.09,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.7},"price":7.8712,"vwap":7.8747,"ext_from_open_pct":-0.36,"max_ext_allowed_pct":4.0,"volume_pace":1.08,"trend":"flat","recent_slope_pct":0.0094,"volatility":"high"},"price":7.8712,"volume":{"bars":11,"last_bar_volume":4424.0,"baseline_avg":11310.9,"bar_rvol":0.391127,"raw_accel":0.564509,"smooth_accel":-0.461622,"accel_momentum":-0.412285,"rvol_3bar":[0.356759,0.228867,0.391127],"trend_3bar":"MIXED","projected_rvol":1.864043},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":3545.0,"sell_vol":13452.0,"unclassified_vol":0.0,"imbalance":-0.582868,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":1.153965},"context":{"vwap":7.874162,"price_vs_vwap_pct":-0.037611,"ema9":7.875601,"ema20":7.873973,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.741488,"dist_to_hod_atr":1.031875,"atr":0.056984,"spread_atr":0.175489,"own_change_pct":0.190476,"rel_strength_pct":{"SPY":0.13912,"IWM":0.113491}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.227975},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bb0aa5ca95b6","ts":"2026-09-15T13:41:50+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":1.15},"price":10.815,"vwap":10.6292,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":3.337,"trend":"flat","recent_slope_pct":0.2991,"volatility":"medium"},"price":10.815,"volume":{"bars":11,"last_bar_volume":54863.0,"baseline_avg":74340.1,"bar_rvol":0.738,"raw_accel":-0.291221,"smooth_accel":0.49273,"accel_momentum":0.212452,"rvol_3bar":[0.879443,1.04602,0.738],"trend_3bar":"MIXED","projected_rvol":2.892571},"flow":{"window_s":30,"trades":178,"trade_rate":5.933333,"buy_vol":13753.0,"sell_vol":16309.0,"unclassified_vol":0.0,"imbalance":-0.085024,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.393089},"context":{"vwap":10.590582,"price_vs_vwap_pct":2.119037,"ema9":10.662115,"ema20":10.616443,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.138504,"dist_to_hod_atr":0.097743,"atr":0.153464,"spread_atr":0.065162,"own_change_pct":1.045369,"rel_strength_pct":{"SPY":0.994012,"IWM":0.968384}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.062748},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5c0e6372cb0b","ts":"2026-09-15T13:41:50+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.58,"target":13.18,"target_label":"prev_day_high","reward_risk":1.54,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":1.89},"price":12.816,"vwap":12.6427,"ext_from_open_pct":2.53,"max_ext_allowed_pct":3.0,"volume_pace":2.63,"trend":"flat","recent_slope_pct":0.1315,"volatility":"high"},"price":12.816,"volume":{"bars":11,"last_bar_volume":35616.0,"baseline_avg":60924.5,"bar_rvol":0.584592,"raw_accel":0.27633,"smooth_accel":-0.631922,"accel_momentum":-0.033452,"rvol_3bar":[0.312814,0.432011,0.584592],"trend_3bar":"ACCELERATING","projected_rvol":0.326706},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":5520.0,"sell_vol":7922.0,"unclassified_vol":0.0,"imbalance":-0.178694,"bid":12.81,"ask":12.84,"spread_pct":0.233918,"quote_size_imbalance":null,"quote_age_s":0.080773},"context":{"vwap":12.638782,"price_vs_vwap_pct":1.402178,"ema9":12.737349,"ema20":12.676172,"ema_stack":true,"ema_warm":false,"hod":12.9058,"dist_to_hod_pct":-0.695811,"dist_to_hod_atr":0.457005,"atr":0.196497,"spread_atr":0.152674,"own_change_pct":1.914557,"rel_strength_pct":{"SPY":1.863201,"IWM":1.837572}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.104463},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"946951829e84","ts":"2026-09-15T13:41:55+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 410.0s, plan says WATCH; stop 5.82, target 6.04 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 6.04; breakout: 1-min close > 6.06 on >= 538866 sh","plan":{"state":"WATCH","setup":"","stop":5.82,"target":6.035,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":114.2,"room_to_5d_high_atr":-0.32},"price":6.035,"vwap":5.9723,"ext_from_open_pct":2.12,"max_ext_allowed_pct":4.0,"volume_pace":4.941,"trend":"positive","recent_slope_pct":0.1744,"volatility":"medium"},"price":6.035,"volume":{"bars":11,"last_bar_volume":419399.0,"baseline_avg":353228.4,"bar_rvol":1.187331,"raw_accel":0.954138,"smooth_accel":-0.091357,"accel_momentum":-0.23815,"rvol_3bar":[1.718384,0.582214,1.187331],"trend_3bar":"MIXED","projected_rvol":1.577772},"flow":{"window_s":30,"trades":415,"trade_rate":13.833333,"buy_vol":158206.0,"sell_vol":116575.0,"unclassified_vol":0.0,"imbalance":0.151506,"bid":6.03,"ask":6.04,"spread_pct":0.1657,"quote_size_imbalance":null,"quote_age_s":1.994542},"context":{"vwap":5.965524,"price_vs_vwap_pct":1.164623,"ema9":5.982614,"ema20":5.945942,"ema_stack":true,"ema_warm":false,"hod":6.05,"dist_to_hod_pct":-0.247934,"dist_to_hod_atr":0.255046,"atr":0.058813,"spread_atr":0.170031,"own_change_pct":1.940928,"rel_strength_pct":{"SPY":1.889572,"IWM":1.863943}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.179888},"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":"13926c3a9e2c","ts":"2026-09-15T13:41:55+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7567,"target":8.0,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.7},"price":7.875,"vwap":7.8749,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":1.073,"trend":"flat","recent_slope_pct":0.019,"volatility":"high"},"price":7.875,"volume":{"bars":11,"last_bar_volume":4424.0,"baseline_avg":11310.9,"bar_rvol":0.391127,"raw_accel":0.564509,"smooth_accel":-0.461622,"accel_momentum":-0.412285,"rvol_3bar":[0.356759,0.228867,0.391127],"trend_3bar":"MIXED","projected_rvol":1.694874},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":2523.0,"sell_vol":6601.0,"unclassified_vol":0.0,"imbalance":-0.446953,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":6.153965},"context":{"vwap":7.874162,"price_vs_vwap_pct":0.010648,"ema9":7.875601,"ema20":7.873973,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.693569,"dist_to_hod_atr":0.965189,"atr":0.056984,"spread_atr":0.175489,"own_change_pct":0.190476,"rel_strength_pct":{"SPY":0.13912,"IWM":0.113491}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.174815},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c148c6e52d7","ts":"2026-09-15T13:41:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.33,"pos_in_5d_range_pct":49.3,"room_to_5d_high_atr":1.1},"price":10.8453,"vwap":10.6329,"ext_from_open_pct":4.18,"max_ext_allowed_pct":4.0,"volume_pace":3.349,"trend":"flat","recent_slope_pct":0.3555,"volatility":"medium"},"price":10.8453,"volume":{"bars":11,"last_bar_volume":54863.0,"baseline_avg":74340.1,"bar_rvol":0.738,"raw_accel":-0.291221,"smooth_accel":0.49273,"accel_momentum":0.212452,"rvol_3bar":[0.879443,1.04602,0.738],"trend_3bar":"MIXED","projected_rvol":2.781873},"flow":{"window_s":30,"trades":174,"trade_rate":5.8,"buy_vol":13212.0,"sell_vol":21722.0,"unclassified_vol":0.0,"imbalance":-0.243602,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.243466},"context":{"vwap":10.590582,"price_vs_vwap_pct":2.40514,"ema9":10.662115,"ema20":10.616443,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":0.141274,"dist_to_hod_atr":-0.099698,"atr":0.153464,"spread_atr":0.065162,"own_change_pct":1.045369,"rel_strength_pct":{"SPY":0.994012,"IWM":0.968384}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.179778},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7c365dcc6378","ts":"2026-09-15T13:41:55+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.39,"pos_in_5d_range_pct":30.9,"room_to_5d_high_atr":1.5},"price":5.5169,"vwap":5.5008,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":0.2029,"volatility":"medium"},"price":5.5169,"volume":{"bars":11,"last_bar_volume":82554.0,"baseline_avg":76553.3,"bar_rvol":1.078386,"raw_accel":0.1426,"smooth_accel":-0.029579,"accel_momentum":-0.838338,"rvol_3bar":[0.134511,0.937943,1.078386],"trend_3bar":"ACCELERATING","projected_rvol":0.304814},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":4946.0,"sell_vol":6312.0,"unclassified_vol":0.0,"imbalance":-0.121336,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":4.475836},"context":{"vwap":5.500532,"price_vs_vwap_pct":0.297575,"ema9":5.497947,"ema20":5.504839,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.596396,"dist_to_hod_atr":0.554024,"atr":0.059745,"spread_atr":0.167379,"own_change_pct":0.803506,"rel_strength_pct":{"SPY":0.75215,"IWM":0.726521}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.130847},"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":"c084605ec742","ts":"2026-09-15T13:42:00+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.28,"pos_in_5d_range_pct":40.3,"room_to_5d_high_atr":1.3},"price":10.73,"vwap":10.6261,"ext_from_open_pct":3.07,"max_ext_allowed_pct":4.0,"volume_pace":3.337,"trend":"flat","recent_slope_pct":0.1407,"volatility":"medium"},"price":10.73,"volume":{"bars":11,"last_bar_volume":54863.0,"baseline_avg":74340.1,"bar_rvol":0.738,"raw_accel":-0.291221,"smooth_accel":0.49273,"accel_momentum":0.212452,"rvol_3bar":[0.879443,1.04602,0.738],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":192,"trade_rate":6.4,"buy_vol":13115.0,"sell_vol":20848.0,"unclassified_vol":0.0,"imbalance":-0.227689,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.006324},"context":{"vwap":10.590582,"price_vs_vwap_pct":1.316437,"ema9":10.662115,"ema20":10.616443,"ema_stack":true,"ema_warm":false,"hod":10.83,"dist_to_hod_pct":-0.923361,"dist_to_hod_atr":0.651621,"atr":0.153464,"spread_atr":0.065162,"own_change_pct":1.045369,"rel_strength_pct":{"SPY":1.031544,"IWM":0.978875}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.168034},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"79718409793f","ts":"2026-09-15T13:42:00+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.4445,"target":5.5297,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":29.0,"room_to_5d_high_atr":1.54},"price":5.5067,"vwap":5.5007,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.949,"trend":"flat","recent_slope_pct":0.1659,"volatility":"medium"},"price":5.5067,"volume":{"bars":11,"last_bar_volume":82554.0,"baseline_avg":76553.3,"bar_rvol":1.078386,"raw_accel":0.1426,"smooth_accel":-0.029579,"accel_momentum":-0.838338,"rvol_3bar":[0.134511,0.937943,1.078386],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":5061.0,"sell_vol":7484.0,"unclassified_vol":0.0,"imbalance":-0.193145,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":0.008112},"context":{"vwap":5.500532,"price_vs_vwap_pct":0.112138,"ema9":5.497947,"ema20":5.504839,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.78018,"dist_to_hod_atr":0.72475,"atr":0.059745,"spread_atr":0.167379,"own_change_pct":0.803506,"rel_strength_pct":{"SPY":0.789682,"IWM":0.737012}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.208285},"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":"b9e2455426df","ts":"2026-09-15T13:42:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.43,"target":9.7481,"target_label":"premarket_high","reward_risk":0.99,"pos_in_5d_range_pct":413.5,"room_to_5d_high_atr":-4.52},"price":9.59,"vwap":9.5893,"ext_from_open_pct":1.48,"max_ext_allowed_pct":4.0,"volume_pace":20.276,"trend":"flat","recent_slope_pct":-0.4698,"volatility":"low"},"price":9.59,"volume":{"bars":12,"last_bar_volume":21752.0,"baseline_avg":49349.363636,"bar_rvol":0.440776,"raw_accel":0.090053,"smooth_accel":-0.250747,"accel_momentum":0.082523,"rvol_3bar":[0.894333,0.38163,0.440776],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":2435.0,"sell_vol":10526.0,"unclassified_vol":0.0,"imbalance":-0.624257,"bid":9.58,"ask":9.66,"spread_pct":0.831601,"quote_size_imbalance":null,"quote_age_s":0.374291},"context":{"vwap":9.589263,"price_vs_vwap_pct":0.007684,"ema9":9.646028,"ema20":9.564767,"ema_stack":false,"ema_warm":false,"hod":9.8,"dist_to_hod_pct":-2.142857,"dist_to_hod_atr":1.582159,"atr":0.13273,"spread_atr":0.602727,"own_change_pct":-1.233299,"rel_strength_pct":{"SPY":-1.247123,"IWM":-1.299793}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.275157},"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":"b837aebc7552","ts":"2026-09-15T13:42:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7567,"target":8.0,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.7},"price":7.875,"vwap":7.8749,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":1.058,"trend":"flat","recent_slope_pct":0.0063,"volatility":"high"},"price":7.875,"volume":{"bars":12,"last_bar_volume":17573.0,"baseline_avg":10684.818182,"bar_rvol":1.64467,"raw_accel":2.972197,"smooth_accel":0.249345,"accel_momentum":0.710967,"rvol_3bar":[0.228867,0.391127,1.64467],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":331.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.993976,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":5.005644},"context":{"vwap":7.874899,"price_vs_vwap_pct":0.001279,"ema9":7.875481,"ema20":7.874071,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.693569,"dist_to_hod_atr":1.004845,"atr":0.054735,"spread_atr":0.182699,"own_change_pct":-0.126823,"rel_strength_pct":{"SPY":-0.140647,"IWM":-0.193317}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.634762},"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":"feb5e033b034","ts":"2026-09-15T13:42:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.36,"pos_in_5d_range_pct":21.1,"room_to_5d_high_atr":1.9},"price":12.805,"vwap":12.6489,"ext_from_open_pct":2.44,"max_ext_allowed_pct":3.0,"volume_pace":2.687,"trend":"flat","recent_slope_pct":0.1015,"volatility":"high"},"price":12.805,"volume":{"bars":12,"last_bar_volume":38071.0,"baseline_avg":58623.727273,"bar_rvol":0.649413,"raw_accel":0.06893,"smooth_accel":-0.557836,"accel_momentum":0.074086,"rvol_3bar":[0.432011,0.584592,0.649413],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":251,"trade_rate":8.366667,"buy_vol":11706.0,"sell_vol":26525.0,"unclassified_vol":0.0,"imbalance":-0.387617,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":2.253618},"context":{"vwap":12.647239,"price_vs_vwap_pct":1.247391,"ema9":12.749879,"ema20":12.687965,"ema_stack":true,"ema_warm":false,"hod":12.91,"dist_to_hod_pct":-0.813323,"dist_to_hod_atr":0.524446,"atr":0.200211,"spread_atr":0.149842,"own_change_pct":1.072314,"rel_strength_pct":{"SPY":1.05849,"IWM":1.00582}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.251724},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d721b145ca69","ts":"2026-09-15T13:42:05+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.99 below VWAP $12.99","plan":{"state":"PASS","setup":"","stop":12.7602,"target":13.2,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":30.7,"room_to_5d_high_atr":1.13},"price":12.99,"vwap":12.992,"ext_from_open_pct":-0.46,"max_ext_allowed_pct":3.0,"volume_pace":2.044,"trend":"flat","recent_slope_pct":0.0786,"volatility":"high"},"price":12.99,"volume":{"bars":12,"last_bar_volume":40513.0,"baseline_avg":102698.545455,"bar_rvol":0.394485,"raw_accel":-0.263909,"smooth_accel":-0.34337,"accel_momentum":-0.037269,"rvol_3bar":[0.335845,0.51215,0.394485],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":9879.0,"sell_vol":5977.0,"unclassified_vol":0.0,"imbalance":0.24609,"bid":12.99,"ask":13.0,"spread_pct":0.076953,"quote_size_imbalance":null,"quote_age_s":0.472118},"context":{"vwap":12.991966,"price_vs_vwap_pct":-0.015131,"ema9":12.985782,"ema20":12.965145,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.366743,"dist_to_hod_atr":1.014007,"atr":0.177514,"spread_atr":0.056334,"own_change_pct":0.115562,"rel_strength_pct":{"SPY":0.101738,"IWM":0.049068}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.097079},"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":"e28c73c5c3e9","ts":"2026-09-15T13:42:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7667,"target":8.0,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.67},"price":7.885,"vwap":7.8749,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":4.0,"volume_pace":1.054,"trend":"flat","recent_slope_pct":0.0317,"volatility":"medium"},"price":7.885,"volume":{"bars":12,"last_bar_volume":17573.0,"baseline_avg":10684.818182,"bar_rvol":1.64467,"raw_accel":2.972197,"smooth_accel":0.249345,"accel_momentum":0.710967,"rvol_3bar":[0.228867,0.391127,1.64467],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":688.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":0.74398,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.015808},"context":{"vwap":7.874899,"price_vs_vwap_pct":0.128265,"ema9":7.875481,"ema20":7.874071,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.567465,"dist_to_hod_atr":0.822146,"atr":0.054735,"spread_atr":0.182699,"own_change_pct":-0.126823,"rel_strength_pct":{"SPY":-0.140647,"IWM":-0.193317}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.223601},"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":"1f239f8ac947","ts":"2026-09-15T13:42:10+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7802,"target":13.2,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.11},"price":13.01,"vwap":12.9921,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":3.0,"volume_pace":2.047,"trend":"flat","recent_slope_pct":0.1093,"volatility":"high"},"price":13.01,"volume":{"bars":12,"last_bar_volume":40513.0,"baseline_avg":102698.545455,"bar_rvol":0.394485,"raw_accel":-0.263909,"smooth_accel":-0.34337,"accel_momentum":-0.037269,"rvol_3bar":[0.335845,0.51215,0.394485],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":177,"trade_rate":5.9,"buy_vol":11150.0,"sell_vol":9130.0,"unclassified_vol":0.0,"imbalance":0.099606,"bid":13.0,"ask":13.02,"spread_pct":0.153728,"quote_size_imbalance":null,"quote_age_s":0.000346},"context":{"vwap":12.991966,"price_vs_vwap_pct":0.13881,"ema9":12.985782,"ema20":12.965145,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.214882,"dist_to_hod_atr":0.901339,"atr":0.177514,"spread_atr":0.112667,"own_change_pct":0.115562,"rel_strength_pct":{"SPY":0.101738,"IWM":0.049068}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.039293},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"483dc0beab50","ts":"2026-09-15T13:42:15+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 7.76, target 8.00 (premarket_high), R:R 1.01; target 0.12 away > ~0.12 reachable in 373 min","plan":{"state":"PASS","setup":"","stop":7.7617,"target":8.0,"target_label":"premarket_high","reward_risk":1.01,"pos_in_5d_range_pct":20.6,"room_to_5d_high_atr":2.68},"price":7.88,"vwap":7.8749,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":1.048,"trend":"flat","recent_slope_pct":0.019,"volatility":"high"},"price":7.88,"volume":{"bars":12,"last_bar_volume":17573.0,"baseline_avg":10684.818182,"bar_rvol":1.64467,"raw_accel":2.972197,"smooth_accel":0.249345,"accel_momentum":0.710967,"rvol_3bar":[0.228867,0.391127,1.64467],"trend_3bar":"ACCELERATING","projected_rvol":0.215259},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":378.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":0.305699,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":1.398874},"context":{"vwap":7.874899,"price_vs_vwap_pct":0.064772,"ema9":7.875481,"ema20":7.874071,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.630517,"dist_to_hod_atr":0.913495,"atr":0.054735,"spread_atr":0.182699,"own_change_pct":-0.126823,"rel_strength_pct":{"SPY":-0.140647,"IWM":-0.193317}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.502775},"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":"cd67dbc325c9","ts":"2026-09-15T13:42:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.3121,"target":9.48,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":3.11},"price":9.465,"vwap":9.4578,"ext_from_open_pct":1.23,"max_ext_allowed_pct":4.0,"volume_pace":1.743,"trend":"flat","recent_slope_pct":0.1313,"volatility":"high"},"price":9.465,"volume":{"bars":12,"last_bar_volume":16665.0,"baseline_avg":26960.636364,"bar_rvol":0.618123,"raw_accel":0.471523,"smooth_accel":-0.131833,"accel_momentum":-0.014587,"rvol_3bar":[0.285692,0.397031,0.618123],"trend_3bar":"ACCELERATING","projected_rvol":0.295097},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":3065.0,"sell_vol":2140.0,"unclassified_vol":0.0,"imbalance":0.177714,"bid":9.46,"ask":9.47,"spread_pct":0.105652,"quote_size_imbalance":null,"quote_age_s":0.697292},"context":{"vwap":9.457737,"price_vs_vwap_pct":0.076798,"ema9":9.466627,"ema20":9.472526,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.682057,"dist_to_hod_atr":0.595951,"atr":0.109069,"spread_atr":0.091685,"own_change_pct":0.63275,"rel_strength_pct":{"SPY":0.618926,"IWM":0.566256}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.109849},"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":"f05eeb836450","ts":"2026-09-15T13:42:15+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.28 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0632,"target":11.44,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":22.5,"room_to_5d_high_atr":1.27},"price":11.28,"vwap":11.2868,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":1.863,"trend":"flat","recent_slope_pct":-0.0631,"volatility":"high"},"price":11.28,"volume":{"bars":12,"last_bar_volume":155983.0,"baseline_avg":262318.818182,"bar_rvol":0.594631,"raw_accel":-0.116003,"smooth_accel":0.006349,"accel_momentum":0.191944,"rvol_3bar":[0.407729,0.651342,0.594631],"trend_3bar":"MIXED","projected_rvol":1.134558},"flow":{"window_s":30,"trades":406,"trade_rate":13.533333,"buy_vol":58467.0,"sell_vol":77003.0,"unclassified_vol":0.0,"imbalance":-0.136827,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":0.060487},"context":{"vwap":11.286272,"price_vs_vwap_pct":-0.055575,"ema9":11.309585,"ema20":11.276593,"ema_stack":false,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-1.398601,"dist_to_hod_atr":1.192939,"atr":0.134123,"spread_atr":0.074559,"own_change_pct":0.005306,"rel_strength_pct":{"SPY":-0.008518,"IWM":-0.061188}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.081362},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"862714833365","ts":"2026-09-15T13:42:15+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.80 below VWAP $7.83","plan":{"state":"PASS","setup":"","stop":7.6124,"target":8.07,"target_label":"premarket_high","reward_risk":1.41,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":1.15},"price":7.8021,"vwap":7.8299,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":1.07,"trend":"flat","recent_slope_pct":-0.0782,"volatility":"high"},"price":7.8021,"volume":{"bars":12,"last_bar_volume":18507.0,"baseline_avg":76622.818182,"bar_rvol":0.241534,"raw_accel":-0.666318,"smooth_accel":0.118312,"accel_momentum":0.202718,"rvol_3bar":[0.21554,0.704392,0.241534],"trend_3bar":"MIXED","projected_rvol":0.440443},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":867.0,"sell_vol":8370.0,"unclassified_vol":0.0,"imbalance":-0.812277,"bid":7.8,"ask":7.82,"spread_pct":0.256082,"quote_size_imbalance":null,"quote_age_s":2.494132},"context":{"vwap":7.830021,"price_vs_vwap_pct":-0.356593,"ema9":7.844188,"ema20":7.860716,"ema_stack":false,"ema_warm":false,"hod":7.96,"dist_to_hod_pct":-1.983668,"dist_to_hod_atr":0.818668,"atr":0.192874,"spread_atr":0.103694,"own_change_pct":0.557692,"rel_strength_pct":{"SPY":0.543868,"IWM":0.491198}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.196192},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"22f4b1aa5014","ts":"2026-09-15T13:42:20+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 615.0s, plan says WATCH; stop 9.82, target 10.20 (prev_day_high), R:R 1.05; R:R 1.05 < 2.0 at 10.01; breakout: 1-min close > 10.06 on >= 860466 sh","plan":{"state":"WATCH","setup":"","stop":9.82,"target":10.2,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":23.4,"room_to_5d_high_atr":2.44},"price":10.005,"vwap":9.9316,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":1.77,"trend":"flat","recent_slope_pct":-0.0859,"volatility":"medium"},"price":10.005,"volume":{"bars":12,"last_bar_volume":624434.0,"baseline_avg":569026.727273,"bar_rvol":1.097372,"raw_accel":0.231132,"smooth_accel":0.276228,"accel_momentum":0.068576,"rvol_3bar":[1.206883,0.881772,1.097372],"trend_3bar":"MIXED","projected_rvol":0.790998},"flow":{"window_s":30,"trades":378,"trade_rate":12.6,"buy_vol":99559.0,"sell_vol":73145.0,"unclassified_vol":0.0,"imbalance":0.152944,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.681871},"context":{"vwap":9.930185,"price_vs_vwap_pct":0.753412,"ema9":9.974275,"ema20":9.933118,"ema_stack":true,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.447761,"dist_to_hod_atr":0.680283,"atr":0.066149,"spread_atr":0.151174,"own_change_pct":0.310862,"rel_strength_pct":{"SPY":0.297038,"IWM":0.244368}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.167836},"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":"1a42b1ae9e87","ts":"2026-09-15T13:42:20+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 7.77, target 8.00 (premarket_high), R:R 0.93; R:R 0.93 < 2.0 at 7.89; breakout: 1-min close > 7.90 on >= 16888 sh","plan":{"state":"WATCH","setup":"","stop":7.7717,"target":8.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8749,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":1.042,"trend":"flat","recent_slope_pct":0.0444,"volatility":"medium"},"price":7.89,"volume":{"bars":12,"last_bar_volume":17573.0,"baseline_avg":10684.818182,"bar_rvol":1.64467,"raw_accel":2.972197,"smooth_accel":0.249345,"accel_momentum":0.710967,"rvol_3bar":[0.228867,0.391127,1.64467],"trend_3bar":"ACCELERATING","projected_rvol":0.186994},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":378.0,"sell_vol":291.0,"unclassified_vol":0.0,"imbalance":0.130045,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":1.623169},"context":{"vwap":7.874899,"price_vs_vwap_pct":0.191758,"ema9":7.875481,"ema20":7.874071,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":0.730796,"atr":0.054735,"spread_atr":0.182699,"own_change_pct":-0.126823,"rel_strength_pct":{"SPY":-0.140647,"IWM":-0.193317}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.213881},"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":"bcb533469e2d","ts":"2026-09-15T13:42:25+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0832,"target":11.44,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":23.9,"room_to_5d_high_atr":1.25},"price":11.3,"vwap":11.2871,"ext_from_open_pct":0.36,"max_ext_allowed_pct":3.0,"volume_pace":1.848,"trend":"flat","recent_slope_pct":-0.0277,"volatility":"high"},"price":11.3,"volume":{"bars":12,"last_bar_volume":155983.0,"baseline_avg":262318.818182,"bar_rvol":0.594631,"raw_accel":-0.116003,"smooth_accel":0.006349,"accel_momentum":0.191944,"rvol_3bar":[0.407729,0.651342,0.594631],"trend_3bar":"MIXED","projected_rvol":0.840022},"flow":{"window_s":30,"trades":363,"trade_rate":12.1,"buy_vol":42626.0,"sell_vol":88032.0,"unclassified_vol":0.0,"imbalance":-0.347518,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":1.179029},"context":{"vwap":11.286272,"price_vs_vwap_pct":0.121631,"ema9":11.309585,"ema20":11.276593,"ema_stack":false,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-1.223776,"dist_to_hod_atr":1.043821,"atr":0.134123,"spread_atr":0.074559,"own_change_pct":0.005306,"rel_strength_pct":{"SPY":-0.008518,"IWM":-0.061188}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.206645},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fddfe61ef559","ts":"2026-09-15T13:42:25+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.50 below VWAP $5.50","plan":{"state":"PASS","setup":"","stop":5.4378,"target":5.5297,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":27.8,"room_to_5d_high_atr":1.57},"price":5.5,"vwap":5.5008,"ext_from_open_pct":0.73,"max_ext_allowed_pct":3.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":0.0849,"volatility":"medium"},"price":5.5,"volume":{"bars":12,"last_bar_volume":22789.0,"baseline_avg":77098.818182,"bar_rvol":0.295582,"raw_accel":-0.72395,"smooth_accel":0.032866,"accel_momentum":0.062445,"rvol_3bar":[0.937943,1.078386,0.295582],"trend_3bar":"MIXED","projected_rvol":0.460614},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":7203.0,"sell_vol":8993.0,"unclassified_vol":0.0,"imbalance":-0.110521,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":1.751735},"context":{"vwap":5.500746,"price_vs_vwap_pct":-0.013554,"ema9":5.499697,"ema20":5.505016,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.900901,"dist_to_hod_atr":0.856498,"atr":0.058377,"spread_atr":0.1713,"own_change_pct":0.670932,"rel_strength_pct":{"SPY":0.657108,"IWM":0.604438}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.032668},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"babf5782933f","ts":"2026-09-15T13:42:30+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 265.0s, plan says PASS; stop 5.66, target 5.83 (prev_day_high), R:R 0.72; R:R 0.72 < 2.0 at 5.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.83,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7454,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":1.402,"trend":"flat","recent_slope_pct":-0.0836,"volatility":"high"},"price":5.7585,"volume":{"bars":12,"last_bar_volume":6786.0,"baseline_avg":10148.0,"bar_rvol":0.668703,"raw_accel":-0.299184,"smooth_accel":-0.035848,"accel_momentum":-0.040784,"rvol_3bar":[0.508415,0.949826,0.668703],"trend_3bar":"MIXED","projected_rvol":0.662988},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":169.0,"sell_vol":3195.0,"unclassified_vol":0.0,"imbalance":-0.899524,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.006701},"context":{"vwap":5.744824,"price_vs_vwap_pct":0.238055,"ema9":5.767272,"ema20":5.756776,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":0.759976,"atr":0.041449,"spread_atr":0.241262,"own_change_pct":0.467842,"rel_strength_pct":{"SPY":0.454018,"IWM":0.401348}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.601515},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"21c68c5a16fa","ts":"2026-09-15T13:42:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.29,"pos_in_5d_range_pct":31.5,"room_to_5d_high_atr":1.49},"price":5.52,"vwap":5.501,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":0.1575,"volatility":"medium"},"price":5.52,"volume":{"bars":12,"last_bar_volume":22789.0,"baseline_avg":77098.818182,"bar_rvol":0.295582,"raw_accel":-0.72395,"smooth_accel":0.032866,"accel_momentum":0.062445,"rvol_3bar":[0.937943,1.078386,0.295582],"trend_3bar":"MIXED","projected_rvol":0.512459},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":11946.0,"sell_vol":7809.0,"unclassified_vol":0.0,"imbalance":0.209415,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":0.008101},"context":{"vwap":5.500746,"price_vs_vwap_pct":0.350033,"ema9":5.499697,"ema20":5.505016,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.540541,"dist_to_hod_atr":0.513899,"atr":0.058377,"spread_atr":0.1713,"own_change_pct":0.670932,"rel_strength_pct":{"SPY":0.657108,"IWM":0.604438}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.061899},"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":"a8c17f4cd3a5","ts":"2026-09-15T13:42:35+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6601,"target":5.83,"target_label":"prev_day_high","reward_risk":0.71,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.18},"price":5.7597,"vwap":5.7453,"ext_from_open_pct":1.05,"max_ext_allowed_pct":3.0,"volume_pace":1.393,"trend":"flat","recent_slope_pct":-0.0795,"volatility":"high"},"price":5.7597,"volume":{"bars":12,"last_bar_volume":6786.0,"baseline_avg":10148.0,"bar_rvol":0.668703,"raw_accel":-0.299184,"smooth_accel":-0.035848,"accel_momentum":-0.040784,"rvol_3bar":[0.508415,0.949826,0.668703],"trend_3bar":"MIXED","projected_rvol":0.570809},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":174.0,"sell_vol":3205.0,"unclassified_vol":0.0,"imbalance":-0.897011,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":5.006701},"context":{"vwap":5.744824,"price_vs_vwap_pct":0.258943,"ema9":5.767272,"ema20":5.756776,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.523316,"dist_to_hod_atr":0.731025,"atr":0.041449,"spread_atr":0.241262,"own_change_pct":0.467842,"rel_strength_pct":{"SPY":0.454018,"IWM":0.401348}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.599834},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"56439c425669","ts":"2026-09-15T13:42:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.3257,"target":9.65,"target_label":"prev_day_high","reward_risk":1.12,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":3.09},"price":9.4786,"vwap":9.4579,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":1.701,"trend":"flat","recent_slope_pct":0.16,"volatility":"high"},"price":9.4786,"volume":{"bars":12,"last_bar_volume":16665.0,"baseline_avg":26960.636364,"bar_rvol":0.618123,"raw_accel":0.471523,"smooth_accel":-0.131833,"accel_momentum":-0.014587,"rvol_3bar":[0.285692,0.397031,0.618123],"trend_3bar":"ACCELERATING","projected_rvol":0.170789},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":854.0,"sell_vol":1105.0,"unclassified_vol":0.0,"imbalance":-0.128127,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":0.73659},"context":{"vwap":9.457737,"price_vs_vwap_pct":0.220595,"ema9":9.466627,"ema20":9.472526,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.539349,"dist_to_hod_atr":0.47126,"atr":0.109069,"spread_atr":0.091685,"own_change_pct":0.63275,"rel_strength_pct":{"SPY":0.618926,"IWM":0.566256}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.079198},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"590f5fdc292f","ts":"2026-09-15T13:42:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.54 below VWAP $9.59","plan":{"state":"PASS","setup":"","stop":9.4379,"target":9.7481,"target_label":"premarket_high","reward_risk":2.1,"pos_in_5d_range_pct":399.4,"room_to_5d_high_atr":-4.31},"price":9.5379,"vwap":9.5887,"ext_from_open_pct":0.93,"max_ext_allowed_pct":4.0,"volume_pace":20.229,"trend":"flat","recent_slope_pct":-0.5782,"volatility":"low"},"price":9.5379,"volume":{"bars":12,"last_bar_volume":21752.0,"baseline_avg":49349.363636,"bar_rvol":0.440776,"raw_accel":0.090053,"smooth_accel":-0.250747,"accel_momentum":0.082523,"rvol_3bar":[0.894333,0.38163,0.440776],"trend_3bar":"MIXED","projected_rvol":0.78919},"flow":{"window_s":30,"trades":148,"trade_rate":4.933333,"buy_vol":11903.0,"sell_vol":6207.0,"unclassified_vol":0.0,"imbalance":0.314522,"bid":9.53,"ask":9.58,"spread_pct":0.523286,"quote_size_imbalance":null,"quote_age_s":4.157221},"context":{"vwap":9.589263,"price_vs_vwap_pct":-0.535632,"ema9":9.646028,"ema20":9.564767,"ema_stack":false,"ema_warm":false,"hod":9.8,"dist_to_hod_pct":-2.67449,"dist_to_hod_atr":1.974685,"atr":0.13273,"spread_atr":0.376704,"own_change_pct":-1.233299,"rel_strength_pct":{"SPY":-1.247123,"IWM":-1.299793}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.138634},"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":"42569cfff870","ts":"2026-09-15T13:42:40+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.6703,"target":5.83,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":88.9,"room_to_5d_high_atr":0.15},"price":5.7699,"vwap":5.7455,"ext_from_open_pct":1.23,"max_ext_allowed_pct":3.0,"volume_pace":1.386,"trend":"flat","recent_slope_pct":-0.0441,"volatility":"high"},"price":5.7699,"volume":{"bars":12,"last_bar_volume":6786.0,"baseline_avg":10148.0,"bar_rvol":0.668703,"raw_accel":-0.299184,"smooth_accel":-0.035848,"accel_momentum":-0.040784,"rvol_3bar":[0.508415,0.949826,0.668703],"trend_3bar":"MIXED","projected_rvol":0.525916},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":255.0,"sell_vol":1757.0,"unclassified_vol":0.0,"imbalance":-0.746521,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":10.006701},"context":{"vwap":5.744824,"price_vs_vwap_pct":0.436494,"ema9":5.767272,"ema20":5.756776,"ema_stack":true,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.34715,"dist_to_hod_atr":0.484937,"atr":0.041449,"spread_atr":0.241262,"own_change_pct":0.467842,"rel_strength_pct":{"SPY":0.454018,"IWM":0.401348}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.499201},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f3a6378df44e","ts":"2026-09-15T13:42:45+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.83,"target_label":"prev_day_high","reward_risk":0.75,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7453,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":1.377,"trend":"flat","recent_slope_pct":-0.0957,"volatility":"high"},"price":5.755,"volume":{"bars":12,"last_bar_volume":6786.0,"baseline_avg":10148.0,"bar_rvol":0.668703,"raw_accel":-0.299184,"smooth_accel":-0.035848,"accel_momentum":-0.040784,"rvol_3bar":[0.508415,0.949826,0.668703],"trend_3bar":"MIXED","projected_rvol":0.46827},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":248.0,"sell_vol":1753.0,"unclassified_vol":0.0,"imbalance":-0.752124,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":4.460319},"context":{"vwap":5.744824,"price_vs_vwap_pct":0.177131,"ema9":5.767272,"ema20":5.756776,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":0.844418,"atr":0.041449,"spread_atr":0.241262,"own_change_pct":0.467842,"rel_strength_pct":{"SPY":0.454018,"IWM":0.401348}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.502948},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"373ae76470d8","ts":"2026-09-15T13:42:45+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.08% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":12.7152,"target":13.84,"target_label":"range_20d_high","reward_risk":3.02,"pos_in_5d_range_pct":66.6,"room_to_5d_high_atr":1.05},"price":12.9952,"vwap":12.8113,"ext_from_open_pct":0.12,"max_ext_allowed_pct":5.0,"volume_pace":4.779,"trend":"flat","recent_slope_pct":0.2754,"volatility":"medium"},"price":12.9952,"volume":{"bars":12,"last_bar_volume":2194.0,"baseline_avg":13540.454545,"bar_rvol":0.162033,"raw_accel":-0.760402,"smooth_accel":-0.589489,"accel_momentum":0.077111,"rvol_3bar":[0.207752,0.655063,0.162033],"trend_3bar":"MIXED","projected_rvol":0.708888},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":508.0,"sell_vol":519.0,"unclassified_vol":0.0,"imbalance":-0.010711,"bid":12.95,"ask":13.09,"spread_pct":1.075269,"quote_size_imbalance":null,"quote_age_s":0.826703},"context":{"vwap":12.803917,"price_vs_vwap_pct":1.493944,"ema9":12.870387,"ema20":12.818396,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-0.988952,"dist_to_hod_atr":0.520924,"atr":0.249173,"spread_atr":0.56186,"own_change_pct":1.405152,"rel_strength_pct":{"SPY":1.391328,"IWM":1.338658}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.001736},"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":"4f96d9a7d211","ts":"2026-09-15T13:43:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 660.0s, plan says PASS; stop 9.82, target 10.02 (premarket_high), R:R 0.15; R:R 0.15 < 2.0 at 9.99; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.82,"target":10.015,"target_label":"premarket_high","reward_risk":0.15,"pos_in_5d_range_pct":22.4,"room_to_5d_high_atr":2.47},"price":9.99,"vwap":9.9337,"ext_from_open_pct":1.63,"max_ext_allowed_pct":3.0,"volume_pace":1.718,"trend":"flat","recent_slope_pct":-0.0544,"volatility":"medium"},"price":9.99,"volume":{"bars":13,"last_bar_volume":325103.0,"baseline_avg":573644.0,"bar_rvol":0.566733,"raw_accel":-0.479364,"smooth_accel":-0.143385,"accel_momentum":-0.419613,"rvol_3bar":[0.881772,1.097372,0.566733],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":233,"trade_rate":7.766667,"buy_vol":64714.0,"sell_vol":113700.0,"unclassified_vol":0.0,"imbalance":-0.274564,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.004629},"context":{"vwap":9.933408,"price_vs_vwap_pct":0.569709,"ema9":9.98242,"ema20":9.940916,"ema_stack":true,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.597015,"dist_to_hod_atr":0.923142,"atr":0.064995,"spread_atr":0.153857,"own_change_pct":0.068944,"rel_strength_pct":{"SPY":0.066311,"IWM":-0.044825}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.155604},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cf08267a095e","ts":"2026-09-15T13:43:05+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.6604,"target":5.83,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.18},"price":5.76,"vwap":5.7454,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":1.346,"trend":"flat","recent_slope_pct":-0.1325,"volatility":"high"},"price":5.76,"volume":{"bars":13,"last_bar_volume":3898.0,"baseline_avg":9867.833333,"bar_rvol":0.395021,"raw_accel":-0.425582,"smooth_accel":-0.017985,"accel_momentum":0.017863,"rvol_3bar":[0.949826,0.668703,0.395021],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":157.0,"sell_vol":397.0,"unclassified_vol":0.0,"imbalance":-0.433213,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.363443},"context":{"vwap":5.745398,"price_vs_vwap_pct":0.254149,"ema9":5.765518,"ema20":5.75694,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.518135,"dist_to_hod_atr":0.742269,"atr":0.040417,"spread_atr":0.247423,"own_change_pct":0.173958,"rel_strength_pct":{"SPY":0.171325,"IWM":0.060189}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.171128},"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":"3e632b9a2555","ts":"2026-09-15T13:43:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.3121,"target":9.48,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":3.11},"price":9.465,"vwap":9.4581,"ext_from_open_pct":1.23,"max_ext_allowed_pct":3.0,"volume_pace":1.657,"trend":"flat","recent_slope_pct":0.0017,"volatility":"high"},"price":9.465,"volume":{"bars":13,"last_bar_volume":6519.0,"baseline_avg":26102.666667,"bar_rvol":0.249745,"raw_accel":-0.608821,"smooth_accel":-0.009813,"accel_momentum":0.12202,"rvol_3bar":[0.397031,0.618123,0.249745],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":1293.0,"sell_vol":2750.0,"unclassified_vol":0.0,"imbalance":-0.360376,"bid":9.46,"ask":9.47,"spread_pct":0.105652,"quote_size_imbalance":null,"quote_age_s":0.19901},"context":{"vwap":9.458106,"price_vs_vwap_pct":0.072894,"ema9":9.468962,"ema20":9.473076,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.682057,"dist_to_hod_atr":0.624614,"atr":0.104064,"spread_atr":0.096094,"own_change_pct":0.565517,"rel_strength_pct":{"SPY":0.562884,"IWM":0.451748}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.090002},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af64be4e64eb","ts":"2026-09-15T13:43:05+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.76,"target":13.84,"target_label":"range_20d_high","reward_risk":3.15,"pos_in_5d_range_pct":68.2,"room_to_5d_high_atr":1.0},"price":13.02,"vwap":12.8127,"ext_from_open_pct":0.31,"max_ext_allowed_pct":5.0,"volume_pace":4.671,"trend":"flat","recent_slope_pct":0.3484,"volatility":"medium"},"price":13.02,"volume":{"bars":13,"last_bar_volume":7279.0,"baseline_avg":12594.916667,"bar_rvol":0.577932,"raw_accel":1.311726,"smooth_accel":-0.481174,"accel_momentum":0.108315,"rvol_3bar":[0.655063,0.162033,0.577932],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":88.0,"sell_vol":415.0,"unclassified_vol":0.0,"imbalance":-0.650099,"bid":12.95,"ask":13.08,"spread_pct":0.998847,"quote_size_imbalance":null,"quote_age_s":0.709064},"context":{"vwap":12.81219,"price_vs_vwap_pct":1.621974,"ema9":12.90631,"ema20":12.840454,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-0.8,"dist_to_hod_atr":0.427482,"atr":0.245625,"spread_atr":0.529263,"own_change_pct":1.241272,"rel_strength_pct":{"SPY":1.238639,"IWM":1.127503}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.375713},"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":"88860eb95b99","ts":"2026-09-15T13:43:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 75.0s, plan says PASS; stop 7.77, target 8.00 (premarket_high), R:R 0.97; target 0.12 away > ~0.11 reachable in 372 min","plan":{"state":"PASS","setup":"","stop":7.7667,"target":8.0,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.67},"price":7.885,"vwap":7.8751,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.983,"trend":"flat","recent_slope_pct":0.0444,"volatility":"medium"},"price":7.885,"volume":{"bars":13,"last_bar_volume":727.0,"baseline_avg":11258.833333,"bar_rvol":0.064572,"raw_accel":-0.95863,"smooth_accel":0.300223,"accel_momentum":0.050878,"rvol_3bar":[0.391127,1.64467,0.064572],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":47.0,"sell_vol":921.0,"unclassified_vol":0.0,"imbalance":-0.902893,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.852868},"context":{"vwap":7.87498,"price_vs_vwap_pct":0.127237,"ema9":7.879385,"ema20":7.876064,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.567465,"dist_to_hod_atr":0.855336,"atr":0.052611,"spread_atr":0.190075,"own_change_pct":0.253968,"rel_strength_pct":{"SPY":0.251335,"IWM":0.140199}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.058301},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0030e39235db","ts":"2026-09-15T13:43:10+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.83,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7454,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":1.338,"trend":"flat","recent_slope_pct":-0.1377,"volatility":"high"},"price":5.7585,"volume":{"bars":13,"last_bar_volume":3898.0,"baseline_avg":9867.833333,"bar_rvol":0.395021,"raw_accel":-0.425582,"smooth_accel":-0.017985,"accel_momentum":0.017863,"rvol_3bar":[0.949826,0.668703,0.395021],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":81.0,"sell_vol":322.0,"unclassified_vol":0.0,"imbalance":-0.598015,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.529002},"context":{"vwap":5.745398,"price_vs_vwap_pct":0.228042,"ema9":5.765518,"ema20":5.75694,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":0.779382,"atr":0.040417,"spread_atr":0.247423,"own_change_pct":0.173958,"rel_strength_pct":{"SPY":0.171325,"IWM":0.060189}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.236228},"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":"757e3ae9d1a4","ts":"2026-09-15T13:43:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.3241,"target":9.65,"target_label":"prev_day_high","reward_risk":1.13,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":3.1},"price":9.477,"vwap":9.4581,"ext_from_open_pct":1.36,"max_ext_allowed_pct":3.0,"volume_pace":1.647,"trend":"flat","recent_slope_pct":0.027,"volatility":"high"},"price":9.477,"volume":{"bars":13,"last_bar_volume":6519.0,"baseline_avg":26102.666667,"bar_rvol":0.249745,"raw_accel":-0.608821,"smooth_accel":-0.009813,"accel_momentum":0.12202,"rvol_3bar":[0.397031,0.618123,0.249745],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1308.0,"sell_vol":1603.0,"unclassified_vol":0.0,"imbalance":-0.10134,"bid":9.46,"ask":9.47,"spread_pct":0.105652,"quote_size_imbalance":null,"quote_age_s":0.06225},"context":{"vwap":9.458106,"price_vs_vwap_pct":0.199769,"ema9":9.468962,"ema20":9.473076,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.556139,"dist_to_hod_atr":0.5093,"atr":0.104064,"spread_atr":0.096094,"own_change_pct":0.565517,"rel_strength_pct":{"SPY":0.562884,"IWM":0.451748}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.025309},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d8d35512ebd5","ts":"2026-09-15T13:43:10+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.4457,"target":5.5297,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":29.2,"room_to_5d_high_atr":1.54},"price":5.5079,"vwap":5.5012,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":0.0287,"volatility":"medium"},"price":5.5079,"volume":{"bars":13,"last_bar_volume":27438.0,"baseline_avg":72573.0,"bar_rvol":0.378074,"raw_accel":0.204002,"smooth_accel":-0.27278,"accel_momentum":-0.305645,"rvol_3bar":[1.078386,0.295582,0.378074],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1257.0,"sell_vol":2510.0,"unclassified_vol":0.0,"imbalance":-0.332625,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":0.170311},"context":{"vwap":5.501232,"price_vs_vwap_pct":0.121212,"ema9":5.503758,"ema20":5.506443,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.758559,"dist_to_hod_atr":0.747112,"atr":0.05635,"spread_atr":0.177461,"own_change_pct":0.709712,"rel_strength_pct":{"SPY":0.707078,"IWM":0.595942}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.125757},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b55009066e47","ts":"2026-09-15T13:43:10+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.99 below VWAP $12.99","plan":{"state":"PASS","setup":"","stop":12.7565,"target":13.2,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":30.4,"room_to_5d_high_atr":1.14},"price":12.9863,"vwap":12.9933,"ext_from_open_pct":-0.49,"max_ext_allowed_pct":3.0,"volume_pace":1.978,"trend":"flat","recent_slope_pct":0.0359,"volatility":"high"},"price":12.9863,"volume":{"bars":13,"last_bar_volume":52436.0,"baseline_avg":97516.416667,"bar_rvol":0.537715,"raw_accel":0.294301,"smooth_accel":0.06176,"accel_momentum":0.405129,"rvol_3bar":[0.51215,0.394485,0.537715],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":7521.0,"sell_vol":18130.0,"unclassified_vol":0.0,"imbalance":-0.41359,"bid":12.98,"ask":12.99,"spread_pct":0.077012,"quote_size_imbalance":null,"quote_age_s":0.139676},"context":{"vwap":12.993242,"price_vs_vwap_pct":-0.053431,"ema9":12.993625,"ema20":12.970845,"ema_stack":false,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.394837,"dist_to_hod_atr":1.077204,"atr":0.170534,"spread_atr":0.058639,"own_change_pct":0.325818,"rel_strength_pct":{"SPY":0.323185,"IWM":0.212049}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.222393},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c343cfe78b9f","ts":"2026-09-15T13:43:15+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 670.0s, plan says WATCH; stop 9.82, target 10.20 (prev_day_high), R:R 1.05; R:R 1.05 < 2.0 at 10.01; breakout: 1-min close > 10.06 on >= 831788 sh","plan":{"state":"WATCH","setup":"","stop":9.82,"target":10.2,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":23.4,"room_to_5d_high_atr":2.44},"price":10.005,"vwap":9.934,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":1.702,"trend":"flat","recent_slope_pct":-0.0244,"volatility":"medium"},"price":10.005,"volume":{"bars":13,"last_bar_volume":325103.0,"baseline_avg":573644.0,"bar_rvol":0.566733,"raw_accel":-0.479364,"smooth_accel":-0.143385,"accel_momentum":-0.419613,"rvol_3bar":[0.881772,1.097372,0.566733],"trend_3bar":"MIXED","projected_rvol":0.398198},"flow":{"window_s":30,"trades":227,"trade_rate":7.566667,"buy_vol":45962.0,"sell_vol":94426.0,"unclassified_vol":0.0,"imbalance":-0.345215,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.405246},"context":{"vwap":9.933408,"price_vs_vwap_pct":0.720715,"ema9":9.98242,"ema20":9.940916,"ema_stack":true,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.447761,"dist_to_hod_atr":0.692356,"atr":0.064995,"spread_atr":0.153857,"own_change_pct":0.068944,"rel_strength_pct":{"SPY":0.066311,"IWM":-0.044825}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.195645},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3e2422790cc1","ts":"2026-09-15T13:43:15+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.6654,"target":5.83,"target_label":"prev_day_high","reward_risk":0.65,"pos_in_5d_range_pct":88.0,"room_to_5d_high_atr":0.16},"price":5.765,"vwap":5.7456,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":1.344,"trend":"flat","recent_slope_pct":-0.1152,"volatility":"high"},"price":5.765,"volume":{"bars":13,"last_bar_volume":3898.0,"baseline_avg":9867.833333,"bar_rvol":0.395021,"raw_accel":-0.425582,"smooth_accel":-0.017985,"accel_momentum":0.017863,"rvol_3bar":[0.949826,0.668703,0.395021],"trend_3bar":"DECELERATING","projected_rvol":0.565879},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":257.0,"sell_vol":1473.0,"unclassified_vol":0.0,"imbalance":-0.70289,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":1.934962},"context":{"vwap":5.745398,"price_vs_vwap_pct":0.341176,"ema9":5.765518,"ema20":5.75694,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.431779,"dist_to_hod_atr":0.618557,"atr":0.040417,"spread_atr":0.247423,"own_change_pct":0.173958,"rel_strength_pct":{"SPY":0.171325,"IWM":0.060189}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.277656},"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":"0899ccaf59b6","ts":"2026-09-15T13:43:15+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.46 below VWAP $9.46","plan":{"state":"PASS","setup":"","stop":9.3021,"target":9.48,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":3.13},"price":9.455,"vwap":9.4583,"ext_from_open_pct":1.12,"max_ext_allowed_pct":3.0,"volume_pace":1.685,"trend":"flat","recent_slope_pct":-0.0194,"volatility":"high"},"price":9.455,"volume":{"bars":13,"last_bar_volume":6519.0,"baseline_avg":26102.666667,"bar_rvol":0.249745,"raw_accel":-0.608821,"smooth_accel":-0.009813,"accel_momentum":0.12202,"rvol_3bar":[0.397031,0.618123,0.249745],"trend_3bar":"MIXED","projected_rvol":1.504521},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":9332.0,"sell_vol":2133.0,"unclassified_vol":0.0,"imbalance":0.627911,"bid":9.45,"ask":9.46,"spread_pct":0.105764,"quote_size_imbalance":null,"quote_age_s":0.221122},"context":{"vwap":9.458106,"price_vs_vwap_pct":-0.032836,"ema9":9.468962,"ema20":9.473076,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.786988,"dist_to_hod_atr":0.720708,"atr":0.104064,"spread_atr":0.096094,"own_change_pct":0.565517,"rel_strength_pct":{"SPY":0.562884,"IWM":0.451748}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.156817},"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":"8bd9b7d6aa22","ts":"2026-09-15T13:43:15+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.29,"pos_in_5d_range_pct":31.5,"room_to_5d_high_atr":1.49},"price":5.5199,"vwap":5.5013,"ext_from_open_pct":1.1,"max_ext_allowed_pct":3.0,"volume_pace":0.889,"trend":"flat","recent_slope_pct":0.0722,"volatility":"medium"},"price":5.5199,"volume":{"bars":13,"last_bar_volume":27438.0,"baseline_avg":72573.0,"bar_rvol":0.378074,"raw_accel":0.204002,"smooth_accel":-0.27278,"accel_momentum":-0.305645,"rvol_3bar":[1.078386,0.295582,0.378074],"trend_3bar":"MIXED","projected_rvol":0.152178},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1588.0,"sell_vol":2969.0,"unclassified_vol":0.0,"imbalance":-0.30305,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":1.311916},"context":{"vwap":5.501232,"price_vs_vwap_pct":0.339345,"ema9":5.503758,"ema20":5.506443,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.542342,"dist_to_hod_atr":0.534158,"atr":0.05635,"spread_atr":0.177461,"own_change_pct":0.709712,"rel_strength_pct":{"SPY":0.707078,"IWM":0.595942}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.114576},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"07fe40f88f3a","ts":"2026-09-15T13:43:20+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.88","plan":{"state":"PASS","setup":"","stop":7.7567,"target":8.0,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.7},"price":7.875,"vwap":7.8751,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.978,"trend":"flat","recent_slope_pct":0.019,"volatility":"high"},"price":7.875,"volume":{"bars":13,"last_bar_volume":727.0,"baseline_avg":11258.833333,"bar_rvol":0.064572,"raw_accel":-0.95863,"smooth_accel":0.300223,"accel_momentum":0.050878,"rvol_3bar":[0.391127,1.64467,0.064572],"trend_3bar":"MIXED","projected_rvol":0.520125},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":549.0,"sell_vol":1438.0,"unclassified_vol":0.0,"imbalance":-0.447408,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":2.266928},"context":{"vwap":7.87498,"price_vs_vwap_pct":0.000253,"ema9":7.879385,"ema20":7.876064,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.693569,"dist_to_hod_atr":1.045411,"atr":0.052611,"spread_atr":0.190075,"own_change_pct":0.253968,"rel_strength_pct":{"SPY":0.251335,"IWM":0.140199}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.02889},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5f1d15e37e1c","ts":"2026-09-15T13:43:20+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.03 below VWAP $5.04","plan":{"state":"PASS","setup":"","stop":4.9331,"target":5.1,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":2.2,"room_to_5d_high_atr":2.27},"price":5.03,"vwap":5.0397,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":3.0,"volume_pace":1.435,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":5.03,"volume":{"bars":13,"last_bar_volume":9014.0,"baseline_avg":57168.333333,"bar_rvol":0.157675,"raw_accel":-0.369301,"smooth_accel":1.009274,"accel_momentum":-1.1743,"rvol_3bar":[3.20381,0.19667,0.157675],"trend_3bar":"DECELERATING","projected_rvol":0.239241},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":3005.0,"sell_vol":3082.0,"unclassified_vol":0.0,"imbalance":-0.01265,"bid":5.03,"ask":5.04,"spread_pct":0.19861,"quote_size_imbalance":null,"quote_age_s":0.563522},"context":{"vwap":5.039724,"price_vs_vwap_pct":-0.192945,"ema9":5.041463,"ema20":5.03934,"ema_stack":false,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-1.178782,"dist_to_hod_atr":1.296186,"atr":0.04629,"spread_atr":0.216031,"own_change_pct":-0.099108,"rel_strength_pct":{"SPY":-0.101741,"IWM":-0.212878}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001995},"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":"abdb87c3d1f9","ts":"2026-09-15T13:43:20+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.29 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0682,"target":11.44,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":22.8,"room_to_5d_high_atr":1.27},"price":11.285,"vwap":11.2882,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.802,"trend":"flat","recent_slope_pct":-0.0972,"volatility":"high"},"price":11.285,"volume":{"bars":13,"last_bar_volume":163623.0,"baseline_avg":253457.5,"bar_rvol":0.645564,"raw_accel":0.04898,"smooth_accel":0.474156,"accel_momentum":0.467807,"rvol_3bar":[0.651342,0.594631,0.645564],"trend_3bar":"MIXED","projected_rvol":0.885119},"flow":{"window_s":30,"trades":258,"trade_rate":8.6,"buy_vol":28741.0,"sell_vol":60726.0,"unclassified_vol":0.0,"imbalance":-0.357506,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":0.09737},"context":{"vwap":11.287964,"price_vs_vwap_pct":-0.026254,"ema9":11.310668,"ema20":11.280251,"ema_stack":false,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-1.354895,"dist_to_hod_atr":1.181407,"atr":0.1312,"spread_atr":0.07622,"own_change_pct":0.056594,"rel_strength_pct":{"SPY":0.053961,"IWM":-0.057176}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.230793},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"127d0de21238","ts":"2026-09-15T13:43:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7717,"target":8.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8753,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":0.986,"trend":"flat","recent_slope_pct":0.0571,"volatility":"medium"},"price":7.89,"volume":{"bars":13,"last_bar_volume":727.0,"baseline_avg":11258.833333,"bar_rvol":0.064572,"raw_accel":-0.95863,"smooth_accel":0.300223,"accel_momentum":0.050878,"rvol_3bar":[0.391127,1.64467,0.064572],"trend_3bar":"MIXED","projected_rvol":0.841792},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1824.0,"sell_vol":2155.0,"unclassified_vol":0.0,"imbalance":-0.083187,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.677135},"context":{"vwap":7.87498,"price_vs_vwap_pct":0.190729,"ema9":7.879385,"ema20":7.876064,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":0.760299,"atr":0.052611,"spread_atr":0.190075,"own_change_pct":0.253968,"rel_strength_pct":{"SPY":0.251335,"IWM":0.140199}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.005371},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"35e50d124290","ts":"2026-09-15T13:43:25+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0882,"target":11.44,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":1.25},"price":11.305,"vwap":11.2885,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":1.798,"trend":"flat","recent_slope_pct":-0.0618,"volatility":"high"},"price":11.305,"volume":{"bars":13,"last_bar_volume":163623.0,"baseline_avg":253457.5,"bar_rvol":0.645564,"raw_accel":0.04898,"smooth_accel":0.474156,"accel_momentum":0.467807,"rvol_3bar":[0.651342,0.594631,0.645564],"trend_3bar":"MIXED","projected_rvol":0.839923},"flow":{"window_s":30,"trades":274,"trade_rate":9.133333,"buy_vol":39920.0,"sell_vol":51409.0,"unclassified_vol":0.0,"imbalance":-0.125798,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.675752},"context":{"vwap":11.287964,"price_vs_vwap_pct":0.150926,"ema9":11.310668,"ema20":11.280251,"ema_stack":false,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-1.18007,"dist_to_hod_atr":1.028967,"atr":0.1312,"spread_atr":0.07622,"own_change_pct":0.056594,"rel_strength_pct":{"SPY":0.053961,"IWM":-0.057176}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.081211},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f6366ade2492","ts":"2026-09-15T13:43:30+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7817,"target":8.0,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.64},"price":7.9,"vwap":7.8757,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.0,"trend":"flat","recent_slope_pct":0.0824,"volatility":"medium"},"price":7.9,"volume":{"bars":13,"last_bar_volume":727.0,"baseline_avg":11258.833333,"bar_rvol":0.064572,"raw_accel":-0.95863,"smooth_accel":0.300223,"accel_momentum":0.050878,"rvol_3bar":[0.391127,1.64467,0.064572],"trend_3bar":"MIXED","projected_rvol":1.207052},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":4640.0,"sell_vol":2155.0,"unclassified_vol":0.0,"imbalance":0.36571,"bid":7.9,"ask":7.91,"spread_pct":0.126502,"quote_size_imbalance":null,"quote_age_s":0.005579},"context":{"vwap":7.87498,"price_vs_vwap_pct":0.317714,"ema9":7.879385,"ema20":7.876064,"ema_stack":true,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.37831,"dist_to_hod_atr":0.570224,"atr":0.052611,"spread_atr":0.190075,"own_change_pct":0.253968,"rel_strength_pct":{"SPY":0.251335,"IWM":0.140199}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.023614},"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":"221d3e1afdf1","ts":"2026-09-15T13:43:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.3176,"target":9.65,"target_label":"prev_day_high","reward_risk":1.17,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":3.11},"price":9.4705,"vwap":9.4584,"ext_from_open_pct":1.29,"max_ext_allowed_pct":3.0,"volume_pace":1.655,"trend":"flat","recent_slope_pct":0.0133,"volatility":"high"},"price":9.4705,"volume":{"bars":13,"last_bar_volume":6519.0,"baseline_avg":26102.666667,"bar_rvol":0.249745,"raw_accel":-0.608821,"smooth_accel":-0.009813,"accel_momentum":0.12202,"rvol_3bar":[0.397031,0.618123,0.249745],"trend_3bar":"MIXED","projected_rvol":0.767508},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":8934.0,"sell_vol":1083.0,"unclassified_vol":0.0,"imbalance":0.783768,"bid":9.45,"ask":9.46,"spread_pct":0.105764,"quote_size_imbalance":null,"quote_age_s":1.457952},"context":{"vwap":9.458106,"price_vs_vwap_pct":0.131045,"ema9":9.468962,"ema20":9.473076,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.624344,"dist_to_hod_atr":0.571762,"atr":0.104064,"spread_atr":0.096094,"own_change_pct":0.565517,"rel_strength_pct":{"SPY":0.562884,"IWM":0.451748}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.195742},"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":"c1a197bb5755","ts":"2026-09-15T13:43:35+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0914,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":1.608,"trend":"flat","recent_slope_pct":0.0278,"volatility":"low"},"price":10.095,"volume":{"bars":13,"last_bar_volume":30196.0,"baseline_avg":120741.0,"bar_rvol":0.250089,"raw_accel":-0.158487,"smooth_accel":2.842144,"accel_momentum":1.452731,"rvol_3bar":[0.983452,0.279342,0.250089],"trend_3bar":"DECELERATING","projected_rvol":0.572493},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":32157.0,"sell_vol":6161.0,"unclassified_vol":0.0,"imbalance":0.678428,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.129172},"context":{"vwap":10.091486,"price_vs_vwap_pct":0.03482,"ema9":10.084452,"ema20":10.090348,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.247036,"dist_to_hod_atr":0.727367,"atr":0.034371,"spread_atr":0.290947,"own_change_pct":0.049603,"rel_strength_pct":{"SPY":0.04697,"IWM":-0.064166}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.169667},"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":"8d2ffcdd37dc","ts":"2026-09-15T13:43:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.3238,"target":9.65,"target_label":"prev_day_high","reward_risk":1.13,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":3.1},"price":9.4767,"vwap":9.4587,"ext_from_open_pct":1.36,"max_ext_allowed_pct":4.0,"volume_pace":1.655,"trend":"flat","recent_slope_pct":0.0264,"volatility":"high"},"price":9.4767,"volume":{"bars":13,"last_bar_volume":6519.0,"baseline_avg":26102.666667,"bar_rvol":0.249745,"raw_accel":-0.608821,"smooth_accel":-0.009813,"accel_momentum":0.12202,"rvol_3bar":[0.397031,0.618123,0.249745],"trend_3bar":"MIXED","projected_rvol":0.813653},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":12763.0,"sell_vol":976.0,"unclassified_vol":0.0,"imbalance":0.857923,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":0.143372},"context":{"vwap":9.458106,"price_vs_vwap_pct":0.196597,"ema9":9.468962,"ema20":9.473076,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.559286,"dist_to_hod_atr":0.512183,"atr":0.104064,"spread_atr":0.096094,"own_change_pct":0.565517,"rel_strength_pct":{"SPY":0.562884,"IWM":0.451748}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.214262},"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":"11873c8d3287","ts":"2026-09-15T13:43:40+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7673,"target":13.2,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":31.1,"room_to_5d_high_atr":1.12},"price":12.9971,"vwap":12.9932,"ext_from_open_pct":-0.41,"max_ext_allowed_pct":3.0,"volume_pace":1.939,"trend":"flat","recent_slope_pct":0.0525,"volatility":"high"},"price":12.9971,"volume":{"bars":13,"last_bar_volume":52436.0,"baseline_avg":97516.416667,"bar_rvol":0.537715,"raw_accel":0.294301,"smooth_accel":0.06176,"accel_momentum":0.405129,"rvol_3bar":[0.51215,0.394485,0.537715],"trend_3bar":"MIXED","projected_rvol":0.552861},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":9231.0,"sell_vol":12037.0,"unclassified_vol":0.0,"imbalance":-0.131935,"bid":12.97,"ask":12.98,"spread_pct":0.077071,"quote_size_imbalance":null,"quote_age_s":0.803295},"context":{"vwap":12.993242,"price_vs_vwap_pct":0.029689,"ema9":12.993625,"ema20":12.970845,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.312832,"dist_to_hod_atr":1.013874,"atr":0.170534,"spread_atr":0.058639,"own_change_pct":0.325818,"rel_strength_pct":{"SPY":0.323185,"IWM":0.212049}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.070944},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"532e7cb6d44a","ts":"2026-09-15T13:43:50+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.13% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":12.86,"target":13.8,"target_label":"premarket_high","reward_risk":1.19,"pos_in_5d_range_pct":69.2,"room_to_5d_high_atr":0.64},"price":13.2886,"vwap":13.0676,"ext_from_open_pct":1.83,"max_ext_allowed_pct":5.0,"volume_pace":3.43,"trend":"flat","recent_slope_pct":0.6459,"volatility":"medium"},"price":13.2886,"volume":{"bars":13,"last_bar_volume":1204.0,"baseline_avg":4672.666667,"bar_rvol":0.257669,"raw_accel":-0.740461,"smooth_accel":4.219739,"accel_momentum":-0.851582,"rvol_3bar":[0.525099,0.992145,0.257669],"trend_3bar":"MIXED","projected_rvol":3.767699},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":10801.0,"sell_vol":1911.0,"unclassified_vol":0.0,"imbalance":0.699339,"bid":13.16,"ask":13.31,"spread_pct":1.133359,"quote_size_imbalance":null,"quote_age_s":2.125236},"context":{"vwap":13.026328,"price_vs_vwap_pct":2.0134,"ema9":13.050166,"ema20":13.021124,"ema_stack":true,"ema_warm":false,"hod":13.27,"dist_to_hod_pct":0.140166,"dist_to_hod_atr":-0.07169,"atr":0.25945,"spread_atr":0.578147,"own_change_pct":1.462664,"rel_strength_pct":{"SPY":1.46003,"IWM":1.348894}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.180198},"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":"1a12d6cf33cf","ts":"2026-09-15T13:43:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.3128,"target":9.48,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":3.11},"price":9.4657,"vwap":9.4585,"ext_from_open_pct":1.24,"max_ext_allowed_pct":3.0,"volume_pace":1.63,"trend":"flat","recent_slope_pct":0.0032,"volatility":"high"},"price":9.4657,"volume":{"bars":13,"last_bar_volume":6519.0,"baseline_avg":26102.666667,"bar_rvol":0.249745,"raw_accel":-0.608821,"smooth_accel":-0.009813,"accel_momentum":0.12202,"rvol_3bar":[0.397031,0.618123,0.249745],"trend_3bar":"MIXED","projected_rvol":0.632036},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":4340.0,"sell_vol":965.0,"unclassified_vol":0.0,"imbalance":0.636192,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":0.184697},"context":{"vwap":9.458106,"price_vs_vwap_pct":0.080295,"ema9":9.468962,"ema20":9.473076,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.674711,"dist_to_hod_atr":0.617887,"atr":0.104064,"spread_atr":0.096094,"own_change_pct":0.565517,"rel_strength_pct":{"SPY":0.562884,"IWM":0.451748}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.158886},"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":"67f12767a319","ts":"2026-09-15T13:44:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.3271,"target":9.65,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":11.3,"room_to_5d_high_atr":3.09},"price":9.48,"vwap":9.4588,"ext_from_open_pct":1.39,"max_ext_allowed_pct":3.0,"volume_pace":1.623,"trend":"flat","recent_slope_pct":0.0333,"volatility":"high"},"price":9.48,"volume":{"bars":13,"last_bar_volume":6519.0,"baseline_avg":26102.666667,"bar_rvol":0.249745,"raw_accel":-0.608821,"smooth_accel":-0.009813,"accel_momentum":0.12202,"rvol_3bar":[0.397031,0.618123,0.249745],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":4495.0,"sell_vol":1077.0,"unclassified_vol":0.0,"imbalance":0.613424,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":0.07832},"context":{"vwap":9.458106,"price_vs_vwap_pct":0.231488,"ema9":9.468962,"ema20":9.473076,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.524659,"dist_to_hod_atr":0.480472,"atr":0.104064,"spread_atr":0.096094,"own_change_pct":0.565517,"rel_strength_pct":{"SPY":0.582456,"IWM":0.490292}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.153199},"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":"0800bbdb2272","ts":"2026-09-15T13:44:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.6789,"target":5.83,"target_label":"prev_day_high","reward_risk":0.52,"pos_in_5d_range_pct":90.5,"room_to_5d_high_atr":0.13},"price":5.7785,"vwap":5.7461,"ext_from_open_pct":1.38,"max_ext_allowed_pct":4.0,"volume_pace":1.288,"trend":"flat","recent_slope_pct":-0.0255,"volatility":"high"},"price":5.7785,"volume":{"bars":14,"last_bar_volume":3628.0,"baseline_avg":9408.615385,"bar_rvol":0.385604,"raw_accel":-0.069266,"smooth_accel":-0.3609,"accel_momentum":-0.342916,"rvol_3bar":[0.668703,0.395021,0.385604],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1653.0,"sell_vol":266.0,"unclassified_vol":0.0,"imbalance":0.722772,"bid":5.77,"ask":5.78,"spread_pct":0.17316,"quote_size_imbalance":null,"quote_age_s":0.898845},"context":{"vwap":5.746092,"price_vs_vwap_pct":0.563993,"ema9":5.767414,"ema20":5.75866,"ema_stack":true,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.198618,"dist_to_hod_atr":0.293305,"atr":0.039208,"spread_atr":0.255048,"own_change_pct":-0.060569,"rel_strength_pct":{"SPY":-0.043631,"IWM":-0.135794}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.278704},"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":"3745e38b5ccc","ts":"2026-09-15T13:44:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.59,"pos_in_5d_range_pct":45.8,"room_to_5d_high_atr":1.18},"price":10.8,"vwap":10.6331,"ext_from_open_pct":3.75,"max_ext_allowed_pct":3.0,"volume_pace":2.964,"trend":"flat","recent_slope_pct":0.2914,"volatility":"medium"},"price":10.8,"volume":{"bars":14,"last_bar_volume":19809.0,"baseline_avg":77612.153846,"bar_rvol":0.255231,"raw_accel":0.020923,"smooth_accel":0.162806,"accel_momentum":-0.431566,"rvol_3bar":[2.658584,0.215037,0.255231],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":118,"trade_rate":3.933333,"buy_vol":8454.0,"sell_vol":4518.0,"unclassified_vol":0.0,"imbalance":0.303423,"bid":10.79,"ask":10.81,"spread_pct":0.185185,"quote_size_imbalance":null,"quote_age_s":0.47612},"context":{"vwap":10.63241,"price_vs_vwap_pct":1.576219,"ema9":10.729483,"ema20":10.663148,"ema_stack":true,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-0.826446,"dist_to_hod_atr":0.596043,"atr":0.150996,"spread_atr":0.132454,"own_change_pct":1.549719,"rel_strength_pct":{"SPY":1.566657,"IWM":1.474494}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.077443},"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":"b2a0ff8a56d1","ts":"2026-09-15T13:44:05+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.46 below VWAP $9.46","plan":{"state":"PASS","setup":"","stop":9.3021,"target":9.48,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":3.13},"price":9.455,"vwap":9.4588,"ext_from_open_pct":1.12,"max_ext_allowed_pct":3.0,"volume_pace":1.623,"trend":"flat","recent_slope_pct":-0.1245,"volatility":"high"},"price":9.455,"volume":{"bars":14,"last_bar_volume":15589.0,"baseline_avg":24596.230769,"bar_rvol":0.633796,"raw_accel":1.391318,"smooth_accel":0.109861,"accel_momentum":0.119674,"rvol_3bar":[0.618123,0.249745,0.633796],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1641.0,"sell_vol":2908.0,"unclassified_vol":0.0,"imbalance":-0.278523,"bid":9.45,"ask":9.46,"spread_pct":0.105764,"quote_size_imbalance":null,"quote_age_s":1.078717},"context":{"vwap":9.458772,"price_vs_vwap_pct":-0.039875,"ema9":9.471169,"ema20":9.473735,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.786988,"dist_to_hod_atr":0.760794,"atr":0.098581,"spread_atr":0.101439,"own_change_pct":0.58142,"rel_strength_pct":{"SPY":0.598358,"IWM":0.506195}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.176527},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1726c6a6aa44","ts":"2026-09-15T13:44:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":10.06,"target":10.13,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":10.5,"room_to_5d_high_atr":4.12},"price":10.1086,"vwap":10.0918,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":1.569,"trend":"flat","recent_slope_pct":0.0741,"volatility":"low"},"price":10.1086,"volume":{"bars":14,"last_bar_volume":57228.0,"baseline_avg":113776.0,"bar_rvol":0.502988,"raw_accel":0.895218,"smooth_accel":-0.232053,"accel_momentum":-3.074197,"rvol_3bar":[0.279342,0.250089,0.502988],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":3607.0,"sell_vol":14385.0,"unclassified_vol":0.0,"imbalance":-0.599044,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.014601},"context":{"vwap":10.091751,"price_vs_vwap_pct":0.166956,"ema9":10.089081,"ema20":10.091991,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.112648,"dist_to_hod_atr":0.333461,"atr":0.034187,"spread_atr":0.292509,"own_change_pct":0.224095,"rel_strength_pct":{"SPY":0.241034,"IWM":0.14887}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.301312},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"88c6f9223ca8","ts":"2026-09-15T13:44:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":44.2,"room_to_5d_high_atr":1.21},"price":10.78,"vwap":10.6332,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":2.948,"trend":"flat","recent_slope_pct":0.2544,"volatility":"medium"},"price":10.78,"volume":{"bars":14,"last_bar_volume":19809.0,"baseline_avg":77612.153846,"bar_rvol":0.255231,"raw_accel":0.020923,"smooth_accel":0.162806,"accel_momentum":-0.431566,"rvol_3bar":[2.658584,0.215037,0.255231],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":7303.0,"sell_vol":4800.0,"unclassified_vol":0.0,"imbalance":0.206808,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.67321},"context":{"vwap":10.63241,"price_vs_vwap_pct":1.388115,"ema9":10.729483,"ema20":10.663148,"ema_stack":true,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-1.010101,"dist_to_hod_atr":0.728498,"atr":0.150996,"spread_atr":0.066227,"own_change_pct":1.549719,"rel_strength_pct":{"SPY":1.566657,"IWM":1.474494}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.052784},"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":"1d2236b4a103","ts":"2026-09-15T13:44:10+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3038,"target":8.59,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":3.76},"price":8.495,"vwap":8.4675,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":1.237,"trend":"flat","recent_slope_pct":-0.1026,"volatility":"high"},"price":8.495,"volume":{"bars":14,"last_bar_volume":61185.0,"baseline_avg":122945.538462,"bar_rvol":0.497659,"raw_accel":-0.128059,"smooth_accel":0.098708,"accel_momentum":0.044253,"rvol_3bar":[0.333511,0.551038,0.497659],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":293,"trade_rate":9.766667,"buy_vol":9026.0,"sell_vol":26955.0,"unclassified_vol":0.0,"imbalance":-0.498291,"bid":8.49,"ask":8.5,"spread_pct":0.117716,"quote_size_imbalance":null,"quote_age_s":2.733332},"context":{"vwap":8.467334,"price_vs_vwap_pct":0.326743,"ema9":8.51131,"ema20":8.493842,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.278327,"dist_to_hod_atr":1.053938,"atr":0.10437,"spread_atr":0.095813,"own_change_pct":0.412979,"rel_strength_pct":{"SPY":0.429918,"IWM":0.337755}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.247979},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2e455c44984f","ts":"2026-09-15T13:44:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1806,"target":7.2991,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":33.1,"room_to_5d_high_atr":1.43},"price":7.285,"vwap":7.2487,"ext_from_open_pct":1.89,"max_ext_allowed_pct":4.0,"volume_pace":0.72,"trend":"flat","recent_slope_pct":-0.0274,"volatility":"medium"},"price":7.285,"volume":{"bars":14,"last_bar_volume":125658.0,"baseline_avg":156168.153846,"bar_rvol":0.804633,"raw_accel":-0.088583,"smooth_accel":0.346046,"accel_momentum":-0.236619,"rvol_3bar":[1.218309,0.874301,0.804633],"trend_3bar":"DECELERATING","projected_rvol":1.576967},"flow":{"window_s":30,"trades":270,"trade_rate":9.0,"buy_vol":64780.0,"sell_vol":40050.0,"unclassified_vol":0.0,"imbalance":0.235906,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":2.979729},"context":{"vwap":7.247524,"price_vs_vwap_pct":0.517086,"ema9":7.284144,"ema20":7.264361,"ema_stack":true,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.613915,"dist_to_hod_atr":0.714132,"atr":0.063014,"spread_atr":0.158696,"own_change_pct":0.527062,"rel_strength_pct":{"SPY":0.544,"IWM":0.451837}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.189817},"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":"d68ad42dcc96","ts":"2026-09-15T13:44:20+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 735.0s, plan says PASS; stop 9.88, target 10.02 (premarket_high), R:R 0.15; R:R 0.15 < 2.0 at 10.00; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.878,"target":10.015,"target_label":"premarket_high","reward_risk":0.15,"pos_in_5d_range_pct":22.8,"room_to_5d_high_atr":2.46},"price":9.9972,"vwap":9.935,"ext_from_open_pct":1.7,"max_ext_allowed_pct":3.0,"volume_pace":1.596,"trend":"flat","recent_slope_pct":-0.0266,"volatility":"medium"},"price":9.9972,"volume":{"bars":14,"last_bar_volume":114211.0,"baseline_avg":554525.461538,"bar_rvol":0.205962,"raw_accel":-0.648693,"smooth_accel":-0.35198,"accel_momentum":-0.208595,"rvol_3bar":[1.097372,0.566733,0.205962],"trend_3bar":"DECELERATING","projected_rvol":0.25861},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":29262.0,"sell_vol":36033.0,"unclassified_vol":0.0,"imbalance":-0.103699,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.050678},"context":{"vwap":9.934603,"price_vs_vwap_pct":0.630091,"ema9":9.989936,"ema20":9.948448,"ema_stack":true,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.525373,"dist_to_hod_atr":0.844857,"atr":0.062496,"spread_atr":0.160011,"own_change_pct":-0.098705,"rel_strength_pct":{"SPY":-0.081766,"IWM":-0.17393}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.021358},"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":"4b92ad67fc42","ts":"2026-09-15T13:44:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.3133,"target":9.48,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":3.11},"price":9.4662,"vwap":9.4588,"ext_from_open_pct":1.24,"max_ext_allowed_pct":3.0,"volume_pace":1.588,"trend":"flat","recent_slope_pct":-0.1009,"volatility":"high"},"price":9.4662,"volume":{"bars":14,"last_bar_volume":15589.0,"baseline_avg":24596.230769,"bar_rvol":0.633796,"raw_accel":1.391318,"smooth_accel":0.109861,"accel_momentum":0.119674,"rvol_3bar":[0.618123,0.249745,0.633796],"trend_3bar":"MIXED","projected_rvol":0.24755},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":697.0,"sell_vol":2306.0,"unclassified_vol":0.0,"imbalance":-0.535798,"bid":9.45,"ask":9.46,"spread_pct":0.105764,"quote_size_imbalance":null,"quote_age_s":4.884361},"context":{"vwap":9.458772,"price_vs_vwap_pct":0.078534,"ema9":9.471169,"ema20":9.473735,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.669465,"dist_to_hod_atr":0.647182,"atr":0.098581,"spread_atr":0.101439,"own_change_pct":0.58142,"rel_strength_pct":{"SPY":0.598358,"IWM":0.506195}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.339586},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"499876f1f350","ts":"2026-09-15T13:44:30+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.44 below VWAP $9.46","plan":{"state":"PASS","setup":"","stop":9.2857,"target":9.48,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":3.16},"price":9.4386,"vwap":9.4586,"ext_from_open_pct":0.95,"max_ext_allowed_pct":3.0,"volume_pace":1.587,"trend":"flat","recent_slope_pct":-0.1592,"volatility":"high"},"price":9.4386,"volume":{"bars":14,"last_bar_volume":15589.0,"baseline_avg":24596.230769,"bar_rvol":0.633796,"raw_accel":1.391318,"smooth_accel":0.109861,"accel_momentum":0.119674,"rvol_3bar":[0.618123,0.249745,0.633796],"trend_3bar":"MIXED","projected_rvol":0.354282},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":1089.0,"sell_vol":3268.0,"unclassified_vol":0.0,"imbalance":-0.500115,"bid":9.43,"ask":9.44,"spread_pct":0.105988,"quote_size_imbalance":null,"quote_age_s":1.207802},"context":{"vwap":9.458772,"price_vs_vwap_pct":-0.213259,"ema9":9.471169,"ema20":9.473735,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.959077,"dist_to_hod_atr":0.927155,"atr":0.098581,"spread_atr":0.101439,"own_change_pct":0.58142,"rel_strength_pct":{"SPY":0.598358,"IWM":0.506195}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.316971},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3e2de18c4295","ts":"2026-09-15T13:44:40+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says PASS; stop 5.45, target 5.53 (premarket_high), R:R 0.32; R:R 0.32 < 2.0 at 5.51; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.4478,"target":5.5297,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":29.6,"room_to_5d_high_atr":1.53},"price":5.51,"vwap":5.5021,"ext_from_open_pct":0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.838,"trend":"flat","recent_slope_pct":0.0015,"volatility":"medium"},"price":5.51,"volume":{"bars":14,"last_bar_volume":29039.0,"baseline_avg":69101.076923,"bar_rvol":0.420239,"raw_accel":0.05835,"smooth_accel":-0.523267,"accel_momentum":-0.250487,"rvol_3bar":[0.295582,0.378074,0.420239],"trend_3bar":"ACCELERATING","projected_rvol":0.257123},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2297.0,"sell_vol":4546.0,"unclassified_vol":0.0,"imbalance":-0.328657,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":4.119267},"context":{"vwap":5.501876,"price_vs_vwap_pct":0.14766,"ema9":5.508506,"ema20":5.508449,"ema_stack":true,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.720721,"dist_to_hod_atr":0.742062,"atr":0.053904,"spread_atr":0.185515,"own_change_pct":0.866788,"rel_strength_pct":{"SPY":0.883727,"IWM":0.791564}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.138115},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"83c832706799","ts":"2026-09-15T13:44:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.43,"pos_in_5d_range_pct":39.6,"room_to_5d_high_atr":1.31},"price":10.72,"vwap":10.6343,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":2.864,"trend":"flat","recent_slope_pct":0.1431,"volatility":"medium"},"price":10.72,"volume":{"bars":14,"last_bar_volume":19809.0,"baseline_avg":77612.153846,"bar_rvol":0.255231,"raw_accel":0.020923,"smooth_accel":0.162806,"accel_momentum":-0.431566,"rvol_3bar":[2.658584,0.215037,0.255231],"trend_3bar":"MIXED","projected_rvol":0.292497},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":2961.0,"sell_vol":8026.0,"unclassified_vol":0.0,"imbalance":-0.460999,"bid":10.71,"ask":10.72,"spread_pct":0.093327,"quote_size_imbalance":null,"quote_age_s":0.005846},"context":{"vwap":10.63241,"price_vs_vwap_pct":0.823802,"ema9":10.729483,"ema20":10.663148,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-1.561065,"dist_to_hod_atr":1.12586,"atr":0.150996,"spread_atr":0.066227,"own_change_pct":1.549719,"rel_strength_pct":{"SPY":1.566657,"IWM":1.474494}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.117661},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5897afdab695","ts":"2026-09-15T13:44:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says WATCH; stop 5.45, target 5.61 (prev_day_high), R:R 1.34; R:R 1.34 < 2.0 at 5.52; breakout: 1-min close > 5.56 on >= 99359 sh","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.34,"pos_in_5d_range_pct":31.2,"room_to_5d_high_atr":1.49},"price":5.5185,"vwap":5.5021,"ext_from_open_pct":1.07,"max_ext_allowed_pct":3.0,"volume_pace":0.834,"trend":"flat","recent_slope_pct":0.0323,"volatility":"medium"},"price":5.5185,"volume":{"bars":14,"last_bar_volume":29039.0,"baseline_avg":69101.076923,"bar_rvol":0.420239,"raw_accel":0.05835,"smooth_accel":-0.523267,"accel_momentum":-0.250487,"rvol_3bar":[0.295582,0.378074,0.420239],"trend_3bar":"ACCELERATING","projected_rvol":0.244782},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2883.0,"sell_vol":4680.0,"unclassified_vol":0.0,"imbalance":-0.237604,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":3.520509},"context":{"vwap":5.501876,"price_vs_vwap_pct":0.302153,"ema9":5.508506,"ema20":5.508449,"ema_stack":true,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.567568,"dist_to_hod_atr":0.584374,"atr":0.053904,"spread_atr":0.185515,"own_change_pct":0.866788,"rel_strength_pct":{"SPY":0.883727,"IWM":0.791564}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.099851},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3326f305b328","ts":"2026-09-15T13:44:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.32,"pos_in_5d_range_pct":40.2,"room_to_5d_high_atr":1.3},"price":10.7276,"vwap":10.6346,"ext_from_open_pct":3.05,"max_ext_allowed_pct":3.0,"volume_pace":2.854,"trend":"flat","recent_slope_pct":0.1573,"volatility":"medium"},"price":10.7276,"volume":{"bars":14,"last_bar_volume":19809.0,"baseline_avg":77612.153846,"bar_rvol":0.255231,"raw_accel":0.020923,"smooth_accel":0.162806,"accel_momentum":-0.431566,"rvol_3bar":[2.658584,0.215037,0.255231],"trend_3bar":"MIXED","projected_rvol":0.294232},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":3280.0,"sell_vol":8896.0,"unclassified_vol":0.0,"imbalance":-0.461235,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.029109},"context":{"vwap":10.63241,"price_vs_vwap_pct":0.895282,"ema9":10.729483,"ema20":10.663148,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-1.491276,"dist_to_hod_atr":1.075527,"atr":0.150996,"spread_atr":0.066227,"own_change_pct":1.549719,"rel_strength_pct":{"SPY":1.566657,"IWM":1.474494}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.117721},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ecef54887388","ts":"2026-09-15T13:44:50+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says PASS; stop 5.45, target 5.53 (premarket_high), R:R 0.32; R:R 0.32 < 2.0 at 5.51; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.4478,"target":5.5297,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":29.6,"room_to_5d_high_atr":1.53},"price":5.51,"vwap":5.5021,"ext_from_open_pct":0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0015,"volatility":"medium"},"price":5.51,"volume":{"bars":14,"last_bar_volume":29039.0,"baseline_avg":69101.076923,"bar_rvol":0.420239,"raw_accel":0.05835,"smooth_accel":-0.523267,"accel_momentum":-0.250487,"rvol_3bar":[0.295582,0.378074,0.420239],"trend_3bar":"ACCELERATING","projected_rvol":0.22204},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1981.0,"sell_vol":2370.0,"unclassified_vol":0.0,"imbalance":-0.089405,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":4.542228},"context":{"vwap":5.501876,"price_vs_vwap_pct":0.14766,"ema9":5.508506,"ema20":5.508449,"ema_stack":true,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.720721,"dist_to_hod_atr":0.742062,"atr":0.053904,"spread_atr":0.185515,"own_change_pct":0.866788,"rel_strength_pct":{"SPY":0.883727,"IWM":0.791564}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.037571},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"65d170703a46","ts":"2026-09-15T13:45:00+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 775.0s, plan says WATCH; stop 9.88, target 10.20 (prev_day_high), R:R 1.68; R:R 1.68 < 2.0 at 10.00; breakout: 1-min close > 10.06 on >= 784612 sh","plan":{"state":"WATCH","setup":"","stop":9.8808,"target":10.2,"target_label":"prev_day_high","reward_risk":1.68,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":2.45},"price":10.0,"vwap":9.9374,"ext_from_open_pct":1.73,"max_ext_allowed_pct":3.0,"volume_pace":1.582,"trend":"flat","recent_slope_pct":-0.021,"volatility":"medium"},"price":10.0,"volume":{"bars":14,"last_bar_volume":114211.0,"baseline_avg":554525.461538,"bar_rvol":0.205962,"raw_accel":-0.648693,"smooth_accel":-0.35198,"accel_momentum":-0.208595,"rvol_3bar":[1.097372,0.566733,0.205962],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":284,"trade_rate":9.466667,"buy_vol":110828.0,"sell_vol":140366.0,"unclassified_vol":0.0,"imbalance":-0.11759,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.00621},"context":{"vwap":9.934603,"price_vs_vwap_pct":0.658275,"ema9":9.989936,"ema20":9.948448,"ema_stack":true,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.497512,"dist_to_hod_atr":0.800054,"atr":0.062496,"spread_atr":0.160011,"own_change_pct":-0.098705,"rel_strength_pct":{"SPY":-0.117131,"IWM":-0.14769}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.024219},"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":"00cfd70ea973","ts":"2026-09-15T13:45:00+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says WATCH; stop 5.45, target 5.61 (prev_day_high), R:R 1.46; R:R 1.46 < 2.0 at 5.51; breakout: 1-min close > 5.56 on >= 99359 sh","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.46,"pos_in_5d_range_pct":30.6,"room_to_5d_high_atr":1.51},"price":5.515,"vwap":5.5021,"ext_from_open_pct":1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":0.0196,"volatility":"medium"},"price":5.515,"volume":{"bars":14,"last_bar_volume":29039.0,"baseline_avg":69101.076923,"bar_rvol":0.420239,"raw_accel":0.05835,"smooth_accel":-0.523267,"accel_momentum":-0.250487,"rvol_3bar":[0.295582,0.378074,0.420239],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1905.0,"sell_vol":1367.0,"unclassified_vol":0.0,"imbalance":0.164425,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":0.007994},"context":{"vwap":5.501876,"price_vs_vwap_pct":0.238538,"ema9":5.508506,"ema20":5.508449,"ema_stack":true,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.630631,"dist_to_hod_atr":0.649304,"atr":0.053904,"spread_atr":0.185515,"own_change_pct":0.866788,"rel_strength_pct":{"SPY":0.848363,"IWM":0.817803}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.069098},"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":"ca413fd653c5","ts":"2026-09-15T13:45:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.86,"target":13.8,"target_label":"premarket_high","reward_risk":2.36,"pos_in_5d_range_pct":59.3,"room_to_5d_high_atr":0.84},"price":13.14,"vwap":13.0656,"ext_from_open_pct":0.69,"max_ext_allowed_pct":5.0,"volume_pace":3.209,"trend":"flat","recent_slope_pct":0.0759,"volatility":"medium"},"price":13.14,"volume":{"bars":15,"last_bar_volume":1143.0,"baseline_avg":5142.071429,"bar_rvol":0.222284,"raw_accel":-0.922314,"smooth_accel":1.109559,"accel_momentum":-3.299915,"rvol_3bar":[0.257669,3.339427,0.222284],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":211.0,"sell_vol":744.0,"unclassified_vol":0.0,"imbalance":-0.558115,"bid":13.12,"ask":13.2,"spread_pct":0.607903,"quote_size_imbalance":null,"quote_age_s":0.055034},"context":{"vwap":13.065198,"price_vs_vwap_pct":0.572528,"ema9":13.108506,"ema20":13.055818,"ema_stack":true,"ema_warm":false,"hod":13.31,"dist_to_hod_pct":-1.277235,"dist_to_hod_atr":0.693858,"atr":0.245007,"spread_atr":0.326521,"own_change_pct":2.403101,"rel_strength_pct":{"SPY":2.384675,"IWM":2.354115}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.12406},"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":"93af59548678","ts":"2026-09-15T13:45:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.21,"target":8.41,"target_label":"prev_day_high","reward_risk":0.54,"pos_in_5d_range_pct":50.6,"room_to_5d_high_atr":1.19},"price":8.34,"vwap":8.2947,"ext_from_open_pct":0.12,"max_ext_allowed_pct":3.0,"volume_pace":1.69,"trend":"flat","recent_slope_pct":0.3109,"volatility":"medium"},"price":8.34,"volume":{"bars":15,"last_bar_volume":2004.0,"baseline_avg":2672.142857,"bar_rvol":0.74996,"raw_accel":0.786096,"smooth_accel":-0.111429,"accel_momentum":-0.124304,"rvol_3bar":[1.622474,0.401951,0.74996],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1143.0,"sell_vol":130.0,"unclassified_vol":0.0,"imbalance":0.795758,"bid":8.33,"ask":8.35,"spread_pct":0.239808,"quote_size_imbalance":null,"quote_age_s":6.184773},"context":{"vwap":8.294622,"price_vs_vwap_pct":0.54708,"ema9":8.279368,"ema20":8.294235,"ema_stack":false,"ema_warm":false,"hod":8.5,"dist_to_hod_pct":-1.882353,"dist_to_hod_atr":1.854537,"atr":0.086275,"spread_atr":0.231817,"own_change_pct":1.090909,"rel_strength_pct":{"SPY":1.072483,"IWM":1.041924}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.596787},"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":"3af790ff48d9","ts":"2026-09-15T13:45:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.3138,"target":8.59,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":3.75},"price":8.505,"vwap":8.4685,"ext_from_open_pct":1.61,"max_ext_allowed_pct":3.0,"volume_pace":1.195,"trend":"flat","recent_slope_pct":-0.1389,"volatility":"high"},"price":8.505,"volume":{"bars":15,"last_bar_volume":44401.0,"baseline_avg":118534.071429,"bar_rvol":0.374584,"raw_accel":-0.274316,"smooth_accel":0.13107,"accel_momentum":0.032362,"rvol_3bar":[0.551038,0.497659,0.374584],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":390,"trade_rate":13.0,"buy_vol":15775.0,"sell_vol":16223.0,"unclassified_vol":0.0,"imbalance":-0.014001,"bid":8.49,"ask":8.5,"spread_pct":0.117716,"quote_size_imbalance":null,"quote_age_s":0.091534},"context":{"vwap":8.468243,"price_vs_vwap_pct":0.434057,"ema9":8.508388,"ema20":8.494115,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.162115,"dist_to_hod_atr":0.995155,"atr":0.100487,"spread_atr":0.099516,"own_change_pct":0.064773,"rel_strength_pct":{"SPY":0.046347,"IWM":0.015788}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.005245},"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":"61e5b67a9934","ts":"2026-09-15T13:45:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.25,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":-0.0754,"volatility":"medium"},"price":7.275,"volume":{"bars":15,"last_bar_volume":172783.0,"baseline_avg":153988.857143,"bar_rvol":1.122049,"raw_accel":0.375026,"smooth_accel":0.047585,"accel_momentum":-0.298461,"rvol_3bar":[0.874301,0.804633,1.122049],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":204,"trade_rate":6.8,"buy_vol":5195.0,"sell_vol":25646.0,"unclassified_vol":0.0,"imbalance":-0.663111,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.933107},"context":{"vwap":7.249934,"price_vs_vwap_pct":0.345744,"ema9":7.282315,"ema20":7.265375,"ema_stack":false,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":0.891022,"atr":0.061727,"spread_atr":0.162004,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.018426,"IWM":-0.048985}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.744043},"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":"84e4c45a50c5","ts":"2026-09-15T13:45:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.193,"target":7.47,"target_label":"prev_day_high","reward_risk":1.65,"pos_in_5d_range_pct":34.5,"room_to_5d_high_atr":1.4},"price":7.2974,"vwap":7.2503,"ext_from_open_pct":2.06,"max_ext_allowed_pct":3.0,"volume_pace":0.714,"trend":"flat","recent_slope_pct":-0.014,"volatility":"medium"},"price":7.2974,"volume":{"bars":15,"last_bar_volume":172783.0,"baseline_avg":153988.857143,"bar_rvol":1.122049,"raw_accel":0.375026,"smooth_accel":0.047585,"accel_momentum":-0.298461,"rvol_3bar":[0.874301,0.804633,1.122049],"trend_3bar":"MIXED","projected_rvol":0.652021},"flow":{"window_s":30,"trades":167,"trade_rate":5.566667,"buy_vol":18586.0,"sell_vol":26117.0,"unclassified_vol":0.0,"imbalance":-0.168467,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":0.393033},"context":{"vwap":7.249934,"price_vs_vwap_pct":0.654713,"ema9":7.282315,"ema20":7.265375,"ema_stack":true,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.444748,"dist_to_hod_atr":0.528133,"atr":0.061727,"spread_atr":0.162004,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.018426,"IWM":-0.048985}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.189029},"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":"c3b4130a54b5","ts":"2026-09-15T13:45:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 615.0s, plan says PASS; stop 5.92, target 6.03 (premarket_high), R:R 0.30; R:R 0.30 < 2.0 at 6.00; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.9219,"target":6.03,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":110.1,"room_to_5d_high_atr":-0.23},"price":6.005,"vwap":5.9856,"ext_from_open_pct":1.61,"max_ext_allowed_pct":4.0,"volume_pace":4.82,"trend":"flat","recent_slope_pct":-0.0875,"volatility":"medium"},"price":6.005,"volume":{"bars":15,"last_bar_volume":478727.0,"baseline_avg":359008.857143,"bar_rvol":1.333468,"raw_accel":1.678403,"smooth_accel":-0.142001,"accel_momentum":-0.022227,"rvol_3bar":[0.941216,0.479344,1.333468],"trend_3bar":"MIXED","projected_rvol":0.812395},"flow":{"window_s":30,"trades":325,"trade_rate":10.833333,"buy_vol":71384.0,"sell_vol":34783.0,"unclassified_vol":0.0,"imbalance":0.344749,"bid":6.0,"ask":6.01,"spread_pct":0.166528,"quote_size_imbalance":null,"quote_age_s":0.100949},"context":{"vwap":5.985043,"price_vs_vwap_pct":0.333452,"ema9":6.017727,"ema20":5.977469,"ema_stack":false,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-1.07084,"dist_to_hod_atr":1.164588,"atr":0.055814,"spread_atr":0.179167,"own_change_pct":0.368465,"rel_strength_pct":{"SPY":0.350039,"IWM":0.319479}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.459712},"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":"68b11d90c496","ts":"2026-09-15T13:45:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.1806,"target":7.2991,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":33.1,"room_to_5d_high_atr":1.43},"price":7.285,"vwap":7.2505,"ext_from_open_pct":1.89,"max_ext_allowed_pct":4.0,"volume_pace":0.715,"trend":"flat","recent_slope_pct":-0.048,"volatility":"medium"},"price":7.285,"volume":{"bars":15,"last_bar_volume":172783.0,"baseline_avg":153988.857143,"bar_rvol":1.122049,"raw_accel":0.375026,"smooth_accel":0.047585,"accel_momentum":-0.298461,"rvol_3bar":[0.874301,0.804633,1.122049],"trend_3bar":"MIXED","projected_rvol":0.765757},"flow":{"window_s":30,"trades":152,"trade_rate":5.066667,"buy_vol":32385.0,"sell_vol":22311.0,"unclassified_vol":0.0,"imbalance":0.184182,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":0.101082},"context":{"vwap":7.249934,"price_vs_vwap_pct":0.483677,"ema9":7.282315,"ema20":7.265375,"ema_stack":true,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.613915,"dist_to_hod_atr":0.729018,"atr":0.061727,"spread_atr":0.162004,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.018426,"IWM":-0.048985}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.206661},"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":"a498b3133e22","ts":"2026-09-15T13:45:25+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 620.0s, plan says WATCH; stop 5.95, target 6.04 (clear air (typical 60-min move)), R:R 0.00; R:R 0.00 < 2.0 at 6.04; breakout: 1-min close > 6.06 on >= 550485 sh","plan":{"state":"WATCH","setup":"","stop":5.9521,"target":6.0352,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":114.2,"room_to_5d_high_atr":-0.32},"price":6.0352,"vwap":5.9859,"ext_from_open_pct":2.12,"max_ext_allowed_pct":5.0,"volume_pace":4.818,"trend":"flat","recent_slope_pct":0.0126,"volatility":"medium"},"price":6.0352,"volume":{"bars":15,"last_bar_volume":478727.0,"baseline_avg":359008.857143,"bar_rvol":1.333468,"raw_accel":1.678403,"smooth_accel":-0.142001,"accel_momentum":-0.022227,"rvol_3bar":[0.941216,0.479344,1.333468],"trend_3bar":"MIXED","projected_rvol":0.839271},"flow":{"window_s":30,"trades":372,"trade_rate":12.4,"buy_vol":73430.0,"sell_vol":53010.0,"unclassified_vol":0.0,"imbalance":0.1615,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":0.046316},"context":{"vwap":5.985043,"price_vs_vwap_pct":0.838043,"ema9":6.017727,"ema20":5.977469,"ema_stack":true,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-0.573311,"dist_to_hod_atr":0.623502,"atr":0.055814,"spread_atr":0.179167,"own_change_pct":0.368465,"rel_strength_pct":{"SPY":0.350039,"IWM":0.319479}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.215355},"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":"5f98fc81d7ab","ts":"2026-09-15T13:45:25+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.3221,"target":9.65,"target_label":"prev_day_high","reward_risk":1.14,"pos_in_5d_range_pct":11.0,"room_to_5d_high_atr":3.1},"price":9.475,"vwap":9.4585,"ext_from_open_pct":1.34,"max_ext_allowed_pct":4.0,"volume_pace":1.562,"trend":"flat","recent_slope_pct":-0.0693,"volatility":"high"},"price":9.475,"volume":{"bars":15,"last_bar_volume":17342.0,"baseline_avg":23952.857143,"bar_rvol":0.724005,"raw_accel":0.112451,"smooth_accel":0.073002,"accel_momentum":-0.036859,"rvol_3bar":[0.249745,0.633796,0.724005],"trend_3bar":"ACCELERATING","projected_rvol":0.268928},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":1815.0,"sell_vol":1686.0,"unclassified_vol":0.0,"imbalance":0.036847,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":0.933566},"context":{"vwap":9.458455,"price_vs_vwap_pct":0.174922,"ema9":9.467335,"ema20":9.471665,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.577125,"dist_to_hod_atr":0.580451,"atr":0.094754,"spread_atr":0.105537,"own_change_pct":0.021164,"rel_strength_pct":{"SPY":0.002738,"IWM":-0.027821}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.026677},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1bdea8b056d0","ts":"2026-09-15T13:45:25+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 90.0s, plan says PASS; stop 5.45, target 5.53 (premarket_high), R:R 0.32; R:R 0.32 < 2.0 at 5.51; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.4478,"target":5.5297,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":29.6,"room_to_5d_high_atr":1.53},"price":5.51,"vwap":5.5022,"ext_from_open_pct":0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":0.0029,"volatility":"medium"},"price":5.51,"volume":{"bars":15,"last_bar_volume":14438.0,"baseline_avg":66239.5,"bar_rvol":0.217967,"raw_accel":-0.502807,"smooth_accel":-0.60069,"accel_momentum":-0.077424,"rvol_3bar":[0.378074,0.420239,0.217967],"trend_3bar":"MIXED","projected_rvol":0.209168},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2274.0,"sell_vol":5133.0,"unclassified_vol":0.0,"imbalance":-0.385986,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":2.547335},"context":{"vwap":5.502128,"price_vs_vwap_pct":0.143068,"ema9":5.509805,"ema20":5.509073,"ema_stack":true,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.720721,"dist_to_hod_atr":0.776968,"atr":0.051482,"spread_atr":0.194242,"own_change_pct":0.272727,"rel_strength_pct":{"SPY":0.254302,"IWM":0.223742}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.084132},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"64a67f5882a5","ts":"2026-09-15T13:45:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 625.0s, plan says PASS; stop 5.92, target 6.03 (premarket_high), R:R 0.37; R:R 0.37 < 2.0 at 6.00; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.9163,"target":6.03,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":109.4,"room_to_5d_high_atr":-0.21},"price":5.9994,"vwap":5.9857,"ext_from_open_pct":1.51,"max_ext_allowed_pct":5.0,"volume_pace":4.801,"trend":"flat","recent_slope_pct":-0.1061,"volatility":"medium"},"price":5.9994,"volume":{"bars":15,"last_bar_volume":478727.0,"baseline_avg":359008.857143,"bar_rvol":1.333468,"raw_accel":1.678403,"smooth_accel":-0.142001,"accel_momentum":-0.022227,"rvol_3bar":[0.941216,0.479344,1.333468],"trend_3bar":"MIXED","projected_rvol":0.752472},"flow":{"window_s":30,"trades":364,"trade_rate":12.133333,"buy_vol":78810.0,"sell_vol":56262.0,"unclassified_vol":0.0,"imbalance":0.166933,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":0.004935},"context":{"vwap":5.985043,"price_vs_vwap_pct":0.239885,"ema9":6.017727,"ema20":5.977469,"ema_stack":false,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-1.163097,"dist_to_hod_atr":1.264922,"atr":0.055814,"spread_atr":0.179167,"own_change_pct":0.368465,"rel_strength_pct":{"SPY":0.350039,"IWM":0.319479}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.2226},"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":"b0995204a768","ts":"2026-09-15T13:45:30+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.3171,"target":9.53,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":3.11},"price":9.47,"vwap":9.4585,"ext_from_open_pct":1.28,"max_ext_allowed_pct":3.0,"volume_pace":1.554,"trend":"flat","recent_slope_pct":-0.0799,"volatility":"high"},"price":9.47,"volume":{"bars":15,"last_bar_volume":17342.0,"baseline_avg":23952.857143,"bar_rvol":0.724005,"raw_accel":0.112451,"smooth_accel":0.073002,"accel_momentum":-0.036859,"rvol_3bar":[0.249745,0.633796,0.724005],"trend_3bar":"ACCELERATING","projected_rvol":0.233542},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":1671.0,"sell_vol":1126.0,"unclassified_vol":0.0,"imbalance":0.194852,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":0.114183},"context":{"vwap":9.458455,"price_vs_vwap_pct":0.122059,"ema9":9.467335,"ema20":9.471665,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.629591,"dist_to_hod_atr":0.633219,"atr":0.094754,"spread_atr":0.105537,"own_change_pct":0.021164,"rel_strength_pct":{"SPY":0.002738,"IWM":-0.027821}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.141074},"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":"30d2db9b8dcd","ts":"2026-09-15T13:45:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 7.19, target 7.47 (prev_day_high), R:R 1.73; R:R 1.73 < 2.0 at 7.29; breakout: 1-min close > 7.34 on >= 232863 sh","plan":{"state":"WATCH","setup":"","stop":7.1854,"target":7.47,"target_label":"prev_day_high","reward_risk":1.73,"pos_in_5d_range_pct":33.7,"room_to_5d_high_atr":1.41},"price":7.2898,"vwap":7.2507,"ext_from_open_pct":1.96,"max_ext_allowed_pct":4.0,"volume_pace":0.711,"trend":"flat","recent_slope_pct":-0.0348,"volatility":"medium"},"price":7.2898,"volume":{"bars":15,"last_bar_volume":172783.0,"baseline_avg":153988.857143,"bar_rvol":1.122049,"raw_accel":0.375026,"smooth_accel":0.047585,"accel_momentum":-0.298461,"rvol_3bar":[0.874301,0.804633,1.122049],"trend_3bar":"MIXED","projected_rvol":0.65745},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":39006.0,"sell_vol":11614.0,"unclassified_vol":0.0,"imbalance":0.54113,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":0.254823},"context":{"vwap":7.249934,"price_vs_vwap_pct":0.549884,"ema9":7.282315,"ema20":7.265375,"ema_stack":true,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.548431,"dist_to_hod_atr":0.651256,"atr":0.061727,"spread_atr":0.162004,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.018426,"IWM":-0.048985}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.607174},"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":"fba7010b4649","ts":"2026-09-15T13:45:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says WATCH; stop 5.45, target 5.61 (prev_day_high), R:R 1.46; R:R 1.46 < 2.0 at 5.51; breakout: 1-min close > 5.56 on >= 94179 sh","plan":{"state":"WATCH","setup":"","stop":5.45,"target":5.61,"target_label":"prev_day_high","reward_risk":1.46,"pos_in_5d_range_pct":30.6,"room_to_5d_high_atr":1.51},"price":5.515,"vwap":5.5022,"ext_from_open_pct":1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.8,"trend":"flat","recent_slope_pct":0.021,"volatility":"medium"},"price":5.515,"volume":{"bars":15,"last_bar_volume":14438.0,"baseline_avg":66239.5,"bar_rvol":0.217967,"raw_accel":-0.502807,"smooth_accel":-0.60069,"accel_momentum":-0.077424,"rvol_3bar":[0.378074,0.420239,0.217967],"trend_3bar":"MIXED","projected_rvol":0.177598},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1220.0,"sell_vol":4662.0,"unclassified_vol":0.0,"imbalance":-0.585175,"bid":5.51,"ask":5.52,"spread_pct":0.181324,"quote_size_imbalance":null,"quote_age_s":0.007978},"context":{"vwap":5.502128,"price_vs_vwap_pct":0.233942,"ema9":5.509805,"ema20":5.509073,"ema_stack":true,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.630631,"dist_to_hod_atr":0.679847,"atr":0.051482,"spread_atr":0.194242,"own_change_pct":0.272727,"rel_strength_pct":{"SPY":0.254302,"IWM":0.223742}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.127549},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9fa67cd57e41","ts":"2026-09-15T13:45:35+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says PASS; stop 7.18, target 7.30 (premarket_high), R:R 0.14; R:R 0.14 < 2.0 at 7.29; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.1806,"target":7.2991,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":33.1,"room_to_5d_high_atr":1.43},"price":7.285,"vwap":7.2507,"ext_from_open_pct":1.89,"max_ext_allowed_pct":4.0,"volume_pace":0.707,"trend":"flat","recent_slope_pct":-0.048,"volatility":"medium"},"price":7.285,"volume":{"bars":15,"last_bar_volume":172783.0,"baseline_avg":153988.857143,"bar_rvol":1.122049,"raw_accel":0.375026,"smooth_accel":0.047585,"accel_momentum":-0.298461,"rvol_3bar":[0.874301,0.804633,1.122049],"trend_3bar":"MIXED","projected_rvol":0.576865},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":39029.0,"sell_vol":3097.0,"unclassified_vol":0.0,"imbalance":0.852965,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":0.15848},"context":{"vwap":7.249934,"price_vs_vwap_pct":0.483677,"ema9":7.282315,"ema20":7.265375,"ema_stack":true,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.613915,"dist_to_hod_atr":0.729018,"atr":0.061727,"spread_atr":0.162004,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.018426,"IWM":-0.048985}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.957068},"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":"7b97623171c8","ts":"2026-09-15T13:45:45+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.99 below VWAP $5.99","plan":{"state":"PASS","setup":"","stop":5.82,"target":6.03,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":107.4,"room_to_5d_high_atr":-0.17},"price":5.985,"vwap":5.9861,"ext_from_open_pct":1.27,"max_ext_allowed_pct":5.0,"volume_pace":4.877,"trend":"flat","recent_slope_pct":-0.1539,"volatility":"medium"},"price":5.985,"volume":{"bars":15,"last_bar_volume":478727.0,"baseline_avg":359008.857143,"bar_rvol":1.333468,"raw_accel":1.678403,"smooth_accel":-0.142001,"accel_momentum":-0.022227,"rvol_3bar":[0.941216,0.479344,1.333468],"trend_3bar":"MIXED","projected_rvol":1.177561},"flow":{"window_s":30,"trades":362,"trade_rate":12.066667,"buy_vol":183724.0,"sell_vol":68907.0,"unclassified_vol":0.0,"imbalance":0.454485,"bid":5.98,"ask":5.99,"spread_pct":0.167084,"quote_size_imbalance":null,"quote_age_s":0.245404},"context":{"vwap":5.985043,"price_vs_vwap_pct":-0.000715,"ema9":6.017727,"ema20":5.977469,"ema_stack":false,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-1.400329,"dist_to_hod_atr":1.522923,"atr":0.055814,"spread_atr":0.179167,"own_change_pct":0.368465,"rel_strength_pct":{"SPY":0.350039,"IWM":0.319479}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.606041},"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":"3a78a0756c16","ts":"2026-09-15T13:45:45+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 100.0s, plan says PASS; stop 5.66, target 5.83 (prev_day_high), R:R 0.75; R:R 0.75 < 2.0 at 5.75; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.83,"target_label":"prev_day_high","reward_risk":0.75,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7473,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":1.217,"trend":"flat","recent_slope_pct":-0.0232,"volatility":"high"},"price":5.755,"volume":{"bars":15,"last_bar_volume":1498.0,"baseline_avg":8995.714286,"bar_rvol":0.166524,"raw_accel":-0.5871,"smooth_accel":-0.588321,"accel_momentum":-0.227421,"rvol_3bar":[0.395021,0.385604,0.166524],"trend_3bar":"DECELERATING","projected_rvol":0.844254},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1154.0,"sell_vol":3024.0,"unclassified_vol":0.0,"imbalance":-0.447583,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.291756},"context":{"vwap":5.746544,"price_vs_vwap_pct":0.147151,"ema9":5.771631,"ema20":5.761502,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":0.933853,"atr":0.037479,"spread_atr":0.266815,"own_change_pct":0.060501,"rel_strength_pct":{"SPY":0.042076,"IWM":0.011516}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.074533},"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":"e72cf2a164a2","ts":"2026-09-15T13:45:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 110.0s, plan says PASS; stop 5.44, target 5.53 (premarket_high), R:R 0.40; R:R 0.40 < 2.0 at 5.50; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.4428,"target":5.5297,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":28.7,"room_to_5d_high_atr":1.55},"price":5.505,"vwap":5.5022,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"medium"},"price":5.505,"volume":{"bars":15,"last_bar_volume":14438.0,"baseline_avg":66239.5,"bar_rvol":0.217967,"raw_accel":-0.502807,"smooth_accel":-0.60069,"accel_momentum":-0.077424,"rvol_3bar":[0.378074,0.420239,0.217967],"trend_3bar":"MIXED","projected_rvol":0.231342},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":2955.0,"sell_vol":4973.0,"unclassified_vol":0.0,"imbalance":-0.254541,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":0.359466},"context":{"vwap":5.502128,"price_vs_vwap_pct":0.052194,"ema9":5.509805,"ema20":5.509073,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.810811,"dist_to_hod_atr":0.874089,"atr":0.051482,"spread_atr":0.194242,"own_change_pct":0.272727,"rel_strength_pct":{"SPY":0.254302,"IWM":0.223742}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.055481},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"76d0fb87b046","ts":"2026-09-15T13:45:50+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.3254,"target":9.65,"target_label":"prev_day_high","reward_risk":1.12,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":3.09},"price":9.4783,"vwap":9.4586,"ext_from_open_pct":1.37,"max_ext_allowed_pct":3.0,"volume_pace":1.527,"trend":"flat","recent_slope_pct":-0.0624,"volatility":"high"},"price":9.4783,"volume":{"bars":15,"last_bar_volume":17342.0,"baseline_avg":23952.857143,"bar_rvol":0.724005,"raw_accel":0.112451,"smooth_accel":0.073002,"accel_momentum":-0.036859,"rvol_3bar":[0.249745,0.633796,0.724005],"trend_3bar":"ACCELERATING","projected_rvol":0.214872},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":269.0,"sell_vol":1547.0,"unclassified_vol":0.0,"imbalance":-0.703744,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":1.474013},"context":{"vwap":9.458455,"price_vs_vwap_pct":0.209811,"ema9":9.467335,"ema20":9.471665,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.542497,"dist_to_hod_atr":0.545624,"atr":0.094754,"spread_atr":0.105537,"own_change_pct":0.021164,"rel_strength_pct":{"SPY":0.002738,"IWM":-0.027821}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.509515},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c6bc6e422a70","ts":"2026-09-15T13:46:00+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.9476,"target":6.0307,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":113.6,"room_to_5d_high_atr":-0.3},"price":6.0307,"vwap":5.9869,"ext_from_open_pct":2.04,"max_ext_allowed_pct":4.0,"volume_pace":4.836,"trend":"flat","recent_slope_pct":-0.0023,"volatility":"medium"},"price":6.0307,"volume":{"bars":15,"last_bar_volume":478727.0,"baseline_avg":359008.857143,"bar_rvol":1.333468,"raw_accel":1.678403,"smooth_accel":-0.142001,"accel_momentum":-0.022227,"rvol_3bar":[0.941216,0.479344,1.333468],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":280,"trade_rate":9.333333,"buy_vol":149968.0,"sell_vol":75479.0,"unclassified_vol":0.0,"imbalance":0.330406,"bid":5.97,"ask":5.98,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":0.004909},"context":{"vwap":5.985043,"price_vs_vwap_pct":0.762856,"ema9":6.017727,"ema20":5.977469,"ema_stack":true,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-0.647446,"dist_to_hod_atr":0.704128,"atr":0.055814,"spread_atr":0.179167,"own_change_pct":0.368465,"rel_strength_pct":{"SPY":0.368465,"IWM":0.44539}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.440586},"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":"59a5a2ef5475","ts":"2026-09-15T13:46:00+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.3166,"target":9.48,"target_label":"premarket_high","reward_risk":0.07,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":3.11},"price":9.4695,"vwap":9.4586,"ext_from_open_pct":1.28,"max_ext_allowed_pct":3.0,"volume_pace":1.517,"trend":"flat","recent_slope_pct":-0.081,"volatility":"high"},"price":9.4695,"volume":{"bars":15,"last_bar_volume":17342.0,"baseline_avg":23952.857143,"bar_rvol":0.724005,"raw_accel":0.112451,"smooth_accel":0.073002,"accel_momentum":-0.036859,"rvol_3bar":[0.249745,0.633796,0.724005],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":756.0,"sell_vol":2121.0,"unclassified_vol":0.0,"imbalance":-0.474453,"bid":9.47,"ask":9.48,"spread_pct":0.105541,"quote_size_imbalance":null,"quote_age_s":0.78524},"context":{"vwap":9.458455,"price_vs_vwap_pct":0.116773,"ema9":9.467335,"ema20":9.471665,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.634837,"dist_to_hod_atr":0.638496,"atr":0.094754,"spread_atr":0.105537,"own_change_pct":0.021164,"rel_strength_pct":{"SPY":0.021164,"IWM":0.09809}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.343506},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"be9cdfa94b82","ts":"2026-09-15T13:46:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.98 below VWAP $5.99","plan":{"state":"PASS","setup":"","stop":5.82,"target":6.03,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":106.8,"room_to_5d_high_atr":-0.15},"price":5.98,"vwap":5.9869,"ext_from_open_pct":1.18,"max_ext_allowed_pct":4.0,"volume_pace":4.819,"trend":"flat","recent_slope_pct":-0.2177,"volatility":"medium"},"price":5.98,"volume":{"bars":16,"last_bar_volume":360519.0,"baseline_avg":366990.066667,"bar_rvol":0.982367,"raw_accel":-0.246922,"smooth_accel":-0.22593,"accel_momentum":-0.083929,"rvol_3bar":[0.479344,1.333468,0.982367],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":245,"trade_rate":8.166667,"buy_vol":41883.0,"sell_vol":71978.0,"unclassified_vol":0.0,"imbalance":-0.264314,"bid":5.97,"ask":5.98,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":3.56381},"context":{"vwap":5.986898,"price_vs_vwap_pct":-0.115226,"ema9":6.020321,"ema20":5.982539,"ema_stack":false,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-1.482702,"dist_to_hod_atr":1.569549,"atr":0.057341,"spread_atr":0.174394,"own_change_pct":-0.153974,"rel_strength_pct":{"SPY":-0.153974,"IWM":-0.077048}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.259653},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7f91cb76640a","ts":"2026-09-15T13:46:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.21,"target":8.41,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":49.4,"room_to_5d_high_atr":1.22},"price":8.33,"vwap":8.2961,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.656,"trend":"flat","recent_slope_pct":0.1516,"volatility":"medium"},"price":8.33,"volume":{"bars":16,"last_bar_volume":1274.0,"baseline_avg":2627.6,"bar_rvol":0.484853,"raw_accel":-0.364271,"smooth_accel":-0.330798,"accel_momentum":-0.219369,"rvol_3bar":[0.401951,0.74996,0.484853],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":800.0,"sell_vol":260.0,"unclassified_vol":0.0,"imbalance":0.509434,"bid":8.31,"ask":8.33,"spread_pct":0.240385,"quote_size_imbalance":null,"quote_age_s":0.120407},"context":{"vwap":8.295663,"price_vs_vwap_pct":0.413918,"ema9":8.287494,"ema20":8.296688,"ema_stack":false,"ema_warm":false,"hod":8.5,"dist_to_hod_pct":-2.0,"dist_to_hod_atr":2.078287,"atr":0.081798,"spread_atr":0.244504,"own_change_pct":0.983129,"rel_strength_pct":{"SPY":0.983129,"IWM":1.060055}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.247001},"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":"425539bee4b6","ts":"2026-09-15T13:46:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 160.0s, plan says WATCH; stop 11.21, target 11.94 (prev_day_high), R:R 2.38; breakout: 1-min close > 11.45 on >= 354553 sh","plan":{"state":"WATCH","setup":"","stop":11.2082,"target":11.94,"target_label":"prev_day_high","reward_risk":2.38,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.11},"price":11.425,"vwap":11.3008,"ext_from_open_pct":1.47,"max_ext_allowed_pct":4.0,"volume_pace":1.725,"trend":"flat","recent_slope_pct":0.2505,"volatility":"high"},"price":11.425,"volume":{"bars":16,"last_bar_volume":293880.0,"baseline_avg":232534.266667,"bar_rvol":1.263814,"raw_accel":1.878298,"smooth_accel":0.162729,"accel_momentum":0.170111,"rvol_3bar":[0.733324,0.422169,1.263814],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":312,"trade_rate":10.4,"buy_vol":60411.0,"sell_vol":28872.0,"unclassified_vol":0.0,"imbalance":0.353248,"bid":11.42,"ask":11.43,"spread_pct":0.087527,"quote_size_imbalance":null,"quote_age_s":0.068923},"context":{"vwap":11.300626,"price_vs_vwap_pct":1.100591,"ema9":11.349342,"ema20":11.307987,"ema_stack":true,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-0.131119,"dist_to_hod_atr":0.12308,"atr":0.121872,"spread_atr":0.082053,"own_change_pct":0.43956,"rel_strength_pct":{"SPY":0.43956,"IWM":0.516486}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.446439},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3165635f99b2","ts":"2026-09-15T13:46:05+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says WATCH; stop 12.87, target 13.20 (premarket_high), R:R 0.44; R:R 0.44 < 2.0 at 13.10; breakout: 1-min close > 13.14 on >= 132511 sh","plan":{"state":"WATCH","setup":"","stop":12.8702,"target":13.2,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":38.0,"room_to_5d_high_atr":1.01},"price":13.1,"vwap":12.999,"ext_from_open_pct":0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.856,"trend":"flat","recent_slope_pct":0.1726,"volatility":"high"},"price":13.1,"volume":{"bars":16,"last_bar_volume":31850.0,"baseline_avg":92106.4,"bar_rvol":0.345796,"raw_accel":-0.713208,"smooth_accel":0.28939,"accel_momentum":-0.285746,"rvol_3bar":[0.509385,1.223719,0.345796],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":5736.0,"sell_vol":12985.0,"unclassified_vol":0.0,"imbalance":-0.387212,"bid":13.09,"ask":13.1,"spread_pct":0.076365,"quote_size_imbalance":null,"quote_age_s":0.210021},"context":{"vwap":12.9987,"price_vs_vwap_pct":0.779306,"ema9":13.028,"ema20":12.994218,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-0.531511,"dist_to_hod_atr":0.455268,"atr":0.153756,"spread_atr":0.065038,"own_change_pct":0.733564,"rel_strength_pct":{"SPY":0.733564,"IWM":0.81049}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.133896},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d1ff84ab9ac0","ts":"2026-09-15T13:46:10+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 260.0s, plan says WATCH; stop 11.77, target 13.18 (prev_day_high), R:R 0.22; R:R 0.22 < 2.0 at 12.93; breakout: 1-min close > 13.00 on >= 118065 sh","plan":{"state":"WATCH","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":26.8,"room_to_5d_high_atr":1.76},"price":12.925,"vwap":12.7702,"ext_from_open_pct":3.4,"max_ext_allowed_pct":4.0,"volume_pace":3.671,"trend":"flat","recent_slope_pct":-0.0889,"volatility":"high"},"price":12.925,"volume":{"bars":16,"last_bar_volume":25293.0,"baseline_avg":82271.066667,"bar_rvol":0.307435,"raw_accel":-0.884904,"smooth_accel":0.422987,"accel_momentum":-4.001988,"rvol_3bar":[2.025856,3.033179,0.307435],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":5383.0,"sell_vol":2194.0,"unclassified_vol":0.0,"imbalance":0.420879,"bid":12.92,"ask":12.93,"spread_pct":0.077369,"quote_size_imbalance":null,"quote_age_s":0.000711},"context":{"vwap":12.769984,"price_vs_vwap_pct":1.21391,"ema9":12.858182,"ema20":12.769937,"ema_stack":true,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-0.729647,"dist_to_hod_atr":0.505237,"atr":0.18803,"spread_atr":0.053183,"own_change_pct":0.100916,"rel_strength_pct":{"SPY":0.100916,"IWM":0.177842}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.129393},"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":"cd7225a619cc","ts":"2026-09-15T13:46:10+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.50 below VWAP $5.50","plan":{"state":"PASS","setup":"","stop":5.4393,"target":5.5297,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":28.1,"room_to_5d_high_atr":1.56},"price":5.5015,"vwap":5.5022,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":-0.0988,"volatility":"medium"},"price":5.5015,"volume":{"bars":16,"last_bar_volume":12891.0,"baseline_avg":62786.066667,"bar_rvol":0.205316,"raw_accel":-0.178735,"smooth_accel":-0.575481,"accel_momentum":0.025209,"rvol_3bar":[0.420239,0.217967,0.205316],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":2676.0,"sell_vol":2943.0,"unclassified_vol":0.0,"imbalance":-0.047517,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":3.458891},"context":{"vwap":5.502235,"price_vs_vwap_pct":-0.013349,"ema9":5.509844,"ema20":5.509161,"ema_stack":false,"ema_warm":false,"hod":5.55,"dist_to_hod_pct":-0.873874,"dist_to_hod_atr":0.985103,"atr":0.049233,"spread_atr":0.203114,"own_change_pct":-0.181159,"rel_strength_pct":{"SPY":-0.181159,"IWM":-0.104234}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.009756},"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":"0ec97a608380","ts":"2026-09-15T13:46:10+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says PASS; stop 12.80, target 13.13 (ceiling), R:R 0.43; R:R 0.43 < 2.0 at 13.03; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.8008,"target":13.13,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":33.4,"room_to_5d_high_atr":1.09},"price":13.0306,"vwap":12.9989,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":1.847,"trend":"flat","recent_slope_pct":0.0664,"volatility":"high"},"price":13.0306,"volume":{"bars":16,"last_bar_volume":31850.0,"baseline_avg":92106.4,"bar_rvol":0.345796,"raw_accel":-0.713208,"smooth_accel":0.28939,"accel_momentum":-0.285746,"rvol_3bar":[0.509385,1.223719,0.345796],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":144,"trade_rate":4.8,"buy_vol":3622.0,"sell_vol":11744.0,"unclassified_vol":0.0,"imbalance":-0.52857,"bid":13.09,"ask":13.1,"spread_pct":0.076365,"quote_size_imbalance":null,"quote_age_s":0.036063},"context":{"vwap":12.9987,"price_vs_vwap_pct":0.245406,"ema9":13.028,"ema20":12.994218,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.058466,"dist_to_hod_atr":0.906633,"atr":0.153756,"spread_atr":0.065038,"own_change_pct":0.733564,"rel_strength_pct":{"SPY":0.733564,"IWM":0.81049}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.182777},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cbec4593c14d","ts":"2026-09-15T13:46:15+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 265.0s, plan says PASS; stop 11.77, target 13.18 (prev_day_high), R:R 0.23; R:R 0.23 < 2.0 at 12.91; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":26.3,"room_to_5d_high_atr":1.77},"price":12.915,"vwap":12.7702,"ext_from_open_pct":3.32,"max_ext_allowed_pct":4.0,"volume_pace":3.653,"trend":"flat","recent_slope_pct":-0.1044,"volatility":"high"},"price":12.915,"volume":{"bars":16,"last_bar_volume":25293.0,"baseline_avg":82271.066667,"bar_rvol":0.307435,"raw_accel":-0.884904,"smooth_accel":0.422987,"accel_momentum":-4.001988,"rvol_3bar":[2.025856,3.033179,0.307435],"trend_3bar":"MIXED","projected_rvol":0.109054},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":3918.0,"sell_vol":2164.0,"unclassified_vol":0.0,"imbalance":0.288392,"bid":12.9,"ask":12.93,"spread_pct":0.232288,"quote_size_imbalance":null,"quote_age_s":2.231513},"context":{"vwap":12.769984,"price_vs_vwap_pct":1.135601,"ema9":12.858182,"ema20":12.769937,"ema_stack":true,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-0.806452,"dist_to_hod_atr":0.55842,"atr":0.18803,"spread_atr":0.159549,"own_change_pct":0.100916,"rel_strength_pct":{"SPY":0.100916,"IWM":0.177842}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.088662},"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":"7557d1bdc9bf","ts":"2026-09-15T13:46:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.3211,"target":9.65,"target_label":"prev_day_high","reward_risk":1.15,"pos_in_5d_range_pct":11.0,"room_to_5d_high_atr":3.1},"price":9.474,"vwap":9.4588,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":1.508,"trend":"flat","recent_slope_pct":-0.0202,"volatility":"high"},"price":9.474,"volume":{"bars":16,"last_bar_volume":5674.0,"baseline_avg":23512.133333,"bar_rvol":0.241322,"raw_accel":-0.672817,"smooth_accel":0.118694,"accel_momentum":0.045691,"rvol_3bar":[0.633796,0.724005,0.241322],"trend_3bar":"MIXED","projected_rvol":0.656852},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":4317.0,"sell_vol":2216.0,"unclassified_vol":0.0,"imbalance":0.321598,"bid":9.46,"ask":9.47,"spread_pct":0.105652,"quote_size_imbalance":null,"quote_age_s":1.466725},"context":{"vwap":9.458643,"price_vs_vwap_pct":0.162358,"ema9":9.467768,"ema20":9.471459,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.587618,"dist_to_hod_atr":0.617176,"atr":0.090736,"spread_atr":0.11021,"own_change_pct":-0.391303,"rel_strength_pct":{"SPY":-0.391303,"IWM":-0.314377}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.077609},"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":"5e87a38947aa","ts":"2026-09-15T13:46:25+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.82,"target":6.03,"target_label":"premarket_high","reward_risk":0.24,"pos_in_5d_range_pct":108.1,"room_to_5d_high_atr":-0.18},"price":5.99,"vwap":5.9869,"ext_from_open_pct":1.35,"max_ext_allowed_pct":4.0,"volume_pace":4.758,"trend":"flat","recent_slope_pct":-0.1844,"volatility":"medium"},"price":5.99,"volume":{"bars":16,"last_bar_volume":360519.0,"baseline_avg":366990.066667,"bar_rvol":0.982367,"raw_accel":-0.246922,"smooth_accel":-0.22593,"accel_momentum":-0.083929,"rvol_3bar":[0.479344,1.333468,0.982367],"trend_3bar":"MIXED","projected_rvol":0.362691},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":19313.0,"sell_vol":37058.0,"unclassified_vol":0.0,"imbalance":-0.31479,"bid":5.98,"ask":5.99,"spread_pct":0.167084,"quote_size_imbalance":null,"quote_age_s":0.084691},"context":{"vwap":5.986898,"price_vs_vwap_pct":0.051806,"ema9":6.020321,"ema20":5.982539,"ema_stack":false,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-1.317957,"dist_to_hod_atr":1.395154,"atr":0.057341,"spread_atr":0.174394,"own_change_pct":-0.153974,"rel_strength_pct":{"SPY":-0.153974,"IWM":-0.077048}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.309239},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c1d8608374db","ts":"2026-09-15T13:46:25+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.86,"target":13.8,"target_label":"premarket_high","reward_risk":3.48,"pos_in_5d_range_pct":54.7,"room_to_5d_high_atr":0.94},"price":13.07,"vwap":13.0662,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":2.98,"trend":"flat","recent_slope_pct":-0.2089,"volatility":"medium"},"price":13.07,"volume":{"bars":16,"last_bar_volume":468.0,"baseline_avg":4875.466667,"bar_rvol":0.095991,"raw_accel":-0.616037,"smooth_accel":0.941253,"accel_momentum":-0.168305,"rvol_3bar":[3.339427,0.222284,0.095991],"trend_3bar":"DECELERATING","projected_rvol":0.285019},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":76.0,"sell_vol":503.0,"unclassified_vol":0.0,"imbalance":-0.737478,"bid":13.07,"ask":13.16,"spread_pct":0.686237,"quote_size_imbalance":null,"quote_age_s":7.504473},"context":{"vwap":13.065886,"price_vs_vwap_pct":0.031489,"ema9":13.118805,"ema20":13.06574,"ema_stack":false,"ema_warm":false,"hod":13.31,"dist_to_hod_pct":-1.803156,"dist_to_hod_atr":1.016613,"atr":0.236078,"spread_atr":0.38123,"own_change_pct":0.381388,"rel_strength_pct":{"SPY":0.381388,"IWM":0.458314}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.070791},"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":"1ed1ae46a347","ts":"2026-09-15T13:46:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.3173,"target":9.53,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":3.11},"price":9.4702,"vwap":9.4588,"ext_from_open_pct":1.29,"max_ext_allowed_pct":3.0,"volume_pace":1.514,"trend":"flat","recent_slope_pct":-0.0282,"volatility":"high"},"price":9.4702,"volume":{"bars":16,"last_bar_volume":5674.0,"baseline_avg":23512.133333,"bar_rvol":0.241322,"raw_accel":-0.672817,"smooth_accel":0.118694,"accel_momentum":0.045691,"rvol_3bar":[0.633796,0.724005,0.241322],"trend_3bar":"MIXED","projected_rvol":0.857736},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":4793.0,"sell_vol":3751.0,"unclassified_vol":0.0,"imbalance":0.121957,"bid":9.46,"ask":9.47,"spread_pct":0.105652,"quote_size_imbalance":null,"quote_age_s":0.81007},"context":{"vwap":9.458643,"price_vs_vwap_pct":0.122183,"ema9":9.467768,"ema20":9.471459,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.627492,"dist_to_hod_atr":0.659056,"atr":0.090736,"spread_atr":0.11021,"own_change_pct":-0.391303,"rel_strength_pct":{"SPY":-0.391303,"IWM":-0.314377}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.029431},"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":"5cfd8c9fcd9d","ts":"2026-09-15T13:46:25+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"held 165.0s, plan says WATCH; stop 12.88, target 13.20 (premarket_high), R:R 0.41; R:R 0.41 < 2.0 at 13.11; breakout: 1-min close > 13.14 on >= 132511 sh","plan":{"state":"WATCH","setup":"","stop":12.8752,"target":13.2,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":38.3,"room_to_5d_high_atr":1.01},"price":13.105,"vwap":12.9995,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":1.833,"trend":"flat","recent_slope_pct":0.1802,"volatility":"high"},"price":13.105,"volume":{"bars":16,"last_bar_volume":31850.0,"baseline_avg":92106.4,"bar_rvol":0.345796,"raw_accel":-0.713208,"smooth_accel":0.28939,"accel_momentum":-0.285746,"rvol_3bar":[0.509385,1.223719,0.345796],"trend_3bar":"MIXED","projected_rvol":0.409691},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":7704.0,"sell_vol":10223.0,"unclassified_vol":0.0,"imbalance":-0.140514,"bid":13.1,"ask":13.11,"spread_pct":0.076307,"quote_size_imbalance":null,"quote_age_s":0.079081},"context":{"vwap":12.9987,"price_vs_vwap_pct":0.817771,"ema9":13.028,"ema20":12.994218,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-0.493546,"dist_to_hod_atr":0.422749,"atr":0.153756,"spread_atr":0.065038,"own_change_pct":0.733564,"rel_strength_pct":{"SPY":0.733564,"IWM":0.81049}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.048589},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4110ab0c1770","ts":"2026-09-15T13:46:30+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says WATCH; stop 12.74, target 13.84 (range_20d_high), R:R 2.53; breakout: 1-min close > 13.11 on >= 15046 sh","plan":{"state":"WATCH","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":2.53,"pos_in_5d_range_pct":70.1,"room_to_5d_high_atr":0.94},"price":13.05,"vwap":12.8147,"ext_from_open_pct":0.54,"max_ext_allowed_pct":5.0,"volume_pace":3.744,"trend":"flat","recent_slope_pct":0.0272,"volatility":"medium"},"price":13.05,"volume":{"bars":16,"last_bar_volume":617.0,"baseline_avg":10658.466667,"bar_rvol":0.057888,"raw_accel":-0.768447,"smooth_accel":-0.888567,"accel_momentum":-0.49098,"rvol_3bar":[0.077794,0.04489,0.057888],"trend_3bar":"MIXED","projected_rvol":0.009758},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":52.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":12.96,"ask":13.08,"spread_pct":0.921659,"quote_size_imbalance":null,"quote_age_s":10.775952},"context":{"vwap":12.814651,"price_vs_vwap_pct":1.836563,"ema9":12.967251,"ema20":12.889537,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-0.571429,"dist_to_hod_atr":0.330213,"atr":0.227126,"spread_atr":0.528341,"own_change_pct":0.466516,"rel_strength_pct":{"SPY":0.466516,"IWM":0.543442}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.057888},"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":"1e69fb644c82","ts":"2026-09-15T13:46:35+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.96 below VWAP $5.99","plan":{"state":"PASS","setup":"","stop":5.82,"target":6.03,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9867,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":4.793,"trend":"flat","recent_slope_pct":-0.2842,"volatility":"medium"},"price":5.96,"volume":{"bars":16,"last_bar_volume":360519.0,"baseline_avg":366990.066667,"bar_rvol":0.982367,"raw_accel":-0.246922,"smooth_accel":-0.22593,"accel_momentum":-0.083929,"rvol_3bar":[0.479344,1.333468,0.982367],"trend_3bar":"MIXED","projected_rvol":0.743296},"flow":{"window_s":30,"trades":286,"trade_rate":9.533333,"buy_vol":47251.0,"sell_vol":102371.0,"unclassified_vol":0.0,"imbalance":-0.368395,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":1.025105},"context":{"vwap":5.986898,"price_vs_vwap_pct":-0.449289,"ema9":6.020321,"ema20":5.982539,"ema_stack":false,"ema_warm":false,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":1.918337,"atr":0.057341,"spread_atr":0.174394,"own_change_pct":-0.153974,"rel_strength_pct":{"SPY":-0.153974,"IWM":-0.077048}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.361899},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"53ddd433a2f3","ts":"2026-09-15T13:46:40+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":4.9481,"target":5.09,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":3.9,"room_to_5d_high_atr":2.23},"price":5.045,"vwap":5.0395,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":1.269,"trend":"flat","recent_slope_pct":0.0695,"volatility":"high"},"price":5.045,"volume":{"bars":16,"last_bar_volume":28043.0,"baseline_avg":49025.333333,"bar_rvol":0.57201,"raw_accel":0.408276,"smooth_accel":-0.629525,"accel_momentum":0.140457,"rvol_3bar":[0.382181,0.38965,0.57201],"trend_3bar":"ACCELERATING","projected_rvol":0.305597},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":5210.0,"sell_vol":3335.0,"unclassified_vol":0.0,"imbalance":0.219427,"bid":5.04,"ask":5.05,"spread_pct":0.198216,"quote_size_imbalance":null,"quote_age_s":1.082705},"context":{"vwap":5.039386,"price_vs_vwap_pct":0.111394,"ema9":5.038389,"ema20":5.037998,"ema_stack":true,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-0.884086,"dist_to_hod_atr":1.056881,"atr":0.042578,"spread_atr":0.234862,"own_change_pct":-0.296443,"rel_strength_pct":{"SPY":-0.296443,"IWM":-0.219517}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.125514},"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":"c51250de90b8","ts":"2026-09-15T13:46:40+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says WATCH; stop 7.18, target 7.47 (prev_day_high), R:R 1.74; R:R 1.74 < 2.0 at 7.29; breakout: 1-min close > 7.34 on >= 224431 sh","plan":{"state":"WATCH","setup":"","stop":7.1842,"target":7.47,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":33.6,"room_to_5d_high_atr":1.42},"price":7.2886,"vwap":7.2512,"ext_from_open_pct":1.94,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0861,"volatility":"medium"},"price":7.2886,"volume":{"bars":16,"last_bar_volume":65300.0,"baseline_avg":155241.8,"bar_rvol":0.420634,"raw_accel":-0.622069,"smooth_accel":-0.220694,"accel_momentum":-0.26828,"rvol_3bar":[0.804633,1.122049,0.420634],"trend_3bar":"MIXED","projected_rvol":0.197247},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":11791.0,"sell_vol":2262.0,"unclassified_vol":0.0,"imbalance":0.678076,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":0.144964},"context":{"vwap":7.250867,"price_vs_vwap_pct":0.520398,"ema9":7.282852,"ema20":7.267244,"ema_stack":true,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.564802,"dist_to_hod_atr":0.69844,"atr":0.059275,"spread_atr":0.168705,"own_change_pct":-0.273785,"rel_strength_pct":{"SPY":-0.273785,"IWM":-0.196859}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.285222},"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":"56e786a731fe","ts":"2026-09-15T13:46:40+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"held 180.0s, plan says PASS; stop 12.81, target 13.13 (ceiling), R:R 0.40; R:R 0.40 < 2.0 at 13.04; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.8077,"target":13.13,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":33.8,"room_to_5d_high_atr":1.08},"price":13.0375,"vwap":12.9999,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":1.824,"trend":"flat","recent_slope_pct":0.0769,"volatility":"high"},"price":13.0375,"volume":{"bars":16,"last_bar_volume":31850.0,"baseline_avg":92106.4,"bar_rvol":0.345796,"raw_accel":-0.713208,"smooth_accel":0.28939,"accel_momentum":-0.285746,"rvol_3bar":[0.509385,1.223719,0.345796],"trend_3bar":"MIXED","projected_rvol":0.494542},"flow":{"window_s":30,"trades":179,"trade_rate":5.966667,"buy_vol":14202.0,"sell_vol":11080.0,"unclassified_vol":0.0,"imbalance":0.123487,"bid":13.11,"ask":13.13,"spread_pct":0.152439,"quote_size_imbalance":null,"quote_age_s":0.118785},"context":{"vwap":12.9987,"price_vs_vwap_pct":0.298489,"ema9":13.028,"ema20":12.994218,"ema_stack":true,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.006074,"dist_to_hod_atr":0.861757,"atr":0.153756,"spread_atr":0.130077,"own_change_pct":0.733564,"rel_strength_pct":{"SPY":0.733564,"IWM":0.81049}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.042701},"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":"25647c904478","ts":"2026-09-15T13:46:45+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 160.0s, plan says WATCH; stop 5.66, target 5.83 (prev_day_high), R:R 0.70; R:R 0.70 < 2.0 at 5.76; breakout: 1-min close > 5.80 on >= 12527 sh","plan":{"state":"WATCH","setup":"","stop":5.6604,"target":5.83,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.18},"price":5.76,"vwap":5.7479,"ext_from_open_pct":1.05,"max_ext_allowed_pct":3.0,"volume_pace":1.203,"trend":"flat","recent_slope_pct":-0.0295,"volatility":"high"},"price":5.76,"volume":{"bars":16,"last_bar_volume":6186.0,"baseline_avg":8495.866667,"bar_rvol":0.728119,"raw_accel":1.912475,"smooth_accel":-0.444592,"accel_momentum":0.143729,"rvol_3bar":[0.385604,0.166524,0.728119],"trend_3bar":"MIXED","projected_rvol":1.004881},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2896.0,"sell_vol":2837.0,"unclassified_vol":0.0,"imbalance":0.010291,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.175629},"context":{"vwap":5.747398,"price_vs_vwap_pct":0.219259,"ema9":5.768305,"ema20":5.760883,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.518135,"dist_to_hod_atr":0.796618,"atr":0.037659,"spread_atr":0.265539,"own_change_pct":-0.518583,"rel_strength_pct":{"SPY":-0.518583,"IWM":-0.441657}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.007493},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6ed7b5f6e53e","ts":"2026-09-15T13:46:45+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.04 below VWAP $5.04","plan":{"state":"PASS","setup":"","stop":4.9414,"target":5.09,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":3.1,"room_to_5d_high_atr":2.25},"price":5.0383,"vwap":5.0394,"ext_from_open_pct":-0.23,"max_ext_allowed_pct":4.0,"volume_pace":1.263,"trend":"flat","recent_slope_pct":0.0429,"volatility":"high"},"price":5.0383,"volume":{"bars":16,"last_bar_volume":28043.0,"baseline_avg":49025.333333,"bar_rvol":0.57201,"raw_accel":0.408276,"smooth_accel":-0.629525,"accel_momentum":0.140457,"rvol_3bar":[0.382181,0.38965,0.57201],"trend_3bar":"ACCELERATING","projected_rvol":0.27583},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":5208.0,"sell_vol":1189.0,"unclassified_vol":0.0,"imbalance":0.628263,"bid":5.04,"ask":5.05,"spread_pct":0.198216,"quote_size_imbalance":null,"quote_age_s":0.581595},"context":{"vwap":5.039386,"price_vs_vwap_pct":-0.021559,"ema9":5.038389,"ema20":5.037998,"ema_stack":false,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-1.015717,"dist_to_hod_atr":1.214239,"atr":0.042578,"spread_atr":0.234862,"own_change_pct":-0.296443,"rel_strength_pct":{"SPY":-0.296443,"IWM":-0.219517}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.359373},"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":"b80a8014df0f","ts":"2026-09-15T13:46:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.44 below VWAP $9.46","plan":{"state":"PASS","setup":"","stop":9.2871,"target":9.48,"target_label":"premarket_high","reward_risk":0.26,"pos_in_5d_range_pct":9.4,"room_to_5d_high_atr":3.16},"price":9.44,"vwap":9.4584,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":1.5,"trend":"flat","recent_slope_pct":-0.092,"volatility":"high"},"price":9.44,"volume":{"bars":16,"last_bar_volume":5674.0,"baseline_avg":23512.133333,"bar_rvol":0.241322,"raw_accel":-0.672817,"smooth_accel":0.118694,"accel_momentum":0.045691,"rvol_3bar":[0.633796,0.724005,0.241322],"trend_3bar":"MIXED","projected_rvol":0.702389},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":2565.0,"sell_vol":4794.0,"unclassified_vol":0.0,"imbalance":-0.302894,"bid":9.43,"ask":9.44,"spread_pct":0.105988,"quote_size_imbalance":null,"quote_age_s":0.287936},"context":{"vwap":9.458643,"price_vs_vwap_pct":-0.197102,"ema9":9.467768,"ema20":9.471459,"ema_stack":false,"ema_warm":false,"hod":9.53,"dist_to_hod_pct":-0.944386,"dist_to_hod_atr":0.991891,"atr":0.090736,"spread_atr":0.11021,"own_change_pct":-0.391303,"rel_strength_pct":{"SPY":-0.391303,"IWM":-0.314377}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.073095},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6319290615db","ts":"2026-09-15T13:46:45+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 200.0s, plan says PASS; stop 11.18, target 11.94 (prev_day_high), R:R 2.51; target 0.54 away > ~0.54 reachable in 368 min","plan":{"state":"PASS","setup":"","stop":11.1782,"target":11.94,"target_label":"prev_day_high","reward_risk":2.51,"pos_in_5d_range_pct":30.5,"room_to_5d_high_atr":1.14},"price":11.395,"vwap":11.3086,"ext_from_open_pct":1.2,"max_ext_allowed_pct":3.0,"volume_pace":1.789,"trend":"flat","recent_slope_pct":0.1978,"volatility":"high"},"price":11.395,"volume":{"bars":16,"last_bar_volume":293880.0,"baseline_avg":232534.266667,"bar_rvol":1.263814,"raw_accel":1.878298,"smooth_accel":0.162729,"accel_momentum":0.170111,"rvol_3bar":[0.733324,0.422169,1.263814],"trend_3bar":"MIXED","projected_rvol":1.778261},"flow":{"window_s":30,"trades":471,"trade_rate":15.7,"buy_vol":154401.0,"sell_vol":61192.0,"unclassified_vol":0.0,"imbalance":0.432338,"bid":11.39,"ask":11.4,"spread_pct":0.087758,"quote_size_imbalance":null,"quote_age_s":0.277177},"context":{"vwap":11.300626,"price_vs_vwap_pct":0.835119,"ema9":11.349342,"ema20":11.307987,"ema_stack":true,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-0.393357,"dist_to_hod_atr":0.369239,"atr":0.121872,"spread_atr":0.082053,"own_change_pct":0.43956,"rel_strength_pct":{"SPY":0.43956,"IWM":0.516486}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.546394},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"45cac7db56d1","ts":"2026-09-15T13:46:50+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 165.0s, plan says PASS; stop 5.66, target 5.83 (prev_day_high), R:R 0.75; R:R 0.75 < 2.0 at 5.75; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.83,"target_label":"prev_day_high","reward_risk":0.75,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7478,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":1.197,"trend":"flat","recent_slope_pct":-0.0468,"volatility":"high"},"price":5.755,"volume":{"bars":16,"last_bar_volume":6186.0,"baseline_avg":8495.866667,"bar_rvol":0.728119,"raw_accel":1.912475,"smooth_accel":-0.444592,"accel_momentum":0.143729,"rvol_3bar":[0.385604,0.166524,0.728119],"trend_3bar":"MIXED","projected_rvol":0.904958},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2885.0,"sell_vol":2811.0,"unclassified_vol":0.0,"imbalance":0.012992,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":3.465543},"context":{"vwap":5.747398,"price_vs_vwap_pct":0.132263,"ema9":5.768305,"ema20":5.760883,"ema_stack":false,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":0.929388,"atr":0.037659,"spread_atr":0.265539,"own_change_pct":-0.518583,"rel_strength_pct":{"SPY":-0.518583,"IWM":-0.441657}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.009459},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a1e237478034","ts":"2026-09-15T13:46:50+00:00","symbol":"FRMI","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":4.9481,"target":5.09,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":3.9,"room_to_5d_high_atr":2.23},"price":5.045,"vwap":5.0395,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":1.258,"trend":"flat","recent_slope_pct":0.0695,"volatility":"high"},"price":5.045,"volume":{"bars":16,"last_bar_volume":28043.0,"baseline_avg":49025.333333,"bar_rvol":0.57201,"raw_accel":0.408276,"smooth_accel":-0.629525,"accel_momentum":0.140457,"rvol_3bar":[0.382181,0.38965,0.57201],"trend_3bar":"ACCELERATING","projected_rvol":0.269346},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":5572.0,"sell_vol":1489.0,"unclassified_vol":0.0,"imbalance":0.578247,"bid":5.04,"ask":5.05,"spread_pct":0.198216,"quote_size_imbalance":null,"quote_age_s":0.092921},"context":{"vwap":5.039386,"price_vs_vwap_pct":0.111394,"ema9":5.038389,"ema20":5.037998,"ema_stack":true,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-0.884086,"dist_to_hod_atr":1.056881,"atr":0.042578,"spread_atr":0.234862,"own_change_pct":-0.296443,"rel_strength_pct":{"SPY":-0.296443,"IWM":-0.219517}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.330763},"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":"25afe268f1b3","ts":"2026-09-15T13:46:50+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"held 225.0s, plan says PASS; stop 12.74, target 13.84 (range_20d_high), R:R 2.99; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":2.99,"pos_in_5d_range_pct":67.8,"room_to_5d_high_atr":1.01},"price":13.014,"vwap":12.8148,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":3.672,"trend":"flat","recent_slope_pct":-0.028,"volatility":"medium"},"price":13.014,"volume":{"bars":16,"last_bar_volume":617.0,"baseline_avg":10658.466667,"bar_rvol":0.057888,"raw_accel":-0.768447,"smooth_accel":-0.888567,"accel_momentum":-0.49098,"rvol_3bar":[0.077794,0.04489,0.057888],"trend_3bar":"MIXED","projected_rvol":0.014861},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":12.0,"sell_vol":120.0,"unclassified_vol":0.0,"imbalance":-0.818182,"bid":12.96,"ask":13.07,"spread_pct":0.845179,"quote_size_imbalance":null,"quote_age_s":0.736409},"context":{"vwap":12.814651,"price_vs_vwap_pct":1.555635,"ema9":12.967251,"ema20":12.889537,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-0.845714,"dist_to_hod_atr":0.488715,"atr":0.227126,"spread_atr":0.484313,"own_change_pct":0.466516,"rel_strength_pct":{"SPY":0.466516,"IWM":0.543442}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.047363},"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":"1ea157aec6bd","ts":"2026-09-15T13:46:50+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 105.0s, plan says PASS; stop 7.18, target 7.30 (premarket_high), R:R 0.14; R:R 0.14 < 2.0 at 7.29; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.1806,"target":7.2991,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":33.1,"room_to_5d_high_atr":1.43},"price":7.285,"vwap":7.2512,"ext_from_open_pct":1.89,"max_ext_allowed_pct":3.0,"volume_pace":0.665,"trend":"flat","recent_slope_pct":-0.096,"volatility":"medium"},"price":7.285,"volume":{"bars":16,"last_bar_volume":65300.0,"baseline_avg":155241.8,"bar_rvol":0.420634,"raw_accel":-0.622069,"smooth_accel":-0.220694,"accel_momentum":-0.26828,"rvol_3bar":[0.804633,1.122049,0.420634],"trend_3bar":"MIXED","projected_rvol":0.17468},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":4035.0,"sell_vol":2221.0,"unclassified_vol":0.0,"imbalance":0.289962,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":0.971616},"context":{"vwap":7.250867,"price_vs_vwap_pct":0.470749,"ema9":7.282852,"ema20":7.267244,"ema_stack":true,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.613915,"dist_to_hod_atr":0.759174,"atr":0.059275,"spread_atr":0.168705,"own_change_pct":-0.273785,"rel_strength_pct":{"SPY":-0.273785,"IWM":-0.196859}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.121968},"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":"d3b724edd491","ts":"2026-09-15T13:46:50+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says WATCH; stop 11.19, target 11.94 (prev_day_high), R:R 2.44; breakout: 1-min close > 11.45 on >= 354553 sh","plan":{"state":"WATCH","setup":"","stop":11.1932,"target":11.94,"target_label":"prev_day_high","reward_risk":2.44,"pos_in_5d_range_pct":31.6,"room_to_5d_high_atr":1.12},"price":11.41,"vwap":11.3092,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":1.785,"trend":"flat","recent_slope_pct":0.2242,"volatility":"high"},"price":11.41,"volume":{"bars":16,"last_bar_volume":293880.0,"baseline_avg":232534.266667,"bar_rvol":1.263814,"raw_accel":1.878298,"smooth_accel":0.162729,"accel_momentum":0.170111,"rvol_3bar":[0.733324,0.422169,1.263814],"trend_3bar":"MIXED","projected_rvol":1.655658},"flow":{"window_s":30,"trades":445,"trade_rate":14.833333,"buy_vol":95145.0,"sell_vol":53431.0,"unclassified_vol":0.0,"imbalance":0.280759,"bid":11.41,"ask":11.42,"spread_pct":0.087604,"quote_size_imbalance":null,"quote_age_s":0.030665},"context":{"vwap":11.300626,"price_vs_vwap_pct":0.967855,"ema9":11.349342,"ema20":11.307987,"ema_stack":true,"ema_warm":false,"hod":11.44,"dist_to_hod_pct":-0.262238,"dist_to_hod_atr":0.246159,"atr":0.121872,"spread_atr":0.082053,"own_change_pct":0.43956,"rel_strength_pct":{"SPY":0.43956,"IWM":0.516486}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.354827},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3da6ba9cdab2","ts":"2026-09-15T13:46:50+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.09 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0437,"target":10.13,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":4.22},"price":10.0896,"vwap":10.0925,"ext_from_open_pct":-0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.431,"trend":"flat","recent_slope_pct":0.0016,"volatility":"low"},"price":10.0896,"volume":{"bars":16,"last_bar_volume":59353.0,"baseline_avg":105068.2,"bar_rvol":0.5649,"raw_accel":0.494774,"smooth_accel":-0.188532,"accel_momentum":0.099864,"rvol_3bar":[0.502988,0.361838,0.5649],"trend_3bar":"MIXED","projected_rvol":0.467571},"flow":{"window_s":30,"trades":155,"trade_rate":5.166667,"buy_vol":12435.0,"sell_vol":26457.0,"unclassified_vol":0.0,"imbalance":-0.360537,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.597913},"context":{"vwap":10.092371,"price_vs_vwap_pct":-0.027456,"ema9":10.094388,"ema20":10.094185,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.300395,"dist_to_hod_atr":0.933729,"atr":0.032558,"spread_atr":0.307148,"own_change_pct":0.148736,"rel_strength_pct":{"SPY":0.148736,"IWM":0.225662}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.203667},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c901b53f970c","ts":"2026-09-15T13:46:55+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 170.0s, plan says WATCH; stop 5.67, target 5.83 (prev_day_high), R:R 0.60; R:R 0.60 < 2.0 at 5.77; breakout: 1-min close > 5.80 on >= 12527 sh","plan":{"state":"WATCH","setup":"","stop":5.6704,"target":5.83,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":88.9,"room_to_5d_high_atr":0.15},"price":5.77,"vwap":5.7487,"ext_from_open_pct":1.23,"max_ext_allowed_pct":3.0,"volume_pace":1.24,"trend":"flat","recent_slope_pct":0.0052,"volatility":"high"},"price":5.77,"volume":{"bars":16,"last_bar_volume":6186.0,"baseline_avg":8495.866667,"bar_rvol":0.728119,"raw_accel":1.912475,"smooth_accel":-0.444592,"accel_momentum":0.143729,"rvol_3bar":[0.385604,0.166524,0.728119],"trend_3bar":"MIXED","projected_rvol":1.557292},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":6081.0,"sell_vol":5330.0,"unclassified_vol":0.0,"imbalance":0.065814,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.10161},"context":{"vwap":5.747398,"price_vs_vwap_pct":0.393251,"ema9":5.768305,"ema20":5.760883,"ema_stack":true,"ema_warm":false,"hod":5.79,"dist_to_hod_pct":-0.345423,"dist_to_hod_atr":0.531079,"atr":0.037659,"spread_atr":0.265539,"own_change_pct":-0.518583,"rel_strength_pct":{"SPY":-0.518583,"IWM":-0.441657}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.04792},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b265acecdf12","ts":"2026-09-15T13:46:55+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1606,"target":7.2991,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":30.9,"room_to_5d_high_atr":1.47},"price":7.265,"vwap":7.2512,"ext_from_open_pct":1.61,"max_ext_allowed_pct":3.0,"volume_pace":0.666,"trend":"flat","recent_slope_pct":-0.1509,"volatility":"medium"},"price":7.265,"volume":{"bars":16,"last_bar_volume":65300.0,"baseline_avg":155241.8,"bar_rvol":0.420634,"raw_accel":-0.622069,"smooth_accel":-0.220694,"accel_momentum":-0.26828,"rvol_3bar":[0.804633,1.122049,0.420634],"trend_3bar":"MIXED","projected_rvol":0.28434},"flow":{"window_s":30,"trades":165,"trade_rate":5.5,"buy_vol":4623.0,"sell_vol":19111.0,"unclassified_vol":0.0,"imbalance":-0.610432,"bid":7.26,"ask":7.27,"spread_pct":0.137646,"quote_size_imbalance":null,"quote_age_s":0.695544},"context":{"vwap":7.250867,"price_vs_vwap_pct":0.19492,"ema9":7.282852,"ema20":7.267244,"ema_stack":false,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.886767,"dist_to_hod_atr":1.096585,"atr":0.059275,"spread_atr":0.168705,"own_change_pct":-0.273785,"rel_strength_pct":{"SPY":-0.273785,"IWM":-0.196859}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.256769},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"09e1b1ec9b2d","ts":"2026-09-15T13:47:00+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.27 below VWAP $8.30","plan":{"state":"PASS","setup":"","stop":8.1774,"target":8.35,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":42.2,"room_to_5d_high_atr":1.39},"price":8.2675,"vwap":8.2956,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.568,"trend":"flat","recent_slope_pct":0.0012,"volatility":"medium"},"price":8.2675,"volume":{"bars":16,"last_bar_volume":1274.0,"baseline_avg":2627.6,"bar_rvol":0.484853,"raw_accel":-0.364271,"smooth_accel":-0.330798,"accel_momentum":-0.219369,"rvol_3bar":[0.401951,0.74996,0.484853],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":15.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.428571,"bid":8.32,"ask":8.34,"spread_pct":0.240096,"quote_size_imbalance":null,"quote_age_s":1.09008},"context":{"vwap":8.295663,"price_vs_vwap_pct":-0.339487,"ema9":8.287494,"ema20":8.296688,"ema_stack":false,"ema_warm":false,"hod":8.5,"dist_to_hod_pct":-2.735294,"dist_to_hod_atr":2.842363,"atr":0.081798,"spread_atr":0.244504,"own_change_pct":0.983129,"rel_strength_pct":{"SPY":0.966029,"IWM":1.045977}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.207794},"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":"096ee03f37ae","ts":"2026-09-15T13:47:00+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"held 235.0s, plan says WATCH; stop 12.74, target 13.84 (range_20d_high), R:R 2.73; breakout: 1-min close > 13.11 on >= 15046 sh","plan":{"state":"WATCH","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":2.73,"pos_in_5d_range_pct":69.0,"room_to_5d_high_atr":0.97},"price":13.0332,"vwap":12.8148,"ext_from_open_pct":0.41,"max_ext_allowed_pct":4.0,"volume_pace":3.636,"trend":"flat","recent_slope_pct":0.0015,"volatility":"medium"},"price":13.0332,"volume":{"bars":16,"last_bar_volume":617.0,"baseline_avg":10658.466667,"bar_rvol":0.057888,"raw_accel":-0.768447,"smooth_accel":-0.888567,"accel_momentum":-0.49098,"rvol_3bar":[0.077794,0.04489,0.057888],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":22.0,"sell_vol":68.0,"unclassified_vol":0.0,"imbalance":-0.511111,"bid":12.96,"ask":13.07,"spread_pct":0.845179,"quote_size_imbalance":null,"quote_age_s":10.736409},"context":{"vwap":12.814651,"price_vs_vwap_pct":1.705463,"ema9":12.967251,"ema20":12.889537,"ema_stack":true,"ema_warm":false,"hod":13.125,"dist_to_hod_pct":-0.699429,"dist_to_hod_atr":0.404181,"atr":0.227126,"spread_atr":0.484313,"own_change_pct":0.466516,"rel_strength_pct":{"SPY":0.449416,"IWM":0.529364}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.029587},"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":"51aa05e182f9","ts":"2026-09-15T13:47:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0474,"target":10.13,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":8.7,"room_to_5d_high_atr":4.2},"price":10.0933,"vwap":10.0925,"ext_from_open_pct":0.03,"max_ext_allowed_pct":3.0,"volume_pace":1.419,"trend":"flat","recent_slope_pct":0.0089,"volatility":"low"},"price":10.0933,"volume":{"bars":16,"last_bar_volume":59353.0,"baseline_avg":105068.2,"bar_rvol":0.5649,"raw_accel":0.494774,"smooth_accel":-0.188532,"accel_momentum":0.099864,"rvol_3bar":[0.502988,0.361838,0.5649],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":10802.0,"sell_vol":27140.0,"unclassified_vol":0.0,"imbalance":-0.430605,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.880127},"context":{"vwap":10.092371,"price_vs_vwap_pct":0.009205,"ema9":10.094388,"ema20":10.094185,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.263834,"dist_to_hod_atr":0.820084,"atr":0.032558,"spread_atr":0.307148,"own_change_pct":0.148736,"rel_strength_pct":{"SPY":0.131636,"IWM":0.211583}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.243248},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b5b65a2df942","ts":"2026-09-15T13:47:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5568,"target":10.935,"target_label":"prev_day_high","reward_risk":1.55,"pos_in_5d_range_pct":38.4,"room_to_5d_high_atr":1.34},"price":10.705,"vwap":10.638,"ext_from_open_pct":2.83,"max_ext_allowed_pct":3.0,"volume_pace":2.569,"trend":"flat","recent_slope_pct":-0.2728,"volatility":"medium"},"price":10.705,"volume":{"bars":17,"last_bar_volume":14075.0,"baseline_avg":66863.375,"bar_rvol":0.210504,"raw_accel":-0.296953,"smooth_accel":-0.760862,"accel_momentum":0.009974,"rvol_3bar":[0.286146,0.286056,0.210504],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":3631.0,"sell_vol":6373.0,"unclassified_vol":0.0,"imbalance":-0.27409,"bid":10.7,"ask":10.71,"spread_pct":0.093414,"quote_size_imbalance":null,"quote_age_s":0.475975},"context":{"vwap":10.637915,"price_vs_vwap_pct":0.630625,"ema9":10.723388,"ema20":10.677665,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-1.698806,"dist_to_hod_atr":1.318286,"atr":0.140334,"spread_atr":0.071259,"own_change_pct":-0.326188,"rel_strength_pct":{"SPY":-0.343288,"IWM":-0.263341}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.057697},"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":"e3c30a90a179","ts":"2026-09-15T13:47:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 120.0s, plan says WATCH; stop 8.31, target 8.59 (premarket_high), R:R 0.44; no reclaim yet (needs a close > 8.52); R:R 0.44 < 2.0 at 8.51; pullback: buy 8.48-8.51 holding + reclaim/fading selling","plan":{"state":"WATCH","setup":"","stop":8.3138,"target":8.59,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":3.75},"price":8.505,"vwap":8.4704,"ext_from_open_pct":1.61,"max_ext_allowed_pct":3.0,"volume_pace":1.115,"trend":"flat","recent_slope_pct":0.0039,"volatility":"high"},"price":8.505,"volume":{"bars":17,"last_bar_volume":44551.0,"baseline_avg":110245.375,"bar_rvol":0.404108,"raw_accel":-0.258077,"smooth_accel":-0.154965,"accel_momentum":-0.062344,"rvol_3bar":[0.374584,0.528629,0.404108],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":211,"trade_rate":7.033333,"buy_vol":20260.0,"sell_vol":8850.0,"unclassified_vol":0.0,"imbalance":0.391962,"bid":8.5,"ask":8.51,"spread_pct":0.117578,"quote_size_imbalance":null,"quote_age_s":0.339781},"context":{"vwap":8.47037,"price_vs_vwap_pct":0.408831,"ema9":8.507368,"ema20":8.496135,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.162115,"dist_to_hod_atr":1.101317,"atr":0.0908,"spread_atr":0.110132,"own_change_pct":-0.409596,"rel_strength_pct":{"SPY":-0.426696,"IWM":-0.346749}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.158395},"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":"4d1d34a49e3b","ts":"2026-09-15T13:47:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.1723,"target":7.2991,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":32.2,"room_to_5d_high_atr":1.44},"price":7.2767,"vwap":7.2514,"ext_from_open_pct":1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.661,"trend":"flat","recent_slope_pct":-0.0708,"volatility":"medium"},"price":7.2767,"volume":{"bars":17,"last_bar_volume":43022.0,"baseline_avg":149620.4375,"bar_rvol":0.287541,"raw_accel":-0.341164,"smooth_accel":-0.378382,"accel_momentum":-0.157688,"rvol_3bar":[1.122049,0.420634,0.287541],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":188,"trade_rate":6.266667,"buy_vol":3765.0,"sell_vol":19886.0,"unclassified_vol":0.0,"imbalance":-0.68162,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.457399},"context":{"vwap":7.251346,"price_vs_vwap_pct":0.34965,"ema9":7.282282,"ema20":7.268459,"ema_stack":false,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.727149,"dist_to_hod_atr":0.930918,"atr":0.057255,"spread_atr":0.174656,"own_change_pct":-0.068634,"rel_strength_pct":{"SPY":-0.085734,"IWM":-0.005787}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.195994},"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":"72027f5d3bd4","ts":"2026-09-15T13:47:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.21,"target":8.41,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":49.4,"room_to_5d_high_atr":1.22},"price":8.33,"vwap":8.2957,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.557,"trend":"flat","recent_slope_pct":0.009,"volatility":"medium"},"price":8.33,"volume":{"bars":17,"last_bar_volume":620.0,"baseline_avg":2543.0,"bar_rvol":0.243807,"raw_accel":-0.513344,"smooth_accel":-0.472887,"accel_momentum":-0.142089,"rvol_3bar":[0.74996,0.484853,0.243807],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":115.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.900826,"bid":8.32,"ask":8.35,"spread_pct":0.359928,"quote_size_imbalance":null,"quote_age_s":0.357443},"context":{"vwap":8.295578,"price_vs_vwap_pct":0.414947,"ema9":8.283496,"ema20":8.293909,"ema_stack":false,"ema_warm":false,"hod":8.5,"dist_to_hod_pct":-2.0,"dist_to_hod_atr":2.104564,"atr":0.080777,"spread_atr":0.371394,"own_change_pct":0.333738,"rel_strength_pct":{"SPY":0.316638,"IWM":0.396585}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.219627},"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":"f02d886afa1d","ts":"2026-09-15T13:47:10+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 225.0s, plan says PASS; stop 11.17, target 11.44 (premarket_high), R:R 0.25; R:R 0.25 < 2.0 at 11.38; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1682,"target":11.44,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":29.8,"room_to_5d_high_atr":1.15},"price":11.385,"vwap":11.3107,"ext_from_open_pct":1.11,"max_ext_allowed_pct":3.0,"volume_pace":1.772,"trend":"flat","recent_slope_pct":0.0922,"volatility":"high"},"price":11.385,"volume":{"bars":17,"last_bar_volume":325581.0,"baseline_avg":236368.375,"bar_rvol":1.37743,"raw_accel":0.107871,"smooth_accel":0.441958,"accel_momentum":0.279229,"rvol_3bar":[0.422169,1.263814,1.37743],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":307,"trade_rate":10.233333,"buy_vol":39236.0,"sell_vol":55380.0,"unclassified_vol":0.0,"imbalance":-0.170627,"bid":11.38,"ask":11.39,"spread_pct":0.087835,"quote_size_imbalance":null,"quote_age_s":0.011564},"context":{"vwap":11.309708,"price_vs_vwap_pct":0.665728,"ema9":11.364474,"ema20":11.319131,"ema_stack":true,"ema_warm":false,"hod":11.47,"dist_to_hod_pct":-0.741064,"dist_to_hod_atr":0.698463,"atr":0.121696,"spread_atr":0.082172,"own_change_pct":1.029305,"rel_strength_pct":{"SPY":1.012205,"IWM":1.092153}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.235026},"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":"62e314715fe8","ts":"2026-09-15T13:47:10+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.09 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0925,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.413,"trend":"flat","recent_slope_pct":-0.05,"volatility":"low"},"price":10.09,"volume":{"bars":17,"last_bar_volume":42859.0,"baseline_avg":102211.0,"bar_rvol":0.419319,"raw_accel":-0.277897,"smooth_accel":0.15094,"accel_momentum":0.339472,"rvol_3bar":[0.361838,0.5649,0.419319],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1276.0,"sell_vol":17024.0,"unclassified_vol":0.0,"imbalance":-0.860546,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.025182},"context":{"vwap":10.092498,"price_vs_vwap_pct":-0.024748,"ema9":10.09417,"ema20":10.094101,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.296443,"dist_to_hod_atr":0.944777,"atr":0.031754,"spread_atr":0.314926,"own_change_pct":0.131944,"rel_strength_pct":{"SPY":0.114844,"IWM":0.194792}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.360843},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bdce48cb2814","ts":"2026-09-15T13:47:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.5368,"target":10.935,"target_label":"prev_day_high","reward_risk":1.69,"pos_in_5d_range_pct":36.8,"room_to_5d_high_atr":1.37},"price":10.685,"vwap":10.6381,"ext_from_open_pct":2.64,"max_ext_allowed_pct":3.0,"volume_pace":2.548,"trend":"flat","recent_slope_pct":-0.3102,"volatility":"medium"},"price":10.685,"volume":{"bars":17,"last_bar_volume":14075.0,"baseline_avg":66863.375,"bar_rvol":0.210504,"raw_accel":-0.296953,"smooth_accel":-0.760862,"accel_momentum":0.009974,"rvol_3bar":[0.286146,0.286056,0.210504],"trend_3bar":"DECELERATING","projected_rvol":0.241807},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":2019.0,"sell_vol":5115.0,"unclassified_vol":0.0,"imbalance":-0.433978,"bid":10.68,"ask":10.69,"spread_pct":0.093589,"quote_size_imbalance":null,"quote_age_s":0.222051},"context":{"vwap":10.637915,"price_vs_vwap_pct":0.442618,"ema9":10.723388,"ema20":10.677665,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-1.882461,"dist_to_hod_atr":1.460803,"atr":0.140334,"spread_atr":0.071259,"own_change_pct":-0.326188,"rel_strength_pct":{"SPY":-0.343288,"IWM":-0.263341}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.091354},"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":"57a671ebe7d5","ts":"2026-09-15T13:47:15+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.36,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":1.89},"price":12.81,"vwap":12.7775,"ext_from_open_pct":2.48,"max_ext_allowed_pct":4.0,"volume_pace":3.68,"trend":"flat","recent_slope_pct":-0.3169,"volatility":"high"},"price":12.81,"volume":{"bars":17,"last_bar_volume":82130.0,"baseline_avg":78709.9375,"bar_rvol":1.043451,"raw_accel":2.247143,"smooth_accel":-0.114414,"accel_momentum":-0.5374,"rvol_3bar":[3.033179,0.307435,1.043451],"trend_3bar":"MIXED","projected_rvol":0.386177},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":3811.0,"sell_vol":7084.0,"unclassified_vol":0.0,"imbalance":-0.300413,"bid":12.8,"ask":12.82,"spread_pct":0.156128,"quote_size_imbalance":null,"quote_age_s":0.031659},"context":{"vwap":12.777107,"price_vs_vwap_pct":0.257436,"ema9":12.866746,"ema20":12.78242,"ema_stack":false,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-1.612903,"dist_to_hod_atr":1.15639,"atr":0.1816,"spread_atr":0.110132,"own_change_pct":0.789062,"rel_strength_pct":{"SPY":0.771962,"IWM":0.85191}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.313466},"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":"985ae817d78d","ts":"2026-09-15T13:47:20+00:00","symbol":"FRMI","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.04 below VWAP $5.04","plan":{"state":"PASS","setup":"","stop":4.9381,"target":5.09,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":2.8,"room_to_5d_high_atr":2.26},"price":5.035,"vwap":5.0395,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":3.0,"volume_pace":1.233,"trend":"flat","recent_slope_pct":0.0794,"volatility":"high"},"price":5.035,"volume":{"bars":17,"last_bar_volume":13185.0,"baseline_avg":47713.9375,"bar_rvol":0.276334,"raw_accel":-0.529829,"smooth_accel":0.473384,"accel_momentum":1.102908,"rvol_3bar":[0.38965,0.57201,0.276334],"trend_3bar":"MIXED","projected_rvol":0.29746},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2135.0,"sell_vol":4777.0,"unclassified_vol":0.0,"imbalance":-0.382234,"bid":5.03,"ask":5.04,"spread_pct":0.19861,"quote_size_imbalance":null,"quote_age_s":1.739034},"context":{"vwap":5.039468,"price_vs_vwap_pct":-0.088652,"ema9":5.039711,"ema20":5.038665,"ema_stack":false,"ema_warm":false,"hod":5.09,"dist_to_hod_pct":-1.08055,"dist_to_hod_atr":1.360387,"atr":0.04043,"spread_atr":0.247343,"own_change_pct":0.099206,"rel_strength_pct":{"SPY":0.082106,"IWM":0.162054}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.105624},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a896652c2f8","ts":"2026-09-15T13:47:20+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.47 below VWAP $8.47","plan":{"state":"PASS","setup":"","stop":8.2775,"target":8.59,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":3.79},"price":8.4687,"vwap":8.4705,"ext_from_open_pct":1.18,"max_ext_allowed_pct":3.0,"volume_pace":1.11,"trend":"flat","recent_slope_pct":-0.0816,"volatility":"high"},"price":8.4687,"volume":{"bars":17,"last_bar_volume":44551.0,"baseline_avg":110245.375,"bar_rvol":0.404108,"raw_accel":-0.258077,"smooth_accel":-0.154965,"accel_momentum":-0.062344,"rvol_3bar":[0.374584,0.528629,0.404108],"trend_3bar":"MIXED","projected_rvol":0.587018},"flow":{"window_s":30,"trades":216,"trade_rate":7.2,"buy_vol":9615.0,"sell_vol":17850.0,"unclassified_vol":0.0,"imbalance":-0.299836,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.391651},"context":{"vwap":8.47037,"price_vs_vwap_pct":-0.019721,"ema9":8.507368,"ema20":8.496135,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.583963,"dist_to_hod_atr":1.501095,"atr":0.0908,"spread_atr":0.110132,"own_change_pct":-0.409596,"rel_strength_pct":{"SPY":-0.426696,"IWM":-0.346749}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.121166},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3a161024c86d","ts":"2026-09-15T13:47:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1541,"target":7.2991,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":30.2,"room_to_5d_high_atr":1.49},"price":7.2585,"vwap":7.2514,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":-0.1209,"volatility":"medium"},"price":7.2585,"volume":{"bars":17,"last_bar_volume":43022.0,"baseline_avg":149620.4375,"bar_rvol":0.287541,"raw_accel":-0.341164,"smooth_accel":-0.378382,"accel_momentum":-0.157688,"rvol_3bar":[1.122049,0.420634,0.287541],"trend_3bar":"DECELERATING","projected_rvol":0.279287},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":12142.0,"sell_vol":22211.0,"unclassified_vol":0.0,"imbalance":-0.293104,"bid":7.25,"ask":7.26,"spread_pct":0.137836,"quote_size_imbalance":null,"quote_age_s":0.326741},"context":{"vwap":7.251346,"price_vs_vwap_pct":0.098662,"ema9":7.282282,"ema20":7.268459,"ema_stack":false,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.975443,"dist_to_hod_atr":1.248793,"atr":0.057255,"spread_atr":0.174656,"own_change_pct":-0.068634,"rel_strength_pct":{"SPY":-0.085734,"IWM":-0.005787}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.084279},"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":"f90e19fc2190","ts":"2026-09-15T13:47:25+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3057,"target":8.59,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":3.76},"price":8.4969,"vwap":8.4706,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":1.105,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"high"},"price":8.4969,"volume":{"bars":17,"last_bar_volume":44551.0,"baseline_avg":110245.375,"bar_rvol":0.404108,"raw_accel":-0.258077,"smooth_accel":-0.154965,"accel_momentum":-0.062344,"rvol_3bar":[0.374584,0.528629,0.404108],"trend_3bar":"MIXED","projected_rvol":0.485201},"flow":{"window_s":30,"trades":214,"trade_rate":7.133333,"buy_vol":9939.0,"sell_vol":17048.0,"unclassified_vol":0.0,"imbalance":-0.263423,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.113471},"context":{"vwap":8.47037,"price_vs_vwap_pct":0.313204,"ema9":8.507368,"ema20":8.496135,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.256246,"dist_to_hod_atr":1.190524,"atr":0.0908,"spread_atr":0.110132,"own_change_pct":-0.409596,"rel_strength_pct":{"SPY":-0.426696,"IWM":-0.346749}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.106451},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1866f17e7462","ts":"2026-09-15T13:47:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0508,"target":10.13,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":4.19},"price":10.0967,"vwap":10.0925,"ext_from_open_pct":0.07,"max_ext_allowed_pct":3.0,"volume_pace":1.399,"trend":"flat","recent_slope_pct":-0.0367,"volatility":"low"},"price":10.0967,"volume":{"bars":17,"last_bar_volume":42859.0,"baseline_avg":102211.0,"bar_rvol":0.419319,"raw_accel":-0.277897,"smooth_accel":0.15094,"accel_momentum":0.339472,"rvol_3bar":[0.361838,0.5649,0.419319],"trend_3bar":"MIXED","projected_rvol":0.411643},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":7845.0,"sell_vol":10200.0,"unclassified_vol":0.0,"imbalance":-0.130507,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.092713},"context":{"vwap":10.092498,"price_vs_vwap_pct":0.041638,"ema9":10.09417,"ema20":10.094101,"ema_stack":true,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.230237,"dist_to_hod_atr":0.733777,"atr":0.031754,"spread_atr":0.314926,"own_change_pct":0.131944,"rel_strength_pct":{"SPY":0.114844,"IWM":0.194792}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.054724},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"236dc1c133c1","ts":"2026-09-15T13:47:30+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.47 below VWAP $8.47","plan":{"state":"PASS","setup":"","stop":8.2788,"target":8.59,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":3.79},"price":8.47,"vwap":8.4705,"ext_from_open_pct":1.19,"max_ext_allowed_pct":3.0,"volume_pace":1.104,"trend":"flat","recent_slope_pct":-0.0785,"volatility":"high"},"price":8.47,"volume":{"bars":17,"last_bar_volume":44551.0,"baseline_avg":110245.375,"bar_rvol":0.404108,"raw_accel":-0.258077,"smooth_accel":-0.154965,"accel_momentum":-0.062344,"rvol_3bar":[0.374584,0.528629,0.404108],"trend_3bar":"MIXED","projected_rvol":0.526208},"flow":{"window_s":30,"trades":213,"trade_rate":7.1,"buy_vol":6133.0,"sell_vol":22873.0,"unclassified_vol":0.0,"imbalance":-0.577122,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.005889},"context":{"vwap":8.47037,"price_vs_vwap_pct":-0.004374,"ema9":8.507368,"ema20":8.496135,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.568855,"dist_to_hod_atr":1.486778,"atr":0.0908,"spread_atr":0.110132,"own_change_pct":-0.409596,"rel_strength_pct":{"SPY":-0.426696,"IWM":-0.346749}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.233219},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"459348a69bcc","ts":"2026-09-15T13:47:30+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.09 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0925,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.394,"trend":"flat","recent_slope_pct":-0.05,"volatility":"low"},"price":10.09,"volume":{"bars":17,"last_bar_volume":42859.0,"baseline_avg":102211.0,"bar_rvol":0.419319,"raw_accel":-0.277897,"smooth_accel":0.15094,"accel_momentum":0.339472,"rvol_3bar":[0.361838,0.5649,0.419319],"trend_3bar":"MIXED","projected_rvol":0.382209},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":8845.0,"sell_vol":10688.0,"unclassified_vol":0.0,"imbalance":-0.094353,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.244285},"context":{"vwap":10.092498,"price_vs_vwap_pct":-0.024748,"ema9":10.09417,"ema20":10.094101,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.296443,"dist_to_hod_atr":0.944777,"atr":0.031754,"spread_atr":0.314926,"own_change_pct":0.131944,"rel_strength_pct":{"SPY":0.114844,"IWM":0.194792}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.039564},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f6bfa631474d","ts":"2026-09-15T13:47:35+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 930.0s, plan says PASS; stop 9.85, target 10.02 (premarket_high), R:R 0.38; R:R 0.38 < 2.0 at 9.97; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.8508,"target":10.015,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":21.1,"room_to_5d_high_atr":2.52},"price":9.97,"vwap":9.9523,"ext_from_open_pct":1.42,"max_ext_allowed_pct":3.0,"volume_pace":1.745,"trend":"flat","recent_slope_pct":-0.0649,"volatility":"medium"},"price":9.97,"volume":{"bars":17,"last_bar_volume":301193.0,"baseline_avg":506745.875,"bar_rvol":0.594367,"raw_accel":-0.342979,"smooth_accel":0.020998,"accel_momentum":0.403796,"rvol_3bar":[0.624137,0.898924,0.594367],"trend_3bar":"MIXED","projected_rvol":5.004794},"flow":{"window_s":30,"trades":568,"trade_rate":18.933333,"buy_vol":149896.0,"sell_vol":1275292.0,"unclassified_vol":0.0,"imbalance":-0.789647,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.166449},"context":{"vwap":9.94508,"price_vs_vwap_pct":0.250577,"ema9":10.005399,"ema20":9.967065,"ema_stack":false,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.79602,"dist_to_hod_atr":1.383982,"atr":0.057804,"spread_atr":0.172998,"own_change_pct":0.641861,"rel_strength_pct":{"SPY":0.624761,"IWM":0.704709}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.46934},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ebd85fb35077","ts":"2026-09-15T13:47:35+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":26.6,"room_to_5d_high_atr":1.77},"price":12.921,"vwap":12.7781,"ext_from_open_pct":3.37,"max_ext_allowed_pct":4.0,"volume_pace":3.627,"trend":"flat","recent_slope_pct":-0.1446,"volatility":"high"},"price":12.921,"volume":{"bars":17,"last_bar_volume":82130.0,"baseline_avg":78709.9375,"bar_rvol":1.043451,"raw_accel":2.247143,"smooth_accel":-0.114414,"accel_momentum":-0.5374,"rvol_3bar":[3.033179,0.307435,1.043451],"trend_3bar":"MIXED","projected_rvol":0.303458},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":4261.0,"sell_vol":9202.0,"unclassified_vol":0.0,"imbalance":-0.367006,"bid":12.8,"ask":12.82,"spread_pct":0.156128,"quote_size_imbalance":null,"quote_age_s":5.007955},"context":{"vwap":12.777107,"price_vs_vwap_pct":1.126177,"ema9":12.866746,"ema20":12.78242,"ema_stack":true,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-0.760369,"dist_to_hod_atr":0.545155,"atr":0.1816,"spread_atr":0.110132,"own_change_pct":0.789062,"rel_strength_pct":{"SPY":0.771962,"IWM":0.85191}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.382953},"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":"92ff436b4719","ts":"2026-09-15T13:47:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0925,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":1.388,"trend":"flat","recent_slope_pct":-0.0401,"volatility":"low"},"price":10.095,"volume":{"bars":17,"last_bar_volume":42859.0,"baseline_avg":102211.0,"bar_rvol":0.419319,"raw_accel":-0.277897,"smooth_accel":0.15094,"accel_momentum":0.339472,"rvol_3bar":[0.361838,0.5649,0.419319],"trend_3bar":"MIXED","projected_rvol":0.343759},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":9375.0,"sell_vol":4258.0,"unclassified_vol":0.0,"imbalance":0.375339,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":5.244285},"context":{"vwap":10.092498,"price_vs_vwap_pct":0.024794,"ema9":10.09417,"ema20":10.094101,"ema_stack":true,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.247036,"dist_to_hod_atr":0.787315,"atr":0.031754,"spread_atr":0.314926,"own_change_pct":0.131944,"rel_strength_pct":{"SPY":0.114844,"IWM":0.194792}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.157387},"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":"e333ad9cc248","ts":"2026-09-15T13:47:40+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":1.91},"price":12.8,"vwap":12.7778,"ext_from_open_pct":2.4,"max_ext_allowed_pct":4.0,"volume_pace":3.615,"trend":"flat","recent_slope_pct":-0.3324,"volatility":"high"},"price":12.8,"volume":{"bars":17,"last_bar_volume":82130.0,"baseline_avg":78709.9375,"bar_rvol":1.043451,"raw_accel":2.247143,"smooth_accel":-0.114414,"accel_momentum":-0.5374,"rvol_3bar":[3.033179,0.307435,1.043451],"trend_3bar":"MIXED","projected_rvol":0.297771},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":4280.0,"sell_vol":10808.0,"unclassified_vol":0.0,"imbalance":-0.432662,"bid":12.78,"ask":12.82,"spread_pct":0.3125,"quote_size_imbalance":null,"quote_age_s":1.333954},"context":{"vwap":12.777107,"price_vs_vwap_pct":0.179171,"ema9":12.866746,"ema20":12.78242,"ema_stack":false,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-1.689708,"dist_to_hod_atr":1.211456,"atr":0.1816,"spread_atr":0.220265,"own_change_pct":0.789062,"rel_strength_pct":{"SPY":0.771962,"IWM":0.85191}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.451462},"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":"060684a8e354","ts":"2026-09-15T13:47:40+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.08 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0356,"target":10.13,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":4.27},"price":10.0815,"vwap":10.0924,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":3.0,"volume_pace":1.39,"trend":"flat","recent_slope_pct":-0.0668,"volatility":"low"},"price":10.0815,"volume":{"bars":17,"last_bar_volume":42859.0,"baseline_avg":102211.0,"bar_rvol":0.419319,"raw_accel":-0.277897,"smooth_accel":0.15094,"accel_momentum":0.339472,"rvol_3bar":[0.361838,0.5649,0.419319],"trend_3bar":"MIXED","projected_rvol":0.448822},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":13159.0,"sell_vol":8246.0,"unclassified_vol":0.0,"imbalance":0.229526,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":0.774453},"context":{"vwap":10.092498,"price_vs_vwap_pct":-0.108969,"ema9":10.09417,"ema20":10.094101,"ema_stack":false,"ema_warm":false,"hod":10.12,"dist_to_hod_pct":-0.380435,"dist_to_hod_atr":1.212464,"atr":0.031754,"spread_atr":0.314926,"own_change_pct":0.131944,"rel_strength_pct":{"SPY":0.114844,"IWM":0.194792}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.096245},"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":"e281b72b6092","ts":"2026-09-15T13:47:45+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3078,"target":8.59,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":3.75},"price":8.499,"vwap":8.4709,"ext_from_open_pct":1.54,"max_ext_allowed_pct":3.0,"volume_pace":1.114,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"high"},"price":8.499,"volume":{"bars":17,"last_bar_volume":44551.0,"baseline_avg":110245.375,"bar_rvol":0.404108,"raw_accel":-0.258077,"smooth_accel":-0.154965,"accel_momentum":-0.062344,"rvol_3bar":[0.374584,0.528629,0.404108],"trend_3bar":"MIXED","projected_rvol":0.868801},"flow":{"window_s":30,"trades":259,"trade_rate":8.633333,"buy_vol":12928.0,"sell_vol":45906.0,"unclassified_vol":0.0,"imbalance":-0.560526,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.950206},"context":{"vwap":8.47037,"price_vs_vwap_pct":0.337996,"ema9":8.507368,"ema20":8.496135,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.231842,"dist_to_hod_atr":1.167396,"atr":0.0908,"spread_atr":0.110132,"own_change_pct":-0.409596,"rel_strength_pct":{"SPY":-0.426696,"IWM":-0.346749}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.226513},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"63c2d8a12213","ts":"2026-09-15T13:47:45+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":26.5,"room_to_5d_high_atr":1.77},"price":12.92,"vwap":12.7782,"ext_from_open_pct":3.36,"max_ext_allowed_pct":4.0,"volume_pace":3.598,"trend":"flat","recent_slope_pct":-0.1462,"volatility":"high"},"price":12.92,"volume":{"bars":17,"last_bar_volume":82130.0,"baseline_avg":78709.9375,"bar_rvol":1.043451,"raw_accel":2.247143,"smooth_accel":-0.114414,"accel_momentum":-0.5374,"rvol_3bar":[3.033179,0.307435,1.043451],"trend_3bar":"MIXED","projected_rvol":0.26477},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":3653.0,"sell_vol":4378.0,"unclassified_vol":0.0,"imbalance":-0.090275,"bid":12.78,"ask":12.82,"spread_pct":0.3125,"quote_size_imbalance":null,"quote_age_s":0.2947},"context":{"vwap":12.777107,"price_vs_vwap_pct":1.11835,"ema9":12.866746,"ema20":12.78242,"ema_stack":true,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-0.768049,"dist_to_hod_atr":0.550662,"atr":0.1816,"spread_atr":0.220265,"own_change_pct":0.789062,"rel_strength_pct":{"SPY":0.771962,"IWM":0.85191}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.094198},"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":"146d6c927298","ts":"2026-09-15T13:47:50+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.46 below VWAP $8.47","plan":{"state":"PASS","setup":"","stop":8.2738,"target":8.59,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.8},"price":8.465,"vwap":8.4705,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":1.111,"trend":"flat","recent_slope_pct":-0.0903,"volatility":"high"},"price":8.465,"volume":{"bars":17,"last_bar_volume":44551.0,"baseline_avg":110245.375,"bar_rvol":0.404108,"raw_accel":-0.258077,"smooth_accel":-0.154965,"accel_momentum":-0.062344,"rvol_3bar":[0.374584,0.528629,0.404108],"trend_3bar":"MIXED","projected_rvol":0.825047},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":14768.0,"sell_vol":39458.0,"unclassified_vol":0.0,"imbalance":-0.455317,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.215462},"context":{"vwap":8.47037,"price_vs_vwap_pct":-0.063403,"ema9":8.507368,"ema20":8.496135,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.626961,"dist_to_hod_atr":1.541844,"atr":0.0908,"spread_atr":0.110132,"own_change_pct":-0.409596,"rel_strength_pct":{"SPY":-0.426696,"IWM":-0.346749}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.183997},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d3f221e10c18","ts":"2026-09-15T13:47:50+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.36,"pos_in_5d_range_pct":21.1,"room_to_5d_high_atr":1.9},"price":12.805,"vwap":12.7778,"ext_from_open_pct":2.44,"max_ext_allowed_pct":4.0,"volume_pace":3.581,"trend":"flat","recent_slope_pct":-0.3247,"volatility":"high"},"price":12.805,"volume":{"bars":17,"last_bar_volume":82130.0,"baseline_avg":78709.9375,"bar_rvol":1.043451,"raw_accel":2.247143,"smooth_accel":-0.114414,"accel_momentum":-0.5374,"rvol_3bar":[3.033179,0.307435,1.043451],"trend_3bar":"MIXED","projected_rvol":0.239665},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":3424.0,"sell_vol":3235.0,"unclassified_vol":0.0,"imbalance":0.028383,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":0.993199},"context":{"vwap":12.777107,"price_vs_vwap_pct":0.218303,"ema9":12.866746,"ema20":12.78242,"ema_stack":false,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-1.651306,"dist_to_hod_atr":1.183923,"atr":0.1816,"spread_atr":0.165199,"own_change_pct":0.789062,"rel_strength_pct":{"SPY":0.771962,"IWM":0.85191}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.029616},"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":"c36dbe7c23bd","ts":"2026-09-15T13:47:55+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":26.5,"room_to_5d_high_atr":1.77},"price":12.9198,"vwap":12.7782,"ext_from_open_pct":3.36,"max_ext_allowed_pct":4.0,"volume_pace":3.565,"trend":"flat","recent_slope_pct":-0.1465,"volatility":"high"},"price":12.9198,"volume":{"bars":17,"last_bar_volume":82130.0,"baseline_avg":78709.9375,"bar_rvol":1.043451,"raw_accel":2.247143,"smooth_accel":-0.114414,"accel_momentum":-0.5374,"rvol_3bar":[3.033179,0.307435,1.043451],"trend_3bar":"MIXED","projected_rvol":0.220677},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1003.0,"sell_vol":2752.0,"unclassified_vol":0.0,"imbalance":-0.465779,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":1.473368},"context":{"vwap":12.777107,"price_vs_vwap_pct":1.116785,"ema9":12.866746,"ema20":12.78242,"ema_stack":true,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-0.769585,"dist_to_hod_atr":0.551763,"atr":0.1816,"spread_atr":0.165199,"own_change_pct":0.789062,"rel_strength_pct":{"SPY":0.771962,"IWM":0.85191}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.486018},"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":"62f82772bbbe","ts":"2026-09-15T13:48:00+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.36,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":1.9},"price":12.8069,"vwap":12.7779,"ext_from_open_pct":2.46,"max_ext_allowed_pct":5.0,"volume_pace":3.552,"trend":"flat","recent_slope_pct":-0.3217,"volatility":"high"},"price":12.8069,"volume":{"bars":17,"last_bar_volume":82130.0,"baseline_avg":78709.9375,"bar_rvol":1.043451,"raw_accel":2.247143,"smooth_accel":-0.114414,"accel_momentum":-0.5374,"rvol_3bar":[3.033179,0.307435,1.043451],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1315.0,"sell_vol":2891.0,"unclassified_vol":0.0,"imbalance":-0.374703,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":0.00794},"context":{"vwap":12.777107,"price_vs_vwap_pct":0.233173,"ema9":12.866746,"ema20":12.78242,"ema_stack":false,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-1.636713,"dist_to_hod_atr":1.17346,"atr":0.1816,"spread_atr":0.165199,"own_change_pct":0.789062,"rel_strength_pct":{"SPY":0.783137,"IWM":0.914941}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.390984},"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":"5d9dd2cd156f","ts":"2026-09-15T13:48:05+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.21,"target":8.41,"target_label":"prev_day_high","reward_risk":0.9,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.26},"price":8.315,"vwap":8.2959,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":1.494,"trend":"flat","recent_slope_pct":-0.054,"volatility":"medium"},"price":8.315,"volume":{"bars":18,"last_bar_volume":285.0,"baseline_avg":2429.882353,"bar_rvol":0.11729,"raw_accel":-0.540323,"smooth_accel":-0.707438,"accel_momentum":-0.234551,"rvol_3bar":[0.484853,0.243807,0.11729],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":13.0,"sell_vol":364.0,"unclassified_vol":0.0,"imbalance":-0.931034,"bid":8.3,"ask":8.33,"spread_pct":0.360794,"quote_size_imbalance":null,"quote_age_s":1.469557},"context":{"vwap":8.29578,"price_vs_vwap_pct":0.231689,"ema9":8.291816,"ema20":8.296879,"ema_stack":false,"ema_warm":false,"hod":8.5,"dist_to_hod_pct":-2.176471,"dist_to_hod_atr":2.327883,"atr":0.079471,"spread_atr":0.377495,"own_change_pct":0.520406,"rel_strength_pct":{"SPY":0.514481,"IWM":0.646284}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.109201},"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":"0aa29bbf88ab","ts":"2026-09-15T13:48:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5268,"target":10.935,"target_label":"prev_day_high","reward_risk":1.75,"pos_in_5d_range_pct":36.1,"room_to_5d_high_atr":1.39},"price":10.675,"vwap":10.6401,"ext_from_open_pct":2.55,"max_ext_allowed_pct":4.0,"volume_pace":2.554,"trend":"flat","recent_slope_pct":-0.1777,"volatility":"medium"},"price":10.675,"volume":{"bars":18,"last_bar_volume":57184.0,"baseline_avg":63758.176471,"bar_rvol":0.896889,"raw_accel":2.587556,"smooth_accel":0.557715,"accel_momentum":1.318577,"rvol_3bar":[0.286056,0.210504,0.896889],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":224,"trade_rate":7.466667,"buy_vol":11914.0,"sell_vol":40019.0,"unclassified_vol":0.0,"imbalance":-0.541178,"bid":10.67,"ask":10.68,"spread_pct":0.093677,"quote_size_imbalance":null,"quote_age_s":0.648704},"context":{"vwap":10.640055,"price_vs_vwap_pct":0.328424,"ema9":10.71371,"ema20":10.677411,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-1.974288,"dist_to_hod_atr":1.60001,"atr":0.134374,"spread_atr":0.074419,"own_change_pct":-1.385681,"rel_strength_pct":{"SPY":-1.391606,"IWM":-1.259803}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.485377},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4cb2f8463957","ts":"2026-09-15T13:48:05+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.0s, plan says PASS; stop 12.74, target 13.84 (range_20d_high), R:R 1.20; R:R 1.20 < 2.0 at 13.24; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":1.2,"pos_in_5d_range_pct":82.3,"room_to_5d_high_atr":0.56},"price":13.24,"vwap":12.8321,"ext_from_open_pct":2.0,"max_ext_allowed_pct":4.0,"volume_pace":3.6,"trend":"flat","recent_slope_pct":0.4412,"volatility":"medium"},"price":13.24,"volume":{"bars":18,"last_bar_volume":8538.0,"baseline_avg":9449.176471,"bar_rvol":0.903571,"raw_accel":2.614283,"smooth_accel":0.063973,"accel_momentum":0.942104,"rvol_3bar":[0.057888,0.014156,0.903571],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":186.0,"sell_vol":356.0,"unclassified_vol":0.0,"imbalance":-0.313653,"bid":13.19,"ask":13.24,"spread_pct":0.378358,"quote_size_imbalance":null,"quote_age_s":36.473244},"context":{"vwap":12.832107,"price_vs_vwap_pct":3.17869,"ema9":13.022112,"ema20":12.930417,"ema_stack":true,"ema_warm":false,"hod":13.23,"dist_to_hod_pct":0.075586,"dist_to_hod_atr":-0.046814,"atr":0.21361,"spread_atr":0.234072,"own_change_pct":1.063602,"rel_strength_pct":{"SPY":1.057677,"IWM":1.18948}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.283408},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9d8ec49bc82a","ts":"2026-09-15T13:48:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":26.5,"room_to_5d_high_atr":1.77},"price":12.9189,"vwap":12.778,"ext_from_open_pct":3.35,"max_ext_allowed_pct":4.0,"volume_pace":3.541,"trend":"flat","recent_slope_pct":-0.0856,"volatility":"high"},"price":12.9189,"volume":{"bars":18,"last_bar_volume":17322.0,"baseline_avg":78911.117647,"bar_rvol":0.219513,"raw_accel":-0.78909,"smooth_accel":-0.773658,"accel_momentum":-0.659244,"rvol_3bar":[0.307435,1.043451,0.219513],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1416.0,"sell_vol":4161.0,"unclassified_vol":0.0,"imbalance":-0.4922,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":0.042929},"context":{"vwap":12.777858,"price_vs_vwap_pct":1.103804,"ema9":12.854777,"ema20":12.784751,"ema_stack":true,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-0.776498,"dist_to_hod_atr":0.565754,"atr":0.1787,"spread_atr":0.167879,"own_change_pct":-0.952049,"rel_strength_pct":{"SPY":-0.957975,"IWM":-0.826171}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.108044},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d4f7eb9b5139","ts":"2026-09-15T13:48:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 280.0s, plan says WATCH; stop 11.19, target 11.94 (prev_day_high), R:R 2.44; breakout: 1-min close > 11.48 on >= 356015 sh","plan":{"state":"WATCH","setup":"","stop":11.1932,"target":11.94,"target_label":"prev_day_high","reward_risk":2.44,"pos_in_5d_range_pct":31.6,"room_to_5d_high_atr":1.12},"price":11.41,"vwap":11.314,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":1.751,"trend":"flat","recent_slope_pct":0.0457,"volatility":"high"},"price":11.41,"volume":{"bars":18,"last_bar_volume":164701.0,"baseline_avg":241616.176471,"bar_rvol":0.681664,"raw_accel":-0.494132,"smooth_accel":0.756147,"accel_momentum":0.314189,"rvol_3bar":[1.263814,1.37743,0.681664],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":239,"trade_rate":7.966667,"buy_vol":42376.0,"sell_vol":46663.0,"unclassified_vol":0.0,"imbalance":-0.048147,"bid":11.4,"ask":11.41,"spread_pct":0.087681,"quote_size_imbalance":null,"quote_age_s":0.469288},"context":{"vwap":11.312995,"price_vs_vwap_pct":0.857465,"ema9":11.370999,"ema20":11.326557,"ema_stack":true,"ema_warm":false,"hod":11.47,"dist_to_hod_pct":-0.523104,"dist_to_hod_atr":0.509139,"atr":0.117846,"spread_atr":0.084856,"own_change_pct":0.725586,"rel_strength_pct":{"SPY":0.71966,"IWM":0.851464}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.03282},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cba5fd905a83","ts":"2026-09-15T13:48:10+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.36,"pos_in_5d_range_pct":21.1,"room_to_5d_high_atr":1.9},"price":12.805,"vwap":12.778,"ext_from_open_pct":2.44,"max_ext_allowed_pct":4.0,"volume_pace":3.525,"trend":"flat","recent_slope_pct":-0.2628,"volatility":"high"},"price":12.805,"volume":{"bars":18,"last_bar_volume":17322.0,"baseline_avg":78911.117647,"bar_rvol":0.219513,"raw_accel":-0.78909,"smooth_accel":-0.773658,"accel_momentum":-0.659244,"rvol_3bar":[0.307435,1.043451,0.219513],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1497.0,"sell_vol":2537.0,"unclassified_vol":0.0,"imbalance":-0.257809,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":1.824165},"context":{"vwap":12.777858,"price_vs_vwap_pct":0.212418,"ema9":12.854777,"ema20":12.784751,"ema_stack":false,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-1.651306,"dist_to_hod_atr":1.203136,"atr":0.1787,"spread_atr":0.167879,"own_change_pct":-0.952049,"rel_strength_pct":{"SPY":-0.957975,"IWM":-0.826171}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.056592},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1bfb94b49dee","ts":"2026-09-15T13:48:10+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 285.0s, plan says PASS; stop 11.17, target 11.44 (premarket_high), R:R 0.23; R:R 0.23 < 2.0 at 11.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1732,"target":11.44,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":30.2,"room_to_5d_high_atr":1.15},"price":11.39,"vwap":11.3147,"ext_from_open_pct":1.15,"max_ext_allowed_pct":3.0,"volume_pace":1.757,"trend":"flat","recent_slope_pct":0.0106,"volatility":"high"},"price":11.39,"volume":{"bars":18,"last_bar_volume":164701.0,"baseline_avg":241616.176471,"bar_rvol":0.681664,"raw_accel":-0.494132,"smooth_accel":0.756147,"accel_momentum":0.314189,"rvol_3bar":[1.263814,1.37743,0.681664],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":294,"trade_rate":9.8,"buy_vol":66952.0,"sell_vol":53413.0,"unclassified_vol":0.0,"imbalance":0.112483,"bid":11.39,"ask":11.4,"spread_pct":0.087758,"quote_size_imbalance":null,"quote_age_s":0.047406},"context":{"vwap":11.312995,"price_vs_vwap_pct":0.680677,"ema9":11.370999,"ema20":11.326557,"ema_stack":true,"ema_warm":false,"hod":11.47,"dist_to_hod_pct":-0.697472,"dist_to_hod_atr":0.678852,"atr":0.117846,"spread_atr":0.084856,"own_change_pct":0.725586,"rel_strength_pct":{"SPY":0.71966,"IWM":0.851464}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.076675},"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":"9db49a71e2bd","ts":"2026-09-15T13:48:15+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.86,"target":13.8,"target_label":"premarket_high","reward_risk":3.27,"pos_in_5d_range_pct":55.3,"room_to_5d_high_atr":0.93},"price":13.08,"vwap":13.0684,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":2.795,"trend":"flat","recent_slope_pct":-0.2361,"volatility":"medium"},"price":13.08,"volume":{"bars":18,"last_bar_volume":858.0,"baseline_avg":4498.294118,"bar_rvol":0.190739,"raw_accel":-0.701149,"smooth_accel":-0.753986,"accel_momentum":0.027976,"rvol_3bar":[0.095991,0.62413,0.190739],"trend_3bar":"MIXED","projected_rvol":0.029344},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":732.0,"sell_vol":48.0,"unclassified_vol":0.0,"imbalance":0.876923,"bid":13.07,"ask":13.15,"spread_pct":0.610221,"quote_size_imbalance":null,"quote_age_s":31.447794},"context":{"vwap":13.06841,"price_vs_vwap_pct":0.088688,"ema9":13.114035,"ema20":13.072907,"ema_stack":false,"ema_warm":false,"hod":13.31,"dist_to_hod_pct":-1.728024,"dist_to_hod_atr":1.060582,"atr":0.216862,"spread_atr":0.368898,"own_change_pct":-0.531108,"rel_strength_pct":{"SPY":-0.537033,"IWM":-0.405229}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.167263},"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":"363b6457fe14","ts":"2026-09-15T13:48:15+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":26.5,"room_to_5d_high_atr":1.77},"price":12.9199,"vwap":12.778,"ext_from_open_pct":3.36,"max_ext_allowed_pct":4.0,"volume_pace":3.51,"trend":"flat","recent_slope_pct":-0.084,"volatility":"high"},"price":12.9199,"volume":{"bars":18,"last_bar_volume":17322.0,"baseline_avg":78911.117647,"bar_rvol":0.219513,"raw_accel":-0.78909,"smooth_accel":-0.773658,"accel_momentum":-0.659244,"rvol_3bar":[0.307435,1.043451,0.219513],"trend_3bar":"MIXED","projected_rvol":0.123633},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1594.0,"sell_vol":2537.0,"unclassified_vol":0.0,"imbalance":-0.228274,"bid":12.79,"ask":12.82,"spread_pct":0.234283,"quote_size_imbalance":null,"quote_age_s":6.824165},"context":{"vwap":12.777858,"price_vs_vwap_pct":1.11163,"ema9":12.854777,"ema20":12.784751,"ema_stack":true,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-0.768817,"dist_to_hod_atr":0.560158,"atr":0.1787,"spread_atr":0.167879,"own_change_pct":-0.952049,"rel_strength_pct":{"SPY":-0.957975,"IWM":-0.826171}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.050109},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8d08adbfc158","ts":"2026-09-15T13:48:20+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.77,"target":13.18,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":1.91},"price":12.8,"vwap":12.7781,"ext_from_open_pct":2.4,"max_ext_allowed_pct":4.0,"volume_pace":3.502,"trend":"flat","recent_slope_pct":-0.2705,"volatility":"high"},"price":12.8,"volume":{"bars":18,"last_bar_volume":17322.0,"baseline_avg":78911.117647,"bar_rvol":0.219513,"raw_accel":-0.78909,"smooth_accel":-0.773658,"accel_momentum":-0.659244,"rvol_3bar":[0.307435,1.043451,0.219513],"trend_3bar":"MIXED","projected_rvol":0.218106},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":3522.0,"sell_vol":3817.0,"unclassified_vol":0.0,"imbalance":-0.040196,"bid":12.79,"ask":12.81,"spread_pct":0.15625,"quote_size_imbalance":null,"quote_age_s":0.3594},"context":{"vwap":12.777858,"price_vs_vwap_pct":0.173288,"ema9":12.854777,"ema20":12.784751,"ema_stack":false,"ema_warm":false,"hod":13.02,"dist_to_hod_pct":-1.689708,"dist_to_hod_atr":1.231116,"atr":0.1787,"spread_atr":0.11192,"own_change_pct":-0.952049,"rel_strength_pct":{"SPY":-0.957975,"IWM":-0.826171}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.008824},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4c1e68a3c273","ts":"2026-09-15T13:48:30+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 305.0s, plan says WATCH; stop 11.19, target 11.94 (prev_day_high), R:R 2.46; breakout: 1-min close > 11.48 on >= 356015 sh","plan":{"state":"WATCH","setup":"","stop":11.1891,"target":11.94,"target_label":"prev_day_high","reward_risk":2.46,"pos_in_5d_range_pct":31.3,"room_to_5d_high_atr":1.13},"price":11.4059,"vwap":11.3151,"ext_from_open_pct":1.3,"max_ext_allowed_pct":3.0,"volume_pace":1.733,"trend":"flat","recent_slope_pct":0.0385,"volatility":"high"},"price":11.4059,"volume":{"bars":18,"last_bar_volume":164701.0,"baseline_avg":241616.176471,"bar_rvol":0.681664,"raw_accel":-0.494132,"smooth_accel":0.756147,"accel_momentum":0.314189,"rvol_3bar":[1.263814,1.37743,0.681664],"trend_3bar":"MIXED","projected_rvol":0.871258},"flow":{"window_s":30,"trades":268,"trade_rate":8.933333,"buy_vol":55350.0,"sell_vol":49905.0,"unclassified_vol":0.0,"imbalance":0.051732,"bid":11.38,"ask":11.39,"spread_pct":0.087835,"quote_size_imbalance":null,"quote_age_s":0.266271},"context":{"vwap":11.312995,"price_vs_vwap_pct":0.821224,"ema9":11.370999,"ema20":11.326557,"ema_stack":true,"ema_warm":false,"hod":11.47,"dist_to_hod_pct":-0.558849,"dist_to_hod_atr":0.54393,"atr":0.117846,"spread_atr":0.084856,"own_change_pct":0.725586,"rel_strength_pct":{"SPY":0.71966,"IWM":0.851464}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.035263},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f0c227418747","ts":"2026-09-15T13:48:30+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.8002,"target":13.13,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":33.3,"room_to_5d_high_atr":1.09},"price":13.03,"vwap":13.0023,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":1.722,"trend":"flat","recent_slope_pct":-0.0729,"volatility":"high"},"price":13.03,"volume":{"bars":18,"last_bar_volume":40803.0,"baseline_avg":86132.411765,"bar_rvol":0.473724,"raw_accel":-0.19687,"smooth_accel":-0.415995,"accel_momentum":-0.791237,"rvol_3bar":[0.345796,0.575105,0.473724],"trend_3bar":"MIXED","projected_rvol":0.182881},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":4025.0,"sell_vol":3851.0,"unclassified_vol":0.0,"imbalance":0.022092,"bid":13.02,"ask":13.03,"spread_pct":0.076775,"quote_size_imbalance":null,"quote_age_s":0.304726},"context":{"vwap":13.002139,"price_vs_vwap_pct":0.214276,"ema9":13.03652,"ema20":13.004722,"ema_stack":false,"ema_warm":false,"hod":13.17,"dist_to_hod_pct":-1.063022,"dist_to_hod_atr":0.950833,"atr":0.147239,"spread_atr":0.067917,"own_change_pct":0.153551,"rel_strength_pct":{"SPY":0.147626,"IWM":0.279429}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.010466},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"036b4fec2b0b","ts":"2026-09-15T13:48:35+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.05 below VWAP $13.07","plan":{"state":"PASS","setup":"","stop":12.795,"target":13.8,"target_label":"premarket_high","reward_risk":2.87,"pos_in_5d_range_pct":53.7,"room_to_5d_high_atr":0.96},"price":13.055,"vwap":13.0685,"ext_from_open_pct":0.04,"max_ext_allowed_pct":3.0,"volume_pace":2.798,"trend":"flat","recent_slope_pct":-0.2742,"volatility":"medium"},"price":13.055,"volume":{"bars":18,"last_bar_volume":858.0,"baseline_avg":4498.294118,"bar_rvol":0.190739,"raw_accel":-0.701149,"smooth_accel":-0.753986,"accel_momentum":0.027976,"rvol_3bar":[0.095991,0.62413,0.190739],"trend_3bar":"MIXED","projected_rvol":0.575837},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":366.0,"sell_vol":1145.0,"unclassified_vol":0.0,"imbalance":-0.515553,"bid":13.0,"ask":13.13,"spread_pct":0.995025,"quote_size_imbalance":null,"quote_age_s":2.50446},"context":{"vwap":13.06841,"price_vs_vwap_pct":-0.102613,"ema9":13.114035,"ema20":13.072907,"ema_stack":false,"ema_warm":false,"hod":13.31,"dist_to_hod_pct":-1.915853,"dist_to_hod_atr":1.175862,"atr":0.216862,"spread_atr":0.599459,"own_change_pct":-0.531108,"rel_strength_pct":{"SPY":-0.537033,"IWM":-0.405229}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.098336},"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":"ca38c9adfd4d","ts":"2026-09-15T13:48:35+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 310.0s, plan says PASS; stop 11.17, target 11.44 (premarket_high), R:R 0.24; R:R 0.24 < 2.0 at 11.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1708,"target":11.44,"target_label":"premarket_high","reward_risk":0.24,"pos_in_5d_range_pct":30.0,"room_to_5d_high_atr":1.15},"price":11.3876,"vwap":11.315,"ext_from_open_pct":1.13,"max_ext_allowed_pct":3.0,"volume_pace":1.726,"trend":"flat","recent_slope_pct":0.0064,"volatility":"high"},"price":11.3876,"volume":{"bars":18,"last_bar_volume":164701.0,"baseline_avg":241616.176471,"bar_rvol":0.681664,"raw_accel":-0.494132,"smooth_accel":0.756147,"accel_momentum":0.314189,"rvol_3bar":[1.263814,1.37743,0.681664],"trend_3bar":"MIXED","projected_rvol":0.767425},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":31426.0,"sell_vol":26536.0,"unclassified_vol":0.0,"imbalance":0.084366,"bid":11.38,"ask":11.39,"spread_pct":0.087835,"quote_size_imbalance":null,"quote_age_s":0.094944},"context":{"vwap":11.312995,"price_vs_vwap_pct":0.659463,"ema9":11.370999,"ema20":11.326557,"ema_stack":true,"ema_warm":false,"hod":11.47,"dist_to_hod_pct":-0.718396,"dist_to_hod_atr":0.699217,"atr":0.117846,"spread_atr":0.084856,"own_change_pct":0.725586,"rel_strength_pct":{"SPY":0.71966,"IWM":0.851464}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.057509},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fae58ccf02b1","ts":"2026-09-15T13:48:45+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 600.0s, plan says PASS; stop 7.67, target 7.81 (ceiling), R:R 0.47; R:R 0.47 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.67,"target":7.81,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7439,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":-0.062,"volatility":"medium"},"price":7.765,"volume":{"bars":18,"last_bar_volume":18667.0,"baseline_avg":22712.294118,"bar_rvol":0.82189,"raw_accel":-0.322801,"smooth_accel":0.21201,"accel_momentum":-0.308628,"rvol_3bar":[1.050232,1.230086,0.82189],"trend_3bar":"MIXED","projected_rvol":0.609949},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":236.0,"sell_vol":3936.0,"unclassified_vol":0.0,"imbalance":-0.886865,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.597948},"context":{"vwap":7.743145,"price_vs_vwap_pct":0.282246,"ema9":7.776652,"ema20":7.754042,"ema_stack":false,"ema_warm":false,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.660779,"atr":0.068101,"spread_atr":0.14684,"own_change_pct":0.32175,"rel_strength_pct":{"SPY":0.315825,"IWM":0.447629}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.728905},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bab1798ef9ab","ts":"2026-09-15T13:48:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.63 below VWAP $10.64","plan":{"state":"PASS","setup":"","stop":10.4841,"target":10.935,"target_label":"prev_day_high","reward_risk":2.04,"pos_in_5d_range_pct":32.8,"room_to_5d_high_atr":1.46},"price":10.6323,"vwap":10.6407,"ext_from_open_pct":2.14,"max_ext_allowed_pct":3.0,"volume_pace":2.501,"trend":"flat","recent_slope_pct":-0.2577,"volatility":"medium"},"price":10.6323,"volume":{"bars":18,"last_bar_volume":57184.0,"baseline_avg":63758.176471,"bar_rvol":0.896889,"raw_accel":2.587556,"smooth_accel":0.557715,"accel_momentum":1.318577,"rvol_3bar":[0.286056,0.210504,0.896889],"trend_3bar":"MIXED","projected_rvol":0.409903},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":4934.0,"sell_vol":8470.0,"unclassified_vol":0.0,"imbalance":-0.263802,"bid":10.63,"ask":10.64,"spread_pct":0.094029,"quote_size_imbalance":null,"quote_age_s":1.121651},"context":{"vwap":10.640055,"price_vs_vwap_pct":-0.07289,"ema9":10.71371,"ema20":10.677411,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-2.366391,"dist_to_hod_atr":1.917779,"atr":0.134374,"spread_atr":0.074419,"own_change_pct":-1.385681,"rel_strength_pct":{"SPY":-1.391606,"IWM":-1.259803}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.236601},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dfb7e2b5b892","ts":"2026-09-15T13:49:05+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8527,"target":10.015,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.51},"price":9.9719,"vwap":9.9525,"ext_from_open_pct":1.44,"max_ext_allowed_pct":3.0,"volume_pace":1.686,"trend":"flat","recent_slope_pct":-0.1582,"volatility":"medium"},"price":9.9719,"volume":{"bars":19,"last_bar_volume":395926.0,"baseline_avg":553723.888889,"bar_rvol":0.715024,"raw_accel":-0.74586,"smooth_accel":1.50808,"accel_momentum":-0.518254,"rvol_3bar":[0.594367,3.149477,0.715024],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":118,"trade_rate":3.933333,"buy_vol":32823.0,"sell_vol":20101.0,"unclassified_vol":0.0,"imbalance":0.240382,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.063377},"context":{"vwap":9.952476,"price_vs_vwap_pct":0.195169,"ema9":9.992715,"ema20":9.967536,"ema_stack":false,"ema_warm":false,"hod":10.05,"dist_to_hod_pct":-0.777114,"dist_to_hod_atr":1.348484,"atr":0.057917,"spread_atr":0.172661,"own_change_pct":-0.424152,"rel_strength_pct":{"SPY":-0.37879,"IWM":-0.212632}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.171879},"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":"65ecf672dae1","ts":"2026-09-15T13:49:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.67,"target":7.81,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":54.7,"room_to_5d_high_atr":0.7},"price":7.7581,"vwap":7.7442,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.909,"trend":"flat","recent_slope_pct":-0.1419,"volatility":"medium"},"price":7.7581,"volume":{"bars":19,"last_bar_volume":16786.0,"baseline_avg":22487.555556,"bar_rvol":0.746457,"raw_accel":-0.100766,"smooth_accel":-0.190998,"accel_momentum":-0.403008,"rvol_3bar":[1.230086,0.82189,0.746457],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":1386.0,"sell_vol":6964.0,"unclassified_vol":0.0,"imbalance":-0.668024,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":0.222287},"context":{"vwap":7.744196,"price_vs_vwap_pct":0.179541,"ema9":7.773321,"ema20":7.754609,"ema_stack":false,"ema_warm":false,"hod":7.81,"dist_to_hod_pct":-0.664533,"dist_to_hod_atr":0.778013,"atr":0.066708,"spread_atr":0.149906,"own_change_pct":-0.32113,"rel_strength_pct":{"SPY":-0.275769,"IWM":-0.10961}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.498651},"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":"9d4bf6477f36","ts":"2026-09-15T13:49:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2531,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":-0.0481,"volatility":"medium"},"price":7.275,"volume":{"bars":19,"last_bar_volume":111138.0,"baseline_avg":142904.388889,"bar_rvol":0.777709,"raw_accel":-0.178763,"smooth_accel":-0.204132,"accel_momentum":0.237433,"rvol_3bar":[0.287541,0.944053,0.777709],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":3737.0,"sell_vol":8783.0,"unclassified_vol":0.0,"imbalance":-0.403035,"bid":7.26,"ask":7.27,"spread_pct":0.137646,"quote_size_imbalance":null,"quote_age_s":0.017004},"context":{"vwap":7.253076,"price_vs_vwap_pct":0.302266,"ema9":7.27686,"ema20":7.268262,"ema_stack":false,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.020037,"atr":0.05392,"spread_atr":0.185461,"own_change_pct":-0.54757,"rel_strength_pct":{"SPY":-0.502209,"IWM":-0.33605}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.313444},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a9bac747ba38","ts":"2026-09-15T13:49:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.88","plan":{"state":"PASS","setup":"","stop":7.7617,"target":7.93,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":20.6,"room_to_5d_high_atr":2.68},"price":7.88,"vwap":7.8839,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.947,"trend":"flat","recent_slope_pct":-0.1266,"volatility":"high"},"price":7.88,"volume":{"bars":19,"last_bar_volume":5628.0,"baseline_avg":10336.111111,"bar_rvol":0.544499,"raw_accel":-0.563687,"smooth_accel":0.090555,"accel_momentum":-0.706721,"rvol_3bar":[1.043889,1.266426,0.544499],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":757.0,"sell_vol":599.0,"unclassified_vol":0.0,"imbalance":0.116519,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.288726},"context":{"vwap":7.883877,"price_vs_vwap_pct":-0.049176,"ema9":7.896526,"ema20":7.888885,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.630517,"dist_to_hod_atr":1.195476,"atr":0.041824,"spread_atr":0.239095,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.270694,"IWM":-0.104536}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.063445},"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":"443769d7e805","ts":"2026-09-15T13:49:15+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7672,"target":7.93,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":21.0,"room_to_5d_high_atr":2.67},"price":7.8855,"vwap":7.8839,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.947,"trend":"flat","recent_slope_pct":-0.1127,"volatility":"medium"},"price":7.8855,"volume":{"bars":19,"last_bar_volume":5628.0,"baseline_avg":10336.111111,"bar_rvol":0.544499,"raw_accel":-0.563687,"smooth_accel":0.090555,"accel_momentum":-0.706721,"rvol_3bar":[1.043889,1.266426,0.544499],"trend_3bar":"MIXED","projected_rvol":0.353711},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1261.0,"sell_vol":741.0,"unclassified_vol":0.0,"imbalance":0.25974,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.957039},"context":{"vwap":7.883877,"price_vs_vwap_pct":0.020587,"ema9":7.896526,"ema20":7.888885,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.56116,"dist_to_hod_atr":1.063974,"atr":0.041824,"spread_atr":0.239095,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.270694,"IWM":-0.104536}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.141428},"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":"c6444e624f91","ts":"2026-09-15T13:49:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.2249,"target":8.41,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.26},"price":8.315,"vwap":8.296,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":1.413,"trend":"flat","recent_slope_pct":0.0391,"volatility":"medium"},"price":8.315,"volume":{"bars":19,"last_bar_volume":562.0,"baseline_avg":2310.722222,"bar_rvol":0.243214,"raw_accel":-0.027144,"smooth_accel":-0.666591,"accel_momentum":0.040847,"rvol_3bar":[0.243807,0.11729,0.243214],"trend_3bar":"MIXED","projected_rvol":0.001731},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":1.0,"sell_vol":20.0,"unclassified_vol":0.0,"imbalance":-0.904762,"bid":8.3,"ask":8.33,"spread_pct":0.360794,"quote_size_imbalance":null,"quote_age_s":9.645866},"context":{"vwap":8.295991,"price_vs_vwap_pct":0.22913,"ema9":8.295453,"ema20":8.298129,"ema_stack":false,"ema_warm":false,"hod":8.5,"dist_to_hod_pct":-2.176471,"dist_to_hod_atr":2.459108,"atr":0.075231,"spread_atr":0.398774,"own_change_pct":0.241255,"rel_strength_pct":{"SPY":0.286616,"IWM":0.452774}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.220051},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e0a7d229e5d1","ts":"2026-09-15T13:49:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.1656,"target":7.2991,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":31.5,"room_to_5d_high_atr":1.46},"price":7.27,"vwap":7.2508,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.66,"trend":"flat","recent_slope_pct":-0.0619,"volatility":"medium"},"price":7.27,"volume":{"bars":19,"last_bar_volume":111138.0,"baseline_avg":142904.388889,"bar_rvol":0.777709,"raw_accel":-0.178763,"smooth_accel":-0.204132,"accel_momentum":0.237433,"rvol_3bar":[0.287541,0.944053,0.777709],"trend_3bar":"MIXED","projected_rvol":1.749701},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":34116.0,"sell_vol":30669.0,"unclassified_vol":0.0,"imbalance":0.053207,"bid":7.26,"ask":7.27,"spread_pct":0.137646,"quote_size_imbalance":null,"quote_age_s":1.122371},"context":{"vwap":7.253076,"price_vs_vwap_pct":0.23333,"ema9":7.27686,"ema20":7.268262,"ema_stack":false,"ema_warm":false,"hod":7.33,"dist_to_hod_pct":-0.818554,"dist_to_hod_atr":1.112768,"atr":0.05392,"spread_atr":0.185461,"own_change_pct":-0.54757,"rel_strength_pct":{"SPY":-0.502209,"IWM":-0.33605}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.041379},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"087aefed6f18","ts":"2026-09-15T13:49:35+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5427,"target":10.935,"target_label":"prev_day_high","reward_risk":1.65,"pos_in_5d_range_pct":37.3,"room_to_5d_high_atr":1.36},"price":10.6909,"vwap":10.6416,"ext_from_open_pct":2.7,"max_ext_allowed_pct":3.0,"volume_pace":2.438,"trend":"flat","recent_slope_pct":-0.0889,"volatility":"medium"},"price":10.6909,"volume":{"bars":19,"last_bar_volume":26763.0,"baseline_avg":63392.944444,"bar_rvol":0.422176,"raw_accel":-0.531984,"smooth_accel":0.61072,"accel_momentum":0.053005,"rvol_3bar":[0.210504,0.896889,0.422176],"trend_3bar":"MIXED","projected_rvol":0.378618},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":2158.0,"sell_vol":10254.0,"unclassified_vol":0.0,"imbalance":-0.652272,"bid":10.6,"ask":10.61,"spread_pct":0.094295,"quote_size_imbalance":null,"quote_age_s":1.115305},"context":{"vwap":10.641081,"price_vs_vwap_pct":0.468177,"ema9":10.702608,"ema20":10.675581,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-1.828283,"dist_to_hod_atr":1.46469,"atr":0.135933,"spread_atr":0.073566,"own_change_pct":-1.542697,"rel_strength_pct":{"SPY":-1.497335,"IWM":-1.331177}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.275374},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d37114b60deb","ts":"2026-09-15T13:49:35+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.2801,"target":8.59,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":3.79},"price":8.4713,"vwap":8.4699,"ext_from_open_pct":1.21,"max_ext_allowed_pct":4.0,"volume_pace":1.049,"trend":"flat","recent_slope_pct":-0.1562,"volatility":"high"},"price":8.4713,"volume":{"bars":19,"last_bar_volume":41169.0,"baseline_avg":104945.388889,"bar_rvol":0.39229,"raw_accel":-0.488838,"smooth_accel":0.003779,"accel_momentum":-0.049601,"rvol_3bar":[0.404108,0.75709,0.39229],"trend_3bar":"MIXED","projected_rvol":0.384102},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":11977.0,"sell_vol":5964.0,"unclassified_vol":0.0,"imbalance":0.335154,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":0.821377},"context":{"vwap":8.470011,"price_vs_vwap_pct":0.015213,"ema9":8.485316,"ema20":8.487199,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-1.553748,"dist_to_hod_atr":1.531003,"atr":0.087328,"spread_atr":0.11451,"own_change_pct":-0.881316,"rel_strength_pct":{"SPY":-0.835955,"IWM":-0.669796}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.131478},"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":"fa456cec5c5f","ts":"2026-09-15T13:49:40+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.42 below VWAP $8.47","plan":{"state":"PASS","setup":"","stop":8.2274,"target":8.59,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.86},"price":8.4186,"vwap":8.4693,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":1.054,"trend":"flat","recent_slope_pct":-0.2809,"volatility":"high"},"price":8.4186,"volume":{"bars":19,"last_bar_volume":41169.0,"baseline_avg":104945.388889,"bar_rvol":0.39229,"raw_accel":-0.488838,"smooth_accel":0.003779,"accel_momentum":-0.049601,"rvol_3bar":[0.404108,0.75709,0.39229],"trend_3bar":"MIXED","projected_rvol":0.580273},"flow":{"window_s":30,"trades":174,"trade_rate":5.8,"buy_vol":14688.0,"sell_vol":19844.0,"unclassified_vol":0.0,"imbalance":-0.149311,"bid":8.41,"ask":8.42,"spread_pct":0.118835,"quote_size_imbalance":null,"quote_age_s":0.971957},"context":{"vwap":8.470011,"price_vs_vwap_pct":-0.606982,"ema9":8.485316,"ema20":8.487199,"ema_stack":false,"ema_warm":false,"hod":8.605,"dist_to_hod_pct":-2.166182,"dist_to_hod_atr":2.134472,"atr":0.087328,"spread_atr":0.11451,"own_change_pct":-0.881316,"rel_strength_pct":{"SPY":-0.835955,"IWM":-0.669796}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.058573},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dcb035aacb81","ts":"2026-09-15T13:49:45+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7717,"target":7.93,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8839,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":4.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":-0.1013,"volatility":"medium"},"price":7.89,"volume":{"bars":19,"last_bar_volume":5628.0,"baseline_avg":10336.111111,"bar_rvol":0.544499,"raw_accel":-0.563687,"smooth_accel":0.090555,"accel_momentum":-0.706721,"rvol_3bar":[1.043889,1.266426,0.544499],"trend_3bar":"MIXED","projected_rvol":0.118549},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":5.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.228653},"context":{"vwap":7.883877,"price_vs_vwap_pct":0.077666,"ema9":7.896526,"ema20":7.888885,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":0.956381,"atr":0.041824,"spread_atr":0.239095,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.270694,"IWM":-0.104536}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.544499},"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":"5f519505439b","ts":"2026-09-15T13:49:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.60 below VWAP $10.64","plan":{"state":"PASS","setup":"","stop":10.4468,"target":10.64,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":29.9,"room_to_5d_high_atr":1.52},"price":10.595,"vwap":10.6414,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":2.467,"trend":"flat","recent_slope_pct":-0.2688,"volatility":"medium"},"price":10.595,"volume":{"bars":19,"last_bar_volume":26763.0,"baseline_avg":63392.944444,"bar_rvol":0.422176,"raw_accel":-0.531984,"smooth_accel":0.61072,"accel_momentum":0.053005,"rvol_3bar":[0.210504,0.896889,0.422176],"trend_3bar":"MIXED","projected_rvol":0.801267},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":3572.0,"sell_vol":25548.0,"unclassified_vol":0.0,"imbalance":-0.75467,"bid":10.59,"ask":10.6,"spread_pct":0.094384,"quote_size_imbalance":null,"quote_age_s":0.354291},"context":{"vwap":10.641081,"price_vs_vwap_pct":-0.433047,"ema9":10.702608,"ema20":10.675581,"ema_stack":false,"ema_warm":false,"hod":10.89,"dist_to_hod_pct":-2.708907,"dist_to_hod_atr":2.170184,"atr":0.135933,"spread_atr":0.073566,"own_change_pct":-1.542697,"rel_strength_pct":{"SPY":-1.497335,"IWM":-1.331177}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.318604},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4cb8ede3ce96","ts":"2026-09-15T13:49:55+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7667,"target":7.93,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.67},"price":7.885,"vwap":7.8839,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":4.0,"volume_pace":0.94,"trend":"flat","recent_slope_pct":-0.1139,"volatility":"medium"},"price":7.885,"volume":{"bars":19,"last_bar_volume":5628.0,"baseline_avg":10336.111111,"bar_rvol":0.544499,"raw_accel":-0.563687,"smooth_accel":0.090555,"accel_momentum":-0.706721,"rvol_3bar":[1.043889,1.266426,0.544499],"trend_3bar":"MIXED","projected_rvol":0.663763},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":5360.0,"sell_vol":15.0,"unclassified_vol":0.0,"imbalance":0.994419,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.794306},"context":{"vwap":7.883877,"price_vs_vwap_pct":0.014245,"ema9":7.896526,"ema20":7.888885,"ema_stack":false,"ema_warm":false,"hod":7.93,"dist_to_hod_pct":-0.567465,"dist_to_hod_atr":1.075928,"atr":0.041824,"spread_atr":0.239095,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.270694,"IWM":-0.104536}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.54146},"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":"1f91e3d5a81d","ts":"2026-09-15T13:50:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8498,"target":10.015,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":21.0,"room_to_5d_high_atr":2.52},"price":9.969,"vwap":9.9533,"ext_from_open_pct":1.41,"max_ext_allowed_pct":3.0,"volume_pace":1.677,"trend":"flat","recent_slope_pct":-0.1232,"volatility":"medium"},"price":9.969,"volume":{"bars":20,"last_bar_volume":484742.0,"baseline_avg":545418.736842,"bar_rvol":0.888752,"raw_accel":0.224325,"smooth_accel":1.245286,"accel_momentum":-0.262794,"rvol_3bar":[3.149477,0.715024,0.888752],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":184,"trade_rate":6.133333,"buy_vol":52339.0,"sell_vol":79979.0,"unclassified_vol":0.0,"imbalance":-0.208891,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.549532},"context":{"vwap":9.953333,"price_vs_vwap_pct":0.157401,"ema9":9.988172,"ema20":9.967771,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.80597,"dist_to_hod_atr":1.457734,"atr":0.055566,"spread_atr":0.179967,"own_change_pct":-0.3,"rel_strength_pct":{"SPY":-0.221047,"IWM":-0.125138}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.185652},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2cf5eac0bcd1","ts":"2026-09-15T13:50:05+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.2199,"target":8.41,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.28},"price":8.31,"vwap":8.2961,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":1.364,"trend":"flat","recent_slope_pct":0.0721,"volatility":"medium"},"price":8.31,"volume":{"bars":20,"last_bar_volume":124.0,"baseline_avg":2218.684211,"bar_rvol":0.055889,"raw_accel":-0.779359,"smooth_accel":-0.750898,"accel_momentum":-0.084307,"rvol_3bar":[0.11729,0.243214,0.055889],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":153.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.877301,"bid":8.31,"ask":8.32,"spread_pct":0.120265,"quote_size_imbalance":null,"quote_age_s":1.438196},"context":{"vwap":8.29602,"price_vs_vwap_pct":0.16852,"ema9":8.296363,"ema20":8.298307,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.235294,"dist_to_hod_atr":2.673912,"atr":0.071057,"spread_atr":0.140732,"own_change_pct":-0.479616,"rel_strength_pct":{"SPY":-0.400664,"IWM":-0.304754}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.049031},"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":"d2df6b612398","ts":"2026-09-15T13:50:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.6671,"target":7.81,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":54.1,"room_to_5d_high_atr":0.71},"price":7.755,"vwap":7.7445,"ext_from_open_pct":0.71,"max_ext_allowed_pct":3.0,"volume_pace":0.882,"trend":"flat","recent_slope_pct":-0.1137,"volatility":"medium"},"price":7.755,"volume":{"bars":20,"last_bar_volume":9032.0,"baseline_avg":22187.473684,"bar_rvol":0.407077,"raw_accel":-0.461933,"smooth_accel":-0.468772,"accel_momentum":-0.277774,"rvol_3bar":[0.82189,0.746457,0.407077],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1063.0,"sell_vol":269.0,"unclassified_vol":0.0,"imbalance":0.596096,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":0.979116},"context":{"vwap":7.744527,"price_vs_vwap_pct":0.135234,"ema9":7.769997,"ema20":7.754808,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.704225,"dist_to_hod_atr":0.864771,"atr":0.063601,"spread_atr":0.157231,"own_change_pct":-0.36352,"rel_strength_pct":{"SPY":-0.284567,"IWM":-0.188658}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.242657},"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":"d1e7b50bd480","ts":"2026-09-15T13:50:05+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7752,"target":13.13,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":31.7,"room_to_5d_high_atr":1.11},"price":13.005,"vwap":13.0029,"ext_from_open_pct":-0.34,"max_ext_allowed_pct":3.0,"volume_pace":1.669,"trend":"flat","recent_slope_pct":-0.1075,"volatility":"high"},"price":13.005,"volume":{"bars":20,"last_bar_volume":57779.0,"baseline_avg":80053.157895,"bar_rvol":0.721758,"raw_accel":1.887032,"smooth_accel":-0.408717,"accel_momentum":0.027569,"rvol_3bar":[0.473724,0.190829,0.721758],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":257,"trade_rate":8.566667,"buy_vol":21342.0,"sell_vol":18189.0,"unclassified_vol":0.0,"imbalance":0.07976,"bid":13.0,"ask":13.01,"spread_pct":0.076894,"quote_size_imbalance":null,"quote_age_s":0.265229},"context":{"vwap":13.002883,"price_vs_vwap_pct":0.016278,"ema9":13.028773,"ema20":13.006587,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-1.252847,"dist_to_hod_atr":1.219772,"atr":0.135271,"spread_atr":0.073926,"own_change_pct":-0.267435,"rel_strength_pct":{"SPY":-0.188482,"IWM":-0.092573}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.057568},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6daeb05bdc8c","ts":"2026-09-15T13:50:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":56.9,"room_to_5d_high_atr":0.67},"price":7.77,"vwap":7.7453,"ext_from_open_pct":0.91,"max_ext_allowed_pct":4.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":-0.075,"volatility":"medium"},"price":7.77,"volume":{"bars":20,"last_bar_volume":9032.0,"baseline_avg":22187.473684,"bar_rvol":0.407077,"raw_accel":-0.461933,"smooth_accel":-0.468772,"accel_momentum":-0.277774,"rvol_3bar":[0.82189,0.746457,0.407077],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":13434.0,"sell_vol":852.0,"unclassified_vol":0.0,"imbalance":0.880722,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":0.785845},"context":{"vwap":7.744527,"price_vs_vwap_pct":0.328919,"ema9":7.769997,"ema20":7.754808,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.512164,"dist_to_hod_atr":0.628924,"atr":0.063601,"spread_atr":0.157231,"own_change_pct":-0.36352,"rel_strength_pct":{"SPY":-0.284567,"IWM":-0.188658}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.358521},"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":"8afd6d3ca79d","ts":"2026-09-15T13:50:15+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $13.00 below VWAP $13.00","plan":{"state":"PASS","setup":"","stop":12.7702,"target":13.13,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":31.3,"room_to_5d_high_atr":1.12},"price":13.0,"vwap":13.003,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.657,"trend":"flat","recent_slope_pct":-0.1151,"volatility":"high"},"price":13.0,"volume":{"bars":20,"last_bar_volume":57779.0,"baseline_avg":80053.157895,"bar_rvol":0.721758,"raw_accel":1.887032,"smooth_accel":-0.408717,"accel_momentum":0.027569,"rvol_3bar":[0.473724,0.190829,0.721758],"trend_3bar":"MIXED","projected_rvol":0.736211},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":13275.0,"sell_vol":6372.0,"unclassified_vol":0.0,"imbalance":0.351351,"bid":13.0,"ask":13.01,"spread_pct":0.076894,"quote_size_imbalance":null,"quote_age_s":0.028698},"context":{"vwap":13.002883,"price_vs_vwap_pct":-0.022175,"ema9":13.028773,"ema20":13.006587,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-1.290812,"dist_to_hod_atr":1.256735,"atr":0.135271,"spread_atr":0.073926,"own_change_pct":-0.267435,"rel_strength_pct":{"SPY":-0.188482,"IWM":-0.092573}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.253591},"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":"b9e829d94ddb","ts":"2026-09-15T13:50:20+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 375.0s, plan says PASS; stop 5.66, target 5.83 (prev_day_high), R:R 0.72; R:R 0.72 < 2.0 at 5.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.83,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7502,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":1.117,"trend":"flat","recent_slope_pct":-0.0225,"volatility":"high"},"price":5.7585,"volume":{"bars":20,"last_bar_volume":671.0,"baseline_avg":7977.421053,"bar_rvol":0.084112,"raw_accel":-0.833952,"smooth_accel":-0.675296,"accel_momentum":-1.261841,"rvol_3bar":[0.202305,0.493039,0.084112],"trend_3bar":"MIXED","projected_rvol":2.095038},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":947.0,"sell_vol":4824.0,"unclassified_vol":0.0,"imbalance":-0.671807,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":1.470154},"context":{"vwap":5.749669,"price_vs_vwap_pct":0.153586,"ema9":5.770466,"ema20":5.764408,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":1.00376,"atr":0.031382,"spread_atr":0.318654,"own_change_pct":-0.233221,"rel_strength_pct":{"SPY":-0.154268,"IWM":-0.058359}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.056507},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9a25f3787b05","ts":"2026-09-15T13:50:25+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7713,"target":7.93,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.8896,"vwap":7.8839,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":4.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":-0.0833,"volatility":"medium"},"price":7.8896,"volume":{"bars":20,"last_bar_volume":6289.0,"baseline_avg":10088.315789,"bar_rvol":0.623394,"raw_accel":0.117448,"smooth_accel":-0.033871,"accel_momentum":-0.124426,"rvol_3bar":[1.266426,0.544499,0.623394],"trend_3bar":"MIXED","projected_rvol":0.373977},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1324.0,"sell_vol":248.0,"unclassified_vol":0.0,"imbalance":0.684478,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.704126},"context":{"vwap":7.883913,"price_vs_vwap_pct":0.072139,"ema9":7.894221,"ema20":7.888515,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.509458,"dist_to_hod_atr":1.021461,"atr":0.039551,"spread_atr":0.252837,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.237103,"IWM":-0.141194}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.4267},"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":"755d30691ac2","ts":"2026-09-15T13:50:35+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7816,"target":8.0,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.64},"price":7.8999,"vwap":7.8841,"ext_from_open_pct":-0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":-0.0572,"volatility":"medium"},"price":7.8999,"volume":{"bars":20,"last_bar_volume":6289.0,"baseline_avg":10088.315789,"bar_rvol":0.623394,"raw_accel":0.117448,"smooth_accel":-0.033871,"accel_momentum":-0.124426,"rvol_3bar":[1.266426,0.544499,0.623394],"trend_3bar":"MIXED","projected_rvol":0.717265},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":3925.0,"sell_vol":296.0,"unclassified_vol":0.0,"imbalance":0.859749,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.170063},"context":{"vwap":7.883913,"price_vs_vwap_pct":0.202785,"ema9":7.894221,"ema20":7.888515,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.379571,"dist_to_hod_atr":0.761039,"atr":0.039551,"spread_atr":0.252837,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.237103,"IWM":-0.141194}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.535963},"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":"bf276084ded2","ts":"2026-09-15T13:50:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":57.8,"room_to_5d_high_atr":0.65},"price":7.775,"vwap":7.7385,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":-0.0621,"volatility":"medium"},"price":7.775,"volume":{"bars":20,"last_bar_volume":9032.0,"baseline_avg":22187.473684,"bar_rvol":0.407077,"raw_accel":-0.461933,"smooth_accel":-0.468772,"accel_momentum":-0.277774,"rvol_3bar":[0.82189,0.746457,0.407077],"trend_3bar":"DECELERATING","projected_rvol":1.182521},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":13433.0,"sell_vol":1823.0,"unclassified_vol":0.0,"imbalance":0.761012,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":2.432886},"context":{"vwap":7.744527,"price_vs_vwap_pct":0.393481,"ema9":7.769997,"ema20":7.754808,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.448143,"dist_to_hod_atr":0.550309,"atr":0.063601,"spread_atr":0.157231,"own_change_pct":-0.36352,"rel_strength_pct":{"SPY":-0.284567,"IWM":-0.188658}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.30979},"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":"165317558abe","ts":"2026-09-15T13:50:35+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.31 below VWAP $11.32","plan":{"state":"PASS","setup":"","stop":11.0982,"target":11.44,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":24.9,"room_to_5d_high_atr":1.23},"price":11.315,"vwap":11.3194,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":1.682,"trend":"flat","recent_slope_pct":-0.2083,"volatility":"high"},"price":11.315,"volume":{"bars":20,"last_bar_volume":231203.0,"baseline_avg":232437.789474,"bar_rvol":0.994688,"raw_accel":0.603995,"smooth_accel":-0.251561,"accel_momentum":-0.3515,"rvol_3bar":[0.681664,0.607315,0.994688],"trend_3bar":"MIXED","projected_rvol":0.581287},"flow":{"window_s":30,"trades":236,"trade_rate":7.866667,"buy_vol":20338.0,"sell_vol":33232.0,"unclassified_vol":0.0,"imbalance":-0.240694,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.160859},"context":{"vwap":11.318995,"price_vs_vwap_pct":-0.035294,"ema9":11.375039,"ema20":11.336683,"ema_stack":false,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":1.410754,"atr":0.10987,"spread_atr":0.091016,"own_change_pct":0.087951,"rel_strength_pct":{"SPY":0.166903,"IWM":0.262813}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.239416},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"26e4b263f7fd","ts":"2026-09-15T13:50:40+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7717,"target":7.93,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8841,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":4.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":-0.0823,"volatility":"medium"},"price":7.89,"volume":{"bars":20,"last_bar_volume":6289.0,"baseline_avg":10088.315789,"bar_rvol":0.623394,"raw_accel":0.117448,"smooth_accel":-0.033871,"accel_momentum":-0.124426,"rvol_3bar":[1.266426,0.544499,0.623394],"trend_3bar":"MIXED","projected_rvol":0.673849},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":3925.0,"sell_vol":607.0,"unclassified_vol":0.0,"imbalance":0.732127,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.097616},"context":{"vwap":7.883913,"price_vs_vwap_pct":0.077213,"ema9":7.894221,"ema20":7.888515,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":1.011348,"atr":0.039551,"spread_atr":0.252837,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.237103,"IWM":-0.141194}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.456404},"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":"fdbf84fee517","ts":"2026-09-15T13:50:40+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 395.0s, plan says WATCH; stop 5.66, target 5.83 (prev_day_high), R:R 0.67; R:R 0.67 < 2.0 at 5.76; breakout: 1-min close > 5.80 on >= 11418 sh","plan":{"state":"WATCH","setup":"","stop":5.6641,"target":5.83,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":87.7,"room_to_5d_high_atr":0.17},"price":5.7637,"vwap":5.7503,"ext_from_open_pct":1.12,"max_ext_allowed_pct":4.0,"volume_pace":1.102,"trend":"flat","recent_slope_pct":-0.0045,"volatility":"high"},"price":5.7637,"volume":{"bars":20,"last_bar_volume":671.0,"baseline_avg":7977.421053,"bar_rvol":0.084112,"raw_accel":-0.833952,"smooth_accel":-0.675296,"accel_momentum":-1.261841,"rvol_3bar":[0.202305,0.493039,0.084112],"trend_3bar":"MIXED","projected_rvol":1.118219},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":1119.0,"sell_vol":4110.0,"unclassified_vol":0.0,"imbalance":-0.572002,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":3.12328},"context":{"vwap":5.749669,"price_vs_vwap_pct":0.244026,"ema9":5.770466,"ema20":5.764408,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.454231,"dist_to_hod_atr":0.83806,"atr":0.031382,"spread_atr":0.318654,"own_change_pct":-0.233221,"rel_strength_pct":{"SPY":-0.154268,"IWM":-0.058359}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.048112},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"11506bc4a6a2","ts":"2026-09-15T13:50:40+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1032,"target":11.44,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":25.3,"room_to_5d_high_atr":1.23},"price":11.32,"vwap":11.3195,"ext_from_open_pct":0.53,"max_ext_allowed_pct":3.0,"volume_pace":1.679,"trend":"flat","recent_slope_pct":-0.1995,"volatility":"high"},"price":11.32,"volume":{"bars":20,"last_bar_volume":231203.0,"baseline_avg":232437.789474,"bar_rvol":0.994688,"raw_accel":0.603995,"smooth_accel":-0.251561,"accel_momentum":-0.3515,"rvol_3bar":[0.681664,0.607315,0.994688],"trend_3bar":"MIXED","projected_rvol":0.580833},"flow":{"window_s":30,"trades":252,"trade_rate":8.4,"buy_vol":21126.0,"sell_vol":41055.0,"unclassified_vol":0.0,"imbalance":-0.3205,"bid":11.31,"ask":11.33,"spread_pct":0.176678,"quote_size_imbalance":null,"quote_age_s":0.002336},"context":{"vwap":11.318995,"price_vs_vwap_pct":0.008879,"ema9":11.375039,"ema20":11.336683,"ema_stack":false,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-1.307759,"dist_to_hod_atr":1.365246,"atr":0.10987,"spread_atr":0.182033,"own_change_pct":0.087951,"rel_strength_pct":{"SPY":0.166903,"IWM":0.262813}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.318797},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5bf0c2a7e100","ts":"2026-09-15T13:50:45+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.015,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":2.53},"price":9.965,"vwap":9.9535,"ext_from_open_pct":1.37,"max_ext_allowed_pct":3.0,"volume_pace":1.64,"trend":"flat","recent_slope_pct":-0.1312,"volatility":"medium"},"price":9.965,"volume":{"bars":20,"last_bar_volume":484742.0,"baseline_avg":545418.736842,"bar_rvol":0.888752,"raw_accel":0.224325,"smooth_accel":1.245286,"accel_momentum":-0.262794,"rvol_3bar":[3.149477,0.715024,0.888752],"trend_3bar":"MIXED","projected_rvol":0.295653},"flow":{"window_s":30,"trades":164,"trade_rate":5.466667,"buy_vol":57472.0,"sell_vol":33223.0,"unclassified_vol":0.0,"imbalance":0.267369,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.224554},"context":{"vwap":9.953333,"price_vs_vwap_pct":0.117213,"ema9":9.988172,"ema20":9.967771,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.845771,"dist_to_hod_atr":1.529721,"atr":0.055566,"spread_atr":0.179967,"own_change_pct":-0.3,"rel_strength_pct":{"SPY":-0.221047,"IWM":-0.125138}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.237624},"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":"e5fb6621920f","ts":"2026-09-15T13:50:45+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 400.0s, plan says PASS; stop 5.66, target 5.83 (prev_day_high), R:R 0.72; R:R 0.72 < 2.0 at 5.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.83,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7502,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":1.098,"trend":"flat","recent_slope_pct":-0.0225,"volatility":"high"},"price":5.7585,"volume":{"bars":20,"last_bar_volume":671.0,"baseline_avg":7977.421053,"bar_rvol":0.084112,"raw_accel":-0.833952,"smooth_accel":-0.675296,"accel_momentum":-1.261841,"rvol_3bar":[0.202305,0.493039,0.084112],"trend_3bar":"MIXED","projected_rvol":0.995978},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":648.0,"sell_vol":160.0,"unclassified_vol":0.0,"imbalance":0.60396,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":8.12328},"context":{"vwap":5.749669,"price_vs_vwap_pct":0.153586,"ema9":5.770466,"ema20":5.764408,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":1.00376,"atr":0.031382,"spread_atr":0.318654,"own_change_pct":-0.233221,"rel_strength_pct":{"SPY":-0.154268,"IWM":-0.058359}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.050801},"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":"745f111b5db2","ts":"2026-09-15T13:50:45+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.67,"target":7.81,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":55.7,"room_to_5d_high_atr":0.69},"price":7.7635,"vwap":7.736,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":-0.0918,"volatility":"medium"},"price":7.7635,"volume":{"bars":20,"last_bar_volume":9032.0,"baseline_avg":22187.473684,"bar_rvol":0.407077,"raw_accel":-0.461933,"smooth_accel":-0.468772,"accel_momentum":-0.277774,"rvol_3bar":[0.82189,0.746457,0.407077],"trend_3bar":"DECELERATING","projected_rvol":1.294664},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2834.0,"sell_vol":5554.0,"unclassified_vol":0.0,"imbalance":-0.324273,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":2.547681},"context":{"vwap":7.744527,"price_vs_vwap_pct":0.244989,"ema9":7.769997,"ema20":7.754808,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.595391,"dist_to_hod_atr":0.731124,"atr":0.063601,"spread_atr":0.157231,"own_change_pct":-0.36352,"rel_strength_pct":{"SPY":-0.284567,"IWM":-0.188658}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.132004},"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":"4cad662d7b3e","ts":"2026-09-15T13:50:45+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.31 below VWAP $11.32","plan":{"state":"PASS","setup":"","stop":11.0982,"target":11.44,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":24.9,"room_to_5d_high_atr":1.23},"price":11.315,"vwap":11.3195,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":1.673,"trend":"flat","recent_slope_pct":-0.2083,"volatility":"high"},"price":11.315,"volume":{"bars":20,"last_bar_volume":231203.0,"baseline_avg":232437.789474,"bar_rvol":0.994688,"raw_accel":0.603995,"smooth_accel":-0.251561,"accel_momentum":-0.3515,"rvol_3bar":[0.681664,0.607315,0.994688],"trend_3bar":"MIXED","projected_rvol":0.537583},"flow":{"window_s":30,"trades":258,"trade_rate":8.6,"buy_vol":22410.0,"sell_vol":39247.0,"unclassified_vol":0.0,"imbalance":-0.273075,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.975831},"context":{"vwap":11.318995,"price_vs_vwap_pct":-0.035294,"ema9":11.375039,"ema20":11.336683,"ema_stack":false,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":1.410754,"atr":0.10987,"spread_atr":0.091016,"own_change_pct":0.087951,"rel_strength_pct":{"SPY":0.166903,"IWM":0.262813}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.271625},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2ecdf1abfe09","ts":"2026-09-15T13:50:50+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.83,"target_label":"prev_day_high","reward_risk":0.8,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7501,"ext_from_open_pct":0.88,"max_ext_allowed_pct":4.0,"volume_pace":1.093,"trend":"flat","recent_slope_pct":-0.052,"volatility":"high"},"price":5.75,"volume":{"bars":20,"last_bar_volume":671.0,"baseline_avg":7977.421053,"bar_rvol":0.084112,"raw_accel":-0.833952,"smooth_accel":-0.675296,"accel_momentum":-1.261841,"rvol_3bar":[0.202305,0.493039,0.084112],"trend_3bar":"MIXED","projected_rvol":0.901043},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":369.0,"sell_vol":50.0,"unclassified_vol":0.0,"imbalance":0.761337,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":13.12328},"context":{"vwap":5.749669,"price_vs_vwap_pct":0.005752,"ema9":5.770466,"ema20":5.764408,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.274616,"atr":0.031382,"spread_atr":0.318654,"own_change_pct":-0.233221,"rel_strength_pct":{"SPY":-0.154268,"IWM":-0.058359}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.064038},"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":"4c5b364d89df","ts":"2026-09-15T13:50:50+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":56.4,"room_to_5d_high_atr":0.68},"price":7.7676,"vwap":7.7359,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":-0.0812,"volatility":"medium"},"price":7.7676,"volume":{"bars":20,"last_bar_volume":9032.0,"baseline_avg":22187.473684,"bar_rvol":0.407077,"raw_accel":-0.461933,"smooth_accel":-0.468772,"accel_momentum":-0.277774,"rvol_3bar":[0.82189,0.746457,0.407077],"trend_3bar":"DECELERATING","projected_rvol":1.193646},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":3360.0,"sell_vol":4754.0,"unclassified_vol":0.0,"imbalance":-0.171802,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.857626},"context":{"vwap":7.744527,"price_vs_vwap_pct":0.297929,"ema9":7.769997,"ema20":7.754808,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.542894,"dist_to_hod_atr":0.666659,"atr":0.063601,"spread_atr":0.157231,"own_change_pct":-0.36352,"rel_strength_pct":{"SPY":-0.284567,"IWM":-0.188658}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.069936},"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":"e53327c69d99","ts":"2026-09-15T13:50:50+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.0527,"target":10.13,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":4.17},"price":10.0986,"vwap":10.0919,"ext_from_open_pct":0.09,"max_ext_allowed_pct":4.0,"volume_pace":1.253,"trend":"flat","recent_slope_pct":0.0105,"volatility":"low"},"price":10.0986,"volume":{"bars":20,"last_bar_volume":13132.0,"baseline_avg":92028.947368,"bar_rvol":0.142694,"raw_accel":-0.429223,"smooth_accel":-0.41201,"accel_momentum":-0.136147,"rvol_3bar":[0.519106,0.198465,0.142694],"trend_3bar":"DECELERATING","projected_rvol":0.70899},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":31784.0,"sell_vol":11706.0,"unclassified_vol":0.0,"imbalance":0.461669,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":5.988288},"context":{"vwap":10.091948,"price_vs_vwap_pct":0.065912,"ema9":10.084015,"ema20":10.088716,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.211462,"dist_to_hod_atr":0.691065,"atr":0.030967,"spread_atr":0.322927,"own_change_pct":-0.33239,"rel_strength_pct":{"SPY":-0.253438,"IWM":-0.157528}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.065878},"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":"e48c8e9796e1","ts":"2026-09-15T13:50:55+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7808,"target":8.0,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":21.8,"room_to_5d_high_atr":2.64},"price":7.8991,"vwap":7.8843,"ext_from_open_pct":-0.01,"max_ext_allowed_pct":4.0,"volume_pace":0.93,"trend":"flat","recent_slope_pct":-0.0593,"volatility":"medium"},"price":7.8991,"volume":{"bars":20,"last_bar_volume":6289.0,"baseline_avg":10088.315789,"bar_rvol":0.623394,"raw_accel":0.117448,"smooth_accel":-0.033871,"accel_momentum":-0.124426,"rvol_3bar":[1.266426,0.544499,0.623394],"trend_3bar":"MIXED","projected_rvol":0.832322},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":5766.0,"sell_vol":359.0,"unclassified_vol":0.0,"imbalance":0.882776,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.510355},"context":{"vwap":7.883913,"price_vs_vwap_pct":0.192638,"ema9":7.894221,"ema20":7.888515,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.38966,"dist_to_hod_atr":0.781266,"atr":0.039551,"spread_atr":0.252837,"own_change_pct":-0.316056,"rel_strength_pct":{"SPY":-0.237103,"IWM":-0.141194}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.550317},"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":"cf6862f452ee","ts":"2026-09-15T13:50:55+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.83,"target_label":"prev_day_high","reward_risk":0.75,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7501,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.089,"trend":"flat","recent_slope_pct":-0.0347,"volatility":"high"},"price":5.755,"volume":{"bars":20,"last_bar_volume":671.0,"baseline_avg":7977.421053,"bar_rvol":0.084112,"raw_accel":-0.833952,"smooth_accel":-0.675296,"accel_momentum":-1.261841,"rvol_3bar":[0.202305,0.493039,0.084112],"trend_3bar":"MIXED","projected_rvol":0.819267},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":370.0,"sell_vol":48.0,"unclassified_vol":0.0,"imbalance":0.770335,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":1.30919},"context":{"vwap":5.749669,"price_vs_vwap_pct":0.092713,"ema9":5.770466,"ema20":5.764408,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":1.115289,"atr":0.031382,"spread_atr":0.318654,"own_change_pct":-0.233221,"rel_strength_pct":{"SPY":-0.154268,"IWM":-0.058359}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.064795},"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":"dd399dde2597","ts":"2026-09-15T13:50:55+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.67,"target":7.81,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7354,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":-0.0879,"volatility":"medium"},"price":7.765,"volume":{"bars":20,"last_bar_volume":9032.0,"baseline_avg":22187.473684,"bar_rvol":0.407077,"raw_accel":-0.461933,"smooth_accel":-0.468772,"accel_momentum":-0.277774,"rvol_3bar":[0.82189,0.746457,0.407077],"trend_3bar":"DECELERATING","projected_rvol":1.140889},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2554.0,"sell_vol":5747.0,"unclassified_vol":0.0,"imbalance":-0.384652,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.368861},"context":{"vwap":7.744527,"price_vs_vwap_pct":0.264357,"ema9":7.769997,"ema20":7.754808,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.70754,"atr":0.063601,"spread_atr":0.157231,"own_change_pct":-0.36352,"rel_strength_pct":{"SPY":-0.284567,"IWM":-0.188658}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.156583},"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":"705431312933","ts":"2026-09-15T13:50:55+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1804,"target":11.44,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":30.7,"room_to_5d_high_atr":1.14},"price":11.3972,"vwap":11.3204,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":1.676,"trend":"flat","recent_slope_pct":-0.0638,"volatility":"high"},"price":11.3972,"volume":{"bars":20,"last_bar_volume":231203.0,"baseline_avg":232437.789474,"bar_rvol":0.994688,"raw_accel":0.603995,"smooth_accel":-0.251561,"accel_momentum":-0.3515,"rvol_3bar":[0.681664,0.607315,0.994688],"trend_3bar":"MIXED","projected_rvol":0.647812},"flow":{"window_s":30,"trades":249,"trade_rate":8.3,"buy_vol":22317.0,"sell_vol":62392.0,"unclassified_vol":0.0,"imbalance":-0.47309,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.249976},"context":{"vwap":11.318995,"price_vs_vwap_pct":0.690919,"ema9":11.375039,"ema20":11.336683,"ema_stack":true,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-0.634699,"dist_to_hod_atr":0.662599,"atr":0.10987,"spread_atr":0.091016,"own_change_pct":0.087951,"rel_strength_pct":{"SPY":0.166903,"IWM":0.262813}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.470577},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c1290509811f","ts":"2026-09-15T13:51:00+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.6604,"target":5.83,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.18},"price":5.76,"vwap":5.7502,"ext_from_open_pct":1.05,"max_ext_allowed_pct":3.0,"volume_pace":1.085,"trend":"flat","recent_slope_pct":-0.0173,"volatility":"high"},"price":5.76,"volume":{"bars":20,"last_bar_volume":671.0,"baseline_avg":7977.421053,"bar_rvol":0.084112,"raw_accel":-0.833952,"smooth_accel":-0.675296,"accel_momentum":-1.261841,"rvol_3bar":[0.202305,0.493039,0.084112],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":376.0,"sell_vol":43.0,"unclassified_vol":0.0,"imbalance":0.794749,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.006333},"context":{"vwap":5.749669,"price_vs_vwap_pct":0.179675,"ema9":5.770466,"ema20":5.764408,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.518135,"dist_to_hod_atr":0.955962,"atr":0.031382,"spread_atr":0.318654,"own_change_pct":-0.233221,"rel_strength_pct":{"SPY":-0.16694,"IWM":-0.100247}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.066848},"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":"63f39cd0a208","ts":"2026-09-15T13:51:00+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":56.5,"room_to_5d_high_atr":0.67},"price":7.7681,"vwap":7.7355,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.889,"trend":"flat","recent_slope_pct":-0.0799,"volatility":"medium"},"price":7.7681,"volume":{"bars":20,"last_bar_volume":9032.0,"baseline_avg":22187.473684,"bar_rvol":0.407077,"raw_accel":-0.461933,"smooth_accel":-0.468772,"accel_momentum":-0.277774,"rvol_3bar":[0.82189,0.746457,0.407077],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2556.0,"sell_vol":5547.0,"unclassified_vol":0.0,"imbalance":-0.369123,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.005439},"context":{"vwap":7.744527,"price_vs_vwap_pct":0.304385,"ema9":7.769997,"ema20":7.754808,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.536492,"dist_to_hod_atr":0.658798,"atr":0.063601,"spread_atr":0.157231,"own_change_pct":-0.36352,"rel_strength_pct":{"SPY":-0.297238,"IWM":-0.230546}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.150261},"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":"ca4607fc8866","ts":"2026-09-15T13:51:00+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.30 below VWAP $11.32","plan":{"state":"PASS","setup":"","stop":11.0832,"target":11.44,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":23.9,"room_to_5d_high_atr":1.25},"price":11.3,"vwap":11.3197,"ext_from_open_pct":0.36,"max_ext_allowed_pct":3.0,"volume_pace":1.69,"trend":"flat","recent_slope_pct":-0.2348,"volatility":"high"},"price":11.3,"volume":{"bars":20,"last_bar_volume":231203.0,"baseline_avg":232437.789474,"bar_rvol":0.994688,"raw_accel":0.603995,"smooth_accel":-0.251561,"accel_momentum":-0.3515,"rvol_3bar":[0.681664,0.607315,0.994688],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":224,"trade_rate":7.466667,"buy_vol":21450.0,"sell_vol":107059.0,"unclassified_vol":0.0,"imbalance":-0.666171,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.001225},"context":{"vwap":11.318995,"price_vs_vwap_pct":-0.167815,"ema9":11.375039,"ema20":11.336683,"ema_stack":false,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-1.482127,"dist_to_hod_atr":1.547278,"atr":0.10987,"spread_atr":0.091016,"own_change_pct":0.087951,"rel_strength_pct":{"SPY":0.154232,"IWM":0.220925}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.662632},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cbe74e3306df","ts":"2026-09-15T13:51:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8489,"target":10.015,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.52},"price":9.9681,"vwap":9.9536,"ext_from_open_pct":1.4,"max_ext_allowed_pct":4.0,"volume_pace":1.626,"trend":"flat","recent_slope_pct":0.0017,"volatility":"medium"},"price":9.9681,"volume":{"bars":21,"last_bar_volume":188105.0,"baseline_avg":542384.9,"bar_rvol":0.346811,"raw_accel":-0.611948,"smooth_accel":-0.538829,"accel_momentum":-1.784114,"rvol_3bar":[0.715024,0.888752,0.346811],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":60342.0,"sell_vol":52142.0,"unclassified_vol":0.0,"imbalance":0.072899,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.959311},"context":{"vwap":9.953617,"price_vs_vwap_pct":0.1455,"ema9":9.983538,"ema20":9.967507,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.814925,"dist_to_hod_atr":1.494225,"atr":0.054811,"spread_atr":0.182445,"own_change_pct":-0.570733,"rel_strength_pct":{"SPY":-0.504452,"IWM":-0.437759}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.025282},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cd5758e5b860","ts":"2026-09-15T13:51:05+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.30","plan":{"state":"PASS","setup":"","stop":8.1999,"target":8.35,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.33},"price":8.29,"vwap":8.2961,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":1.352,"trend":"flat","recent_slope_pct":-0.0966,"volatility":"medium"},"price":8.29,"volume":{"bars":21,"last_bar_volume":1182.0,"baseline_avg":2113.95,"bar_rvol":0.559143,"raw_accel":1.236571,"smooth_accel":-0.142726,"accel_momentum":0.608172,"rvol_3bar":[0.243214,0.055889,0.559143],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":497.0,"sell_vol":567.0,"unclassified_vol":0.0,"imbalance":-0.065789,"bid":8.28,"ask":8.3,"spread_pct":0.241255,"quote_size_imbalance":null,"quote_age_s":0.544722},"context":{"vwap":8.296218,"price_vs_vwap_pct":-0.074956,"ema9":8.29709,"ema20":8.298468,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.470588,"dist_to_hod_atr":3.148628,"atr":0.066696,"spread_atr":0.299869,"own_change_pct":-0.240385,"rel_strength_pct":{"SPY":-0.174103,"IWM":-0.107411}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.036786},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aaa6fb7596a7","ts":"2026-09-15T13:51:05+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.83,"target_label":"prev_day_high","reward_risk":0.8,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7502,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":1.082,"trend":"flat","recent_slope_pct":-0.0781,"volatility":"high"},"price":5.75,"volume":{"bars":21,"last_bar_volume":5997.0,"baseline_avg":7612.1,"bar_rvol":0.787825,"raw_accel":2.151299,"smooth_accel":-0.467002,"accel_momentum":0.208294,"rvol_3bar":[0.493039,0.084112,0.787825],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":376.0,"sell_vol":225.0,"unclassified_vol":0.0,"imbalance":0.251248,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":5.006333},"context":{"vwap":5.750187,"price_vs_vwap_pct":-0.003255,"ema9":5.768373,"ema20":5.763988,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.278638,"atr":0.031283,"spread_atr":0.31966,"own_change_pct":0.086881,"rel_strength_pct":{"SPY":0.153162,"IWM":0.219855}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.197939},"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":"8d6757a48d6a","ts":"2026-09-15T13:51:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.67,"target":7.81,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":55.1,"room_to_5d_high_atr":0.7},"price":7.7602,"vwap":7.7355,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.886,"trend":"flat","recent_slope_pct":-0.0792,"volatility":"medium"},"price":7.7602,"volume":{"bars":21,"last_bar_volume":23206.0,"baseline_avg":21529.7,"bar_rvol":1.07786,"raw_accel":1.569309,"smooth_accel":-0.296572,"accel_momentum":0.1722,"rvol_3bar":[0.746457,0.407077,1.07786],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2457.0,"sell_vol":5449.0,"unclassified_vol":0.0,"imbalance":-0.378447,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":1.381333},"context":{"vwap":7.735498,"price_vs_vwap_pct":0.319333,"ema9":7.769618,"ema20":7.756074,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.637644,"dist_to_hod_atr":0.476682,"atr":0.104472,"spread_atr":0.095719,"own_change_pct":-0.451091,"rel_strength_pct":{"SPY":-0.38481,"IWM":-0.318117}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.407913},"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":"490ea1b8602a","ts":"2026-09-15T13:51:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.83,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7502,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":1.082,"trend":"flat","recent_slope_pct":-0.0486,"volatility":"high"},"price":5.7585,"volume":{"bars":21,"last_bar_volume":5997.0,"baseline_avg":7612.1,"bar_rvol":0.787825,"raw_accel":2.151299,"smooth_accel":-0.467002,"accel_momentum":0.208294,"rvol_3bar":[0.493039,0.084112,0.787825],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":725.0,"sell_vol":225.0,"unclassified_vol":0.0,"imbalance":0.526316,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":10.006333},"context":{"vwap":5.750187,"price_vs_vwap_pct":0.144567,"ema9":5.768373,"ema20":5.763988,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":1.006927,"atr":0.031283,"spread_atr":0.31966,"own_change_pct":0.086881,"rel_strength_pct":{"SPY":0.153162,"IWM":0.219855}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.414645},"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":"bb1984f8c240","ts":"2026-09-15T13:51:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":58.4,"room_to_5d_high_atr":0.64},"price":7.7783,"vwap":7.7355,"ext_from_open_pct":1.02,"max_ext_allowed_pct":4.0,"volume_pace":0.882,"trend":"flat","recent_slope_pct":-0.0326,"volatility":"medium"},"price":7.7783,"volume":{"bars":21,"last_bar_volume":23206.0,"baseline_avg":21529.7,"bar_rvol":1.07786,"raw_accel":1.569309,"smooth_accel":-0.296572,"accel_momentum":0.1722,"rvol_3bar":[0.746457,0.407077,1.07786],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2259.0,"sell_vol":5449.0,"unclassified_vol":0.0,"imbalance":-0.413856,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.506453},"context":{"vwap":7.735498,"price_vs_vwap_pct":0.553319,"ema9":7.769618,"ema20":7.756074,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.40589,"dist_to_hod_atr":0.30343,"atr":0.104472,"spread_atr":0.095719,"own_change_pct":-0.451091,"rel_strength_pct":{"SPY":-0.38481,"IWM":-0.318117}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.446078},"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":"e3302db79ad8","ts":"2026-09-15T13:51:10+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.09 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0919,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.235,"trend":"flat","recent_slope_pct":0.0581,"volatility":"low"},"price":10.09,"volume":{"bars":21,"last_bar_volume":56190.0,"baseline_avg":88084.1,"bar_rvol":0.637913,"raw_accel":1.551652,"smooth_accel":-0.424005,"accel_momentum":-0.011996,"rvol_3bar":[0.198465,0.142694,0.637913],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":10247.0,"sell_vol":2661.0,"unclassified_vol":0.0,"imbalance":0.587698,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.947977},"context":{"vwap":10.091874,"price_vs_vwap_pct":-0.018565,"ema9":10.086932,"ema20":10.089657,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.296443,"dist_to_hod_atr":0.970947,"atr":0.030898,"spread_atr":0.323649,"own_change_pct":-0.013861,"rel_strength_pct":{"SPY":0.05242,"IWM":0.119113}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.3749},"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":"33f771a2ffb4","ts":"2026-09-15T13:51:15+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.87 below VWAP $7.88","plan":{"state":"PASS","setup":"","stop":7.7517,"target":7.93,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":20.0,"room_to_5d_high_atr":2.71},"price":7.87,"vwap":7.8839,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.976,"trend":"flat","recent_slope_pct":-0.0582,"volatility":"high"},"price":7.87,"volume":{"bars":21,"last_bar_volume":7697.0,"baseline_avg":9898.35,"bar_rvol":0.777604,"raw_accel":0.223883,"smooth_accel":-0.40077,"accel_momentum":-0.366899,"rvol_3bar":[0.544499,0.623394,0.777604],"trend_3bar":"ACCELERATING","projected_rvol":5.501927},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":5842.0,"sell_vol":10938.0,"unclassified_vol":0.0,"imbalance":-0.303695,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.847693},"context":{"vwap":7.884316,"price_vs_vwap_pct":-0.18158,"ema9":7.895197,"ema20":7.889523,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.75662,"dist_to_hod_atr":1.587406,"atr":0.037798,"spread_atr":0.264568,"own_change_pct":-0.200884,"rel_strength_pct":{"SPY":-0.134603,"IWM":-0.06791}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.236154},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"667890325c24","ts":"2026-09-15T13:51:15+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.83,"target_label":"prev_day_high","reward_risk":0.8,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7502,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":1.079,"trend":"flat","recent_slope_pct":-0.0781,"volatility":"high"},"price":5.75,"volume":{"bars":21,"last_bar_volume":5997.0,"baseline_avg":7612.1,"bar_rvol":0.787825,"raw_accel":2.151299,"smooth_accel":-0.467002,"accel_momentum":0.208294,"rvol_3bar":[0.493039,0.084112,0.787825],"trend_3bar":"MIXED","projected_rvol":0.509189},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":725.0,"sell_vol":282.0,"unclassified_vol":0.0,"imbalance":0.439921,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":3.175382},"context":{"vwap":5.750187,"price_vs_vwap_pct":-0.003255,"ema9":5.768373,"ema20":5.763988,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.278638,"atr":0.031283,"spread_atr":0.31966,"own_change_pct":0.086881,"rel_strength_pct":{"SPY":0.153162,"IWM":0.219855}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.34658},"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":"c91a0e98839b","ts":"2026-09-15T13:51:15+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.67,"target":7.81,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":55.4,"room_to_5d_high_atr":0.69},"price":7.7619,"vwap":7.7355,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":0.879,"trend":"flat","recent_slope_pct":-0.0748,"volatility":"medium"},"price":7.7619,"volume":{"bars":21,"last_bar_volume":23206.0,"baseline_avg":21529.7,"bar_rvol":1.07786,"raw_accel":1.569309,"smooth_accel":-0.296572,"accel_momentum":0.1722,"rvol_3bar":[0.746457,0.407077,1.07786],"trend_3bar":"MIXED","projected_rvol":0.002044},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":545.0,"sell_vol":1128.0,"unclassified_vol":0.0,"imbalance":-0.348476,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":5.506453},"context":{"vwap":7.735498,"price_vs_vwap_pct":0.341309,"ema9":7.769618,"ema20":7.756074,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.615877,"dist_to_hod_atr":0.46041,"atr":0.104472,"spread_atr":0.095719,"own_change_pct":-0.451091,"rel_strength_pct":{"SPY":-0.38481,"IWM":-0.318117}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.375608},"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":"c6749ea7df4d","ts":"2026-09-15T13:51:20+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.83,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7502,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":1.076,"trend":"flat","recent_slope_pct":-0.0486,"volatility":"high"},"price":5.7585,"volume":{"bars":21,"last_bar_volume":5997.0,"baseline_avg":7612.1,"bar_rvol":0.787825,"raw_accel":2.151299,"smooth_accel":-0.467002,"accel_momentum":0.208294,"rvol_3bar":[0.493039,0.084112,0.787825],"trend_3bar":"MIXED","projected_rvol":0.508401},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1038.0,"sell_vol":259.0,"unclassified_vol":0.0,"imbalance":0.600617,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.219425},"context":{"vwap":5.750187,"price_vs_vwap_pct":0.144567,"ema9":5.768373,"ema20":5.763988,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":1.006927,"atr":0.031283,"spread_atr":0.31966,"own_change_pct":0.086881,"rel_strength_pct":{"SPY":0.153162,"IWM":0.219855}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.473181},"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":"4cff24bb790c","ts":"2026-09-15T13:51:20+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":1.44,"pos_in_5d_range_pct":79.1,"room_to_5d_high_atr":0.66},"price":13.1895,"vwap":12.8491,"ext_from_open_pct":1.61,"max_ext_allowed_pct":4.0,"volume_pace":3.183,"trend":"flat","recent_slope_pct":-0.0189,"volatility":"medium"},"price":13.1895,"volume":{"bars":21,"last_bar_volume":2069.0,"baseline_avg":8712.85,"bar_rvol":0.237465,"raw_accel":-0.050139,"smooth_accel":-0.23072,"accel_momentum":-9.955916,"rvol_3bar":[0.427938,0.116394,0.237465],"trend_3bar":"MIXED","projected_rvol":0.04545},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":227.0,"sell_vol":374.0,"unclassified_vol":0.0,"imbalance":-0.244592,"bid":13.17,"ask":13.23,"spread_pct":0.454545,"quote_size_imbalance":null,"quote_age_s":3.795341},"context":{"vwap":12.848799,"price_vs_vwap_pct":2.651615,"ema9":13.129976,"ema20":13.011855,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-0.90459,"dist_to_hod_atr":0.634214,"atr":0.189841,"spread_atr":0.316054,"own_change_pct":1.278878,"rel_strength_pct":{"SPY":1.34516,"IWM":1.411852}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.058082},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1592300b3dc1","ts":"2026-09-15T13:51:25+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.2038,"target":5.296,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":12.5,"room_to_5d_high_atr":1.91},"price":5.245,"vwap":5.245,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.981,"trend":"flat","recent_slope_pct":0.0764,"volatility":"medium"},"price":5.245,"volume":{"bars":21,"last_bar_volume":105933.0,"baseline_avg":47048.05,"bar_rvol":2.251592,"raw_accel":2.632445,"smooth_accel":1.819928,"accel_momentum":0.49227,"rvol_3bar":[2.087688,0.607697,2.251592],"trend_3bar":"MIXED","projected_rvol":1.326355},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":8595.0,"sell_vol":21323.0,"unclassified_vol":0.0,"imbalance":-0.42543,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.559491},"context":{"vwap":5.244963,"price_vs_vwap_pct":0.000699,"ema9":5.238011,"ema20":5.240451,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.474383,"dist_to_hod_atr":1.615533,"atr":0.015475,"spread_atr":0.646213,"own_change_pct":0.191022,"rel_strength_pct":{"SPY":0.257303,"IWM":0.323996}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.957894},"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":"4dda14f7ec01","ts":"2026-09-15T13:51:25+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":58.3,"room_to_5d_high_atr":0.65},"price":7.778,"vwap":7.7356,"ext_from_open_pct":1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.874,"trend":"flat","recent_slope_pct":-0.0333,"volatility":"medium"},"price":7.778,"volume":{"bars":21,"last_bar_volume":23206.0,"baseline_avg":21529.7,"bar_rvol":1.07786,"raw_accel":1.569309,"smooth_accel":-0.296572,"accel_momentum":0.1722,"rvol_3bar":[0.746457,0.407077,1.07786],"trend_3bar":"MIXED","projected_rvol":0.101776},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":714.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":0.560656,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":1.402841},"context":{"vwap":7.735498,"price_vs_vwap_pct":0.549441,"ema9":7.769618,"ema20":7.756074,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.409731,"dist_to_hod_atr":0.306302,"atr":0.104472,"spread_atr":0.095719,"own_change_pct":-0.451091,"rel_strength_pct":{"SPY":-0.38481,"IWM":-0.318117}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.604308},"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":"53807351dc0a","ts":"2026-09-15T13:51:25+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.0541,"target":10.13,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.0919,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":1.226,"trend":"flat","recent_slope_pct":0.0779,"volatility":"low"},"price":10.1,"volume":{"bars":21,"last_bar_volume":56190.0,"baseline_avg":88084.1,"bar_rvol":0.637913,"raw_accel":1.551652,"smooth_accel":-0.424005,"accel_momentum":-0.011996,"rvol_3bar":[0.198465,0.142694,0.637913],"trend_3bar":"MIXED","projected_rvol":0.237945},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":4942.0,"sell_vol":5506.0,"unclassified_vol":0.0,"imbalance":-0.053982,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.9019},"context":{"vwap":10.091874,"price_vs_vwap_pct":0.080525,"ema9":10.086932,"ema20":10.089657,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.197628,"dist_to_hod_atr":0.647298,"atr":0.030898,"spread_atr":0.323649,"own_change_pct":-0.013861,"rel_strength_pct":{"SPY":0.05242,"IWM":0.119113}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.034436},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08cd6d1cce37","ts":"2026-09-15T13:51:30+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1988,"target":5.296,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.94},"price":5.24,"vwap":5.2449,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.982,"trend":"flat","recent_slope_pct":0.0573,"volatility":"medium"},"price":5.24,"volume":{"bars":21,"last_bar_volume":105933.0,"baseline_avg":47048.05,"bar_rvol":2.251592,"raw_accel":2.632445,"smooth_accel":1.819928,"accel_momentum":0.49227,"rvol_3bar":[2.087688,0.607697,2.251592],"trend_3bar":"MIXED","projected_rvol":1.321883},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":6792.0,"sell_vol":24304.0,"unclassified_vol":0.0,"imbalance":-0.563159,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.004535},"context":{"vwap":5.244963,"price_vs_vwap_pct":-0.09463,"ema9":5.238011,"ema20":5.240451,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.56926,"dist_to_hod_atr":1.93864,"atr":0.015475,"spread_atr":0.646213,"own_change_pct":0.191022,"rel_strength_pct":{"SPY":0.257303,"IWM":0.323996}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.268005},"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":"c5a5a76088ff","ts":"2026-09-15T13:51:30+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.8017,"target":8.0,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":2.6},"price":7.92,"vwap":7.888,"ext_from_open_pct":0.25,"max_ext_allowed_pct":3.0,"volume_pace":1.125,"trend":"flat","recent_slope_pct":0.0685,"volatility":"medium"},"price":7.92,"volume":{"bars":21,"last_bar_volume":7697.0,"baseline_avg":9898.35,"bar_rvol":0.777604,"raw_accel":0.223883,"smooth_accel":-0.40077,"accel_momentum":-0.366899,"rvol_3bar":[0.544499,0.623394,0.777604],"trend_3bar":"ACCELERATING","projected_rvol":10.098653},"flow":{"window_s":30,"trades":243,"trade_rate":8.1,"buy_vol":36466.0,"sell_vol":13514.0,"unclassified_vol":0.0,"imbalance":0.459224,"bid":7.92,"ask":7.93,"spread_pct":0.126183,"quote_size_imbalance":null,"quote_age_s":0.005221},"context":{"vwap":7.884316,"price_vs_vwap_pct":0.45259,"ema9":7.895197,"ema20":7.889523,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.126103,"dist_to_hod_atr":0.264568,"atr":0.037798,"spread_atr":0.264568,"own_change_pct":-0.200884,"rel_strength_pct":{"SPY":-0.134603,"IWM":-0.06791}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.357094},"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":"31e6b5953813","ts":"2026-09-15T13:51:30+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.09 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0394,"target":10.13,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":4.25},"price":10.0853,"vwap":10.0919,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":1.221,"trend":"flat","recent_slope_pct":0.0488,"volatility":"low"},"price":10.0853,"volume":{"bars":21,"last_bar_volume":56190.0,"baseline_avg":88084.1,"bar_rvol":0.637913,"raw_accel":1.551652,"smooth_accel":-0.424005,"accel_momentum":-0.011996,"rvol_3bar":[0.198465,0.142694,0.637913],"trend_3bar":"MIXED","projected_rvol":0.200717},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":3307.0,"sell_vol":5533.0,"unclassified_vol":0.0,"imbalance":-0.25181,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":7.9019},"context":{"vwap":10.091874,"price_vs_vwap_pct":-0.065137,"ema9":10.086932,"ema20":10.089657,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.342885,"dist_to_hod_atr":1.123062,"atr":0.030898,"spread_atr":0.323649,"own_change_pct":-0.013861,"rel_strength_pct":{"SPY":0.05242,"IWM":0.119113}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.160633},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"40aa786f7db3","ts":"2026-09-15T13:51:35+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.0539,"target":10.13,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":9.4,"room_to_5d_high_atr":4.17},"price":10.0998,"vwap":10.0919,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":1.222,"trend":"flat","recent_slope_pct":0.0776,"volatility":"low"},"price":10.0998,"volume":{"bars":21,"last_bar_volume":56190.0,"baseline_avg":88084.1,"bar_rvol":0.637913,"raw_accel":1.551652,"smooth_accel":-0.424005,"accel_momentum":-0.011996,"rvol_3bar":[0.198465,0.142694,0.637913],"trend_3bar":"MIXED","projected_rvol":0.327933},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":9714.0,"sell_vol":6833.0,"unclassified_vol":0.0,"imbalance":0.17411,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.204466},"context":{"vwap":10.091874,"price_vs_vwap_pct":0.078543,"ema9":10.086932,"ema20":10.089657,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.199605,"dist_to_hod_atr":0.653771,"atr":0.030898,"spread_atr":0.323649,"own_change_pct":-0.013861,"rel_strength_pct":{"SPY":0.05242,"IWM":0.119113}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.111067},"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":"d218bd62e26f","ts":"2026-09-15T13:51:40+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.67,"target":7.81,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7356,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.864,"trend":"flat","recent_slope_pct":-0.0668,"volatility":"medium"},"price":7.765,"volume":{"bars":21,"last_bar_volume":23206.0,"baseline_avg":21529.7,"bar_rvol":1.07786,"raw_accel":1.569309,"smooth_accel":-0.296572,"accel_momentum":0.1722,"rvol_3bar":[0.746457,0.407077,1.07786],"trend_3bar":"MIXED","projected_rvol":0.071343},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":705.0,"sell_vol":309.0,"unclassified_vol":0.0,"imbalance":0.390533,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.068966},"context":{"vwap":7.735498,"price_vs_vwap_pct":0.381384,"ema9":7.769618,"ema20":7.756074,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.430737,"atr":0.104472,"spread_atr":0.095719,"own_change_pct":-0.451091,"rel_strength_pct":{"SPY":-0.38481,"IWM":-0.318117}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.420939},"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":"fca28ac36420","ts":"2026-09-15T13:51:45+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.2038,"target":5.296,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":12.5,"room_to_5d_high_atr":1.91},"price":5.245,"vwap":5.245,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.971,"trend":"flat","recent_slope_pct":0.0764,"volatility":"medium"},"price":5.245,"volume":{"bars":21,"last_bar_volume":105933.0,"baseline_avg":47048.05,"bar_rvol":2.251592,"raw_accel":2.632445,"smooth_accel":1.819928,"accel_momentum":0.49227,"rvol_3bar":[2.087688,0.607697,2.251592],"trend_3bar":"MIXED","projected_rvol":0.886895},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1636.0,"sell_vol":12937.0,"unclassified_vol":0.0,"imbalance":-0.775475,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":3.053387},"context":{"vwap":5.244963,"price_vs_vwap_pct":0.000699,"ema9":5.238011,"ema20":5.240451,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.474383,"dist_to_hod_atr":1.615533,"atr":0.015475,"spread_atr":0.646213,"own_change_pct":0.191022,"rel_strength_pct":{"SPY":0.257303,"IWM":0.323996}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.746054},"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":"85305cd0f736","ts":"2026-09-15T13:51:50+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1988,"target":5.296,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.94},"price":5.24,"vwap":5.2449,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.969,"trend":"flat","recent_slope_pct":0.0573,"volatility":"medium"},"price":5.24,"volume":{"bars":21,"last_bar_volume":105933.0,"baseline_avg":47048.05,"bar_rvol":2.251592,"raw_accel":2.632445,"smooth_accel":1.819928,"accel_momentum":0.49227,"rvol_3bar":[2.087688,0.607697,2.251592],"trend_3bar":"MIXED","projected_rvol":0.846054},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":37.0,"sell_vol":12518.0,"unclassified_vol":0.0,"imbalance":-0.994106,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.011094},"context":{"vwap":5.244963,"price_vs_vwap_pct":-0.09463,"ema9":5.238011,"ema20":5.240451,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.56926,"dist_to_hod_atr":1.93864,"atr":0.015475,"spread_atr":0.646213,"own_change_pct":0.191022,"rel_strength_pct":{"SPY":0.257303,"IWM":0.323996}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.238321},"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":"44c5ab50dfeb","ts":"2026-09-15T13:51:55+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says WATCH; stop 5.67, target 5.83 (prev_day_high), R:R 0.64; R:R 0.64 < 2.0 at 5.77; breakout: 1-min close > 5.80 on >= 11303 sh","plan":{"state":"WATCH","setup":"","stop":5.6663,"target":5.83,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":88.1,"room_to_5d_high_atr":0.16},"price":5.7659,"vwap":5.7504,"ext_from_open_pct":1.16,"max_ext_allowed_pct":4.0,"volume_pace":1.057,"trend":"flat","recent_slope_pct":-0.0229,"volatility":"high"},"price":5.7659,"volume":{"bars":21,"last_bar_volume":5997.0,"baseline_avg":7612.1,"bar_rvol":0.787825,"raw_accel":2.151299,"smooth_accel":-0.467002,"accel_momentum":0.208294,"rvol_3bar":[0.493039,0.084112,0.787825],"trend_3bar":"MIXED","projected_rvol":0.382501},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":22.0,"sell_vol":1262.0,"unclassified_vol":0.0,"imbalance":-0.965732,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":14.488993},"context":{"vwap":5.750187,"price_vs_vwap_pct":0.273258,"ema9":5.768373,"ema20":5.763988,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.416235,"dist_to_hod_atr":0.770379,"atr":0.031283,"spread_atr":0.31966,"own_change_pct":0.086881,"rel_strength_pct":{"SPY":0.153162,"IWM":0.219855}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.760828},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4e2b1ccf66ee","ts":"2026-09-15T13:52:00+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says PASS; stop 5.66, target 5.83 (prev_day_high), R:R 0.72; R:R 0.72 < 2.0 at 5.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.83,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7503,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":1.053,"trend":"flat","recent_slope_pct":-0.0486,"volatility":"high"},"price":5.7585,"volume":{"bars":21,"last_bar_volume":5997.0,"baseline_avg":7612.1,"bar_rvol":0.787825,"raw_accel":2.151299,"smooth_accel":-0.467002,"accel_momentum":0.208294,"rvol_3bar":[0.493039,0.084112,0.787825],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":1.0,"sell_vol":67.0,"unclassified_vol":0.0,"imbalance":-0.970588,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.006288},"context":{"vwap":5.750187,"price_vs_vwap_pct":0.144567,"ema9":5.768373,"ema20":5.763988,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":1.006927,"atr":0.031283,"spread_atr":0.31966,"own_change_pct":0.086881,"rel_strength_pct":{"SPY":0.123063,"IWM":0.205971}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.764653},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"096542287606","ts":"2026-09-15T13:52:05+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9541,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":1.624,"trend":"flat","recent_slope_pct":-0.0451,"volatility":"medium"},"price":9.955,"volume":{"bars":22,"last_bar_volume":396128.0,"baseline_avg":477643.05,"bar_rvol":0.829339,"raw_accel":1.105888,"smooth_accel":-0.525958,"accel_momentum":0.012871,"rvol_3bar":[0.888752,0.346811,0.829339],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":299,"trade_rate":9.966667,"buy_vol":127564.0,"sell_vol":156691.0,"unclassified_vol":0.0,"imbalance":-0.102468,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":1.384362},"context":{"vwap":9.954071,"price_vs_vwap_pct":0.009335,"ema9":9.98083,"ema20":9.967744,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":1.791383,"atr":0.053032,"spread_atr":0.188567,"own_change_pct":-0.647733,"rel_strength_pct":{"SPY":-0.611551,"IWM":-0.528643}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.084981},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c5b8dc434913","ts":"2026-09-15T13:52:05+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.2038,"target":5.296,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":12.5,"room_to_5d_high_atr":1.91},"price":5.245,"vwap":5.2449,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.966,"trend":"flat","recent_slope_pct":0.083,"volatility":"medium"},"price":5.245,"volume":{"bars":22,"last_bar_volume":34289.0,"baseline_avg":35207.6,"bar_rvol":0.973909,"raw_accel":-0.676314,"smooth_accel":0.225811,"accel_momentum":-1.594117,"rvol_3bar":[0.607697,2.251592,0.973909],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":399.0,"sell_vol":10054.0,"unclassified_vol":0.0,"imbalance":-0.923658,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.112317},"context":{"vwap":5.244947,"price_vs_vwap_pct":0.00102,"ema9":5.239069,"ema20":5.240722,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.474383,"dist_to_hod_atr":1.657417,"atr":0.015084,"spread_atr":0.662967,"own_change_pct":0.137507,"rel_strength_pct":{"SPY":0.173689,"IWM":0.256597}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.899559},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fa4597708c43","ts":"2026-09-15T13:52:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.9,"target":7.2991,"target_label":"premarket_high","reward_risk":0.12,"pos_in_5d_range_pct":29.8,"room_to_5d_high_atr":1.5},"price":7.255,"vwap":7.2455,"ext_from_open_pct":1.47,"max_ext_allowed_pct":3.0,"volume_pace":0.648,"trend":"flat","recent_slope_pct":-0.0343,"volatility":"medium"},"price":7.255,"volume":{"bars":22,"last_bar_volume":34640.0,"baseline_avg":116911.25,"bar_rvol":0.296293,"raw_accel":-0.741327,"smooth_accel":0.394231,"accel_momentum":-0.576259,"rvol_3bar":[1.664362,0.917697,0.296293],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":11774.0,"sell_vol":5108.0,"unclassified_vol":0.0,"imbalance":0.394858,"bid":7.25,"ask":7.26,"spread_pct":0.137836,"quote_size_imbalance":null,"quote_age_s":1.591994},"context":{"vwap":7.245464,"price_vs_vwap_pct":0.131617,"ema9":7.266004,"ema20":7.264765,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.023192,"dist_to_hod_atr":1.052379,"atr":0.071267,"spread_atr":0.140317,"own_change_pct":-0.343407,"rel_strength_pct":{"SPY":-0.307225,"IWM":-0.224317}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.116994},"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":"3eead47254ef","ts":"2026-09-15T13:52:10+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1988,"target":5.296,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.94},"price":5.24,"vwap":5.2449,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.968,"trend":"flat","recent_slope_pct":0.0639,"volatility":"medium"},"price":5.24,"volume":{"bars":22,"last_bar_volume":34289.0,"baseline_avg":35207.6,"bar_rvol":0.973909,"raw_accel":-0.676314,"smooth_accel":0.225811,"accel_momentum":-1.594117,"rvol_3bar":[0.607697,2.251592,0.973909],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":399.0,"sell_vol":16975.0,"unclassified_vol":0.0,"imbalance":-0.954069,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.049014},"context":{"vwap":5.244947,"price_vs_vwap_pct":-0.09431,"ema9":5.239069,"ema20":5.240722,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.56926,"dist_to_hod_atr":1.9889,"atr":0.015084,"spread_atr":0.662967,"own_change_pct":0.137507,"rel_strength_pct":{"SPY":0.173689,"IWM":0.256597}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.929177},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ecc9308720d9","ts":"2026-09-15T13:52:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says WATCH; stop 5.66, target 5.83 (prev_day_high), R:R 0.68; R:R 0.68 < 2.0 at 5.76; breakout: 1-min close > 5.80 on >= 10972 sh","plan":{"state":"WATCH","setup":"","stop":5.6627,"target":5.83,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":87.5,"room_to_5d_high_atr":0.17},"price":5.7623,"vwap":5.7503,"ext_from_open_pct":1.09,"max_ext_allowed_pct":4.0,"volume_pace":1.047,"trend":"flat","recent_slope_pct":-0.0727,"volatility":"high"},"price":5.7623,"volume":{"bars":22,"last_bar_volume":2677.0,"baseline_avg":5637.35,"bar_rvol":0.474869,"raw_accel":-0.55361,"smooth_accel":-0.4793,"accel_momentum":-0.012298,"rvol_3bar":[0.084112,0.787825,0.474869],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":196.0,"sell_vol":188.0,"unclassified_vol":0.0,"imbalance":0.020833,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":3.657171},"context":{"vwap":5.750319,"price_vs_vwap_pct":0.208348,"ema9":5.766398,"ema20":5.763465,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.478411,"dist_to_hod_atr":0.91769,"atr":0.030184,"spread_atr":0.331296,"own_change_pct":-0.199307,"rel_strength_pct":{"SPY":-0.163125,"IWM":-0.080217}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.009893},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3f77d6282955","ts":"2026-09-15T13:52:15+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says PASS; stop 5.66, target 5.83 (prev_day_high), R:R 0.75; R:R 0.75 < 2.0 at 5.75; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.83,"target_label":"prev_day_high","reward_risk":0.75,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7503,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.044,"trend":"flat","recent_slope_pct":-0.098,"volatility":"high"},"price":5.755,"volume":{"bars":22,"last_bar_volume":2677.0,"baseline_avg":5637.35,"bar_rvol":0.474869,"raw_accel":-0.55361,"smooth_accel":-0.4793,"accel_momentum":-0.012298,"rvol_3bar":[0.084112,0.787825,0.474869],"trend_3bar":"MIXED","projected_rvol":0.363291},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":230.0,"sell_vol":323.0,"unclassified_vol":0.0,"imbalance":-0.168174,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.114915},"context":{"vwap":5.750319,"price_vs_vwap_pct":0.081398,"ema9":5.766398,"ema20":5.763465,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":1.159536,"atr":0.030184,"spread_atr":0.331296,"own_change_pct":-0.199307,"rel_strength_pct":{"SPY":-0.163125,"IWM":-0.080217}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.07986},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"615140311c09","ts":"2026-09-15T13:52:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.2095,"target":8.35,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":45.9,"room_to_5d_high_atr":1.31},"price":8.2996,"vwap":8.2961,"ext_from_open_pct":-0.36,"max_ext_allowed_pct":4.0,"volume_pace":1.283,"trend":"flat","recent_slope_pct":-0.036,"volatility":"medium"},"price":8.2996,"volume":{"bars":22,"last_bar_volume":924.0,"baseline_avg":1631.15,"bar_rvol":0.566472,"raw_accel":-0.218274,"smooth_accel":0.520109,"accel_momentum":0.662835,"rvol_3bar":[0.055889,0.559143,0.566472],"trend_3bar":"ACCELERATING","projected_rvol":0.044141},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":24.0,"sell_vol":86.0,"unclassified_vol":0.0,"imbalance":-0.563636,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":4.002231},"context":{"vwap":8.296061,"price_vs_vwap_pct":0.042664,"ema9":8.295852,"ema20":8.297747,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.357647,"dist_to_hod_atr":3.162863,"atr":0.06336,"spread_atr":0.157828,"own_change_pct":0.283036,"rel_strength_pct":{"SPY":0.319218,"IWM":0.402126}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.319284},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c268ab471787","ts":"2026-09-15T13:52:20+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.09 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0919,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.19,"trend":"flat","recent_slope_pct":0.0585,"volatility":"low"},"price":10.09,"volume":{"bars":22,"last_bar_volume":23840.0,"baseline_avg":48824.4,"bar_rvol":0.48828,"raw_accel":-0.575725,"smooth_accel":-0.176825,"accel_momentum":0.24718,"rvol_3bar":[0.142694,0.637913,0.48828],"trend_3bar":"MIXED","projected_rvol":0.470666},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":7322.0,"sell_vol":1987.0,"unclassified_vol":0.0,"imbalance":0.573101,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":3.079236},"context":{"vwap":10.091874,"price_vs_vwap_pct":-0.018568,"ema9":10.088346,"ema20":10.090071,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.296443,"dist_to_hod_atr":1.000072,"atr":0.029998,"spread_atr":0.333357,"own_change_pct":0.006935,"rel_strength_pct":{"SPY":0.043117,"IWM":0.126025}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.279834},"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":"58991fc368b5","ts":"2026-09-15T13:52:25+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.28 below VWAP $8.30","plan":{"state":"PASS","setup":"","stop":8.1899,"target":8.35,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":43.7,"room_to_5d_high_atr":1.36},"price":8.28,"vwap":8.2959,"ext_from_open_pct":-0.6,"max_ext_allowed_pct":3.0,"volume_pace":1.297,"trend":"flat","recent_slope_pct":-0.0833,"volatility":"medium"},"price":8.28,"volume":{"bars":22,"last_bar_volume":924.0,"baseline_avg":1631.15,"bar_rvol":0.566472,"raw_accel":-0.218274,"smooth_accel":0.520109,"accel_momentum":0.662835,"rvol_3bar":[0.055889,0.559143,0.566472],"trend_3bar":"ACCELERATING","projected_rvol":0.976979},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":24.0,"sell_vol":640.0,"unclassified_vol":0.0,"imbalance":-0.927711,"bid":8.27,"ask":8.29,"spread_pct":0.241546,"quote_size_imbalance":null,"quote_age_s":3.295935},"context":{"vwap":8.296061,"price_vs_vwap_pct":-0.193593,"ema9":8.295852,"ema20":8.297747,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.588235,"dist_to_hod_atr":3.472205,"atr":0.06336,"spread_atr":0.315655,"own_change_pct":0.283036,"rel_strength_pct":{"SPY":0.319218,"IWM":0.402126}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.525522},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d63d141d3f92","ts":"2026-09-15T13:52:25+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.25 below VWAP $7.25","plan":{"state":"PASS","setup":"","stop":6.9,"target":7.2991,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":28.7,"room_to_5d_high_atr":1.52},"price":7.245,"vwap":7.2455,"ext_from_open_pct":1.33,"max_ext_allowed_pct":3.0,"volume_pace":0.641,"trend":"flat","recent_slope_pct":-0.0619,"volatility":"medium"},"price":7.245,"volume":{"bars":22,"last_bar_volume":34640.0,"baseline_avg":116911.25,"bar_rvol":0.296293,"raw_accel":-0.741327,"smooth_accel":0.394231,"accel_momentum":-0.576259,"rvol_3bar":[1.664362,0.917697,0.296293],"trend_3bar":"DECELERATING","projected_rvol":0.340443},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":1263.0,"sell_vol":15697.0,"unclassified_vol":0.0,"imbalance":-0.851061,"bid":7.24,"ask":7.25,"spread_pct":0.138026,"quote_size_imbalance":null,"quote_age_s":1.787207},"context":{"vwap":7.245464,"price_vs_vwap_pct":-0.006401,"ema9":7.266004,"ema20":7.264765,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.159618,"dist_to_hod_atr":1.192696,"atr":0.071267,"spread_atr":0.140317,"own_change_pct":-0.343407,"rel_strength_pct":{"SPY":-0.307225,"IWM":-0.224317}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.252164},"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":"4b9f17b3fc22","ts":"2026-09-15T13:52:25+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0919,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":1.186,"trend":"flat","recent_slope_pct":0.0684,"volatility":"low"},"price":10.095,"volume":{"bars":22,"last_bar_volume":23840.0,"baseline_avg":48824.4,"bar_rvol":0.48828,"raw_accel":-0.575725,"smooth_accel":-0.176825,"accel_momentum":0.24718,"rvol_3bar":[0.142694,0.637913,0.48828],"trend_3bar":"MIXED","projected_rvol":0.393934},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":6882.0,"sell_vol":2027.0,"unclassified_vol":0.0,"imbalance":0.544955,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.528098},"context":{"vwap":10.091874,"price_vs_vwap_pct":0.030977,"ema9":10.088346,"ema20":10.090071,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.247036,"dist_to_hod_atr":0.833394,"atr":0.029998,"spread_atr":0.333357,"own_change_pct":0.006935,"rel_strength_pct":{"SPY":0.043117,"IWM":0.126025}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.266091},"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":"e4e07d6ce756","ts":"2026-09-15T13:52:30+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8387,"target":10.015,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.54},"price":9.9579,"vwap":9.9543,"ext_from_open_pct":1.3,"max_ext_allowed_pct":3.0,"volume_pace":1.618,"trend":"flat","recent_slope_pct":-0.0393,"volatility":"medium"},"price":9.9579,"volume":{"bars":22,"last_bar_volume":396128.0,"baseline_avg":477643.05,"bar_rvol":0.829339,"raw_accel":1.105888,"smooth_accel":-0.525958,"accel_momentum":0.012871,"rvol_3bar":[0.888752,0.346811,0.829339],"trend_3bar":"MIXED","projected_rvol":1.241006},"flow":{"window_s":30,"trades":348,"trade_rate":11.6,"buy_vol":122332.0,"sell_vol":174047.0,"unclassified_vol":0.0,"imbalance":-0.174489,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.005846},"context":{"vwap":9.954071,"price_vs_vwap_pct":0.038469,"ema9":9.98083,"ema20":9.967744,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.916418,"dist_to_hod_atr":1.736699,"atr":0.053032,"spread_atr":0.188567,"own_change_pct":-0.647733,"rel_strength_pct":{"SPY":-0.611551,"IWM":-0.528643}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.144711},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c57c7455fb1b","ts":"2026-09-15T13:52:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.67,"target":7.83,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":56.4,"room_to_5d_high_atr":0.68},"price":7.7676,"vwap":7.7358,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":0.0241,"volatility":"medium"},"price":7.7676,"volume":{"bars":22,"last_bar_volume":1823.0,"baseline_avg":17708.9,"bar_rvol":0.102943,"raw_accel":-0.921443,"smooth_accel":-0.459504,"accel_momentum":-0.162932,"rvol_3bar":[0.407077,1.07786,0.102943],"trend_3bar":"MIXED","projected_rvol":0.402284},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1030.0,"sell_vol":2532.0,"unclassified_vol":0.0,"imbalance":-0.421673,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":0.005376},"context":{"vwap":7.735621,"price_vs_vwap_pct":0.413399,"ema9":7.767734,"ema20":7.756467,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.542894,"dist_to_hod_atr":0.431196,"atr":0.098331,"spread_atr":0.101697,"own_change_pct":-0.254499,"rel_strength_pct":{"SPY":-0.218317,"IWM":-0.135409}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.043408},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"df10531ee211","ts":"2026-09-15T13:52:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.9,"target":7.2991,"target_label":"premarket_high","reward_risk":0.07,"pos_in_5d_range_pct":31.8,"room_to_5d_high_atr":1.45},"price":7.2732,"vwap":7.2456,"ext_from_open_pct":1.72,"max_ext_allowed_pct":3.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":0.0158,"volatility":"medium"},"price":7.2732,"volume":{"bars":22,"last_bar_volume":34640.0,"baseline_avg":116911.25,"bar_rvol":0.296293,"raw_accel":-0.741327,"smooth_accel":0.394231,"accel_momentum":-0.576259,"rvol_3bar":[1.664362,0.917697,0.296293],"trend_3bar":"DECELERATING","projected_rvol":0.295113},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":1507.0,"sell_vol":15744.0,"unclassified_vol":0.0,"imbalance":-0.825285,"bid":7.24,"ask":7.25,"spread_pct":0.138026,"quote_size_imbalance":null,"quote_age_s":0.378818},"context":{"vwap":7.245464,"price_vs_vwap_pct":0.382809,"ema9":7.266004,"ema20":7.264765,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.774898,"dist_to_hod_atr":0.797001,"atr":0.071267,"spread_atr":0.140317,"own_change_pct":-0.343407,"rel_strength_pct":{"SPY":-0.307225,"IWM":-0.224317}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.244526},"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":"7b21a7f5ea20","ts":"2026-09-15T13:52:35+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.83,"target_label":"prev_day_high","reward_risk":0.8,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7504,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":1.044,"trend":"flat","recent_slope_pct":-0.1154,"volatility":"high"},"price":5.75,"volume":{"bars":22,"last_bar_volume":2677.0,"baseline_avg":5637.35,"bar_rvol":0.474869,"raw_accel":-0.55361,"smooth_accel":-0.4793,"accel_momentum":-0.012298,"rvol_3bar":[0.084112,0.787825,0.474869],"trend_3bar":"MIXED","projected_rvol":0.865148},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":870.0,"sell_vol":1820.0,"unclassified_vol":0.0,"imbalance":-0.35316,"bid":5.74,"ask":5.75,"spread_pct":0.174064,"quote_size_imbalance":null,"quote_age_s":0.205886},"context":{"vwap":5.750319,"price_vs_vwap_pct":-0.005553,"ema9":5.766398,"ema20":5.763465,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.325184,"atr":0.030184,"spread_atr":0.331296,"own_change_pct":-0.199307,"rel_strength_pct":{"SPY":-0.163125,"IWM":-0.080217}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.167704},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e503fac31213","ts":"2026-09-15T13:52:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.6671,"target":7.81,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":54.1,"room_to_5d_high_atr":0.71},"price":7.755,"vwap":7.7358,"ext_from_open_pct":0.71,"max_ext_allowed_pct":3.0,"volume_pace":0.837,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"medium"},"price":7.755,"volume":{"bars":22,"last_bar_volume":1823.0,"baseline_avg":17708.9,"bar_rvol":0.102943,"raw_accel":-0.921443,"smooth_accel":-0.459504,"accel_momentum":-0.162932,"rvol_3bar":[0.407077,1.07786,0.102943],"trend_3bar":"MIXED","projected_rvol":0.365434},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1050.0,"sell_vol":2631.0,"unclassified_vol":0.0,"imbalance":-0.429503,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":1.271544},"context":{"vwap":7.735621,"price_vs_vwap_pct":0.250516,"ema9":7.767734,"ema20":7.756467,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.704225,"dist_to_hod_atr":0.559334,"atr":0.098331,"spread_atr":0.101697,"own_change_pct":-0.254499,"rel_strength_pct":{"SPY":-0.218317,"IWM":-0.135409}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.044214},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"97122e071867","ts":"2026-09-15T13:52:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.24 below VWAP $7.25","plan":{"state":"PASS","setup":"","stop":6.9,"target":7.2991,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":28.2,"room_to_5d_high_atr":1.53},"price":7.2414,"vwap":7.2455,"ext_from_open_pct":1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.634,"trend":"flat","recent_slope_pct":-0.0718,"volatility":"medium"},"price":7.2414,"volume":{"bars":22,"last_bar_volume":34640.0,"baseline_avg":116911.25,"bar_rvol":0.296293,"raw_accel":-0.741327,"smooth_accel":0.394231,"accel_momentum":-0.576259,"rvol_3bar":[1.664362,0.917697,0.296293],"trend_3bar":"DECELERATING","projected_rvol":0.23283},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":1152.0,"sell_vol":2620.0,"unclassified_vol":0.0,"imbalance":-0.389183,"bid":7.24,"ask":7.25,"spread_pct":0.138026,"quote_size_imbalance":null,"quote_age_s":0.228027},"context":{"vwap":7.245464,"price_vs_vwap_pct":-0.056087,"ema9":7.266004,"ema20":7.264765,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.208731,"dist_to_hod_atr":1.24321,"atr":0.071267,"spread_atr":0.140317,"own_change_pct":-0.343407,"rel_strength_pct":{"SPY":-0.307225,"IWM":-0.224317}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.115312},"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":"104b57465537","ts":"2026-09-15T13:52:50+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.2038,"target":5.296,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":12.5,"room_to_5d_high_atr":1.91},"price":5.245,"vwap":5.2449,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":1.003,"trend":"flat","recent_slope_pct":0.083,"volatility":"medium"},"price":5.245,"volume":{"bars":22,"last_bar_volume":34289.0,"baseline_avg":35207.6,"bar_rvol":0.973909,"raw_accel":-0.676314,"smooth_accel":0.225811,"accel_momentum":-1.594117,"rvol_3bar":[0.607697,2.251592,0.973909],"trend_3bar":"MIXED","projected_rvol":3.001432},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":5257.0,"sell_vol":51108.0,"unclassified_vol":0.0,"imbalance":-0.813466,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":4.979169},"context":{"vwap":5.244947,"price_vs_vwap_pct":0.00102,"ema9":5.239069,"ema20":5.240722,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.474383,"dist_to_hod_atr":1.657417,"atr":0.015084,"spread_atr":0.662967,"own_change_pct":0.137507,"rel_strength_pct":{"SPY":0.173689,"IWM":0.256597}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.792242},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e4a65d88266a","ts":"2026-09-15T13:52:55+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.2028,"target":5.296,"target_label":"prev_day_high","reward_risk":1.26,"pos_in_5d_range_pct":12.2,"room_to_5d_high_atr":1.92},"price":5.244,"vwap":5.2448,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":3.0,"volume_pace":1.0,"trend":"flat","recent_slope_pct":0.0792,"volatility":"medium"},"price":5.244,"volume":{"bars":22,"last_bar_volume":34289.0,"baseline_avg":35207.6,"bar_rvol":0.973909,"raw_accel":-0.676314,"smooth_accel":0.225811,"accel_momentum":-1.594117,"rvol_3bar":[0.607697,2.251592,0.973909],"trend_3bar":"MIXED","projected_rvol":2.743261},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":5233.0,"sell_vol":35530.0,"unclassified_vol":0.0,"imbalance":-0.743248,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.206323},"context":{"vwap":5.244947,"price_vs_vwap_pct":-0.018046,"ema9":5.239069,"ema20":5.240722,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.493359,"dist_to_hod_atr":1.723713,"atr":0.015084,"spread_atr":0.662967,"own_change_pct":0.137507,"rel_strength_pct":{"SPY":0.173689,"IWM":0.256597}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.723856},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ae491b4ae8c1","ts":"2026-09-15T13:52:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":6.9,"target":7.2991,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":29.2,"room_to_5d_high_atr":1.51},"price":7.25,"vwap":7.2456,"ext_from_open_pct":1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.0481,"volatility":"medium"},"price":7.25,"volume":{"bars":22,"last_bar_volume":34640.0,"baseline_avg":116911.25,"bar_rvol":0.296293,"raw_accel":-0.741327,"smooth_accel":0.394231,"accel_momentum":-0.576259,"rvol_3bar":[1.664362,0.917697,0.296293],"trend_3bar":"DECELERATING","projected_rvol":0.753103},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":44204.0,"sell_vol":19921.0,"unclassified_vol":0.0,"imbalance":0.378682,"bid":7.25,"ask":7.26,"spread_pct":0.137836,"quote_size_imbalance":null,"quote_age_s":0.479586},"context":{"vwap":7.245464,"price_vs_vwap_pct":0.062608,"ema9":7.266004,"ema20":7.264765,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.091405,"dist_to_hod_atr":1.122537,"atr":0.071267,"spread_atr":0.140317,"own_change_pct":-0.343407,"rel_strength_pct":{"SPY":-0.307225,"IWM":-0.224317}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.112201},"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":"8bc431a5269c","ts":"2026-09-15T13:53:00+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.2055,"target":5.296,"target_label":"prev_day_high","reward_risk":1.2,"pos_in_5d_range_pct":13.0,"room_to_5d_high_atr":1.9},"price":5.2467,"vwap":5.2449,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.996,"trend":"flat","recent_slope_pct":0.0895,"volatility":"medium"},"price":5.2467,"volume":{"bars":22,"last_bar_volume":34289.0,"baseline_avg":35207.6,"bar_rvol":0.973909,"raw_accel":-0.676314,"smooth_accel":0.225811,"accel_momentum":-1.594117,"rvol_3bar":[0.607697,2.251592,0.973909],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1878.0,"sell_vol":30532.0,"unclassified_vol":0.0,"imbalance":-0.88411,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.004466},"context":{"vwap":5.244947,"price_vs_vwap_pct":0.033432,"ema9":5.239069,"ema20":5.240722,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.442125,"dist_to_hod_atr":1.544712,"atr":0.015084,"spread_atr":0.662967,"own_change_pct":0.137507,"rel_strength_pct":{"SPY":0.115783,"IWM":0.144509}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.861043},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"633eea7af6de","ts":"2026-09-15T13:53:00+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.08 below VWAP $10.09","plan":{"state":"PASS","setup":"","stop":10.0382,"target":10.13,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":7.6,"room_to_5d_high_atr":4.25},"price":10.0841,"vwap":10.0919,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.159,"trend":"flat","recent_slope_pct":0.0468,"volatility":"low"},"price":10.0841,"volume":{"bars":22,"last_bar_volume":23840.0,"baseline_avg":48824.4,"bar_rvol":0.48828,"raw_accel":-0.575725,"smooth_accel":-0.176825,"accel_momentum":0.24718,"rvol_3bar":[0.142694,0.637913,0.48828],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":3807.0,"sell_vol":714.0,"unclassified_vol":0.0,"imbalance":0.684141,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.878329},"context":{"vwap":10.091874,"price_vs_vwap_pct":-0.077031,"ema9":10.088346,"ema20":10.090071,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.354743,"dist_to_hod_atr":1.196753,"atr":0.029998,"spread_atr":0.333357,"own_change_pct":0.006935,"rel_strength_pct":{"SPY":-0.014789,"IWM":0.013937}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.334053},"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":"9b5aedbfc943","ts":"2026-09-15T13:53:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.1,"pos_in_5d_range_pct":53.5,"room_to_5d_high_atr":0.72},"price":7.7518,"vwap":7.7362,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":0.838,"trend":"flat","recent_slope_pct":-0.036,"volatility":"medium"},"price":7.7518,"volume":{"bars":23,"last_bar_volume":14380.0,"baseline_avg":16377.35,"bar_rvol":0.878042,"raw_accel":2.512168,"smooth_accel":-0.114106,"accel_momentum":0.345398,"rvol_3bar":[1.07786,0.102943,0.878042],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":632.0,"sell_vol":9974.0,"unclassified_vol":0.0,"imbalance":-0.880822,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":0.481252},"context":{"vwap":7.736223,"price_vs_vwap_pct":0.20135,"ema9":7.764187,"ema20":7.755851,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.745198,"dist_to_hod_atr":0.624748,"atr":0.093158,"spread_atr":0.107345,"own_change_pct":-0.577293,"rel_strength_pct":{"SPY":-0.599017,"IWM":-0.570291}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.773399},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a10ba7afd20b","ts":"2026-09-15T13:53:05+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.0517,"target":10.13,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":9.2,"room_to_5d_high_atr":4.18},"price":10.0976,"vwap":10.0919,"ext_from_open_pct":0.08,"max_ext_allowed_pct":4.0,"volume_pace":1.157,"trend":"flat","recent_slope_pct":0.0304,"volatility":"low"},"price":10.0976,"volume":{"bars":23,"last_bar_volume":13705.0,"baseline_avg":47812.3,"bar_rvol":0.286642,"raw_accel":-0.425126,"smooth_accel":0.123288,"accel_momentum":0.300113,"rvol_3bar":[0.637913,0.48828,0.286642],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":5546.0,"sell_vol":1656.0,"unclassified_vol":0.0,"imbalance":0.540128,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.232233},"context":{"vwap":10.091855,"price_vs_vwap_pct":0.056931,"ema9":10.087497,"ema20":10.089502,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.221344,"dist_to_hod_atr":0.771897,"atr":0.029019,"spread_atr":0.344597,"own_change_pct":0.090323,"rel_strength_pct":{"SPY":0.068599,"IWM":0.097325}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.154823},"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":"58781e87016a","ts":"2026-09-15T13:53:10+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.21,"target":5.296,"target_label":"prev_day_high","reward_risk":0.91,"pos_in_5d_range_pct":15.3,"room_to_5d_high_atr":1.85},"price":5.255,"vwap":5.2452,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":1.036,"trend":"flat","recent_slope_pct":0.0612,"volatility":"medium"},"price":5.255,"volume":{"bars":23,"last_bar_volume":88539.0,"baseline_avg":35357.6,"bar_rvol":2.504101,"raw_accel":1.58214,"smooth_accel":0.5266,"accel_momentum":0.300789,"rvol_3bar":[2.251592,0.973909,2.504101],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":53700.0,"sell_vol":16319.0,"unclassified_vol":0.0,"imbalance":0.533869,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.207022},"context":{"vwap":5.24491,"price_vs_vwap_pct":0.192373,"ema9":5.240595,"ema20":5.241291,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.28463,"dist_to_hod_atr":1.002921,"atr":0.014956,"spread_atr":0.668614,"own_change_pct":0.223496,"rel_strength_pct":{"SPY":0.201772,"IWM":0.230498}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.336863},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"03a2cedd8120","ts":"2026-09-15T13:53:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.06,"target":10.13,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.092,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":1.147,"trend":"flat","recent_slope_pct":0.055,"volatility":"low"},"price":10.11,"volume":{"bars":23,"last_bar_volume":13705.0,"baseline_avg":47812.3,"bar_rvol":0.286642,"raw_accel":-0.425126,"smooth_accel":0.123288,"accel_momentum":0.300113,"rvol_3bar":[0.637913,0.48828,0.286642],"trend_3bar":"DECELERATING","projected_rvol":0.984672},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":20921.0,"sell_vol":3806.0,"unclassified_vol":0.0,"imbalance":0.692158,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.845547},"context":{"vwap":10.091855,"price_vs_vwap_pct":0.179802,"ema9":10.087497,"ema20":10.089502,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.098814,"dist_to_hod_atr":0.344597,"atr":0.029019,"spread_atr":0.344597,"own_change_pct":0.090323,"rel_strength_pct":{"SPY":0.068599,"IWM":0.097325}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.198401},"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":"16bd38d97eb4","ts":"2026-09-15T13:53:55+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.2003,"target":5.296,"target_label":"prev_day_high","reward_risk":1.32,"pos_in_5d_range_pct":11.5,"room_to_5d_high_atr":1.93},"price":5.2415,"vwap":5.245,"ext_from_open_pct":-0.35,"max_ext_allowed_pct":3.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":0.0097,"volatility":"medium"},"price":5.2415,"volume":{"bars":23,"last_bar_volume":88539.0,"baseline_avg":35357.6,"bar_rvol":2.504101,"raw_accel":1.58214,"smooth_accel":0.5266,"accel_momentum":0.300789,"rvol_3bar":[2.251592,0.973909,2.504101],"trend_3bar":"MIXED","projected_rvol":1.841898},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":55.0,"sell_vol":1445.0,"unclassified_vol":0.0,"imbalance":-0.926667,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.513144},"context":{"vwap":5.24491,"price_vs_vwap_pct":-0.065019,"ema9":5.240595,"ema20":5.241291,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.540797,"dist_to_hod_atr":1.905551,"atr":0.014956,"spread_atr":0.668614,"own_change_pct":0.223496,"rel_strength_pct":{"SPY":0.201772,"IWM":0.230498}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.320467},"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":"7564c91b7af6","ts":"2026-09-15T13:54:00+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 90.0s, plan says WATCH; stop 9.88, target 10.20 (prev_day_high), R:R 1.68; R:R 1.68 < 2.0 at 10.00; breakout: 1-min close > 10.06 on >= 773273 sh","plan":{"state":"WATCH","setup":"","stop":9.8808,"target":10.2,"target_label":"prev_day_high","reward_risk":1.68,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":2.45},"price":10.0,"vwap":9.9552,"ext_from_open_pct":1.73,"max_ext_allowed_pct":3.0,"volume_pace":1.566,"trend":"flat","recent_slope_pct":0.0602,"volatility":"medium"},"price":10.0,"volume":{"bars":23,"last_bar_volume":424922.0,"baseline_avg":469508.65,"bar_rvol":0.905036,"raw_accel":0.072689,"smooth_accel":-0.58617,"accel_momentum":-0.060211,"rvol_3bar":[0.346811,0.829339,0.905036],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":241,"trade_rate":8.033333,"buy_vol":86669.0,"sell_vol":81712.0,"unclassified_vol":0.0,"imbalance":0.029439,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.005804},"context":{"vwap":9.954482,"price_vs_vwap_pct":0.457266,"ema9":9.977664,"ema20":9.967483,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.497512,"dist_to_hod_atr":0.944655,"atr":0.052929,"spread_atr":0.188931,"own_change_pct":0.040157,"rel_strength_pct":{"SPY":-0.012468,"IWM":-0.050937}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.026644},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"160f2f1539cc","ts":"2026-09-15T13:54:00+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.21,"target":5.296,"target_label":"prev_day_high","reward_risk":0.91,"pos_in_5d_range_pct":15.3,"room_to_5d_high_atr":1.85},"price":5.255,"vwap":5.2452,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":1.004,"trend":"flat","recent_slope_pct":0.0612,"volatility":"medium"},"price":5.255,"volume":{"bars":23,"last_bar_volume":88539.0,"baseline_avg":35357.6,"bar_rvol":2.504101,"raw_accel":1.58214,"smooth_accel":0.5266,"accel_momentum":0.300789,"rvol_3bar":[2.251592,0.973909,2.504101],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":505.0,"sell_vol":1445.0,"unclassified_vol":0.0,"imbalance":-0.482051,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.004412},"context":{"vwap":5.24491,"price_vs_vwap_pct":0.192373,"ema9":5.240595,"ema20":5.241291,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.28463,"dist_to_hod_atr":1.002921,"atr":0.014956,"spread_atr":0.668614,"own_change_pct":0.223496,"rel_strength_pct":{"SPY":0.170871,"IWM":0.132402}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.207105},"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":"6a6736ea9d9f","ts":"2026-09-15T13:54:00+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.79,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7503,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.023,"trend":"flat","recent_slope_pct":-0.1042,"volatility":"high"},"price":5.755,"volume":{"bars":23,"last_bar_volume":3219.0,"baseline_avg":5313.9,"bar_rvol":0.60577,"raw_accel":0.202465,"smooth_accel":0.844734,"accel_momentum":1.324034,"rvol_3bar":[0.787825,0.474869,0.60577],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":3761.0,"sell_vol":1799.0,"unclassified_vol":0.0,"imbalance":0.352878,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.006207},"context":{"vwap":5.750263,"price_vs_vwap_pct":0.082383,"ema9":5.761118,"ema20":5.761231,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":1.181582,"atr":0.029621,"spread_atr":0.337595,"own_change_pct":-0.433651,"rel_strength_pct":{"SPY":-0.486276,"IWM":-0.524745}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.213763},"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":"04c054d8ef8d","ts":"2026-09-15T13:54:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says PASS; stop 9.88, target 10.02 (premarket_high), R:R 0.17; R:R 0.17 < 2.0 at 9.99; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.8758,"target":10.015,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":2.46},"price":9.995,"vwap":9.9552,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":1.562,"trend":"flat","recent_slope_pct":0.0902,"volatility":"medium"},"price":9.995,"volume":{"bars":24,"last_bar_volume":257125.0,"baseline_avg":461506.5,"bar_rvol":0.557143,"raw_accel":-0.394889,"smooth_accel":0.008797,"accel_momentum":0.594967,"rvol_3bar":[0.829339,0.905036,0.557143],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":232,"trade_rate":7.733333,"buy_vol":81828.0,"sell_vol":43014.0,"unclassified_vol":0.0,"imbalance":0.310905,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.107333},"context":{"vwap":9.955165,"price_vs_vwap_pct":0.400147,"ema9":9.982131,"ema20":9.97058,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.547264,"dist_to_hod_atr":1.057573,"atr":0.052006,"spread_atr":0.192286,"own_change_pct":0.225507,"rel_strength_pct":{"SPY":0.172882,"IWM":0.134414}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.173218},"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":"faf86a5482f0","ts":"2026-09-15T13:54:05+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.79,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7503,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":-0.0235,"volatility":"high"},"price":5.755,"volume":{"bars":24,"last_bar_volume":6410.0,"baseline_avg":5161.15,"bar_rvol":1.241971,"raw_accel":0.991302,"smooth_accel":0.149127,"accel_momentum":-0.695607,"rvol_3bar":[0.474869,0.60577,1.241971],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":3819.0,"sell_vol":1667.0,"unclassified_vol":0.0,"imbalance":0.392271,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":2.95282},"context":{"vwap":5.750253,"price_vs_vwap_pct":0.082555,"ema9":5.759895,"ema20":5.760637,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":1.224764,"atr":0.028577,"spread_atr":0.349933,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.398945,"IWM":-0.437414}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.48719},"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":"943f1116f09a","ts":"2026-09-15T13:54:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.10; R:R 0.10 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 29707 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":56.9,"room_to_5d_high_atr":0.67},"price":7.77,"vwap":7.7368,"ext_from_open_pct":0.91,"max_ext_allowed_pct":4.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":-0.0018,"volatility":"medium"},"price":7.77,"volume":{"bars":24,"last_bar_volume":5313.0,"baseline_avg":16627.25,"bar_rvol":0.319536,"raw_accel":-0.630529,"smooth_accel":-0.561113,"accel_momentum":-0.447007,"rvol_3bar":[0.102943,0.878042,0.319536],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":4758.0,"sell_vol":4620.0,"unclassified_vol":0.0,"imbalance":0.014715,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":1.402332},"context":{"vwap":7.736444,"price_vs_vwap_pct":0.433742,"ema9":7.76235,"ema20":7.75577,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.512164,"dist_to_hod_atr":0.457536,"atr":0.087425,"spread_atr":0.114384,"own_change_pct":-0.064433,"rel_strength_pct":{"SPY":-0.117058,"IWM":-0.155527}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.004702},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ce3bdeb58b02","ts":"2026-09-15T13:54:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.07; R:R 0.07 < 2.0 at 7.77; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.07,"pos_in_5d_range_pct":56.1,"room_to_5d_high_atr":0.68},"price":7.766,"vwap":7.7367,"ext_from_open_pct":0.86,"max_ext_allowed_pct":4.0,"volume_pace":0.818,"trend":"flat","recent_slope_pct":-0.0121,"volatility":"medium"},"price":7.766,"volume":{"bars":24,"last_bar_volume":5313.0,"baseline_avg":16627.25,"bar_rvol":0.319536,"raw_accel":-0.630529,"smooth_accel":-0.561113,"accel_momentum":-0.447007,"rvol_3bar":[0.102943,0.878042,0.319536],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":4763.0,"sell_vol":4519.0,"unclassified_vol":0.0,"imbalance":0.026287,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":1.456269},"context":{"vwap":7.736444,"price_vs_vwap_pct":0.382039,"ema9":7.76235,"ema20":7.75577,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.56338,"dist_to_hod_atr":0.503289,"atr":0.087425,"spread_atr":0.114384,"own_change_pct":-0.064433,"rel_strength_pct":{"SPY":-0.117058,"IWM":-0.155527}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.0084},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9df0f68a2298","ts":"2026-09-15T13:54:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5418,"target":10.935,"target_label":"prev_day_high","reward_risk":1.65,"pos_in_5d_range_pct":37.2,"room_to_5d_high_atr":1.36},"price":10.69,"vwap":10.6402,"ext_from_open_pct":2.69,"max_ext_allowed_pct":3.0,"volume_pace":2.179,"trend":"flat","recent_slope_pct":0.2773,"volatility":"medium"},"price":10.69,"volume":{"bars":24,"last_bar_volume":11082.0,"baseline_avg":45420.85,"bar_rvol":0.243985,"raw_accel":-0.567565,"smooth_accel":-0.255373,"accel_momentum":0.186612,"rvol_3bar":[0.655924,0.556827,0.243985],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":4930.0,"sell_vol":1609.0,"unclassified_vol":0.0,"imbalance":0.507876,"bid":10.69,"ask":10.7,"spread_pct":0.093502,"quote_size_imbalance":null,"quote_age_s":0.467412},"context":{"vwap":10.640159,"price_vs_vwap_pct":0.468425,"ema9":10.653407,"ema20":10.654708,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-1.836547,"dist_to_hod_atr":1.534754,"atr":0.130314,"spread_atr":0.076738,"own_change_pct":0.25145,"rel_strength_pct":{"SPY":0.198825,"IWM":0.160356}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.123914},"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":"a847cc69307b","ts":"2026-09-15T13:54:15+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 105.0s, plan says WATCH; stop 9.90, target 10.20 (prev_day_high), R:R 1.53; R:R 1.53 < 2.0 at 10.02; breakout: 1-min close > 10.06 on >= 757124 sh","plan":{"state":"WATCH","setup":"","stop":9.8982,"target":10.2,"target_label":"prev_day_high","reward_risk":1.53,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":2.42},"price":10.0174,"vwap":9.9553,"ext_from_open_pct":1.91,"max_ext_allowed_pct":4.0,"volume_pace":1.555,"trend":"flat","recent_slope_pct":0.135,"volatility":"medium"},"price":10.0174,"volume":{"bars":24,"last_bar_volume":257125.0,"baseline_avg":461506.5,"bar_rvol":0.557143,"raw_accel":-0.394889,"smooth_accel":0.008797,"accel_momentum":0.594967,"rvol_3bar":[0.829339,0.905036,0.557143],"trend_3bar":"MIXED","projected_rvol":0.302436},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":48581.0,"sell_vol":37034.0,"unclassified_vol":0.0,"imbalance":0.134871,"bid":10.01,"ask":10.02,"spread_pct":0.09985,"quote_size_imbalance":null,"quote_age_s":0.498423},"context":{"vwap":9.955165,"price_vs_vwap_pct":0.625156,"ema9":9.982131,"ema20":9.97058,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.324378,"dist_to_hod_atr":0.626852,"atr":0.052006,"spread_atr":0.192286,"own_change_pct":0.225507,"rel_strength_pct":{"SPY":0.172882,"IWM":0.134414}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.075143},"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":"fcada70c8069","ts":"2026-09-15T13:54:15+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.6604,"target":5.83,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.18},"price":5.76,"vwap":5.7503,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":1.014,"trend":"flat","recent_slope_pct":-0.0061,"volatility":"high"},"price":5.76,"volume":{"bars":24,"last_bar_volume":6410.0,"baseline_avg":5161.15,"bar_rvol":1.241971,"raw_accel":0.991302,"smooth_accel":0.149127,"accel_momentum":-0.695607,"rvol_3bar":[0.474869,0.60577,1.241971],"trend_3bar":"ACCELERATING","projected_rvol":0.231731},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":4046.0,"sell_vol":179.0,"unclassified_vol":0.0,"imbalance":0.915266,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":4.985616},"context":{"vwap":5.750253,"price_vs_vwap_pct":0.169508,"ema9":5.759895,"ema20":5.760637,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.518135,"dist_to_hod_atr":1.049798,"atr":0.028577,"spread_atr":0.349933,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.398945,"IWM":-0.437414}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.136734},"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":"9e4e86b19b8d","ts":"2026-09-15T13:54:20+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.79,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7503,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.012,"trend":"flat","recent_slope_pct":-0.0235,"volatility":"high"},"price":5.755,"volume":{"bars":24,"last_bar_volume":6410.0,"baseline_avg":5161.15,"bar_rvol":1.241971,"raw_accel":0.991302,"smooth_accel":0.149127,"accel_momentum":-0.695607,"rvol_3bar":[0.474869,0.60577,1.241971],"trend_3bar":"ACCELERATING","projected_rvol":0.278426},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":4050.0,"sell_vol":355.0,"unclassified_vol":0.0,"imbalance":0.83882,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":2.060757},"context":{"vwap":5.750253,"price_vs_vwap_pct":0.082555,"ema9":5.759895,"ema20":5.760637,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":1.224764,"atr":0.028577,"spread_atr":0.349933,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.398945,"IWM":-0.437414}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.04179},"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":"ec09565f13c1","ts":"2026-09-15T13:54:25+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7617,"target":7.93,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":20.6,"room_to_5d_high_atr":2.68},"price":7.88,"vwap":7.8889,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":1.141,"trend":"flat","recent_slope_pct":-0.0547,"volatility":"high"},"price":7.88,"volume":{"bars":24,"last_bar_volume":3758.0,"baseline_avg":10225.45,"bar_rvol":0.367514,"raw_accel":0.470058,"smooth_accel":2.661364,"accel_momentum":0.608777,"rvol_3bar":[8.895842,0.174583,0.367514],"trend_3bar":"MIXED","projected_rvol":3.994269},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":10320.0,"sell_vol":6710.0,"unclassified_vol":0.0,"imbalance":0.211979,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":1.43389},"context":{"vwap":7.888822,"price_vs_vwap_pct":-0.111827,"ema9":7.900621,"ema20":7.893927,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.630517,"dist_to_hod_atr":1.423087,"atr":0.035135,"spread_atr":0.284617,"own_change_pct":0.253646,"rel_strength_pct":{"SPY":0.201021,"IWM":0.162552}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.077905},"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":"0c38696b812e","ts":"2026-09-15T13:54:40+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.6604,"target":5.83,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.18},"price":5.76,"vwap":5.7503,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":1.003,"trend":"flat","recent_slope_pct":-0.0061,"volatility":"high"},"price":5.76,"volume":{"bars":24,"last_bar_volume":6410.0,"baseline_avg":5161.15,"bar_rvol":1.241971,"raw_accel":0.991302,"smooth_accel":0.149127,"accel_momentum":-0.695607,"rvol_3bar":[0.474869,0.60577,1.241971],"trend_3bar":"ACCELERATING","projected_rvol":0.388576},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":474.0,"sell_vol":698.0,"unclassified_vol":0.0,"imbalance":-0.191126,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.703159},"context":{"vwap":5.750253,"price_vs_vwap_pct":0.169508,"ema9":5.759895,"ema20":5.760637,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.518135,"dist_to_hod_atr":1.049798,"atr":0.028577,"spread_atr":0.349933,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.398945,"IWM":-0.437414}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.237373},"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":"9ef9d831bda8","ts":"2026-09-15T13:54:40+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.10; R:R 0.10 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 29707 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":56.7,"room_to_5d_high_atr":0.67},"price":7.7691,"vwap":7.7368,"ext_from_open_pct":0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.0041,"volatility":"medium"},"price":7.7691,"volume":{"bars":24,"last_bar_volume":5313.0,"baseline_avg":16627.25,"bar_rvol":0.319536,"raw_accel":-0.630529,"smooth_accel":-0.561113,"accel_momentum":-0.447007,"rvol_3bar":[0.102943,0.878042,0.319536],"trend_3bar":"MIXED","projected_rvol":0.512863},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":144.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":-0.36,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":1.741412},"context":{"vwap":7.736444,"price_vs_vwap_pct":0.422109,"ema9":7.76235,"ema20":7.75577,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.523688,"dist_to_hod_atr":0.46783,"atr":0.087425,"spread_atr":0.114384,"own_change_pct":-0.064433,"rel_strength_pct":{"SPY":-0.117058,"IWM":-0.155527}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.115033},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"70099a81314c","ts":"2026-09-15T13:54:45+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.79,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7503,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.002,"trend":"flat","recent_slope_pct":-0.0235,"volatility":"high"},"price":5.755,"volume":{"bars":24,"last_bar_volume":6410.0,"baseline_avg":5161.15,"bar_rvol":1.241971,"raw_accel":0.991302,"smooth_accel":0.149127,"accel_momentum":-0.695607,"rvol_3bar":[0.474869,0.60577,1.241971],"trend_3bar":"ACCELERATING","projected_rvol":0.439695},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":375.0,"sell_vol":1028.0,"unclassified_vol":0.0,"imbalance":-0.465431,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":1.046943},"context":{"vwap":5.750253,"price_vs_vwap_pct":0.082555,"ema9":5.759895,"ema20":5.760637,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":1.224764,"atr":0.028577,"spread_atr":0.349933,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.398945,"IWM":-0.437414}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.578052},"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":"bb871b3b562d","ts":"2026-09-15T13:54:45+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 100.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.08; R:R 0.08 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.08,"pos_in_5d_range_pct":55.0,"room_to_5d_high_atr":0.7},"price":7.76,"vwap":7.7368,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.8,"trend":"flat","recent_slope_pct":-0.0276,"volatility":"medium"},"price":7.76,"volume":{"bars":24,"last_bar_volume":5313.0,"baseline_avg":16627.25,"bar_rvol":0.319536,"raw_accel":-0.630529,"smooth_accel":-0.561113,"accel_momentum":-0.447007,"rvol_3bar":[0.102943,0.878042,0.319536],"trend_3bar":"MIXED","projected_rvol":0.471996},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":244.0,"sell_vol":402.0,"unclassified_vol":0.0,"imbalance":-0.244582,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.863074},"context":{"vwap":7.736444,"price_vs_vwap_pct":0.304484,"ema9":7.76235,"ema20":7.75577,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.640205,"dist_to_hod_atr":0.57192,"atr":0.087425,"spread_atr":0.114384,"own_change_pct":-0.064433,"rel_strength_pct":{"SPY":-0.117058,"IWM":-0.155527}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.078153},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9a142e955e9b","ts":"2026-09-15T13:54:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.61 below VWAP $10.64","plan":{"state":"PASS","setup":"","stop":10.4654,"target":10.64,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":31.3,"room_to_5d_high_atr":1.49},"price":10.6136,"vwap":10.6402,"ext_from_open_pct":1.96,"max_ext_allowed_pct":3.0,"volume_pace":2.135,"trend":"flat","recent_slope_pct":0.1338,"volatility":"medium"},"price":10.6136,"volume":{"bars":24,"last_bar_volume":11082.0,"baseline_avg":45420.85,"bar_rvol":0.243985,"raw_accel":-0.567565,"smooth_accel":-0.255373,"accel_momentum":0.186612,"rvol_3bar":[0.655924,0.556827,0.243985],"trend_3bar":"DECELERATING","projected_rvol":0.195241},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":2423.0,"sell_vol":1940.0,"unclassified_vol":0.0,"imbalance":0.110704,"bid":10.66,"ask":10.67,"spread_pct":0.093765,"quote_size_imbalance":null,"quote_age_s":0.544246},"context":{"vwap":10.640159,"price_vs_vwap_pct":-0.249609,"ema9":10.653407,"ema20":10.654708,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.538108,"dist_to_hod_atr":2.12103,"atr":0.130314,"spread_atr":0.076738,"own_change_pct":0.25145,"rel_strength_pct":{"SPY":0.198825,"IWM":0.160356}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.02701},"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":"6920d71ace60","ts":"2026-09-15T13:54:50+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5195,"target":10.935,"target_label":"prev_day_high","reward_risk":1.8,"pos_in_5d_range_pct":35.5,"room_to_5d_high_atr":1.4},"price":10.6677,"vwap":10.6403,"ext_from_open_pct":2.48,"max_ext_allowed_pct":3.0,"volume_pace":2.13,"trend":"flat","recent_slope_pct":0.2354,"volatility":"medium"},"price":10.6677,"volume":{"bars":24,"last_bar_volume":11082.0,"baseline_avg":45420.85,"bar_rvol":0.243985,"raw_accel":-0.567565,"smooth_accel":-0.255373,"accel_momentum":0.186612,"rvol_3bar":[0.655924,0.556827,0.243985],"trend_3bar":"DECELERATING","projected_rvol":0.20853},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":3665.0,"sell_vol":1586.0,"unclassified_vol":0.0,"imbalance":0.395925,"bid":10.66,"ask":10.67,"spread_pct":0.093765,"quote_size_imbalance":null,"quote_age_s":0.794473},"context":{"vwap":10.640159,"price_vs_vwap_pct":0.258842,"ema9":10.653407,"ema20":10.654708,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.041322,"dist_to_hod_atr":1.705879,"atr":0.130314,"spread_atr":0.076738,"own_change_pct":0.25145,"rel_strength_pct":{"SPY":0.198825,"IWM":0.160356}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.0966},"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":"7bee2627864f","ts":"2026-09-15T13:54:55+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6563,"target":5.79,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":86.3,"room_to_5d_high_atr":0.19},"price":5.7559,"vwap":5.7503,"ext_from_open_pct":0.98,"max_ext_allowed_pct":4.0,"volume_pace":0.996,"trend":"flat","recent_slope_pct":-0.0203,"volatility":"high"},"price":5.7559,"volume":{"bars":24,"last_bar_volume":6410.0,"baseline_avg":5161.15,"bar_rvol":1.241971,"raw_accel":0.991302,"smooth_accel":0.149127,"accel_momentum":-0.695607,"rvol_3bar":[0.474869,0.60577,1.241971],"trend_3bar":"ACCELERATING","projected_rvol":0.382579},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":423.0,"sell_vol":708.0,"unclassified_vol":0.0,"imbalance":-0.251989,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.283485},"context":{"vwap":5.750253,"price_vs_vwap_pct":0.098207,"ema9":5.759895,"ema20":5.760637,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.588946,"dist_to_hod_atr":1.19327,"atr":0.028577,"spread_atr":0.349933,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.398945,"IWM":-0.437414}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.312964},"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":"e3b8f6bf21af","ts":"2026-09-15T13:55:05+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":1.58,"pos_in_5d_range_pct":77.5,"room_to_5d_high_atr":0.71},"price":13.165,"vwap":12.857,"ext_from_open_pct":1.43,"max_ext_allowed_pct":3.0,"volume_pace":2.772,"trend":"positive","recent_slope_pct":-0.1139,"volatility":"medium"},"price":13.165,"volume":{"bars":25,"last_bar_volume":423.0,"baseline_avg":4265.75,"bar_rvol":0.099162,"raw_accel":-0.820763,"smooth_accel":-0.176102,"accel_momentum":0.302645,"rvol_3bar":[0.114945,0.564391,0.099162],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":282.0,"sell_vol":67.0,"unclassified_vol":0.0,"imbalance":0.616046,"bid":13.14,"ask":13.19,"spread_pct":0.379795,"quote_size_imbalance":null,"quote_age_s":2.476376},"context":{"vwap":12.856587,"price_vs_vwap_pct":2.398874,"ema9":13.163112,"ema20":13.070297,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-1.088663,"dist_to_hod_atr":0.952461,"atr":0.152132,"spread_atr":0.328662,"own_change_pct":-0.827131,"rel_strength_pct":{"SPY":-0.870589,"IWM":-0.921722}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.061088},"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":"bea17e52a083","ts":"2026-09-15T13:55:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5909,"target":13.18,"target_label":"prev_day_high","reward_risk":1.69,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":1.89},"price":12.81,"vwap":12.7765,"ext_from_open_pct":2.48,"max_ext_allowed_pct":3.0,"volume_pace":2.815,"trend":"flat","recent_slope_pct":0.1801,"volatility":"high"},"price":12.81,"volume":{"bars":25,"last_bar_volume":20493.0,"baseline_avg":64308.2,"bar_rvol":0.318669,"raw_accel":0.274674,"smooth_accel":-0.196793,"accel_momentum":0.138481,"rvol_3bar":[0.418713,0.094397,0.318669],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":4664.0,"sell_vol":4089.0,"unclassified_vol":0.0,"imbalance":0.065692,"bid":12.8,"ask":12.81,"spread_pct":0.078094,"quote_size_imbalance":null,"quote_age_s":0.188116},"context":{"vwap":12.776469,"price_vs_vwap_pct":0.262446,"ema9":12.785773,"ema20":12.77449,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-1.612903,"dist_to_hod_atr":1.365923,"atr":0.153742,"spread_atr":0.065044,"own_change_pct":-0.217325,"rel_strength_pct":{"SPY":-0.260783,"IWM":-0.311916}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.020934},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d00f1d657e9f","ts":"2026-09-15T13:55:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7826,"target":8.0,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.64},"price":7.9009,"vwap":7.889,"ext_from_open_pct":0.01,"max_ext_allowed_pct":3.0,"volume_pace":1.108,"trend":"flat","recent_slope_pct":-0.0483,"volatility":"medium"},"price":7.9009,"volume":{"bars":25,"last_bar_volume":18749.0,"baseline_avg":10011.5,"bar_rvol":1.872746,"raw_accel":3.98909,"smooth_accel":-0.696851,"accel_momentum":-3.358216,"rvol_3bar":[0.174583,0.367514,1.872746],"trend_3bar":"ACCELERATING","projected_rvol":0.360306},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":503.0,"sell_vol":1000.0,"unclassified_vol":0.0,"imbalance":-0.330672,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":4.930938},"context":{"vwap":7.889,"price_vs_vwap_pct":0.150846,"ema9":7.897497,"ema20":7.893077,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.366961,"dist_to_hod_atr":0.837146,"atr":0.034761,"spread_atr":0.287679,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.043458,"IWM":-0.094591}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.619265},"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":"f24b28dab8d5","ts":"2026-09-15T13:55:30+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.79,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7504,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.983,"trend":"flat","recent_slope_pct":-0.0035,"volatility":"high"},"price":5.75,"volume":{"bars":25,"last_bar_volume":1820.0,"baseline_avg":5313.15,"bar_rvol":0.342546,"raw_accel":-0.716069,"smooth_accel":0.225147,"accel_momentum":0.07602,"rvol_3bar":[0.60577,1.241971,0.342546],"trend_3bar":"MIXED","projected_rvol":0.644062},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":41.0,"sell_vol":1670.0,"unclassified_vol":0.0,"imbalance":-0.952075,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.00614},"context":{"vwap":5.750321,"price_vs_vwap_pct":-0.005575,"ema9":5.758916,"ema20":5.7601,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.487384,"atr":0.026893,"spread_atr":0.371846,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.389779,"IWM":-0.440911}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.32613},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"43ab4f51fbf2","ts":"2026-09-15T13:55:35+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7667,"target":7.93,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.67},"price":7.885,"vwap":7.889,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":4.0,"volume_pace":1.102,"trend":"flat","recent_slope_pct":-0.0886,"volatility":"medium"},"price":7.885,"volume":{"bars":25,"last_bar_volume":18749.0,"baseline_avg":10011.5,"bar_rvol":1.872746,"raw_accel":3.98909,"smooth_accel":-0.696851,"accel_momentum":-3.358216,"rvol_3bar":[0.174583,0.367514,1.872746],"trend_3bar":"ACCELERATING","projected_rvol":0.294005},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":499.0,"sell_vol":1214.0,"unclassified_vol":0.0,"imbalance":-0.417396,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.763652},"context":{"vwap":7.889,"price_vs_vwap_pct":-0.0507,"ema9":7.897497,"ema20":7.893077,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.567465,"dist_to_hod_atr":1.294555,"atr":0.034761,"spread_atr":0.287679,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.043458,"IWM":-0.094591}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.781678},"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":"4a2c6ab9e8ff","ts":"2026-09-15T13:55:35+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.79,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7504,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":0.98,"trend":"flat","recent_slope_pct":0.0261,"volatility":"high"},"price":5.7585,"volume":{"bars":25,"last_bar_volume":1820.0,"baseline_avg":5313.15,"bar_rvol":0.342546,"raw_accel":-0.716069,"smooth_accel":0.225147,"accel_momentum":0.07602,"rvol_3bar":[0.60577,1.241971,0.342546],"trend_3bar":"MIXED","projected_rvol":0.563669},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":72.0,"sell_vol":270.0,"unclassified_vol":0.0,"imbalance":-0.578947,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":5.00614},"context":{"vwap":5.750321,"price_vs_vwap_pct":0.142243,"ema9":5.758916,"ema20":5.7601,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":1.171315,"atr":0.026893,"spread_atr":0.371846,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.389779,"IWM":-0.440911}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.198316},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1f636cb6c095","ts":"2026-09-15T13:55:40+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.79,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7504,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.977,"trend":"flat","recent_slope_pct":-0.0035,"volatility":"high"},"price":5.75,"volume":{"bars":25,"last_bar_volume":1820.0,"baseline_avg":5313.15,"bar_rvol":0.342546,"raw_accel":-0.716069,"smooth_accel":0.225147,"accel_momentum":0.07602,"rvol_3bar":[0.60577,1.241971,0.342546],"trend_3bar":"MIXED","projected_rvol":0.507326},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":72.0,"sell_vol":303.0,"unclassified_vol":0.0,"imbalance":-0.616,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":10.00614},"context":{"vwap":5.750321,"price_vs_vwap_pct":-0.005575,"ema9":5.758916,"ema20":5.7601,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.487384,"atr":0.026893,"spread_atr":0.371846,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.389779,"IWM":-0.440911}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.211009},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dec24fc6e64a","ts":"2026-09-15T13:55:45+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6589,"target":5.79,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":86.8,"room_to_5d_high_atr":0.18},"price":5.7585,"vwap":5.7504,"ext_from_open_pct":1.03,"max_ext_allowed_pct":3.0,"volume_pace":0.974,"trend":"flat","recent_slope_pct":0.0261,"volatility":"high"},"price":5.7585,"volume":{"bars":25,"last_bar_volume":1820.0,"baseline_avg":5313.15,"bar_rvol":0.342546,"raw_accel":-0.716069,"smooth_accel":0.225147,"accel_momentum":0.07602,"rvol_3bar":[0.60577,1.241971,0.342546],"trend_3bar":"MIXED","projected_rvol":0.45196},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":76.0,"sell_vol":199.0,"unclassified_vol":0.0,"imbalance":-0.447273,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":15.00614},"context":{"vwap":5.750321,"price_vs_vwap_pct":0.142243,"ema9":5.758916,"ema20":5.7601,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.544041,"dist_to_hod_atr":1.171315,"atr":0.026893,"spread_atr":0.371846,"own_change_pct":-0.34632,"rel_strength_pct":{"SPY":-0.389779,"IWM":-0.440911}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.153212},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6c4377da4976","ts":"2026-09-15T13:55:50+00:00","symbol":"VNCE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.58,"target":8.1,"target_label":"range_20d_high","reward_risk":1.26,"pos_in_5d_range_pct":103.9,"room_to_5d_high_atr":-0.14},"price":7.81,"vwap":7.6911,"ext_from_open_pct":1.96,"max_ext_allowed_pct":4.0,"volume_pace":0.603,"trend":"flat","recent_slope_pct":0.285,"volatility":"high"},"price":7.81,"volume":{"bars":25,"last_bar_volume":200.0,"baseline_avg":1476.3,"bar_rvol":0.135474,"raw_accel":-0.458105,"smooth_accel":-0.225183,"accel_momentum":0.121656,"rvol_3bar":[0.868534,0.067255,0.135474],"trend_3bar":"MIXED","projected_rvol":4.272302},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":5140.0,"sell_vol":116.0,"unclassified_vol":0.0,"imbalance":0.95586,"bid":7.78,"ask":7.84,"spread_pct":0.768246,"quote_size_imbalance":null,"quote_age_s":0.001056},"context":{"vwap":7.687855,"price_vs_vwap_pct":1.588798,"ema9":7.666517,"ema20":7.648,"ema_stack":true,"ema_warm":true,"hod":7.8188,"dist_to_hod_pct":-0.112549,"dist_to_hod_atr":0.068688,"atr":0.128115,"spread_atr":0.468329,"own_change_pct":0.325733,"rel_strength_pct":{"SPY":0.282275,"IWM":0.231142}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.129494},"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":"b7414cc1249f","ts":"2026-09-15T13:55:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.01% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":7.58,"target":8.1,"target_label":"range_20d_high","reward_risk":0.53,"pos_in_5d_range_pct":107.9,"room_to_5d_high_atr":-0.29},"price":7.92,"vwap":7.6988,"ext_from_open_pct":3.39,"max_ext_allowed_pct":4.0,"volume_pace":0.621,"trend":"flat","recent_slope_pct":0.5685,"volatility":"high"},"price":7.92,"volume":{"bars":25,"last_bar_volume":200.0,"baseline_avg":1476.3,"bar_rvol":0.135474,"raw_accel":-0.458105,"smooth_accel":-0.225183,"accel_momentum":0.121656,"rvol_3bar":[0.868534,0.067255,0.135474],"trend_3bar":"MIXED","projected_rvol":7.563134},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":9194.0,"sell_vol":1041.0,"unclassified_vol":0.0,"imbalance":0.79658,"bid":7.88,"ask":7.96,"spread_pct":1.010101,"quote_size_imbalance":null,"quote_age_s":2.488844},"context":{"vwap":7.687855,"price_vs_vwap_pct":3.019626,"ema9":7.666517,"ema20":7.648,"ema_stack":true,"ema_warm":true,"hod":7.8188,"dist_to_hod_pct":1.294316,"dist_to_hod_atr":-0.789915,"atr":0.128115,"spread_atr":0.624439,"own_change_pct":0.325733,"rel_strength_pct":{"SPY":0.282275,"IWM":0.231142}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.107916},"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":"cf11a9e99ac1","ts":"2026-09-15T13:56:05+00:00","symbol":"VNCE","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.58,"target":8.1,"target_label":"range_20d_high","reward_risk":0.51,"pos_in_5d_range_pct":108.1,"room_to_5d_high_atr":-0.29},"price":7.925,"vwap":7.7005,"ext_from_open_pct":3.46,"max_ext_allowed_pct":4.0,"volume_pace":0.622,"trend":"flat","recent_slope_pct":0.9251,"volatility":"high"},"price":7.925,"volume":{"bars":26,"last_bar_volume":10313.0,"baseline_avg":1390.25,"bar_rvol":7.41809,"raw_accel":28.672361,"smooth_accel":2.519231,"accel_momentum":2.744413,"rvol_3bar":[0.067255,0.135474,7.41809],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":10262.0,"sell_vol":1171.0,"unclassified_vol":0.0,"imbalance":0.795154,"bid":7.89,"ask":7.96,"spread_pct":0.883281,"quote_size_imbalance":null,"quote_age_s":2.142161},"context":{"vwap":7.698872,"price_vs_vwap_pct":2.937158,"ema9":7.717214,"ema20":7.673904,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.063052,"dist_to_hod_atr":0.03693,"atr":0.135392,"spread_atr":0.517015,"own_change_pct":3.125,"rel_strength_pct":{"SPY":3.086991,"IWM":2.991849}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.898527},"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":"047832a0c934","ts":"2026-09-15T13:56:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.77 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.5509,"target":13.18,"target_label":"prev_day_high","reward_risk":1.87,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":1.94},"price":12.77,"vwap":12.7765,"ext_from_open_pct":2.16,"max_ext_allowed_pct":3.0,"volume_pace":2.763,"trend":"flat","recent_slope_pct":0.0509,"volatility":"high"},"price":12.77,"volume":{"bars":26,"last_bar_volume":20313.0,"baseline_avg":58612.8,"bar_rvol":0.346563,"raw_accel":-0.008783,"smooth_accel":-0.362823,"accel_momentum":-0.16603,"rvol_3bar":[0.094397,0.318669,0.346563],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":2011.0,"sell_vol":14388.0,"unclassified_vol":0.0,"imbalance":-0.754741,"bid":12.76,"ask":12.77,"spread_pct":0.078339,"quote_size_imbalance":null,"quote_age_s":0.285782},"context":{"vwap":12.776515,"price_vs_vwap_pct":-0.050989,"ema9":12.786618,"ema20":12.775968,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-1.920123,"dist_to_hod_atr":1.683544,"atr":0.148496,"spread_atr":0.067342,"own_change_pct":0.629426,"rel_strength_pct":{"SPY":0.591416,"IWM":0.496275}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.261565},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0d444b28e546","ts":"2026-09-15T13:56:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 185.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.10; R:R 0.10 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 28232 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":56.6,"room_to_5d_high_atr":0.67},"price":7.7686,"vwap":7.7373,"ext_from_open_pct":0.89,"max_ext_allowed_pct":4.0,"volume_pace":0.77,"trend":"flat","recent_slope_pct":0.0608,"volatility":"medium"},"price":7.7686,"volume":{"bars":26,"last_bar_volume":7724.0,"baseline_avg":16336.7,"bar_rvol":0.472801,"raw_accel":0.221572,"smooth_accel":-0.508742,"accel_momentum":-0.272548,"rvol_3bar":[0.319536,0.386236,0.472801],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":68.0,"sell_vol":1507.0,"unclassified_vol":0.0,"imbalance":-0.913651,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":10.005225},"context":{"vwap":7.737275,"price_vs_vwap_pct":0.404857,"ema9":7.763304,"ema20":7.757444,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.53009,"dist_to_hod_atr":0.533912,"atr":0.077541,"spread_atr":0.128964,"own_change_pct":-0.039907,"rel_strength_pct":{"SPY":-0.077916,"IWM":-0.173058}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.431975},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1d1f02d3b1ff","ts":"2026-09-15T13:56:25+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5709,"target":13.18,"target_label":"prev_day_high","reward_risk":1.78,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":1.92},"price":12.79,"vwap":12.7766,"ext_from_open_pct":2.32,"max_ext_allowed_pct":3.0,"volume_pace":2.738,"trend":"flat","recent_slope_pct":0.0822,"volatility":"high"},"price":12.79,"volume":{"bars":26,"last_bar_volume":20313.0,"baseline_avg":58612.8,"bar_rvol":0.346563,"raw_accel":-0.008783,"smooth_accel":-0.362823,"accel_momentum":-0.16603,"rvol_3bar":[0.094397,0.318669,0.346563],"trend_3bar":"ACCELERATING","projected_rvol":0.698346},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":4784.0,"sell_vol":12271.0,"unclassified_vol":0.0,"imbalance":-0.438991,"bid":12.78,"ask":12.8,"spread_pct":0.156372,"quote_size_imbalance":null,"quote_age_s":0.094835},"context":{"vwap":12.776515,"price_vs_vwap_pct":0.105549,"ema9":12.786618,"ema20":12.775968,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-1.766513,"dist_to_hod_atr":1.54886,"atr":0.148496,"spread_atr":0.134684,"own_change_pct":0.629426,"rel_strength_pct":{"SPY":0.591416,"IWM":0.496275}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.152138},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a0ac143b908","ts":"2026-09-15T13:56:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.52% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":7.58,"target":8.1,"target_label":"range_20d_high","reward_risk":0.41,"pos_in_5d_range_pct":109.0,"room_to_5d_high_atr":-0.33},"price":7.95,"vwap":7.7038,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.621,"trend":"flat","recent_slope_pct":0.9887,"volatility":"high"},"price":7.95,"volume":{"bars":26,"last_bar_volume":10313.0,"baseline_avg":1390.25,"bar_rvol":7.41809,"raw_accel":28.672361,"smooth_accel":2.519231,"accel_momentum":2.744413,"rvol_3bar":[0.067255,0.135474,7.41809],"trend_3bar":"ACCELERATING","projected_rvol":4.727207},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":2321.0,"sell_vol":965.0,"unclassified_vol":0.0,"imbalance":0.41266,"bid":7.84,"ask":7.96,"spread_pct":1.518987,"quote_size_imbalance":null,"quote_age_s":1.133345},"context":{"vwap":7.698872,"price_vs_vwap_pct":3.261881,"ema9":7.717214,"ema20":7.673904,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":0.252207,"dist_to_hod_atr":-0.147719,"atr":0.135392,"spread_atr":0.886312,"own_change_pct":3.125,"rel_strength_pct":{"SPY":3.086991,"IWM":2.991849}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.061147},"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":"1127365fe6b5","ts":"2026-09-15T13:56:30+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.07; R:R 0.07 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.07,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7374,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.763,"trend":"flat","recent_slope_pct":0.0515,"volatility":"medium"},"price":7.765,"volume":{"bars":26,"last_bar_volume":7724.0,"baseline_avg":16336.7,"bar_rvol":0.472801,"raw_accel":0.221572,"smooth_accel":-0.508742,"accel_momentum":-0.272548,"rvol_3bar":[0.319536,0.386236,0.472801],"trend_3bar":"ACCELERATING","projected_rvol":0.219383},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":146.0,"sell_vol":1646.0,"unclassified_vol":0.0,"imbalance":-0.837054,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.005204},"context":{"vwap":7.737275,"price_vs_vwap_pct":0.358329,"ema9":7.763304,"ema20":7.757444,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.580339,"atr":0.077541,"spread_atr":0.128964,"own_change_pct":-0.039907,"rel_strength_pct":{"SPY":-0.077916,"IWM":-0.173058}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.395759},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ca40b1ed7d12","ts":"2026-09-15T13:56:40+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.76 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.5432,"target":13.18,"target_label":"prev_day_high","reward_risk":1.91,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":1.95},"price":12.7623,"vwap":12.7764,"ext_from_open_pct":2.1,"max_ext_allowed_pct":3.0,"volume_pace":2.716,"trend":"flat","recent_slope_pct":0.0388,"volatility":"high"},"price":12.7623,"volume":{"bars":26,"last_bar_volume":20313.0,"baseline_avg":58612.8,"bar_rvol":0.346563,"raw_accel":-0.008783,"smooth_accel":-0.362823,"accel_momentum":-0.16603,"rvol_3bar":[0.094397,0.318669,0.346563],"trend_3bar":"ACCELERATING","projected_rvol":0.491744},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":3415.0,"sell_vol":3543.0,"unclassified_vol":0.0,"imbalance":-0.018396,"bid":12.78,"ask":12.79,"spread_pct":0.078217,"quote_size_imbalance":null,"quote_age_s":0.110379},"context":{"vwap":12.776515,"price_vs_vwap_pct":-0.111255,"ema9":12.786618,"ema20":12.775968,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-1.979263,"dist_to_hod_atr":1.735397,"atr":0.148496,"spread_atr":0.067342,"own_change_pct":0.629426,"rel_strength_pct":{"SPY":0.591416,"IWM":0.496275}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.006375},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"18a6ac1b6fcf","ts":"2026-09-15T13:56:45+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 220.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.09; R:R 0.09 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 28232 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":57.2,"room_to_5d_high_atr":0.66},"price":7.7719,"vwap":7.7376,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":0.0693,"volatility":"medium"},"price":7.7719,"volume":{"bars":26,"last_bar_volume":7724.0,"baseline_avg":16336.7,"bar_rvol":0.472801,"raw_accel":0.221572,"smooth_accel":-0.508742,"accel_momentum":-0.272548,"rvol_3bar":[0.319536,0.386236,0.472801],"trend_3bar":"ACCELERATING","projected_rvol":0.454274},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":2002.0,"sell_vol":3349.0,"unclassified_vol":0.0,"imbalance":-0.251729,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":0.077251},"context":{"vwap":7.737275,"price_vs_vwap_pct":0.447508,"ema9":7.763304,"ema20":7.757444,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.487836,"dist_to_hod_atr":0.491354,"atr":0.077541,"spread_atr":0.128964,"own_change_pct":-0.039907,"rel_strength_pct":{"SPY":-0.077916,"IWM":-0.173058}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.119017},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e76f14df4b97","ts":"2026-09-15T13:56:45+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.5709,"target":13.18,"target_label":"prev_day_high","reward_risk":1.78,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":1.92},"price":12.79,"vwap":12.7767,"ext_from_open_pct":2.32,"max_ext_allowed_pct":3.0,"volume_pace":2.73,"trend":"flat","recent_slope_pct":0.0822,"volatility":"high"},"price":12.79,"volume":{"bars":26,"last_bar_volume":20313.0,"baseline_avg":58612.8,"bar_rvol":0.346563,"raw_accel":-0.008783,"smooth_accel":-0.362823,"accel_momentum":-0.16603,"rvol_3bar":[0.094397,0.318669,0.346563],"trend_3bar":"ACCELERATING","projected_rvol":0.723278},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":3695.0,"sell_vol":15843.0,"unclassified_vol":0.0,"imbalance":-0.621763,"bid":12.79,"ask":12.81,"spread_pct":0.15625,"quote_size_imbalance":null,"quote_age_s":0.386242},"context":{"vwap":12.776515,"price_vs_vwap_pct":0.105549,"ema9":12.786618,"ema20":12.775968,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-1.766513,"dist_to_hod_atr":1.54886,"atr":0.148496,"spread_atr":0.134684,"own_change_pct":0.629426,"rel_strength_pct":{"SPY":0.591416,"IWM":0.496275}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.21548},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f71828b3c1cf","ts":"2026-09-15T13:56:50+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.79,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7505,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":0.0348,"volatility":"high"},"price":5.75,"volume":{"bars":26,"last_bar_volume":2008.0,"baseline_avg":5270.75,"bar_rvol":0.38097,"raw_accel":0.103297,"smooth_accel":-0.139157,"accel_momentum":-0.364305,"rvol_3bar":[1.241971,0.342546,0.38097],"trend_3bar":"MIXED","projected_rvol":1.263805},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":41.0,"sell_vol":5246.0,"unclassified_vol":0.0,"imbalance":-0.98449,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.94014},"context":{"vwap":5.750374,"price_vs_vwap_pct":-0.006512,"ema9":5.758133,"ema20":5.759615,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.557255,"atr":0.025686,"spread_atr":0.389314,"own_change_pct":-0.086806,"rel_strength_pct":{"SPY":-0.124815,"IWM":-0.219957}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.375062},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"56dcf945b382","ts":"2026-09-15T13:56:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 225.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.07; R:R 0.07 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.07,"pos_in_5d_range_pct":55.7,"room_to_5d_high_atr":0.69},"price":7.7633,"vwap":7.7379,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.768,"trend":"flat","recent_slope_pct":0.0472,"volatility":"medium"},"price":7.7633,"volume":{"bars":26,"last_bar_volume":7724.0,"baseline_avg":16336.7,"bar_rvol":0.472801,"raw_accel":0.221572,"smooth_accel":-0.508742,"accel_momentum":-0.272548,"rvol_3bar":[0.319536,0.386236,0.472801],"trend_3bar":"ACCELERATING","projected_rvol":0.861471},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":1900.0,"sell_vol":8075.0,"unclassified_vol":0.0,"imbalance":-0.619048,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.856213},"context":{"vwap":7.737275,"price_vs_vwap_pct":0.336358,"ema9":7.763304,"ema20":7.757444,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.597951,"dist_to_hod_atr":0.602263,"atr":0.077541,"spread_atr":0.128964,"own_change_pct":-0.039907,"rel_strength_pct":{"SPY":-0.077916,"IWM":-0.173058}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.292686},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"34d1b99c9d89","ts":"2026-09-15T13:56:50+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.78","plan":{"state":"PASS","setup":"","stop":12.5559,"target":13.18,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":1.93},"price":12.775,"vwap":12.7766,"ext_from_open_pct":2.2,"max_ext_allowed_pct":3.0,"volume_pace":2.724,"trend":"flat","recent_slope_pct":0.0587,"volatility":"high"},"price":12.775,"volume":{"bars":26,"last_bar_volume":20313.0,"baseline_avg":58612.8,"bar_rvol":0.346563,"raw_accel":-0.008783,"smooth_accel":-0.362823,"accel_momentum":-0.16603,"rvol_3bar":[0.094397,0.318669,0.346563],"trend_3bar":"ACCELERATING","projected_rvol":0.687863},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":3163.0,"sell_vol":16666.0,"unclassified_vol":0.0,"imbalance":-0.680972,"bid":12.77,"ask":12.78,"spread_pct":0.078278,"quote_size_imbalance":null,"quote_age_s":0.281383},"context":{"vwap":12.776515,"price_vs_vwap_pct":-0.011854,"ema9":12.786618,"ema20":12.775968,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-1.88172,"dist_to_hod_atr":1.649873,"atr":0.148496,"spread_atr":0.067342,"own_change_pct":0.629426,"rel_strength_pct":{"SPY":0.591416,"IWM":0.496275}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.235999},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"acfc888cbb7c","ts":"2026-09-15T13:56:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 230.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.10; R:R 0.10 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 28232 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":56.8,"room_to_5d_high_atr":0.67},"price":7.7695,"vwap":7.738,"ext_from_open_pct":0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":0.0631,"volatility":"medium"},"price":7.7695,"volume":{"bars":26,"last_bar_volume":7724.0,"baseline_avg":16336.7,"bar_rvol":0.472801,"raw_accel":0.221572,"smooth_accel":-0.508742,"accel_momentum":-0.272548,"rvol_3bar":[0.319536,0.386236,0.472801],"trend_3bar":"ACCELERATING","projected_rvol":0.790034},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":2000.0,"sell_vol":8078.0,"unclassified_vol":0.0,"imbalance":-0.603096,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.558658},"context":{"vwap":7.737275,"price_vs_vwap_pct":0.416489,"ema9":7.763304,"ema20":7.757444,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.518566,"dist_to_hod_atr":0.522305,"atr":0.077541,"spread_atr":0.128964,"own_change_pct":-0.039907,"rel_strength_pct":{"SPY":-0.077916,"IWM":-0.173058}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.285144},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6cf33d897307","ts":"2026-09-15T13:57:00+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.79,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7505,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.0522,"volatility":"high"},"price":5.755,"volume":{"bars":26,"last_bar_volume":2008.0,"baseline_avg":5270.75,"bar_rvol":0.38097,"raw_accel":0.103297,"smooth_accel":-0.139157,"accel_momentum":-0.364305,"rvol_3bar":[1.241971,0.342546,0.38097],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":79.0,"sell_vol":4668.0,"unclassified_vol":0.0,"imbalance":-0.966716,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.006087},"context":{"vwap":5.750374,"price_vs_vwap_pct":0.080439,"ema9":5.758133,"ema20":5.759615,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.604491,"dist_to_hod_atr":1.362598,"atr":0.025686,"spread_atr":0.389314,"own_change_pct":-0.086806,"rel_strength_pct":{"SPY":-0.083514,"IWM":-0.258488}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.36829},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b0daa0334d35","ts":"2026-09-15T13:57:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 235.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.07; R:R 0.07 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.07,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.738,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.764,"trend":"flat","recent_slope_pct":0.0515,"volatility":"medium"},"price":7.765,"volume":{"bars":26,"last_bar_volume":7724.0,"baseline_avg":16336.7,"bar_rvol":0.472801,"raw_accel":0.221572,"smooth_accel":-0.508742,"accel_momentum":-0.272548,"rvol_3bar":[0.319536,0.386236,0.472801],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":1971.0,"sell_vol":8306.0,"unclassified_vol":0.0,"imbalance":-0.616425,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.005188},"context":{"vwap":7.737275,"price_vs_vwap_pct":0.358329,"ema9":7.763304,"ema20":7.757444,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.580339,"atr":0.077541,"spread_atr":0.128964,"own_change_pct":-0.039907,"rel_strength_pct":{"SPY":-0.036615,"IWM":-0.21159}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.291446},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cf41de8f7d82","ts":"2026-09-15T13:57:10+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.9085,"target":6.39,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":45.1,"room_to_5d_high_atr":3.84},"price":6.21,"vwap":6.1769,"ext_from_open_pct":-1.97,"max_ext_allowed_pct":4.0,"volume_pace":2.926,"trend":"flat","recent_slope_pct":0.4379,"volatility":"high"},"price":6.21,"volume":{"bars":27,"last_bar_volume":14570.0,"baseline_avg":29693.55,"bar_rvol":0.490679,"raw_accel":0.231406,"smooth_accel":-0.221103,"accel_momentum":0.310512,"rvol_3bar":[0.173481,0.364967,0.490679],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":171,"trade_rate":5.7,"buy_vol":31147.0,"sell_vol":10777.0,"unclassified_vol":0.0,"imbalance":0.485879,"bid":6.13,"ask":6.23,"spread_pct":1.618123,"quote_size_imbalance":null,"quote_age_s":0.248923},"context":{"vwap":6.176764,"price_vs_vwap_pct":0.53808,"ema9":6.121653,"ema20":6.143552,"ema_stack":false,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-2.96875,"dist_to_hod_atr":2.044802,"atr":0.092919,"spread_atr":1.076212,"own_change_pct":0.10449,"rel_strength_pct":{"SPY":0.107781,"IWM":-0.067193}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.238411},"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":"46410273e8e5","ts":"2026-09-15T13:57:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 245.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.10; R:R 0.10 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 27857 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":56.3,"room_to_5d_high_atr":0.68},"price":7.7667,"vwap":7.738,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":0.0301,"volatility":"medium"},"price":7.7667,"volume":{"bars":27,"last_bar_volume":12069.0,"baseline_avg":15576.85,"bar_rvol":0.774804,"raw_accel":0.562532,"smooth_accel":0.213794,"accel_momentum":0.722536,"rvol_3bar":[0.386236,0.472801,0.774804],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1429.0,"sell_vol":7271.0,"unclassified_vol":0.0,"imbalance":-0.671494,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":3.605089},"context":{"vwap":7.737983,"price_vs_vwap_pct":0.371124,"ema9":7.763643,"ema20":7.758164,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.554417,"dist_to_hod_atr":0.592553,"atr":0.073074,"spread_atr":0.136848,"own_change_pct":0.061854,"rel_strength_pct":{"SPY":0.065146,"IWM":-0.109829}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.520276},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7d59db133f43","ts":"2026-09-15T13:57:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.64 below VWAP $10.64","plan":{"state":"PASS","setup":"","stop":10.49,"target":10.85,"target_label":"ceiling","reward_risk":1.43,"pos_in_5d_range_pct":33.2,"room_to_5d_high_atr":1.45},"price":10.6382,"vwap":10.6412,"ext_from_open_pct":2.19,"max_ext_allowed_pct":3.0,"volume_pace":1.994,"trend":"flat","recent_slope_pct":-0.0877,"volatility":"medium"},"price":10.6382,"volume":{"bars":27,"last_bar_volume":9831.0,"baseline_avg":41582.7,"bar_rvol":0.23642,"raw_accel":-0.48146,"smooth_accel":-0.438595,"accel_momentum":0.024778,"rvol_3bar":[0.226109,0.449274,0.23642],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":1268.0,"sell_vol":3238.0,"unclassified_vol":0.0,"imbalance":-0.437195,"bid":10.66,"ask":10.67,"spread_pct":0.093765,"quote_size_imbalance":null,"quote_age_s":0.156714},"context":{"vwap":10.641195,"price_vs_vwap_pct":-0.028142,"ema9":10.668296,"ema20":10.662315,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.312213,"dist_to_hod_atr":2.113233,"atr":0.119154,"spread_atr":0.083925,"own_change_pct":0.61263,"rel_strength_pct":{"SPY":0.615921,"IWM":0.440947}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.103362},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08aeeabb104c","ts":"2026-09-15T13:57:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 250.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.07; R:R 0.07 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.07,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.738,"ext_from_open_pct":0.84,"max_ext_allowed_pct":4.0,"volume_pace":0.758,"trend":"flat","recent_slope_pct":0.0258,"volatility":"medium"},"price":7.765,"volume":{"bars":27,"last_bar_volume":12069.0,"baseline_avg":15576.85,"bar_rvol":0.774804,"raw_accel":0.562532,"smooth_accel":0.213794,"accel_momentum":0.722536,"rvol_3bar":[0.386236,0.472801,0.774804],"trend_3bar":"ACCELERATING","projected_rvol":0.090904},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":187.0,"sell_vol":6670.0,"unclassified_vol":0.0,"imbalance":-0.945457,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.359632},"context":{"vwap":7.737983,"price_vs_vwap_pct":0.349154,"ema9":7.763643,"ema20":7.758164,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.615817,"atr":0.073074,"spread_atr":0.136848,"own_change_pct":0.061854,"rel_strength_pct":{"SPY":0.065146,"IWM":-0.109829}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.732544},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"46bf37af6b38","ts":"2026-09-15T13:57:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5371,"target":10.85,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":36.9,"room_to_5d_high_atr":1.37},"price":10.6853,"vwap":10.6412,"ext_from_open_pct":2.64,"max_ext_allowed_pct":3.0,"volume_pace":1.989,"trend":"flat","recent_slope_pct":0.0006,"volatility":"medium"},"price":10.6853,"volume":{"bars":27,"last_bar_volume":9831.0,"baseline_avg":41582.7,"bar_rvol":0.23642,"raw_accel":-0.48146,"smooth_accel":-0.438595,"accel_momentum":0.024778,"rvol_3bar":[0.226109,0.449274,0.23642],"trend_3bar":"MIXED","projected_rvol":0.150062},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":1026.0,"sell_vol":3277.0,"unclassified_vol":0.0,"imbalance":-0.523123,"bid":10.66,"ask":10.67,"spread_pct":0.093765,"quote_size_imbalance":null,"quote_age_s":0.061696},"context":{"vwap":10.641195,"price_vs_vwap_pct":0.414478,"ema9":10.668296,"ema20":10.662315,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-1.879706,"dist_to_hod_atr":1.717946,"atr":0.119154,"spread_atr":0.083925,"own_change_pct":0.61263,"rel_strength_pct":{"SPY":0.615921,"IWM":0.440947}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.123677},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cf8057093a6c","ts":"2026-09-15T13:57:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 255.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.10; R:R 0.10 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 27857 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":56.5,"room_to_5d_high_atr":0.67},"price":7.7681,"vwap":7.738,"ext_from_open_pct":0.88,"max_ext_allowed_pct":4.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":0.0337,"volatility":"medium"},"price":7.7681,"volume":{"bars":27,"last_bar_volume":12069.0,"baseline_avg":15576.85,"bar_rvol":0.774804,"raw_accel":0.562532,"smooth_accel":0.213794,"accel_momentum":0.722536,"rvol_3bar":[0.386236,0.472801,0.774804],"trend_3bar":"ACCELERATING","projected_rvol":0.070682},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":197.0,"sell_vol":511.0,"unclassified_vol":0.0,"imbalance":-0.443503,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":4.728845},"context":{"vwap":7.737983,"price_vs_vwap_pct":0.389216,"ema9":7.763643,"ema20":7.758164,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.536492,"dist_to_hod_atr":0.573394,"atr":0.073074,"spread_atr":0.136848,"own_change_pct":0.061854,"rel_strength_pct":{"SPY":0.065146,"IWM":-0.109829}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.343628},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8e855c4332a1","ts":"2026-09-15T13:57:25+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.75","plan":{"state":"PASS","setup":"","stop":5.6504,"target":5.79,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.2},"price":5.75,"vwap":5.7505,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.947,"trend":"flat","recent_slope_pct":-0.0174,"volatility":"high"},"price":5.75,"volume":{"bars":27,"last_bar_volume":5824.0,"baseline_avg":5030.7,"bar_rvol":1.157692,"raw_accel":1.900398,"smooth_accel":-0.215667,"accel_momentum":-0.07651,"rvol_3bar":[0.342546,0.38097,1.157692],"trend_3bar":"ACCELERATING","projected_rvol":0.057248},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":51.0,"sell_vol":314.0,"unclassified_vol":0.0,"imbalance":-0.720548,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.126354},"context":{"vwap":5.750524,"price_vs_vwap_pct":-0.009112,"ema9":5.757506,"ema20":5.759175,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.690846,"dist_to_hod_atr":1.628281,"atr":0.024566,"spread_atr":0.40707,"own_change_pct":-0.06078,"rel_strength_pct":{"SPY":-0.057488,"IWM":-0.232463}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.834172},"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":"caaef916ddf1","ts":"2026-09-15T13:57:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 260.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.07; R:R 0.07 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.07,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.738,"ext_from_open_pct":0.84,"max_ext_allowed_pct":4.0,"volume_pace":0.753,"trend":"flat","recent_slope_pct":0.0258,"volatility":"medium"},"price":7.765,"volume":{"bars":27,"last_bar_volume":12069.0,"baseline_avg":15576.85,"bar_rvol":0.774804,"raw_accel":0.562532,"smooth_accel":0.213794,"accel_momentum":0.722536,"rvol_3bar":[0.386236,0.472801,0.774804],"trend_3bar":"ACCELERATING","projected_rvol":0.071953},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":97.0,"sell_vol":608.0,"unclassified_vol":0.0,"imbalance":-0.724823,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":9.728845},"context":{"vwap":7.737983,"price_vs_vwap_pct":0.349154,"ema9":7.763643,"ema20":7.758164,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.615817,"atr":0.073074,"spread_atr":0.136848,"own_change_pct":0.061854,"rel_strength_pct":{"SPY":0.065146,"IWM":-0.109829}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.561595},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4e79f25ea149","ts":"2026-09-15T13:57:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.64 below VWAP $10.64","plan":{"state":"PASS","setup":"","stop":10.4918,"target":10.85,"target_label":"ceiling","reward_risk":1.42,"pos_in_5d_range_pct":33.4,"room_to_5d_high_atr":1.45},"price":10.64,"vwap":10.6413,"ext_from_open_pct":2.21,"max_ext_allowed_pct":3.0,"volume_pace":1.983,"trend":"flat","recent_slope_pct":-0.0843,"volatility":"medium"},"price":10.64,"volume":{"bars":27,"last_bar_volume":9831.0,"baseline_avg":41582.7,"bar_rvol":0.23642,"raw_accel":-0.48146,"smooth_accel":-0.438595,"accel_momentum":0.024778,"rvol_3bar":[0.226109,0.449274,0.23642],"trend_3bar":"MIXED","projected_rvol":0.331696},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":1511.0,"sell_vol":6600.0,"unclassified_vol":0.0,"imbalance":-0.62742,"bid":10.63,"ask":10.64,"spread_pct":0.094029,"quote_size_imbalance":null,"quote_age_s":0.208334},"context":{"vwap":10.641195,"price_vs_vwap_pct":-0.011226,"ema9":10.668296,"ema20":10.662315,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.295684,"dist_to_hod_atr":2.098127,"atr":0.119154,"spread_atr":0.083925,"own_change_pct":0.61263,"rel_strength_pct":{"SPY":0.615921,"IWM":0.440947}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.148335},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"90a3f7cf1e4f","ts":"2026-09-15T13:57:35+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5338,"target":10.85,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":36.6,"room_to_5d_high_atr":1.38},"price":10.682,"vwap":10.6413,"ext_from_open_pct":2.61,"max_ext_allowed_pct":3.0,"volume_pace":1.976,"trend":"flat","recent_slope_pct":-0.0056,"volatility":"medium"},"price":10.682,"volume":{"bars":27,"last_bar_volume":9831.0,"baseline_avg":41582.7,"bar_rvol":0.23642,"raw_accel":-0.48146,"smooth_accel":-0.438595,"accel_momentum":0.024778,"rvol_3bar":[0.226109,0.449274,0.23642],"trend_3bar":"MIXED","projected_rvol":0.36856},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":1067.0,"sell_vol":6694.0,"unclassified_vol":0.0,"imbalance":-0.725035,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.226782},"context":{"vwap":10.641195,"price_vs_vwap_pct":0.383466,"ema9":10.668296,"ema20":10.662315,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-1.910009,"dist_to_hod_atr":1.745642,"atr":0.119154,"spread_atr":0.083925,"own_change_pct":0.61263,"rel_strength_pct":{"SPY":0.615921,"IWM":0.440947}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.171413},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b4306ba0dc56","ts":"2026-09-15T13:57:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.62 below VWAP $10.64","plan":{"state":"PASS","setup":"","stop":10.4718,"target":10.64,"target_label":"premarket_high","reward_risk":0.13,"pos_in_5d_range_pct":31.8,"room_to_5d_high_atr":1.48},"price":10.62,"vwap":10.6412,"ext_from_open_pct":2.02,"max_ext_allowed_pct":3.0,"volume_pace":1.97,"trend":"flat","recent_slope_pct":-0.1218,"volatility":"medium"},"price":10.62,"volume":{"bars":27,"last_bar_volume":9831.0,"baseline_avg":41582.7,"bar_rvol":0.23642,"raw_accel":-0.48146,"smooth_accel":-0.438595,"accel_momentum":0.024778,"rvol_3bar":[0.226109,0.449274,0.23642],"trend_3bar":"MIXED","projected_rvol":0.328262},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":1067.0,"sell_vol":6843.0,"unclassified_vol":0.0,"imbalance":-0.730215,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.369609},"context":{"vwap":10.641195,"price_vs_vwap_pct":-0.199175,"ema9":10.668296,"ema20":10.662315,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.479339,"dist_to_hod_atr":2.265977,"atr":0.119154,"spread_atr":0.083925,"own_change_pct":0.61263,"rel_strength_pct":{"SPY":0.615921,"IWM":0.440947}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.172638},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0f9ea0ef0e86","ts":"2026-09-15T13:57:45+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":2.53,"pos_in_5d_range_pct":70.1,"room_to_5d_high_atr":0.94},"price":13.05,"vwap":12.8642,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":2.591,"trend":"flat","recent_slope_pct":-0.3096,"volatility":"medium"},"price":13.05,"volume":{"bars":27,"last_bar_volume":3890.0,"baseline_avg":4011.35,"bar_rvol":0.969748,"raw_accel":2.704762,"smooth_accel":0.438573,"accel_momentum":0.323356,"rvol_3bar":[0.099162,0.248086,0.969748],"trend_3bar":"ACCELERATING","projected_rvol":0.478974},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":353.0,"sell_vol":969.0,"unclassified_vol":0.0,"imbalance":-0.465961,"bid":12.99,"ask":13.06,"spread_pct":0.537428,"quote_size_imbalance":null,"quote_age_s":4.477449},"context":{"vwap":12.862792,"price_vs_vwap_pct":1.455426,"ema9":13.134392,"ema20":13.073576,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-1.952682,"dist_to_hod_atr":1.788522,"atr":0.145315,"spread_atr":0.481711,"own_change_pct":-1.588502,"rel_strength_pct":{"SPY":-1.585211,"IWM":-1.760185}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.451865},"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":"fe7c76d22c13","ts":"2026-09-15T13:57:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.9435,"target":6.39,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":45.6,"room_to_5d_high_atr":3.81},"price":6.245,"vwap":6.1786,"ext_from_open_pct":-1.42,"max_ext_allowed_pct":4.0,"volume_pace":2.913,"trend":"flat","recent_slope_pct":0.5514,"volatility":"high"},"price":6.245,"volume":{"bars":27,"last_bar_volume":14570.0,"baseline_avg":29693.55,"bar_rvol":0.490679,"raw_accel":0.231406,"smooth_accel":-0.221103,"accel_momentum":0.310512,"rvol_3bar":[0.173481,0.364967,0.490679],"trend_3bar":"ACCELERATING","projected_rvol":2.413453},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":15215.0,"sell_vol":2293.0,"unclassified_vol":0.0,"imbalance":0.738063,"bid":6.23,"ask":6.26,"spread_pct":0.480384,"quote_size_imbalance":null,"quote_age_s":0.413588},"context":{"vwap":6.176764,"price_vs_vwap_pct":1.104719,"ema9":6.121653,"ema20":6.143552,"ema_stack":false,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-2.421875,"dist_to_hod_atr":1.668128,"atr":0.092919,"spread_atr":0.322863,"own_change_pct":0.10449,"rel_strength_pct":{"SPY":0.107781,"IWM":-0.067193}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.362152},"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":"93254302e7da","ts":"2026-09-15T13:57:55+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.2054,"target":5.296,"target_label":"prev_day_high","reward_risk":1.2,"pos_in_5d_range_pct":12.9,"room_to_5d_high_atr":1.9},"price":5.2466,"vwap":5.2474,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":4.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":-0.0278,"volatility":"medium"},"price":5.2466,"volume":{"bars":27,"last_bar_volume":124483.0,"baseline_avg":40889.3,"bar_rvol":3.044391,"raw_accel":3.176581,"smooth_accel":0.055046,"accel_momentum":0.492069,"rvol_3bar":[0.993637,0.753617,3.044391],"trend_3bar":"MIXED","projected_rvol":0.894459},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":9109.0,"sell_vol":9042.0,"unclassified_vol":0.0,"imbalance":0.003691,"bid":5.26,"ask":5.27,"spread_pct":0.189934,"quote_size_imbalance":null,"quote_age_s":6.744601},"context":{"vwap":5.24725,"price_vs_vwap_pct":-0.012387,"ema9":5.253058,"ema20":5.247891,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.444023,"dist_to_hod_atr":1.479607,"atr":0.015815,"spread_atr":0.632311,"own_change_pct":0.413861,"rel_strength_pct":{"SPY":0.417153,"IWM":0.242179}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.011238},"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":"5931a3d80226","ts":"2026-09-15T13:58:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.29% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":5.9185,"target":6.39,"target_label":"prev_day_high","reward_risk":0.56,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":3.83},"price":6.22,"vwap":6.1785,"ext_from_open_pct":-1.82,"max_ext_allowed_pct":3.0,"volume_pace":2.993,"trend":"flat","recent_slope_pct":0.4704,"volatility":"high"},"price":6.22,"volume":{"bars":27,"last_bar_volume":14570.0,"baseline_avg":29693.55,"bar_rvol":0.490679,"raw_accel":0.231406,"smooth_accel":-0.221103,"accel_momentum":0.310512,"rvol_3bar":[0.173481,0.364967,0.490679],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":408,"trade_rate":13.6,"buy_vol":27891.0,"sell_vol":22760.0,"unclassified_vol":0.0,"imbalance":0.101301,"bid":6.18,"ask":6.26,"spread_pct":1.286174,"quote_size_imbalance":null,"quote_age_s":2.186127},"context":{"vwap":6.176764,"price_vs_vwap_pct":0.699977,"ema9":6.121653,"ema20":6.143552,"ema_stack":false,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-2.8125,"dist_to_hod_atr":1.937181,"atr":0.092919,"spread_atr":0.860969,"own_change_pct":0.10449,"rel_strength_pct":{"SPY":0.121602,"IWM":0.055472}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.049706},"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":"34ebffd22448","ts":"2026-09-15T13:58:00+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.21,"target":5.296,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":1.76},"price":5.27,"vwap":5.2476,"ext_from_open_pct":0.19,"max_ext_allowed_pct":3.0,"volume_pace":1.019,"trend":"flat","recent_slope_pct":0.0612,"volatility":"medium"},"price":5.27,"volume":{"bars":27,"last_bar_volume":124483.0,"baseline_avg":40889.3,"bar_rvol":3.044391,"raw_accel":3.176581,"smooth_accel":0.055046,"accel_momentum":0.492069,"rvol_3bar":[0.993637,0.753617,3.044391],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":9148.0,"sell_vol":8805.0,"unclassified_vol":0.0,"imbalance":0.019105,"bid":5.26,"ask":5.27,"spread_pct":0.189934,"quote_size_imbalance":null,"quote_age_s":0.004234},"context":{"vwap":5.24725,"price_vs_vwap_pct":0.433561,"ema9":5.253058,"ema20":5.247891,"ema_stack":true,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.015815,"spread_atr":0.632311,"own_change_pct":0.413861,"rel_strength_pct":{"SPY":0.430974,"IWM":0.364844}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.058164},"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":"1681a3bfecf1","ts":"2026-09-15T13:58:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.10; R:R 0.10 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 27609 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":56.9,"room_to_5d_high_atr":0.67},"price":7.77,"vwap":7.7387,"ext_from_open_pct":0.91,"max_ext_allowed_pct":4.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":0.0129,"volatility":"medium"},"price":7.77,"volume":{"bars":28,"last_bar_volume":13937.0,"baseline_avg":15488.35,"bar_rvol":0.899838,"raw_accel":0.154777,"smooth_accel":0.29651,"accel_momentum":0.082715,"rvol_3bar":[0.472801,0.774804,0.899838],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":423.0,"sell_vol":1677.0,"unclassified_vol":0.0,"imbalance":-0.597143,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":2.884349},"context":{"vwap":7.738668,"price_vs_vwap_pct":0.404875,"ema9":7.763914,"ema20":7.758815,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.512164,"dist_to_hod_atr":0.580337,"atr":0.068926,"spread_atr":0.145084,"own_change_pct":0.193548,"rel_strength_pct":{"SPY":0.21066,"IWM":0.14453}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.537332},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8cd0ff5afa1f","ts":"2026-09-15T13:58:10+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.9335,"target":6.39,"target_label":"prev_day_high","reward_risk":0.51,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":3.82},"price":6.235,"vwap":6.1787,"ext_from_open_pct":-1.58,"max_ext_allowed_pct":3.0,"volume_pace":2.987,"trend":"flat","recent_slope_pct":0.6332,"volatility":"high"},"price":6.235,"volume":{"bars":28,"last_bar_volume":94983.0,"baseline_avg":29580.45,"bar_rvol":3.211006,"raw_accel":5.51908,"smooth_accel":4.679893,"accel_momentum":4.900996,"rvol_3bar":[0.364967,0.490679,3.211006],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":372,"trade_rate":12.4,"buy_vol":21603.0,"sell_vol":23805.0,"unclassified_vol":0.0,"imbalance":-0.048494,"bid":6.21,"ask":6.26,"spread_pct":0.801925,"quote_size_imbalance":null,"quote_age_s":1.775741},"context":{"vwap":6.178522,"price_vs_vwap_pct":0.914096,"ema9":6.141322,"ema20":6.150833,"ema_stack":false,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-2.578125,"dist_to_hod_atr":1.676536,"atr":0.098417,"spread_atr":0.508041,"own_change_pct":1.344196,"rel_strength_pct":{"SPY":1.361308,"IWM":1.295178}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.155713},"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":"0c3d40d7fd84","ts":"2026-09-15T13:58:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 305.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.08; R:R 0.08 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.08,"pos_in_5d_range_pct":55.6,"room_to_5d_high_atr":0.69},"price":7.7629,"vwap":7.7387,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.754,"trend":"flat","recent_slope_pct":-0.0054,"volatility":"medium"},"price":7.7629,"volume":{"bars":28,"last_bar_volume":13937.0,"baseline_avg":15488.35,"bar_rvol":0.899838,"raw_accel":0.154777,"smooth_accel":0.29651,"accel_momentum":0.082715,"rvol_3bar":[0.472801,0.774804,0.899838],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":430.0,"sell_vol":2469.0,"unclassified_vol":0.0,"imbalance":-0.703346,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":3.202374},"context":{"vwap":7.738668,"price_vs_vwap_pct":0.313128,"ema9":7.763914,"ema20":7.758815,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.603073,"dist_to_hod_atr":0.683346,"atr":0.068926,"spread_atr":0.145084,"own_change_pct":0.193548,"rel_strength_pct":{"SPY":0.21066,"IWM":0.14453}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.632897},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"75b6ea1b3930","ts":"2026-09-15T13:58:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.5225,"target":10.85,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":35.7,"room_to_5d_high_atr":1.4},"price":10.6707,"vwap":10.6412,"ext_from_open_pct":2.5,"max_ext_allowed_pct":3.0,"volume_pace":1.948,"trend":"flat","recent_slope_pct":-0.0851,"volatility":"medium"},"price":10.6707,"volume":{"bars":28,"last_bar_volume":14750.0,"baseline_avg":38158.4,"bar_rvol":0.386547,"raw_accel":0.500356,"smooth_accel":-0.061092,"accel_momentum":0.377503,"rvol_3bar":[0.449274,0.23642,0.386547],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":5031.0,"sell_vol":3889.0,"unclassified_vol":0.0,"imbalance":0.128027,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.203297},"context":{"vwap":10.641165,"price_vs_vwap_pct":0.277559,"ema9":10.658637,"ema20":10.658285,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.013774,"dist_to_hod_atr":1.890167,"atr":0.116021,"spread_atr":0.086191,"own_change_pct":-0.141044,"rel_strength_pct":{"SPY":-0.123932,"IWM":-0.190062}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.049488},"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":"99bfa1a85105","ts":"2026-09-15T13:58:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 310.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.09; R:R 0.09 < 2.0 at 7.78; breakout: 1-min close > 7.82 on >= 27609 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":57.8,"room_to_5d_high_atr":0.65},"price":7.775,"vwap":7.739,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.758,"trend":"flat","recent_slope_pct":0.0257,"volatility":"medium"},"price":7.775,"volume":{"bars":28,"last_bar_volume":13937.0,"baseline_avg":15488.35,"bar_rvol":0.899838,"raw_accel":0.154777,"smooth_accel":0.29651,"accel_momentum":0.082715,"rvol_3bar":[0.472801,0.774804,0.899838],"trend_3bar":"ACCELERATING","projected_rvol":1.222855},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":4107.0,"sell_vol":2665.0,"unclassified_vol":0.0,"imbalance":0.212936,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":0.934459},"context":{"vwap":7.738668,"price_vs_vwap_pct":0.469486,"ema9":7.763914,"ema20":7.758815,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.448143,"dist_to_hod_atr":0.507795,"atr":0.068926,"spread_atr":0.145084,"own_change_pct":0.193548,"rel_strength_pct":{"SPY":0.21066,"IWM":0.14453}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.191607},"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":"3cdb8bc91e09","ts":"2026-09-15T13:58:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.62 below VWAP $10.64","plan":{"state":"PASS","setup":"","stop":10.4741,"target":10.64,"target_label":"premarket_high","reward_risk":0.12,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.48},"price":10.6223,"vwap":10.6412,"ext_from_open_pct":2.04,"max_ext_allowed_pct":4.0,"volume_pace":1.942,"trend":"flat","recent_slope_pct":-0.176,"volatility":"medium"},"price":10.6223,"volume":{"bars":28,"last_bar_volume":14750.0,"baseline_avg":38158.4,"bar_rvol":0.386547,"raw_accel":0.500356,"smooth_accel":-0.061092,"accel_momentum":0.377503,"rvol_3bar":[0.449274,0.23642,0.386547],"trend_3bar":"MIXED","projected_rvol":0.343935},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":4943.0,"sell_vol":3737.0,"unclassified_vol":0.0,"imbalance":0.13894,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.021267},"context":{"vwap":10.641165,"price_vs_vwap_pct":-0.177279,"ema9":10.658637,"ema20":10.658285,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.458219,"dist_to_hod_atr":2.307331,"atr":0.116021,"spread_atr":0.086191,"own_change_pct":-0.141044,"rel_strength_pct":{"SPY":-0.123932,"IWM":-0.190062}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.053707},"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":"9ed578b0dfd7","ts":"2026-09-15T13:58:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1452,"target":7.2991,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":29.2,"room_to_5d_high_atr":1.51},"price":7.2496,"vwap":7.2482,"ext_from_open_pct":1.39,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0746,"volatility":"medium"},"price":7.2496,"volume":{"bars":28,"last_bar_volume":156434.0,"baseline_avg":109536.85,"bar_rvol":1.42814,"raw_accel":0.986892,"smooth_accel":0.649646,"accel_momentum":-0.188624,"rvol_3bar":[0.850971,0.725223,1.42814],"trend_3bar":"MIXED","projected_rvol":0.670884},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":34482.0,"sell_vol":9749.0,"unclassified_vol":0.0,"imbalance":0.559178,"bid":7.24,"ask":7.25,"spread_pct":0.138026,"quote_size_imbalance":null,"quote_age_s":0.057877},"context":{"vwap":7.248097,"price_vs_vwap_pct":0.020731,"ema9":7.26595,"ema20":7.265195,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.096862,"dist_to_hod_atr":1.418606,"atr":0.056675,"spread_atr":0.176444,"own_change_pct":-0.05372,"rel_strength_pct":{"SPY":-0.036608,"IWM":-0.102738}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.798585},"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":"888361bd2eaa","ts":"2026-09-15T13:58:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.9219,"target":6.03,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":110.1,"room_to_5d_high_atr":-0.23},"price":6.005,"vwap":5.9835,"ext_from_open_pct":1.61,"max_ext_allowed_pct":5.0,"volume_pace":3.474,"trend":"flat","recent_slope_pct":0.219,"volatility":"medium"},"price":6.005,"volume":{"bars":28,"last_bar_volume":21593.0,"baseline_avg":252299.65,"bar_rvol":0.085585,"raw_accel":-0.657661,"smooth_accel":-0.665992,"accel_momentum":-0.051355,"rvol_3bar":[0.199097,0.138336,0.085585],"trend_3bar":"DECELERATING","projected_rvol":1.109719},"flow":{"window_s":30,"trades":262,"trade_rate":8.733333,"buy_vol":142726.0,"sell_vol":64477.0,"unclassified_vol":0.0,"imbalance":0.377644,"bid":6.0,"ask":6.01,"spread_pct":0.166528,"quote_size_imbalance":null,"quote_age_s":0.082473},"context":{"vwap":5.983271,"price_vs_vwap_pct":0.363163,"ema9":5.967915,"ema20":5.969797,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.07084,"dist_to_hod_atr":1.320394,"atr":0.049228,"spread_atr":0.203137,"own_change_pct":0.167926,"rel_strength_pct":{"SPY":0.185038,"IWM":0.118908}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.032321},"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":"7a35bbb5d50d","ts":"2026-09-15T13:59:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 310.0s, plan says PASS; stop 10.06, target 10.13 (premarket_high), R:R 0.56; target 0.03 away > ~0.02 reachable in 356 min","plan":{"state":"PASS","setup":"","stop":10.0582,"target":10.13,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":10.0,"room_to_5d_high_atr":4.14},"price":10.1041,"vwap":10.0928,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":1.005,"trend":"flat","recent_slope_pct":-0.0018,"volatility":"low"},"price":10.1041,"volume":{"bars":29,"last_bar_volume":35544.0,"baseline_avg":37230.3,"bar_rvol":0.954706,"raw_accel":0.582899,"smooth_accel":-0.142119,"accel_momentum":0.280065,"rvol_3bar":[0.630521,0.608345,0.954706],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":811.0,"sell_vol":5996.0,"unclassified_vol":0.0,"imbalance":-0.761716,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.362656},"context":{"vwap":10.092813,"price_vs_vwap_pct":0.111834,"ema9":10.100989,"ema20":10.09702,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.157115,"dist_to_hod_atr":0.639959,"atr":0.024845,"spread_atr":0.40249,"own_change_pct":-0.049456,"rel_strength_pct":{"SPY":-0.025764,"IWM":-0.087961}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.727215},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0fa36efb3651","ts":"2026-09-15T13:59:15+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 405.0s, plan says PASS; stop 9.91, target 10.20 (prev_day_high), R:R 1.43; target 0.17 away > ~0.15 reachable in 356 min","plan":{"state":"PASS","setup":"","stop":9.9109,"target":10.2,"target_label":"prev_day_high","reward_risk":1.43,"pos_in_5d_range_pct":25.0,"room_to_5d_high_atr":2.39},"price":10.0301,"vwap":9.9652,"ext_from_open_pct":2.04,"max_ext_allowed_pct":3.0,"volume_pace":1.501,"trend":"flat","recent_slope_pct":-0.0302,"volatility":"medium"},"price":10.0301,"volume":{"bars":29,"last_bar_volume":142833.0,"baseline_avg":468199.85,"bar_rvol":0.305068,"raw_accel":-0.584886,"smooth_accel":0.02927,"accel_momentum":-0.556263,"rvol_3bar":[1.423097,0.71787,0.305068],"trend_3bar":"DECELERATING","projected_rvol":0.167928},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":21822.0,"sell_vol":16806.0,"unclassified_vol":0.0,"imbalance":0.129854,"bid":10.03,"ask":10.04,"spread_pct":0.099651,"quote_size_imbalance":null,"quote_age_s":1.156571},"context":{"vwap":9.965144,"price_vs_vwap_pct":0.651827,"ema9":10.019456,"ema20":9.997045,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.19801,"dist_to_hod_atr":0.385763,"atr":0.051586,"spread_atr":0.193851,"own_change_pct":0.395,"rel_strength_pct":{"SPY":0.418692,"IWM":0.356495}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.039614},"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":"c3805800b3af","ts":"2026-09-15T13:59:15+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":2.84,"pos_in_5d_range_pct":68.5,"room_to_5d_high_atr":0.99},"price":13.025,"vwap":12.8802,"ext_from_open_pct":0.35,"max_ext_allowed_pct":3.0,"volume_pace":2.726,"trend":"flat","recent_slope_pct":-0.2183,"volatility":"medium"},"price":13.025,"volume":{"bars":29,"last_bar_volume":20308.0,"baseline_avg":2560.8,"bar_rvol":7.930334,"raw_accel":12.881066,"smooth_accel":5.694756,"accel_momentum":4.747964,"rvol_3bar":[0.969748,0.358855,7.930334],"trend_3bar":"MIXED","projected_rvol":0.104655},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":542.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.960217,"bid":12.99,"ask":13.06,"spread_pct":0.537428,"quote_size_imbalance":null,"quote_age_s":17.588367},"context":{"vwap":12.880195,"price_vs_vwap_pct":1.124244,"ema9":13.099011,"ema20":13.066918,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-2.140512,"dist_to_hod_atr":2.004407,"atr":0.142137,"spread_atr":0.492483,"own_change_pct":-1.142272,"rel_strength_pct":{"SPY":-1.118579,"IWM":-1.180776}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":7.614842},"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":"692d52d1ae1c","ts":"2026-09-15T13:59:20+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 410.0s, plan says WATCH; stop 9.92, target 10.20 (prev_day_high), R:R 1.38; R:R 1.38 < 2.0 at 10.04; breakout: 1-min close > 10.06 on >= 730582 sh","plan":{"state":"WATCH","setup":"","stop":9.9158,"target":10.2,"target_label":"prev_day_high","reward_risk":1.38,"pos_in_5d_range_pct":25.3,"room_to_5d_high_atr":2.38},"price":10.035,"vwap":9.9652,"ext_from_open_pct":2.09,"max_ext_allowed_pct":3.0,"volume_pace":1.497,"trend":"flat","recent_slope_pct":-0.0204,"volatility":"medium"},"price":10.035,"volume":{"bars":29,"last_bar_volume":142833.0,"baseline_avg":468199.85,"bar_rvol":0.305068,"raw_accel":-0.584886,"smooth_accel":0.02927,"accel_momentum":-0.556263,"rvol_3bar":[1.423097,0.71787,0.305068],"trend_3bar":"DECELERATING","projected_rvol":0.141081},"flow":{"window_s":30,"trades":123,"trade_rate":4.1,"buy_vol":22259.0,"sell_vol":17812.0,"unclassified_vol":0.0,"imbalance":0.110978,"bid":10.03,"ask":10.04,"spread_pct":0.099651,"quote_size_imbalance":null,"quote_age_s":0.020495},"context":{"vwap":9.965144,"price_vs_vwap_pct":0.700999,"ema9":10.019456,"ema20":9.997045,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.149254,"dist_to_hod_atr":0.290776,"atr":0.051586,"spread_atr":0.193851,"own_change_pct":0.395,"rel_strength_pct":{"SPY":0.418692,"IWM":0.356495}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.033856},"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":"ee80d327e72b","ts":"2026-09-15T13:59:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 325.0s, plan says WATCH; stop 10.06, target 10.13 (premarket_high), R:R 0.47; R:R 0.47 < 2.0 at 10.11; breakout: 1-min close > 10.13 on >= 105134 sh","plan":{"state":"WATCH","setup":"","stop":10.06,"target":10.13,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":10.4,"room_to_5d_high_atr":4.13},"price":10.1075,"vwap":10.0928,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.997,"trend":"flat","recent_slope_pct":0.0049,"volatility":"low"},"price":10.1075,"volume":{"bars":29,"last_bar_volume":35544.0,"baseline_avg":37230.3,"bar_rvol":0.954706,"raw_accel":0.582899,"smooth_accel":-0.142119,"accel_momentum":0.280065,"rvol_3bar":[0.630521,0.608345,0.954706],"trend_3bar":"MIXED","projected_rvol":0.118774},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":373.0,"sell_vol":1679.0,"unclassified_vol":0.0,"imbalance":-0.636452,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.834427},"context":{"vwap":10.092813,"price_vs_vwap_pct":0.145521,"ema9":10.100989,"ema20":10.09702,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.123518,"dist_to_hod_atr":0.503112,"atr":0.024845,"spread_atr":0.40249,"own_change_pct":-0.049456,"rel_strength_pct":{"SPY":-0.025764,"IWM":-0.087961}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.607625},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d17ea3aa6b24","ts":"2026-09-15T13:59:25+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 415.0s, plan says PASS; stop 9.91, target 10.20 (prev_day_high), R:R 1.43; target 0.17 away > ~0.15 reachable in 356 min","plan":{"state":"PASS","setup":"","stop":9.9108,"target":10.2,"target_label":"prev_day_high","reward_risk":1.43,"pos_in_5d_range_pct":25.0,"room_to_5d_high_atr":2.39},"price":10.03,"vwap":9.9653,"ext_from_open_pct":2.03,"max_ext_allowed_pct":3.0,"volume_pace":1.494,"trend":"flat","recent_slope_pct":-0.0304,"volatility":"medium"},"price":10.03,"volume":{"bars":29,"last_bar_volume":142833.0,"baseline_avg":468199.85,"bar_rvol":0.305068,"raw_accel":-0.584886,"smooth_accel":0.02927,"accel_momentum":-0.556263,"rvol_3bar":[1.423097,0.71787,0.305068],"trend_3bar":"DECELERATING","projected_rvol":0.172439},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":11086.0,"sell_vol":27398.0,"unclassified_vol":0.0,"imbalance":-0.423864,"bid":10.03,"ask":10.04,"spread_pct":0.099651,"quote_size_imbalance":null,"quote_age_s":0.035679},"context":{"vwap":9.965144,"price_vs_vwap_pct":0.650824,"ema9":10.019456,"ema20":9.997045,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.199005,"dist_to_hod_atr":0.387701,"atr":0.051586,"spread_atr":0.193851,"own_change_pct":0.395,"rel_strength_pct":{"SPY":0.418692,"IWM":0.356495}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.129308},"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":"b7066b316742","ts":"2026-09-15T13:59:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 380.0s, plan says PASS; stop 7.14, target 7.81 (ceiling), R:R 0.07; R:R 0.07 < 2.0 at 7.77; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.07,"pos_in_5d_range_pct":56.3,"room_to_5d_high_atr":0.68},"price":7.7666,"vwap":7.7394,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.738,"trend":"flat","recent_slope_pct":0.017,"volatility":"medium"},"price":7.7666,"volume":{"bars":29,"last_bar_volume":11800.0,"baseline_avg":15670.35,"bar_rvol":0.753014,"raw_accel":-0.153333,"smooth_accel":0.952789,"accel_momentum":0.656279,"rvol_3bar":[0.774804,0.899838,0.753014],"trend_3bar":"MIXED","projected_rvol":0.065091},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":1853.0,"sell_vol":428.0,"unclassified_vol":0.0,"imbalance":0.624726,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":2.127478},"context":{"vwap":7.739421,"price_vs_vwap_pct":0.351178,"ema9":7.766132,"ema20":7.760356,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.555698,"dist_to_hod_atr":0.664675,"atr":0.065295,"spread_atr":0.153151,"own_change_pct":0.257898,"rel_strength_pct":{"SPY":0.281591,"IWM":0.219394}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.470428},"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":"64765476f092","ts":"2026-09-15T13:59:30+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 385.0s, plan says WATCH; stop 7.14, target 7.83 (premarket_high), R:R 0.09; R:R 0.09 < 2.0 at 7.78; breakout: 1-min close > 7.82 on >= 27267 sh","plan":{"state":"WATCH","setup":"","stop":7.14,"target":7.83,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":57.8,"room_to_5d_high_atr":0.65},"price":7.775,"vwap":7.7395,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":0.736,"trend":"flat","recent_slope_pct":0.0386,"volatility":"medium"},"price":7.775,"volume":{"bars":29,"last_bar_volume":11800.0,"baseline_avg":15670.35,"bar_rvol":0.753014,"raw_accel":-0.153333,"smooth_accel":0.952789,"accel_momentum":0.656279,"rvol_3bar":[0.774804,0.899838,0.753014],"trend_3bar":"MIXED","projected_rvol":0.087299},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":225.0,"sell_vol":459.0,"unclassified_vol":0.0,"imbalance":-0.342105,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":0.005084},"context":{"vwap":7.739421,"price_vs_vwap_pct":0.459713,"ema9":7.766132,"ema20":7.760356,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.448143,"dist_to_hod_atr":0.536028,"atr":0.065295,"spread_atr":0.153151,"own_change_pct":0.257898,"rel_strength_pct":{"SPY":0.281591,"IWM":0.219394}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.25761},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"73b5f0585d3a","ts":"2026-09-15T13:59:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 335.0s, plan says PASS; stop 10.06, target 10.13 (premarket_high), R:R 0.54; target 0.03 away > ~0.02 reachable in 356 min","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.13,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.0928,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.992,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":10.105,"volume":{"bars":29,"last_bar_volume":35544.0,"baseline_avg":37230.3,"bar_rvol":0.954706,"raw_accel":0.582899,"smooth_accel":-0.142119,"accel_momentum":0.280065,"rvol_3bar":[0.630521,0.608345,0.954706],"trend_3bar":"MIXED","projected_rvol":0.204887},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":372.0,"sell_vol":3442.0,"unclassified_vol":0.0,"imbalance":-0.804929,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.114208},"context":{"vwap":10.092813,"price_vs_vwap_pct":0.120751,"ema9":10.100989,"ema20":10.09702,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.148221,"dist_to_hod_atr":0.603735,"atr":0.024845,"spread_atr":0.40249,"own_change_pct":-0.049456,"rel_strength_pct":{"SPY":-0.025764,"IWM":-0.087961}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.768471},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4288d80cf019","ts":"2026-09-15T13:59:35+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.98 below VWAP $5.98","plan":{"state":"PASS","setup":"","stop":5.8988,"target":6.03,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":107.0,"room_to_5d_high_atr":-0.16},"price":5.9819,"vwap":5.9836,"ext_from_open_pct":1.22,"max_ext_allowed_pct":4.0,"volume_pace":3.442,"trend":"flat","recent_slope_pct":0.151,"volatility":"medium"},"price":5.9819,"volume":{"bars":29,"last_bar_volume":270544.0,"baseline_avg":231360.2,"bar_rvol":1.169363,"raw_accel":3.677451,"smooth_accel":0.680839,"accel_momentum":1.346831,"rvol_3bar":[0.138336,0.085585,1.169363],"trend_3bar":"MIXED","projected_rvol":0.667108},"flow":{"window_s":30,"trades":237,"trade_rate":7.9,"buy_vol":48636.0,"sell_vol":29477.0,"unclassified_vol":0.0,"imbalance":0.245273,"bid":5.98,"ask":5.99,"spread_pct":0.167084,"quote_size_imbalance":null,"quote_age_s":2.820269},"context":{"vwap":5.983524,"price_vs_vwap_pct":-0.027138,"ema9":5.975332,"ema20":5.97315,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.4514,"dist_to_hod_atr":1.777846,"atr":0.049554,"spread_atr":0.201799,"own_change_pct":0.586265,"rel_strength_pct":{"SPY":0.609957,"IWM":0.54776}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.286813},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"701204bb4164","ts":"2026-09-15T13:59:35+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":3.37,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":1.06},"price":12.99,"vwap":12.8805,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":2.701,"trend":"flat","recent_slope_pct":-0.272,"volatility":"medium"},"price":12.99,"volume":{"bars":29,"last_bar_volume":20308.0,"baseline_avg":2560.8,"bar_rvol":7.930334,"raw_accel":12.881066,"smooth_accel":5.694756,"accel_momentum":4.747964,"rvol_3bar":[0.969748,0.358855,7.930334],"trend_3bar":"MIXED","projected_rvol":0.315973},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":308.0,"sell_vol":164.0,"unclassified_vol":0.0,"imbalance":0.305085,"bid":12.99,"ask":13.06,"spread_pct":0.537428,"quote_size_imbalance":null,"quote_age_s":1.041143},"context":{"vwap":12.880195,"price_vs_vwap_pct":0.852509,"ema9":13.099011,"ema20":13.066918,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-2.403474,"dist_to_hod_atr":2.250648,"atr":0.142137,"spread_atr":0.492483,"own_change_pct":-1.142272,"rel_strength_pct":{"SPY":-1.118579,"IWM":-1.180776}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.419424},"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":"8473477120df","ts":"2026-09-15T13:59:40+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.12% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":5.9211,"target":6.39,"target_label":"prev_day_high","reward_risk":0.56,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":3.83},"price":6.2226,"vwap":6.1807,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":4.0,"volume_pace":2.967,"trend":"flat","recent_slope_pct":0.4752,"volatility":"high"},"price":6.2226,"volume":{"bars":29,"last_bar_volume":38605.0,"baseline_avg":31319.55,"bar_rvol":1.232617,"raw_accel":-0.593559,"smooth_accel":4.41434,"accel_momentum":-0.265553,"rvol_3bar":[0.490679,3.211006,1.232617],"trend_3bar":"MIXED","projected_rvol":0.732338},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":10289.0,"sell_vol":4189.0,"unclassified_vol":0.0,"imbalance":0.421329,"bid":6.22,"ask":6.29,"spread_pct":1.119105,"quote_size_imbalance":null,"quote_age_s":0.481139},"context":{"vwap":6.179959,"price_vs_vwap_pct":0.689989,"ema9":6.157058,"ema20":6.15742,"ema_stack":false,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-2.771875,"dist_to_hod_atr":1.827085,"atr":0.097095,"spread_atr":0.720947,"own_change_pct":2.025752,"rel_strength_pct":{"SPY":2.049445,"IWM":1.987248}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.519337},"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":"fe44a76431b6","ts":"2026-09-15T13:59:40+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 430.0s, plan says WATCH; stop 9.92, target 10.20 (prev_day_high), R:R 1.38; R:R 1.38 < 2.0 at 10.04; breakout: 1-min close > 10.06 on >= 730582 sh","plan":{"state":"WATCH","setup":"","stop":9.9158,"target":10.2,"target_label":"prev_day_high","reward_risk":1.38,"pos_in_5d_range_pct":25.3,"room_to_5d_high_atr":2.38},"price":10.035,"vwap":9.9657,"ext_from_open_pct":2.09,"max_ext_allowed_pct":4.0,"volume_pace":1.492,"trend":"flat","recent_slope_pct":-0.0204,"volatility":"medium"},"price":10.035,"volume":{"bars":29,"last_bar_volume":142833.0,"baseline_avg":468199.85,"bar_rvol":0.305068,"raw_accel":-0.584886,"smooth_accel":0.02927,"accel_momentum":-0.556263,"rvol_3bar":[1.423097,0.71787,0.305068],"trend_3bar":"DECELERATING","projected_rvol":0.440568},"flow":{"window_s":30,"trades":208,"trade_rate":6.933333,"buy_vol":103043.0,"sell_vol":29775.0,"unclassified_vol":0.0,"imbalance":0.551642,"bid":10.03,"ask":10.04,"spread_pct":0.099651,"quote_size_imbalance":null,"quote_age_s":0.59854},"context":{"vwap":9.965144,"price_vs_vwap_pct":0.700999,"ema9":10.019456,"ema20":9.997045,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.149254,"dist_to_hod_atr":0.290776,"atr":0.051586,"spread_atr":0.193851,"own_change_pct":0.395,"rel_strength_pct":{"SPY":0.418692,"IWM":0.356495}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.168289},"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":"9489b14e629a","ts":"2026-09-15T13:59:45+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.9884,"target":6.39,"target_label":"prev_day_high","reward_risk":0.33,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":3.77},"price":6.2899,"vwap":6.1811,"ext_from_open_pct":-0.71,"max_ext_allowed_pct":4.0,"volume_pace":2.96,"trend":"flat","recent_slope_pct":0.6914,"volatility":"high"},"price":6.2899,"volume":{"bars":29,"last_bar_volume":38605.0,"baseline_avg":31319.55,"bar_rvol":1.232617,"raw_accel":-0.593559,"smooth_accel":4.41434,"accel_momentum":-0.265553,"rvol_3bar":[0.490679,3.211006,1.232617],"trend_3bar":"MIXED","projected_rvol":0.68047},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":10732.0,"sell_vol":3043.0,"unclassified_vol":0.0,"imbalance":0.558185,"bid":6.26,"ask":6.29,"spread_pct":0.478088,"quote_size_imbalance":null,"quote_age_s":1.226474},"context":{"vwap":6.179959,"price_vs_vwap_pct":1.778993,"ema9":6.157058,"ema20":6.15742,"ema_stack":false,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-1.720312,"dist_to_hod_atr":1.133946,"atr":0.097095,"spread_atr":0.308977,"own_change_pct":2.025752,"rel_strength_pct":{"SPY":2.049445,"IWM":1.987248}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.688028},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6682f440fead","ts":"2026-09-15T13:59:50+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 440.0s, plan says PASS; stop 9.90, target 10.20 (prev_day_high), R:R 1.50; target 0.18 away > ~0.15 reachable in 355 min","plan":{"state":"PASS","setup":"","stop":9.9022,"target":10.2,"target_label":"prev_day_high","reward_risk":1.5,"pos_in_5d_range_pct":24.4,"room_to_5d_high_atr":2.41},"price":10.0214,"vwap":9.9678,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":1.541,"trend":"flat","recent_slope_pct":-0.0475,"volatility":"medium"},"price":10.0214,"volume":{"bars":29,"last_bar_volume":142833.0,"baseline_avg":468199.85,"bar_rvol":0.305068,"raw_accel":-0.584886,"smooth_accel":0.02927,"accel_momentum":-0.556263,"rvol_3bar":[1.423097,0.71787,0.305068],"trend_3bar":"DECELERATING","projected_rvol":1.776067},"flow":{"window_s":30,"trades":410,"trade_rate":13.666667,"buy_vol":247426.0,"sell_vol":423518.0,"unclassified_vol":0.0,"imbalance":-0.262454,"bid":10.02,"ask":10.03,"spread_pct":0.099751,"quote_size_imbalance":null,"quote_age_s":0.21718},"context":{"vwap":9.965144,"price_vs_vwap_pct":0.564523,"ema9":10.019456,"ema20":9.997045,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.284577,"dist_to_hod_atr":0.554413,"atr":0.051586,"spread_atr":0.193851,"own_change_pct":0.395,"rel_strength_pct":{"SPY":0.418692,"IWM":0.356495}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.080066},"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":"a983f2eaa344","ts":"2026-09-15T13:59:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.9019,"target":6.03,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":107.4,"room_to_5d_high_atr":-0.17},"price":5.985,"vwap":5.9836,"ext_from_open_pct":1.27,"max_ext_allowed_pct":4.0,"volume_pace":3.416,"trend":"flat","recent_slope_pct":0.1613,"volatility":"medium"},"price":5.985,"volume":{"bars":29,"last_bar_volume":270544.0,"baseline_avg":231360.2,"bar_rvol":1.169363,"raw_accel":3.677451,"smooth_accel":0.680839,"accel_momentum":1.346831,"rvol_3bar":[0.138336,0.085585,1.169363],"trend_3bar":"MIXED","projected_rvol":0.490975},"flow":{"window_s":30,"trades":232,"trade_rate":7.733333,"buy_vol":31690.0,"sell_vol":27074.0,"unclassified_vol":0.0,"imbalance":0.078551,"bid":5.98,"ask":5.99,"spread_pct":0.167084,"quote_size_imbalance":null,"quote_age_s":5.359641},"context":{"vwap":5.983524,"price_vs_vwap_pct":0.024671,"ema9":5.975332,"ema20":5.97315,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.400329,"dist_to_hod_atr":1.715289,"atr":0.049554,"spread_atr":0.201799,"own_change_pct":0.586265,"rel_strength_pct":{"SPY":0.609957,"IWM":0.54776}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.091855},"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":"d6675dd795d1","ts":"2026-09-15T13:59:55+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.97 below VWAP $5.98","plan":{"state":"PASS","setup":"","stop":5.8869,"target":6.03,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.12},"price":5.97,"vwap":5.9836,"ext_from_open_pct":1.02,"max_ext_allowed_pct":4.0,"volume_pace":3.468,"trend":"flat","recent_slope_pct":0.1112,"volatility":"medium"},"price":5.97,"volume":{"bars":29,"last_bar_volume":270544.0,"baseline_avg":231360.2,"bar_rvol":1.169363,"raw_accel":3.677451,"smooth_accel":0.680839,"accel_momentum":1.346831,"rvol_3bar":[0.138336,0.085585,1.169363],"trend_3bar":"MIXED","projected_rvol":1.110405},"flow":{"window_s":30,"trades":339,"trade_rate":11.3,"buy_vol":61935.0,"sell_vol":107431.0,"unclassified_vol":0.0,"imbalance":-0.268625,"bid":5.97,"ask":5.98,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":0.513647},"context":{"vwap":5.983524,"price_vs_vwap_pct":-0.226018,"ema9":5.975332,"ema20":5.97315,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.647446,"dist_to_hod_atr":2.017987,"atr":0.049554,"spread_atr":0.201799,"own_change_pct":0.586265,"rel_strength_pct":{"SPY":0.609957,"IWM":0.54776}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.31412},"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":"805d0d4c0448","ts":"2026-09-15T14:00:05+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.10% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0385,"target":6.39,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":46.7,"room_to_5d_high_atr":3.73},"price":6.34,"vwap":6.1838,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":3.0,"trend":"flat","recent_slope_pct":0.7375,"volatility":"high"},"price":6.34,"volume":{"bars":30,"last_bar_volume":24603.0,"baseline_avg":29300.95,"bar_rvol":0.839666,"raw_accel":-0.362699,"smooth_accel":3.893766,"accel_momentum":-0.520574,"rvol_3bar":[3.211006,1.232617,0.839666],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":283,"trade_rate":9.433333,"buy_vol":25249.0,"sell_vol":9469.0,"unclassified_vol":0.0,"imbalance":0.454519,"bid":6.3,"ask":6.37,"spread_pct":1.104972,"quote_size_imbalance":null,"quote_age_s":0.549976},"context":{"vwap":6.181489,"price_vs_vwap_pct":2.564284,"ema9":6.178166,"ema20":6.167437,"ema_stack":true,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-0.9375,"dist_to_hod_atr":0.621196,"atr":0.096588,"spread_atr":0.724729,"own_change_pct":2.834154,"rel_strength_pct":{"SPY":2.851267,"IWM":2.802654}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.381644},"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":"0a7eb005426c","ts":"2026-09-15T14:00:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.907,"target":6.03,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":108.1,"room_to_5d_high_atr":-0.18},"price":5.9901,"vwap":5.9837,"ext_from_open_pct":1.36,"max_ext_allowed_pct":4.0,"volume_pace":3.492,"trend":"flat","recent_slope_pct":0.0923,"volatility":"medium"},"price":5.9901,"volume":{"bars":30,"last_bar_volume":236929.0,"baseline_avg":215556.3,"bar_rvol":1.099151,"raw_accel":-0.12425,"smooth_accel":2.135838,"accel_momentum":1.454999,"rvol_3bar":[0.085585,1.169363,1.099151],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":397,"trade_rate":13.233333,"buy_vol":124230.0,"sell_vol":119714.0,"unclassified_vol":0.0,"imbalance":0.018512,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":0.494987},"context":{"vwap":5.983669,"price_vs_vwap_pct":0.107481,"ema9":5.976266,"ema20":5.973802,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.31631,"dist_to_hod_atr":1.623026,"atr":0.049229,"spread_atr":0.203132,"own_change_pct":0.58873,"rel_strength_pct":{"SPY":0.605842,"IWM":0.55723}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.020348},"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":"cbd59c5f15dd","ts":"2026-09-15T14:00:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7817,"target":8.0,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.64},"price":7.9,"vwap":7.8892,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.087,"trend":"flat","recent_slope_pct":0.0991,"volatility":"medium"},"price":7.9,"volume":{"bars":30,"last_bar_volume":7747.0,"baseline_avg":9763.75,"bar_rvol":0.793445,"raw_accel":2.173781,"smooth_accel":-0.652077,"accel_momentum":0.145106,"rvol_3bar":[0.08127,0.066123,0.793445],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":32365.0,"sell_vol":852.0,"unclassified_vol":0.0,"imbalance":0.948701,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.048221},"context":{"vwap":7.888437,"price_vs_vwap_pct":0.146582,"ema9":7.881648,"ema20":7.885394,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.37831,"dist_to_hod_atr":1.043332,"atr":0.028754,"spread_atr":0.347777,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.017112,"IWM":-0.0315}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.752742},"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":"b65523bb3f8d","ts":"2026-09-15T14:00:10+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0685,"target":6.39,"target_label":"prev_day_high","reward_risk":0.07,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.37,"vwap":6.186,"ext_from_open_pct":0.55,"max_ext_allowed_pct":5.0,"volume_pace":3.025,"trend":"flat","recent_slope_pct":0.8329,"volatility":"high"},"price":6.37,"volume":{"bars":30,"last_bar_volume":24603.0,"baseline_avg":29300.95,"bar_rvol":0.839666,"raw_accel":-0.362699,"smooth_accel":3.893766,"accel_momentum":-0.520574,"rvol_3bar":[3.211006,1.232617,0.839666],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":313,"trade_rate":10.433333,"buy_vol":28636.0,"sell_vol":12959.0,"unclassified_vol":0.0,"imbalance":0.376896,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":0.365076},"context":{"vwap":6.181489,"price_vs_vwap_pct":3.049604,"ema9":6.178166,"ema20":6.167437,"ema_stack":true,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-0.46875,"dist_to_hod_atr":0.310598,"atr":0.096588,"spread_atr":0.414131,"own_change_pct":2.834154,"rel_strength_pct":{"SPY":2.851267,"IWM":2.802654}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.316467},"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":"745f971615ed","ts":"2026-09-15T14:00:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 425.0s, plan says PASS; stop 7.68, target 7.81 (ceiling), R:R 0.53; R:R 0.53 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.6759,"target":7.81,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":55.7,"room_to_5d_high_atr":0.69},"price":7.7638,"vwap":7.7398,"ext_from_open_pct":0.83,"max_ext_allowed_pct":3.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.0063,"volatility":"medium"},"price":7.7638,"volume":{"bars":30,"last_bar_volume":5087.0,"baseline_avg":15565.7,"bar_rvol":0.326808,"raw_accel":-0.568898,"smooth_accel":0.180273,"accel_momentum":-0.772517,"rvol_3bar":[0.899838,0.753014,0.326808],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":3096.0,"sell_vol":1742.0,"unclassified_vol":0.0,"imbalance":0.279868,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":0.644372},"context":{"vwap":7.73973,"price_vs_vwap_pct":0.310988,"ema9":7.767365,"ema20":7.761494,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.591549,"dist_to_hod_atr":0.74711,"atr":0.061838,"spread_atr":0.161712,"own_change_pct":0.094012,"rel_strength_pct":{"SPY":0.111124,"IWM":0.062511}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.091463},"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":"68845e2d9fd0","ts":"2026-09-15T14:00:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 430.0s, plan says WATCH; stop 7.69, target 7.83 (premarket_high), R:R 0.57; R:R 0.57 < 2.0 at 7.78; breakout: 1-min close > 7.82 on >= 26613 sh","plan":{"state":"WATCH","setup":"","stop":7.6921,"target":7.83,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":58.7,"room_to_5d_high_atr":0.64},"price":7.78,"vwap":7.7398,"ext_from_open_pct":1.04,"max_ext_allowed_pct":4.0,"volume_pace":0.726,"trend":"flat","recent_slope_pct":0.048,"volatility":"medium"},"price":7.78,"volume":{"bars":30,"last_bar_volume":5087.0,"baseline_avg":15565.7,"bar_rvol":0.326808,"raw_accel":-0.568898,"smooth_accel":0.180273,"accel_momentum":-0.772517,"rvol_3bar":[0.899838,0.753014,0.326808],"trend_3bar":"DECELERATING","projected_rvol":0.355397},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1613.0,"sell_vol":1346.0,"unclassified_vol":0.0,"imbalance":0.090233,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":0.672442},"context":{"vwap":7.73973,"price_vs_vwap_pct":0.520298,"ema9":7.767365,"ema20":7.761494,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.384123,"dist_to_hod_atr":0.485136,"atr":0.061838,"spread_atr":0.161712,"own_change_pct":0.094012,"rel_strength_pct":{"SPY":0.111124,"IWM":0.062511}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.029489},"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":"b470f94492f4","ts":"2026-09-15T14:00:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.13,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.1887,"ext_from_open_pct":0.87,"max_ext_allowed_pct":5.0,"volume_pace":3.055,"trend":"flat","recent_slope_pct":0.8964,"volatility":"high"},"price":6.39,"volume":{"bars":30,"last_bar_volume":24603.0,"baseline_avg":29300.95,"bar_rvol":0.839666,"raw_accel":-0.362699,"smooth_accel":3.893766,"accel_momentum":-0.520574,"rvol_3bar":[3.211006,1.232617,0.839666],"trend_3bar":"DECELERATING","projected_rvol":5.189422},"flow":{"window_s":30,"trades":432,"trade_rate":14.4,"buy_vol":38905.0,"sell_vol":18778.0,"unclassified_vol":0.0,"imbalance":0.348924,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":0.267749},"context":{"vwap":6.181489,"price_vs_vwap_pct":3.373151,"ema9":6.178166,"ema20":6.167437,"ema_stack":true,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-0.15625,"dist_to_hod_atr":0.103533,"atr":0.096588,"spread_atr":0.414131,"own_change_pct":2.834154,"rel_strength_pct":{"SPY":2.851267,"IWM":2.802654}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.29298},"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":"10fd24bbee6f","ts":"2026-09-15T14:00:20+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7381,"target":13.84,"target_label":"range_20d_high","reward_risk":2.84,"pos_in_5d_range_pct":68.5,"room_to_5d_high_atr":0.99},"price":13.025,"vwap":12.8827,"ext_from_open_pct":0.35,"max_ext_allowed_pct":4.0,"volume_pace":2.679,"trend":"flat","recent_slope_pct":0.0027,"volatility":"medium"},"price":13.025,"volume":{"bars":30,"last_bar_volume":3927.0,"baseline_avg":3527.7,"bar_rvol":1.11319,"raw_accel":-0.806628,"smooth_accel":3.791721,"accel_momentum":-1.903035,"rvol_3bar":[0.358855,7.930334,1.11319],"trend_3bar":"MIXED","projected_rvol":0.046773},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":3320.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.923523,"bid":12.99,"ask":13.06,"spread_pct":0.537428,"quote_size_imbalance":null,"quote_age_s":9.9283},"context":{"vwap":12.882662,"price_vs_vwap_pct":1.104877,"ema9":13.083908,"ema20":13.062783,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-2.140512,"dist_to_hod_atr":2.118465,"atr":0.134484,"spread_atr":0.520507,"own_change_pct":-1.07482,"rel_strength_pct":{"SPY":-1.057707,"IWM":-1.10632}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.028056},"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":"4acefe08c541","ts":"2026-09-15T14:00:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 390.0s, plan says WATCH; stop 10.06, target 10.13 (premarket_high), R:R 0.40; R:R 0.40 < 2.0 at 10.11; breakout: 1-min close > 10.13 on >= 102381 sh","plan":{"state":"WATCH","setup":"","stop":10.06,"target":10.13,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.093,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.974,"trend":"flat","recent_slope_pct":0.0109,"volatility":"low"},"price":10.11,"volume":{"bars":30,"last_bar_volume":15020.0,"baseline_avg":38117.7,"bar_rvol":0.394043,"raw_accel":-0.577425,"smooth_accel":-0.040663,"accel_momentum":0.101456,"rvol_3bar":[0.608345,0.954706,0.394043],"trend_3bar":"MIXED","projected_rvol":0.84748},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":12589.0,"sell_vol":5493.0,"unclassified_vol":0.0,"imbalance":0.392434,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.561793},"context":{"vwap":10.092898,"price_vs_vwap_pct":0.169447,"ema9":10.101791,"ema20":10.09778,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.098814,"dist_to_hod_atr":0.418173,"atr":0.023914,"spread_atr":0.418173,"own_change_pct":-0.049456,"rel_strength_pct":{"SPY":-0.032344,"IWM":-0.080956}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.154636},"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":"b634a995d23e","ts":"2026-09-15T14:00:30+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.40% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":1.78,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.43,"vwap":6.1996,"ext_from_open_pct":1.5,"max_ext_allowed_pct":4.0,"volume_pace":3.184,"trend":"flat","recent_slope_pct":1.0232,"volatility":"high"},"price":6.43,"volume":{"bars":30,"last_bar_volume":24603.0,"baseline_avg":29300.95,"bar_rvol":0.839666,"raw_accel":-0.362699,"smooth_accel":3.893766,"accel_momentum":-0.520574,"rvol_3bar":[3.211006,1.232617,0.839666],"trend_3bar":"DECELERATING","projected_rvol":7.356075},"flow":{"window_s":30,"trades":656,"trade_rate":21.866667,"buy_vol":71502.0,"sell_vol":36268.0,"unclassified_vol":0.0,"imbalance":0.326937,"bid":6.4,"ask":6.49,"spread_pct":1.396431,"quote_size_imbalance":null,"quote_age_s":0.200103},"context":{"vwap":6.181489,"price_vs_vwap_pct":4.020244,"ema9":6.178166,"ema20":6.167437,"ema_stack":true,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":0.46875,"dist_to_hod_atr":-0.310598,"atr":0.096588,"spread_atr":0.931795,"own_change_pct":2.834154,"rel_strength_pct":{"SPY":2.851267,"IWM":2.802654}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.274518},"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":"481e3cd591e3","ts":"2026-09-15T14:00:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 395.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.65; target 0.03 away > ~0.02 reachable in 354 min","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.13,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.093,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.973,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"low"},"price":10.1,"volume":{"bars":30,"last_bar_volume":15020.0,"baseline_avg":38117.7,"bar_rvol":0.394043,"raw_accel":-0.577425,"smooth_accel":-0.040663,"accel_momentum":0.101456,"rvol_3bar":[0.608345,0.954706,0.394043],"trend_3bar":"MIXED","projected_rvol":0.858919},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":14037.0,"sell_vol":2333.0,"unclassified_vol":0.0,"imbalance":0.714966,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.027777},"context":{"vwap":10.092898,"price_vs_vwap_pct":0.070368,"ema9":10.101791,"ema20":10.09778,"ema_stack":false,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.197628,"dist_to_hod_atr":0.836347,"atr":0.023914,"spread_atr":0.418173,"own_change_pct":-0.049456,"rel_strength_pct":{"SPY":-0.032344,"IWM":-0.080956}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.281727},"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":"60822e03d34c","ts":"2026-09-15T14:00:35+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":1.44,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.48,"vwap":6.2023,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":3.191,"trend":"flat","recent_slope_pct":1.1813,"volatility":"high"},"price":6.48,"volume":{"bars":30,"last_bar_volume":24603.0,"baseline_avg":29300.95,"bar_rvol":0.839666,"raw_accel":-0.362699,"smooth_accel":3.893766,"accel_momentum":-0.520574,"rvol_3bar":[3.211006,1.232617,0.839666],"trend_3bar":"DECELERATING","projected_rvol":6.669525},"flow":{"window_s":30,"trades":569,"trade_rate":18.966667,"buy_vol":60572.0,"sell_vol":34096.0,"unclassified_vol":0.0,"imbalance":0.279672,"bid":6.43,"ask":6.48,"spread_pct":0.774593,"quote_size_imbalance":null,"quote_age_s":0.020159},"context":{"vwap":6.181489,"price_vs_vwap_pct":4.829111,"ema9":6.178166,"ema20":6.167437,"ema_stack":true,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":1.25,"dist_to_hod_atr":-0.828262,"atr":0.096588,"spread_atr":0.517664,"own_change_pct":2.834154,"rel_strength_pct":{"SPY":2.851267,"IWM":2.802654}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.234831},"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":"a81ef88695c9","ts":"2026-09-15T14:00:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 405.0s, plan says WATCH; stop 10.06, target 10.13 (premarket_high), R:R 0.44; R:R 0.44 < 2.0 at 10.11; breakout: 1-min close > 10.13 on >= 102381 sh","plan":{"state":"WATCH","setup":"","stop":10.06,"target":10.13,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":10.5,"room_to_5d_high_atr":4.12},"price":10.1086,"vwap":10.093,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.968,"trend":"flat","recent_slope_pct":0.0081,"volatility":"low"},"price":10.1086,"volume":{"bars":30,"last_bar_volume":15020.0,"baseline_avg":38117.7,"bar_rvol":0.394043,"raw_accel":-0.577425,"smooth_accel":-0.040663,"accel_momentum":0.101456,"rvol_3bar":[0.608345,0.954706,0.394043],"trend_3bar":"MIXED","projected_rvol":0.670909},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1906.0,"sell_vol":2599.0,"unclassified_vol":0.0,"imbalance":-0.153829,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":4.725111},"context":{"vwap":10.092898,"price_vs_vwap_pct":0.155576,"ema9":10.101791,"ema20":10.09778,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.112648,"dist_to_hod_atr":0.476718,"atr":0.023914,"spread_atr":0.418173,"own_change_pct":-0.049456,"rel_strength_pct":{"SPY":-0.032344,"IWM":-0.080956}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.060615},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4687670f8f47","ts":"2026-09-15T14:00:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2399,"target":8.41,"target_label":"prev_day_high","reward_risk":0.89,"pos_in_5d_range_pct":49.4,"room_to_5d_high_atr":1.22},"price":8.33,"vwap":8.295,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":1.16,"trend":"flat","recent_slope_pct":0.1215,"volatility":"medium"},"price":8.33,"volume":{"bars":30,"last_bar_volume":30.0,"baseline_avg":1368.45,"bar_rvol":0.021923,"raw_accel":-0.96852,"smooth_accel":0.166297,"accel_momentum":0.013347,"rvol_3bar":[0.434719,0.698527,0.021923],"trend_3bar":"MIXED","projected_rvol":4.15945},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":3001.0,"sell_vol":1267.0,"unclassified_vol":0.0,"imbalance":0.406279,"bid":8.31,"ask":8.33,"spread_pct":0.240385,"quote_size_imbalance":null,"quote_age_s":1.121725},"context":{"vwap":8.293327,"price_vs_vwap_pct":0.442201,"ema9":8.280527,"ema20":8.285896,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.0,"dist_to_hod_atr":4.182354,"atr":0.040647,"spread_atr":0.492042,"own_change_pct":0.068882,"rel_strength_pct":{"SPY":0.085995,"IWM":0.037382}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.008907},"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":"fed69456e632","ts":"2026-09-15T14:00:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 410.0s, plan says PASS; stop 10.06, target 10.13 (premarket_high), R:R 0.57; target 0.03 away > ~0.02 reachable in 354 min","plan":{"state":"PASS","setup":"","stop":10.058,"target":10.13,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":9.9,"room_to_5d_high_atr":4.15},"price":10.1039,"vwap":10.093,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.969,"trend":"flat","recent_slope_pct":-0.0012,"volatility":"low"},"price":10.1039,"volume":{"bars":30,"last_bar_volume":15020.0,"baseline_avg":38117.7,"bar_rvol":0.394043,"raw_accel":-0.577425,"smooth_accel":-0.040663,"accel_momentum":0.101456,"rvol_3bar":[0.608345,0.954706,0.394043],"trend_3bar":"MIXED","projected_rvol":0.877528},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":3127.0,"sell_vol":9381.0,"unclassified_vol":0.0,"imbalance":-0.5,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.594752},"context":{"vwap":10.092898,"price_vs_vwap_pct":0.109009,"ema9":10.101791,"ema20":10.09778,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.159091,"dist_to_hod_atr":0.673259,"atr":0.023914,"spread_atr":0.418173,"own_change_pct":-0.049456,"rel_strength_pct":{"SPY":-0.032344,"IWM":-0.080956}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.197021},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4c27e8857b22","ts":"2026-09-15T14:00:55+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.10% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0185,"target":6.39,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":46.4,"room_to_5d_high_atr":3.75},"price":6.32,"vwap":6.2012,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":3.233,"trend":"flat","recent_slope_pct":0.6737,"volatility":"high"},"price":6.32,"volume":{"bars":30,"last_bar_volume":24603.0,"baseline_avg":29300.95,"bar_rvol":0.839666,"raw_accel":-0.362699,"smooth_accel":3.893766,"accel_momentum":-0.520574,"rvol_3bar":[3.211006,1.232617,0.839666],"trend_3bar":"DECELERATING","projected_rvol":5.364455},"flow":{"window_s":30,"trades":405,"trade_rate":13.5,"buy_vol":27713.0,"sell_vol":32805.0,"unclassified_vol":0.0,"imbalance":-0.08414,"bid":6.3,"ask":6.37,"spread_pct":1.104972,"quote_size_imbalance":null,"quote_age_s":0.879206},"context":{"vwap":6.181489,"price_vs_vwap_pct":2.240737,"ema9":6.178166,"ema20":6.167437,"ema_stack":true,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-1.25,"dist_to_hod_atr":0.828262,"atr":0.096588,"spread_atr":0.724729,"own_change_pct":2.834154,"rel_strength_pct":{"SPY":2.851267,"IWM":2.802654}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.07065},"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":"8a9c50ddc6c5","ts":"2026-09-15T14:00:55+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.97 below VWAP $5.98","plan":{"state":"PASS","setup":"","stop":5.8919,"target":6.03,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":106.1,"room_to_5d_high_atr":-0.14},"price":5.975,"vwap":5.9836,"ext_from_open_pct":1.1,"max_ext_allowed_pct":4.0,"volume_pace":3.432,"trend":"flat","recent_slope_pct":0.0418,"volatility":"medium"},"price":5.975,"volume":{"bars":30,"last_bar_volume":236929.0,"baseline_avg":215556.3,"bar_rvol":1.099151,"raw_accel":-0.12425,"smooth_accel":2.135838,"accel_momentum":1.454999,"rvol_3bar":[0.085585,1.169363,1.099151],"trend_3bar":"MIXED","projected_rvol":0.894534},"flow":{"window_s":30,"trades":215,"trade_rate":7.166667,"buy_vol":21123.0,"sell_vol":39355.0,"unclassified_vol":0.0,"imbalance":-0.301465,"bid":5.97,"ask":5.98,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":0.097801},"context":{"vwap":5.983669,"price_vs_vwap_pct":-0.144873,"ema9":5.976266,"ema20":5.973802,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.565074,"dist_to_hod_atr":1.929756,"atr":0.049229,"spread_atr":0.203132,"own_change_pct":0.58873,"rel_strength_pct":{"SPY":0.605842,"IWM":0.55723}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.331356},"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":"ad9659d56680","ts":"2026-09-15T14:00:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 470.0s, plan says PASS; stop 7.68, target 7.81 (ceiling), R:R 0.51; R:R 0.51 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.6771,"target":7.81,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7401,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.716,"trend":"flat","recent_slope_pct":0.0094,"volatility":"medium"},"price":7.765,"volume":{"bars":30,"last_bar_volume":5087.0,"baseline_avg":15565.7,"bar_rvol":0.326808,"raw_accel":-0.568898,"smooth_accel":0.180273,"accel_momentum":-0.772517,"rvol_3bar":[0.899838,0.753014,0.326808],"trend_3bar":"DECELERATING","projected_rvol":0.418052},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":459.0,"sell_vol":3894.0,"unclassified_vol":0.0,"imbalance":-0.789111,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.089134},"context":{"vwap":7.73973,"price_vs_vwap_pct":0.326493,"ema9":7.767365,"ema20":7.761494,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.727704,"atr":0.061838,"spread_atr":0.161712,"own_change_pct":0.094012,"rel_strength_pct":{"SPY":0.111124,"IWM":0.062511}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.257888},"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":"9ab399757fc5","ts":"2026-09-15T14:01:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0585,"target":6.39,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.36,"vwap":6.2036,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.24,"trend":"flat","recent_slope_pct":0.8011,"volatility":"high"},"price":6.36,"volume":{"bars":30,"last_bar_volume":24603.0,"baseline_avg":29300.95,"bar_rvol":0.839666,"raw_accel":-0.362699,"smooth_accel":3.893766,"accel_momentum":-0.520574,"rvol_3bar":[3.211006,1.232617,0.839666],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":380,"trade_rate":12.666667,"buy_vol":20882.0,"sell_vol":21803.0,"unclassified_vol":0.0,"imbalance":-0.021577,"bid":6.33,"ask":6.39,"spread_pct":0.943396,"quote_size_imbalance":null,"quote_age_s":0.87644},"context":{"vwap":6.181489,"price_vs_vwap_pct":2.887831,"ema9":6.178166,"ema20":6.167437,"ema_stack":true,"ema_warm":true,"hod":6.4,"dist_to_hod_pct":-0.625,"dist_to_hod_atr":0.414131,"atr":0.096588,"spread_atr":0.621196,"own_change_pct":2.834154,"rel_strength_pct":{"SPY":2.880233,"IWM":2.827156}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.018117},"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":"7e527211bebf","ts":"2026-09-15T14:01:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 475.0s, plan says WATCH; stop 7.68, target 7.83 (premarket_high), R:R 0.69; R:R 0.69 < 2.0 at 7.77; breakout: 1-min close > 7.82 on >= 26613 sh","plan":{"state":"WATCH","setup":"","stop":7.6816,"target":7.83,"target_label":"premarket_high","reward_risk":0.69,"pos_in_5d_range_pct":56.8,"room_to_5d_high_atr":0.67},"price":7.7695,"vwap":7.7401,"ext_from_open_pct":0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.715,"trend":"flat","recent_slope_pct":0.021,"volatility":"medium"},"price":7.7695,"volume":{"bars":30,"last_bar_volume":5087.0,"baseline_avg":15565.7,"bar_rvol":0.326808,"raw_accel":-0.568898,"smooth_accel":0.180273,"accel_momentum":-0.772517,"rvol_3bar":[0.899838,0.753014,0.326808],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":138.0,"sell_vol":3849.0,"unclassified_vol":0.0,"imbalance":-0.930775,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.005002},"context":{"vwap":7.73973,"price_vs_vwap_pct":0.384634,"ema9":7.767365,"ema20":7.761494,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.518566,"dist_to_hod_atr":0.654934,"atr":0.061838,"spread_atr":0.161712,"own_change_pct":0.094012,"rel_strength_pct":{"SPY":0.14009,"IWM":0.087013}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.304185},"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":"bc4718e1da56","ts":"2026-09-15T14:01:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 430.0s, plan says WATCH; stop 10.06, target 10.13 (premarket_high), R:R 0.43; R:R 0.43 < 2.0 at 10.11; breakout: 1-min close > 10.13 on >= 100386 sh","plan":{"state":"WATCH","setup":"","stop":10.06,"target":10.13,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":10.5,"room_to_5d_high_atr":4.12},"price":10.1088,"vwap":10.0931,"ext_from_open_pct":0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.96,"trend":"flat","recent_slope_pct":0.0085,"volatility":"low"},"price":10.1088,"volume":{"bars":31,"last_bar_volume":27036.0,"baseline_avg":38056.15,"bar_rvol":0.710424,"raw_accel":0.8,"smooth_accel":0.364132,"accel_momentum":0.404794,"rvol_3bar":[0.954706,0.394043,0.710424],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":2516.0,"sell_vol":8548.0,"unclassified_vol":0.0,"imbalance":-0.545192,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.063864},"context":{"vwap":10.093049,"price_vs_vwap_pct":0.156053,"ema9":10.102233,"ema20":10.098373,"ema_stack":true,"ema_warm":true,"hod":10.12,"dist_to_hod_pct":-0.110672,"dist_to_hod_atr":0.488054,"atr":0.022948,"spread_atr":0.435762,"own_change_pct":-0.009896,"rel_strength_pct":{"SPY":0.036182,"IWM":-0.016895}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.387317},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bdfb229f64ec","ts":"2026-09-15T14:01:15+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":3.7},"price":6.3801,"vwap":6.2073,"ext_from_open_pct":0.71,"max_ext_allowed_pct":5.0,"volume_pace":3.282,"trend":"flat","recent_slope_pct":0.7318,"volatility":"high"},"price":6.3801,"volume":{"bars":31,"last_bar_volume":150455.0,"baseline_avg":27935.75,"bar_rvol":5.385751,"raw_accel":5.115311,"smooth_accel":0.760209,"accel_momentum":-3.133557,"rvol_3bar":[1.232617,0.839666,5.385751],"trend_3bar":"MIXED","projected_rvol":3.913552},"flow":{"window_s":30,"trades":315,"trade_rate":10.5,"buy_vol":30642.0,"sell_vol":14950.0,"unclassified_vol":0.0,"imbalance":0.344183,"bid":6.38,"ask":6.43,"spread_pct":0.78064,"quote_size_imbalance":null,"quote_age_s":0.713823},"context":{"vwap":6.203566,"price_vs_vwap_pct":2.845681,"ema9":6.214533,"ema20":6.185776,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.693374,"dist_to_hod_atr":1.037463,"atr":0.105932,"spread_atr":0.472003,"own_change_pct":3.921569,"rel_strength_pct":{"SPY":3.967647,"IWM":3.91457}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.853685},"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":"9f3847428f1b","ts":"2026-09-15T14:01:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 490.0s, plan says PASS; stop 7.68, target 7.81 (ceiling), R:R 0.51; R:R 0.51 < 2.0 at 7.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.6771,"target":7.81,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7401,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.709,"trend":"flat","recent_slope_pct":-0.0071,"volatility":"medium"},"price":7.765,"volume":{"bars":31,"last_bar_volume":6268.0,"baseline_avg":14515.55,"bar_rvol":0.431813,"raw_accel":0.23216,"smooth_accel":-0.313519,"accel_momentum":-0.493792,"rvol_3bar":[0.753014,0.326808,0.431813],"trend_3bar":"MIXED","projected_rvol":0.008543},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":147.0,"sell_vol":3514.0,"unclassified_vol":0.0,"imbalance":-0.919694,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":5.241431},"context":{"vwap":7.740095,"price_vs_vwap_pct":0.32176,"ema9":7.767792,"ema20":7.762256,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.768201,"atr":0.058578,"spread_atr":0.170711,"own_change_pct":0.057952,"rel_strength_pct":{"SPY":0.104031,"IWM":0.050954}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.397136},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c9c45d4adfbc","ts":"2026-09-15T14:01:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 6.06, target 6.39 (prev_day_high), R:R 0.10; R:R 0.10 < 2.0 at 6.36; pullback: buy 6.08-6.16 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.0585,"target":6.39,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.36,"vwap":6.2089,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.299,"trend":"flat","recent_slope_pct":0.6683,"volatility":"high"},"price":6.36,"volume":{"bars":31,"last_bar_volume":150455.0,"baseline_avg":27935.75,"bar_rvol":5.385751,"raw_accel":5.115311,"smooth_accel":0.760209,"accel_momentum":-3.133557,"rvol_3bar":[1.232617,0.839666,5.385751],"trend_3bar":"MIXED","projected_rvol":3.518588},"flow":{"window_s":30,"trades":280,"trade_rate":9.333333,"buy_vol":28115.0,"sell_vol":19211.0,"unclassified_vol":0.0,"imbalance":0.188142,"bid":6.35,"ask":6.36,"spread_pct":0.157356,"quote_size_imbalance":null,"quote_age_s":2.524194},"context":{"vwap":6.203566,"price_vs_vwap_pct":2.521674,"ema9":6.214533,"ema20":6.185776,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-2.003082,"dist_to_hod_atr":1.227208,"atr":0.105932,"spread_atr":0.094401,"own_change_pct":3.921569,"rel_strength_pct":{"SPY":3.967647,"IWM":3.91457}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":1.013285},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"56b42bf87112","ts":"2026-09-15T14:01:30+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says PASS; stop 6.07, target 7.07 (premarket_high), R:R 2.03; target 0.67 away > ~0.30 reachable in 354 min","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.03,"pos_in_5d_range_pct":47.4,"room_to_5d_high_atr":3.68},"price":6.4,"vwap":6.21,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":3.302,"trend":"flat","recent_slope_pct":0.7946,"volatility":"high"},"price":6.4,"volume":{"bars":31,"last_bar_volume":150455.0,"baseline_avg":27935.75,"bar_rvol":5.385751,"raw_accel":5.115311,"smooth_accel":0.760209,"accel_momentum":-3.133557,"rvol_3bar":[1.232617,0.839666,5.385751],"trend_3bar":"MIXED","projected_rvol":3.281602},"flow":{"window_s":30,"trades":247,"trade_rate":8.233333,"buy_vol":27343.0,"sell_vol":18494.0,"unclassified_vol":0.0,"imbalance":0.193054,"bid":6.37,"ask":6.4,"spread_pct":0.469851,"quote_size_imbalance":null,"quote_age_s":0.096009},"context":{"vwap":6.203566,"price_vs_vwap_pct":3.166464,"ema9":6.214533,"ema20":6.185776,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.386749,"dist_to_hod_atr":0.849605,"atr":0.105932,"spread_atr":0.283202,"own_change_pct":3.921569,"rel_strength_pct":{"SPY":3.967647,"IWM":3.91457}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":1.039739},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a2e0c803c3d1","ts":"2026-09-15T14:01:30+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.89 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7717,"target":8.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8903,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":1.094,"trend":"flat","recent_slope_pct":0.1152,"volatility":"medium"},"price":7.89,"volume":{"bars":31,"last_bar_volume":41730.0,"baseline_avg":10010.85,"bar_rvol":4.168477,"raw_accel":4.386601,"smooth_accel":4.767399,"accel_momentum":5.419477,"rvol_3bar":[0.066123,0.793445,4.168477],"trend_3bar":"ACCELERATING","projected_rvol":1.827617},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":3375.0,"sell_vol":5773.0,"unclassified_vol":0.0,"imbalance":-0.262134,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.004843},"context":{"vwap":7.890188,"price_vs_vwap_pct":-0.00238,"ema9":7.887318,"ema20":7.887737,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":1.404204,"atr":0.028486,"spread_atr":0.351051,"own_change_pct":0.380711,"rel_strength_pct":{"SPY":0.426789,"IWM":0.373712}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.092699},"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":"8bbb2709355f","ts":"2026-09-15T14:01:35+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says WATCH; stop 6.07, target 6.39 (prev_day_high), R:R 0.06; R:R 0.06 < 2.0 at 6.37; pullback: buy 6.08-6.16 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.07,"target":6.39,"target_label":"prev_day_high","reward_risk":0.06,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":3.7},"price":6.373,"vwap":6.2108,"ext_from_open_pct":0.6,"max_ext_allowed_pct":4.0,"volume_pace":3.316,"trend":"flat","recent_slope_pct":0.7094,"volatility":"high"},"price":6.373,"volume":{"bars":31,"last_bar_volume":150455.0,"baseline_avg":27935.75,"bar_rvol":5.385751,"raw_accel":5.115311,"smooth_accel":0.760209,"accel_momentum":-3.133557,"rvol_3bar":[1.232617,0.839666,5.385751],"trend_3bar":"MIXED","projected_rvol":3.37638},"flow":{"window_s":30,"trades":256,"trade_rate":8.533333,"buy_vol":32302.0,"sell_vol":19934.0,"unclassified_vol":0.0,"imbalance":0.236772,"bid":6.37,"ask":6.4,"spread_pct":0.469851,"quote_size_imbalance":null,"quote_age_s":5.096009},"context":{"vwap":6.203566,"price_vs_vwap_pct":2.73123,"ema9":6.214533,"ema20":6.185776,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.802773,"dist_to_hod_atr":1.104487,"atr":0.105932,"spread_atr":0.283202,"own_change_pct":3.921569,"rel_strength_pct":{"SPY":3.967647,"IWM":3.91457}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":1.275193},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a98767668b59","ts":"2026-09-15T14:01:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.9119,"target":6.03,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":108.8,"room_to_5d_high_atr":-0.2},"price":5.995,"vwap":5.9837,"ext_from_open_pct":1.44,"max_ext_allowed_pct":5.0,"volume_pace":3.406,"trend":"flat","recent_slope_pct":0.0643,"volatility":"medium"},"price":5.995,"volume":{"bars":31,"last_bar_volume":186950.0,"baseline_avg":216671.7,"bar_rvol":0.862826,"raw_accel":-0.210945,"smooth_accel":4.808641,"accel_momentum":2.672803,"rvol_3bar":[1.169363,1.099151,0.862826],"trend_3bar":"DECELERATING","projected_rvol":0.803731},"flow":{"window_s":30,"trades":289,"trade_rate":9.633333,"buy_vol":72466.0,"sell_vol":27707.0,"unclassified_vol":0.0,"imbalance":0.446817,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":0.357732},"context":{"vwap":5.983649,"price_vs_vwap_pct":0.189695,"ema9":5.977713,"ema20":5.974726,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.235585,"dist_to_hod_atr":1.555608,"atr":0.048213,"spread_atr":0.207414,"own_change_pct":0.490402,"rel_strength_pct":{"SPY":0.53648,"IWM":0.483403}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.385525},"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":"ed4578287689","ts":"2026-09-15T14:01:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says PASS; stop 6.07, target 7.07 (premarket_high), R:R 1.86; target 0.65 away > ~0.30 reachable in 353 min","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":1.86,"pos_in_5d_range_pct":47.6,"room_to_5d_high_atr":3.67},"price":6.42,"vwap":6.212,"ext_from_open_pct":1.34,"max_ext_allowed_pct":4.0,"volume_pace":3.317,"trend":"flat","recent_slope_pct":0.8576,"volatility":"high"},"price":6.42,"volume":{"bars":31,"last_bar_volume":150455.0,"baseline_avg":27935.75,"bar_rvol":5.385751,"raw_accel":5.115311,"smooth_accel":0.760209,"accel_momentum":-3.133557,"rvol_3bar":[1.232617,0.839666,5.385751],"trend_3bar":"MIXED","projected_rvol":3.171259},"flow":{"window_s":30,"trades":251,"trade_rate":8.366667,"buy_vol":30953.0,"sell_vol":17922.0,"unclassified_vol":0.0,"imbalance":0.266619,"bid":6.37,"ask":6.42,"spread_pct":0.781861,"quote_size_imbalance":null,"quote_age_s":0.218434},"context":{"vwap":6.203566,"price_vs_vwap_pct":3.488859,"ema9":6.214533,"ema20":6.185776,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.078582,"dist_to_hod_atr":0.660804,"atr":0.105932,"spread_atr":0.472003,"own_change_pct":3.921569,"rel_strength_pct":{"SPY":3.967647,"IWM":3.91457}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":1.435943},"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":"7280efed542d","ts":"2026-09-15T14:01:45+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.2038,"target":5.296,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":12.5,"room_to_5d_high_atr":1.91},"price":5.245,"vwap":5.2486,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":1.031,"trend":"flat","recent_slope_pct":-0.0951,"volatility":"medium"},"price":5.245,"volume":{"bars":31,"last_bar_volume":16869.0,"baseline_avg":48987.15,"bar_rvol":0.344356,"raw_accel":-0.78147,"smooth_accel":-0.14272,"accel_momentum":-0.064418,"rvol_3bar":[1.430047,1.676472,0.344356],"trend_3bar":"MIXED","projected_rvol":1.422659},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":11720.0,"sell_vol":27529.0,"unclassified_vol":0.0,"imbalance":-0.402787,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.892167},"context":{"vwap":5.248628,"price_vs_vwap_pct":-0.069127,"ema9":5.256933,"ema20":5.251919,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.474383,"dist_to_hod_atr":1.509129,"atr":0.016566,"spread_atr":0.603652,"own_change_pct":-0.019008,"rel_strength_pct":{"SPY":0.027071,"IWM":-0.026006}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.138702},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4a5b035bf9dd","ts":"2026-09-15T14:01:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7769,"target":8.0,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":2.65},"price":7.8952,"vwap":7.8904,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.091,"trend":"flat","recent_slope_pct":0.1284,"volatility":"medium"},"price":7.8952,"volume":{"bars":31,"last_bar_volume":41730.0,"baseline_avg":10010.85,"bar_rvol":4.168477,"raw_accel":4.386601,"smooth_accel":4.767399,"accel_momentum":5.419477,"rvol_3bar":[0.066123,0.793445,4.168477],"trend_3bar":"ACCELERATING","projected_rvol":1.489584},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":4261.0,"sell_vol":5140.0,"unclassified_vol":0.0,"imbalance":-0.093501,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.059954},"context":{"vwap":7.890188,"price_vs_vwap_pct":0.063525,"ema9":7.887318,"ema20":7.887737,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.43884,"dist_to_hod_atr":1.221657,"atr":0.028486,"spread_atr":0.351051,"own_change_pct":0.380711,"rel_strength_pct":{"SPY":0.426789,"IWM":0.373712}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.389756},"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":"81ea948603b2","ts":"2026-09-15T14:01:50+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.2104,"target":5.296,"target_label":"prev_day_high","reward_risk":1.08,"pos_in_5d_range_pct":14.3,"room_to_5d_high_atr":1.87},"price":5.2516,"vwap":5.2487,"ext_from_open_pct":-0.16,"max_ext_allowed_pct":4.0,"volume_pace":1.029,"trend":"flat","recent_slope_pct":-0.07,"volatility":"medium"},"price":5.2516,"volume":{"bars":31,"last_bar_volume":16869.0,"baseline_avg":48987.15,"bar_rvol":0.344356,"raw_accel":-0.78147,"smooth_accel":-0.14272,"accel_momentum":-0.064418,"rvol_3bar":[1.430047,1.676472,0.344356],"trend_3bar":"MIXED","projected_rvol":1.336734},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":12223.0,"sell_vol":22429.0,"unclassified_vol":0.0,"imbalance":-0.294528,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.210729},"context":{"vwap":5.248628,"price_vs_vwap_pct":0.05662,"ema9":5.256933,"ema20":5.251919,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.349146,"dist_to_hod_atr":1.110719,"atr":0.016566,"spread_atr":0.603652,"own_change_pct":-0.019008,"rel_strength_pct":{"SPY":0.027071,"IWM":-0.026006}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.101423},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e5c7960f40a6","ts":"2026-09-15T14:01:50+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7667,"target":7.93,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.67},"price":7.885,"vwap":7.8903,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":4.0,"volume_pace":1.088,"trend":"flat","recent_slope_pct":0.1025,"volatility":"medium"},"price":7.885,"volume":{"bars":31,"last_bar_volume":41730.0,"baseline_avg":10010.85,"bar_rvol":4.168477,"raw_accel":4.386601,"smooth_accel":4.767399,"accel_momentum":5.419477,"rvol_3bar":[0.066123,0.793445,4.168477],"trend_3bar":"ACCELERATING","projected_rvol":1.340745},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":3839.0,"sell_vol":4641.0,"unclassified_vol":0.0,"imbalance":-0.094575,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.067432},"context":{"vwap":7.890188,"price_vs_vwap_pct":-0.06575,"ema9":7.887318,"ema20":7.887737,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.567465,"dist_to_hod_atr":1.579729,"atr":0.028486,"spread_atr":0.351051,"own_change_pct":0.380711,"rel_strength_pct":{"SPY":0.426789,"IWM":0.373712}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.394236},"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":"e84e3d2c19c9","ts":"2026-09-15T14:01:55+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says WATCH; stop 6.05, target 6.39 (prev_day_high), R:R 0.12; R:R 0.12 < 2.0 at 6.36; pullback: buy 6.08-6.16 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.0535,"target":6.39,"target_label":"prev_day_high","reward_risk":0.12,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.355,"vwap":6.2124,"ext_from_open_pct":0.32,"max_ext_allowed_pct":4.0,"volume_pace":3.317,"trend":"flat","recent_slope_pct":0.6525,"volatility":"high"},"price":6.355,"volume":{"bars":31,"last_bar_volume":150455.0,"baseline_avg":27935.75,"bar_rvol":5.385751,"raw_accel":5.115311,"smooth_accel":0.760209,"accel_momentum":-3.133557,"rvol_3bar":[1.232617,0.839666,5.385751],"trend_3bar":"MIXED","projected_rvol":2.726087},"flow":{"window_s":30,"trades":207,"trade_rate":6.9,"buy_vol":19405.0,"sell_vol":9448.0,"unclassified_vol":0.0,"imbalance":0.345094,"bid":6.35,"ask":6.36,"spread_pct":0.157356,"quote_size_imbalance":null,"quote_age_s":0.427697},"context":{"vwap":6.203566,"price_vs_vwap_pct":2.441075,"ema9":6.214533,"ema20":6.185776,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-2.080123,"dist_to_hod_atr":1.274408,"atr":0.105932,"spread_atr":0.094401,"own_change_pct":3.921569,"rel_strength_pct":{"SPY":3.967647,"IWM":3.91457}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.858591},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4139aaa32ec5","ts":"2026-09-15T14:02:00+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.1988,"target":5.296,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.94},"price":5.24,"vwap":5.2486,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.024,"trend":"flat","recent_slope_pct":-0.1141,"volatility":"medium"},"price":5.24,"volume":{"bars":31,"last_bar_volume":16869.0,"baseline_avg":48987.15,"bar_rvol":0.344356,"raw_accel":-0.78147,"smooth_accel":-0.14272,"accel_momentum":-0.064418,"rvol_3bar":[1.430047,1.676472,0.344356],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":914.0,"sell_vol":2086.0,"unclassified_vol":0.0,"imbalance":-0.390667,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.004038},"context":{"vwap":5.248628,"price_vs_vwap_pct":-0.16439,"ema9":5.256933,"ema20":5.251919,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.56926,"dist_to_hod_atr":1.810955,"atr":0.016566,"spread_atr":0.603652,"own_change_pct":-0.019008,"rel_strength_pct":{"SPY":0.019177,"IWM":0.06144}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.134528},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9aecd89e554b","ts":"2026-09-15T14:02:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says PASS; stop 6.07, target 7.07 (premarket_high), R:R 2.23; target 0.69 away > ~0.33 reachable in 353 min","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.23,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":3.7},"price":6.38,"vwap":6.2135,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":3.325,"trend":"flat","recent_slope_pct":0.645,"volatility":"high"},"price":6.38,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":11982.0,"sell_vol":13067.0,"unclassified_vol":0.0,"imbalance":-0.043315,"bid":6.36,"ask":6.4,"spread_pct":0.626959,"quote_size_imbalance":null,"quote_age_s":4.624013},"context":{"vwap":6.213021,"price_vs_vwap_pct":2.687563,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.694915,"dist_to_hod_atr":1.049683,"atr":0.104794,"spread_atr":0.381703,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.096779},"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":"2a1260f2d1b0","ts":"2026-09-15T14:02:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":5.9169,"target":6.03,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.21},"price":6.0,"vwap":5.9837,"ext_from_open_pct":1.52,"max_ext_allowed_pct":4.0,"volume_pace":3.359,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":6.0,"volume":{"bars":32,"last_bar_volume":112670.0,"baseline_avg":205049.25,"bar_rvol":0.549478,"raw_accel":-0.397325,"smooth_accel":0.616852,"accel_momentum":-4.191789,"rvol_3bar":[1.099151,0.862826,0.549478],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":8404.0,"sell_vol":7013.0,"unclassified_vol":0.0,"imbalance":0.090225,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":2.327277},"context":{"vwap":5.983645,"price_vs_vwap_pct":0.273329,"ema9":5.98017,"ema20":5.97618,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.153213,"dist_to_hod_atr":1.469784,"atr":0.047626,"spread_atr":0.209969,"own_change_pct":0.335008,"rel_strength_pct":{"SPY":0.373193,"IWM":0.415456}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.049577},"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":"29eb57215df9","ts":"2026-09-15T14:02:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.6777,"target":7.81,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":56.1,"room_to_5d_high_atr":0.68},"price":7.7656,"vwap":7.7404,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.703,"trend":"flat","recent_slope_pct":-0.0529,"volatility":"medium"},"price":7.7656,"volume":{"bars":32,"last_bar_volume":8147.0,"baseline_avg":14561.2,"bar_rvol":0.559501,"raw_accel":0.299777,"smooth_accel":-0.484156,"accel_momentum":-0.170637,"rvol_3bar":[0.326808,0.431813,0.559501],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":2705.0,"sell_vol":4899.0,"unclassified_vol":0.0,"imbalance":-0.288532,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":1.546823},"context":{"vwap":7.740342,"price_vs_vwap_pct":0.326311,"ema9":7.764234,"ema20":7.761089,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.568502,"dist_to_hod_atr":0.795373,"atr":0.055823,"spread_atr":0.179138,"own_change_pct":-0.193175,"rel_strength_pct":{"SPY":-0.15499,"IWM":-0.112727}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.161434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6fe973ce0d92","ts":"2026-09-15T14:02:10+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says WATCH; stop 6.07, target 6.39 (prev_day_high), R:R 0.07; R:R 0.07 < 2.0 at 6.37; pullback: buy 6.08-6.16 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.0685,"target":6.39,"target_label":"prev_day_high","reward_risk":0.07,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.37,"vwap":6.2136,"ext_from_open_pct":0.55,"max_ext_allowed_pct":4.0,"volume_pace":3.318,"trend":"flat","recent_slope_pct":0.6135,"volatility":"high"},"price":6.37,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":190,"trade_rate":6.333333,"buy_vol":8860.0,"sell_vol":13019.0,"unclassified_vol":0.0,"imbalance":-0.190091,"bid":6.36,"ask":6.38,"spread_pct":0.313972,"quote_size_imbalance":null,"quote_age_s":0.102624},"context":{"vwap":6.213021,"price_vs_vwap_pct":2.526611,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.848998,"dist_to_hod_atr":1.145109,"atr":0.104794,"spread_atr":0.190851,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.424721},"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":"5a3ffabb4ace","ts":"2026-09-15T14:02:10+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7032,"target":13.84,"target_label":"range_20d_high","reward_risk":4.68,"pos_in_5d_range_pct":60.7,"room_to_5d_high_atr":1.24},"price":12.9032,"vwap":12.8834,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":3.0,"volume_pace":2.551,"trend":"flat","recent_slope_pct":-0.2426,"volatility":"medium"},"price":12.9032,"volume":{"bars":32,"last_bar_volume":1230.0,"baseline_avg":3118.25,"bar_rvol":0.394452,"raw_accel":0.577808,"smooth_accel":-0.791434,"accel_momentum":-3.606834,"rvol_3bar":[1.11319,0.054678,0.394452],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":129.0,"sell_vol":618.0,"unclassified_vol":0.0,"imbalance":-0.654618,"bid":12.85,"ask":12.95,"spread_pct":0.775194,"quote_size_imbalance":null,"quote_age_s":1.056189},"context":{"vwap":12.883277,"price_vs_vwap_pct":0.154644,"ema9":13.049045,"ema20":13.049485,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.05562,"dist_to_hod_atr":3.113003,"atr":0.130646,"spread_atr":0.76543,"own_change_pct":-0.445811,"rel_strength_pct":{"SPY":-0.407626,"IWM":-0.365363}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.258216},"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":"d117c608b56f","ts":"2026-09-15T14:02:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.58% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":5.978,"target":6.39,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":3.78},"price":6.2795,"vwap":6.2152,"ext_from_open_pct":-0.88,"max_ext_allowed_pct":4.0,"volume_pace":3.374,"trend":"flat","recent_slope_pct":0.3278,"volatility":"high"},"price":6.2795,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":3.67164},"flow":{"window_s":30,"trades":270,"trade_rate":9.0,"buy_vol":8395.0,"sell_vol":34859.0,"unclassified_vol":0.0,"imbalance":-0.611828,"bid":6.27,"ask":6.37,"spread_pct":1.582278,"quote_size_imbalance":null,"quote_age_s":0.192421},"context":{"vwap":6.213021,"price_vs_vwap_pct":1.069993,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-3.243451,"dist_to_hod_atr":2.008711,"atr":0.104794,"spread_atr":0.954257,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.367009},"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":"6fc72541c4ac","ts":"2026-09-15T14:02:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.9385,"target":6.39,"target_label":"prev_day_high","reward_risk":0.5,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":3.81},"price":6.24,"vwap":6.2156,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":4.0,"volume_pace":3.394,"trend":"flat","recent_slope_pct":0.2025,"volatility":"high"},"price":6.24,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":3.307328},"flow":{"window_s":30,"trades":292,"trade_rate":9.733333,"buy_vol":13874.0,"sell_vol":39405.0,"unclassified_vol":0.0,"imbalance":-0.479194,"bid":6.23,"ask":6.27,"spread_pct":0.64,"quote_size_imbalance":null,"quote_age_s":0.47592},"context":{"vwap":6.213021,"price_vs_vwap_pct":0.434231,"ema9":6.241606,"ema20":6.201407,"ema_stack":false,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-3.85208,"dist_to_hod_atr":2.385643,"atr":0.104794,"spread_atr":0.381703,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.070666},"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":"0799eb803bc3","ts":"2026-09-15T14:02:30+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.43% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0485,"target":6.39,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":46.8,"room_to_5d_high_atr":3.72},"price":6.35,"vwap":6.2178,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":3.417,"trend":"flat","recent_slope_pct":0.5505,"volatility":"high"},"price":6.35,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":3.52766},"flow":{"window_s":30,"trades":320,"trade_rate":10.666667,"buy_vol":18132.0,"sell_vol":41969.0,"unclassified_vol":0.0,"imbalance":-0.396616,"bid":6.26,"ask":6.35,"spread_pct":1.427439,"quote_size_imbalance":null,"quote_age_s":2.456293},"context":{"vwap":6.213021,"price_vs_vwap_pct":2.204706,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-2.157165,"dist_to_hod_atr":1.33596,"atr":0.104794,"spread_atr":0.858831,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.88616},"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":"ede2d2811c9e","ts":"2026-09-15T14:02:45+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0354,"target":6.39,"target_label":"prev_day_high","reward_risk":0.18,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":3.73},"price":6.3369,"vwap":6.2189,"ext_from_open_pct":0.03,"max_ext_allowed_pct":4.0,"volume_pace":3.433,"trend":"flat","recent_slope_pct":0.5092,"volatility":"high"},"price":6.3369,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":3.044224},"flow":{"window_s":30,"trades":242,"trade_rate":8.066667,"buy_vol":25220.0,"sell_vol":21300.0,"unclassified_vol":0.0,"imbalance":0.084265,"bid":6.31,"ask":6.34,"spread_pct":0.474308,"quote_size_imbalance":null,"quote_age_s":2.102535},"context":{"vwap":6.213021,"price_vs_vwap_pct":1.993859,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-2.359014,"dist_to_hod_atr":1.460968,"atr":0.104794,"spread_atr":0.286277,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.188273},"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":"548a82ce2c90","ts":"2026-09-15T14:02:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.1,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.3926,"vwap":6.221,"ext_from_open_pct":0.91,"max_ext_allowed_pct":5.0,"volume_pace":3.455,"trend":"flat","recent_slope_pct":0.6847,"volatility":"high"},"price":6.3926,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":3.204494},"flow":{"window_s":30,"trades":257,"trade_rate":8.566667,"buy_vol":32702.0,"sell_vol":21211.0,"unclassified_vol":0.0,"imbalance":0.21314,"bid":6.39,"ask":6.41,"spread_pct":0.3125,"quote_size_imbalance":null,"quote_age_s":0.166977},"context":{"vwap":6.213021,"price_vs_vwap_pct":2.890363,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.50077,"dist_to_hod_atr":0.929446,"atr":0.104794,"spread_atr":0.190851,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.476219},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"70330d7014fc","ts":"2026-09-15T14:02:55+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.09% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":1.78,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.43,"vwap":6.2232,"ext_from_open_pct":1.5,"max_ext_allowed_pct":5.0,"volume_pace":3.466,"trend":"flat","recent_slope_pct":0.8021,"volatility":"high"},"price":6.43,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":3.175993},"flow":{"window_s":30,"trades":245,"trade_rate":8.166667,"buy_vol":32504.0,"sell_vol":19741.0,"unclassified_vol":0.0,"imbalance":0.244291,"bid":6.36,"ask":6.43,"spread_pct":1.094605,"quote_size_imbalance":null,"quote_age_s":0.876523},"context":{"vwap":6.213021,"price_vs_vwap_pct":3.492325,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-0.924499,"dist_to_hod_atr":0.572554,"atr":0.104794,"spread_atr":0.66798,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.601808,"IWM":3.644071}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.545821},"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":"0fa63a24c0ab","ts":"2026-09-15T14:03:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.23,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":3.7},"price":6.38,"vwap":6.2223,"ext_from_open_pct":0.71,"max_ext_allowed_pct":5.0,"volume_pace":3.463,"trend":"flat","recent_slope_pct":0.645,"volatility":"high"},"price":6.38,"volume":{"bars":32,"last_bar_volume":76132.0,"baseline_avg":34074.15,"bar_rvol":2.234304,"raw_accel":-0.493988,"smooth_accel":0.69542,"accel_momentum":-0.064789,"rvol_3bar":[0.839666,5.385751,2.234304],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":29439.0,"sell_vol":12045.0,"unclassified_vol":0.0,"imbalance":0.419294,"bid":6.36,"ask":6.38,"spread_pct":0.313972,"quote_size_imbalance":null,"quote_age_s":4.131298},"context":{"vwap":6.213021,"price_vs_vwap_pct":2.687563,"ema9":6.241606,"ema20":6.201407,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.694915,"dist_to_hod_atr":1.049683,"atr":0.104794,"spread_atr":0.190851,"own_change_pct":3.563623,"rel_strength_pct":{"SPY":3.634058,"IWM":3.652862}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.936831},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"15bb4f55644a","ts":"2026-09-15T14:03:00+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.2137,"target":5.296,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":15.3,"room_to_5d_high_atr":1.85},"price":5.2549,"vwap":5.2486,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":1.001,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"medium"},"price":5.2549,"volume":{"bars":32,"last_bar_volume":55095.0,"baseline_avg":49227.2,"bar_rvol":1.119198,"raw_accel":2.26605,"smooth_accel":-0.337836,"accel_momentum":-0.195116,"rvol_3bar":[1.676472,0.344356,1.119198],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":356.0,"sell_vol":10353.0,"unclassified_vol":0.0,"imbalance":-0.933514,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.004005},"context":{"vwap":5.248564,"price_vs_vwap_pct":0.120726,"ema9":5.253546,"ema20":5.250784,"ema_stack":true,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.286528,"dist_to_hod_atr":0.898214,"atr":0.016811,"spread_atr":0.594844,"own_change_pct":-0.474834,"rel_strength_pct":{"SPY":-0.404399,"IWM":-0.385595}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.044787},"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":"3d95a5311502","ts":"2026-09-15T14:03:10+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.1988,"target":5.296,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.94},"price":5.24,"vwap":5.2486,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.996,"trend":"flat","recent_slope_pct":-0.0562,"volatility":"medium"},"price":5.24,"volume":{"bars":33,"last_bar_volume":12425.0,"baseline_avg":51867.25,"bar_rvol":0.239554,"raw_accel":-0.77448,"smooth_accel":-0.525817,"accel_momentum":-0.18798,"rvol_3bar":[0.344356,1.119198,0.239554],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":354.0,"sell_vol":10451.0,"unclassified_vol":0.0,"imbalance":-0.934475,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.318663},"context":{"vwap":5.248575,"price_vs_vwap_pct":-0.163382,"ema9":5.253817,"ema20":5.251176,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.56926,"dist_to_hod_atr":1.794528,"atr":0.016717,"spread_atr":0.598176,"own_change_pct":-0.286528,"rel_strength_pct":{"SPY":-0.216093,"IWM":-0.197289}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.223857},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1710cf09671f","ts":"2026-09-15T14:03:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.907,"target":6.03,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":108.1,"room_to_5d_high_atr":-0.18},"price":5.9901,"vwap":5.9837,"ext_from_open_pct":1.36,"max_ext_allowed_pct":4.0,"volume_pace":3.278,"trend":"flat","recent_slope_pct":0.0196,"volatility":"medium"},"price":5.9901,"volume":{"bars":33,"last_bar_volume":50617.0,"baseline_avg":183525.05,"bar_rvol":0.275804,"raw_accel":-0.55075,"smooth_accel":-0.338009,"accel_momentum":-0.954861,"rvol_3bar":[0.862826,0.549478,0.275804],"trend_3bar":"DECELERATING","projected_rvol":0.970854},"flow":{"window_s":30,"trades":230,"trade_rate":7.666667,"buy_vol":46078.0,"sell_vol":24436.0,"unclassified_vol":0.0,"imbalance":0.306918,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":0.179059},"context":{"vwap":5.983633,"price_vs_vwap_pct":0.108082,"ema9":5.979136,"ema20":5.976068,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.31631,"dist_to_hod_atr":1.723207,"atr":0.046367,"spread_atr":0.21567,"own_change_pct":0.167645,"rel_strength_pct":{"SPY":0.238079,"IWM":0.256883}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.084649},"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":"2a7ff5265e7b","ts":"2026-09-15T14:03:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 6.06, target 6.39 (prev_day_high), R:R 0.10; R:R 0.10 < 2.0 at 6.36; pullback: buy 6.08-6.16 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.0585,"target":6.39,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.36,"vwap":6.2237,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.461,"trend":"flat","recent_slope_pct":0.3387,"volatility":"high"},"price":6.36,"volume":{"bars":33,"last_bar_volume":101585.0,"baseline_avg":36694.65,"bar_rvol":2.768387,"raw_accel":0.334327,"smooth_accel":1.07453,"accel_momentum":0.37911,"rvol_3bar":[5.385751,2.234304,2.768387],"trend_3bar":"MIXED","projected_rvol":1.14638},"flow":{"window_s":30,"trades":174,"trade_rate":5.8,"buy_vol":11263.0,"sell_vol":13352.0,"unclassified_vol":0.0,"imbalance":-0.084867,"bid":6.35,"ask":6.4,"spread_pct":0.784314,"quote_size_imbalance":null,"quote_age_s":0.205413},"context":{"vwap":6.22227,"price_vs_vwap_pct":2.213506,"ema9":6.269285,"ema20":6.218416,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-2.003082,"dist_to_hod_atr":1.165012,"atr":0.111587,"spread_atr":0.448081,"own_change_pct":2.572347,"rel_strength_pct":{"SPY":2.642782,"IWM":2.661586}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.234945},"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":"8beeb708c263","ts":"2026-09-15T14:03:25+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.26% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0698,"target":6.39,"target_label":"prev_day_high","reward_risk":0.06,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":3.71},"price":6.3713,"vwap":6.2247,"ext_from_open_pct":0.57,"max_ext_allowed_pct":4.0,"volume_pace":3.474,"trend":"flat","recent_slope_pct":0.3742,"volatility":"high"},"price":6.3713,"volume":{"bars":33,"last_bar_volume":101585.0,"baseline_avg":36694.65,"bar_rvol":2.768387,"raw_accel":0.334327,"smooth_accel":1.07453,"accel_momentum":0.37911,"rvol_3bar":[5.385751,2.234304,2.768387],"trend_3bar":"MIXED","projected_rvol":1.526806},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":11379.0,"sell_vol":14349.0,"unclassified_vol":0.0,"imbalance":-0.115438,"bid":6.32,"ask":6.4,"spread_pct":1.257862,"quote_size_imbalance":null,"quote_age_s":1.295379},"context":{"vwap":6.22227,"price_vs_vwap_pct":2.395112,"ema9":6.269285,"ema20":6.218416,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.828968,"dist_to_hod_atr":1.063745,"atr":0.111587,"spread_atr":0.71693,"own_change_pct":2.572347,"rel_strength_pct":{"SPY":2.642782,"IWM":2.661586}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.319578},"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":"3b3460e36068","ts":"2026-09-15T14:03:30+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0685,"target":6.39,"target_label":"prev_day_high","reward_risk":0.07,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.37,"vwap":6.2253,"ext_from_open_pct":0.55,"max_ext_allowed_pct":4.0,"volume_pace":3.483,"trend":"flat","recent_slope_pct":0.3701,"volatility":"high"},"price":6.37,"volume":{"bars":33,"last_bar_volume":101585.0,"baseline_avg":36694.65,"bar_rvol":2.768387,"raw_accel":0.334327,"smooth_accel":1.07453,"accel_momentum":0.37911,"rvol_3bar":[5.385751,2.234304,2.768387],"trend_3bar":"MIXED","projected_rvol":1.688748},"flow":{"window_s":30,"trades":179,"trade_rate":5.966667,"buy_vol":15950.0,"sell_vol":15034.0,"unclassified_vol":0.0,"imbalance":0.029564,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":0.64044},"context":{"vwap":6.22227,"price_vs_vwap_pct":2.374219,"ema9":6.269285,"ema20":6.218416,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.848998,"dist_to_hod_atr":1.075395,"atr":0.111587,"spread_atr":0.358465,"own_change_pct":2.572347,"rel_strength_pct":{"SPY":2.642782,"IWM":2.661586}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.081844},"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":"1107bb73c15a","ts":"2026-09-15T14:03:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.13,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.2274,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":3.513,"trend":"flat","recent_slope_pct":0.4329,"volatility":"high"},"price":6.39,"volume":{"bars":33,"last_bar_volume":101585.0,"baseline_avg":36694.65,"bar_rvol":2.768387,"raw_accel":0.334327,"smooth_accel":1.07453,"accel_momentum":0.37911,"rvol_3bar":[5.385751,2.234304,2.768387],"trend_3bar":"MIXED","projected_rvol":2.093602},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":24140.0,"sell_vol":17945.0,"unclassified_vol":0.0,"imbalance":0.147202,"bid":6.37,"ask":6.39,"spread_pct":0.31348,"quote_size_imbalance":null,"quote_age_s":1.180344},"context":{"vwap":6.22227,"price_vs_vwap_pct":2.695645,"ema9":6.269285,"ema20":6.218416,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.540832,"dist_to_hod_atr":0.896163,"atr":0.111587,"spread_atr":0.179233,"own_change_pct":2.572347,"rel_strength_pct":{"SPY":2.642782,"IWM":2.661586}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.407512},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1b3891625846","ts":"2026-09-15T14:04:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says WATCH; stop 6.06, target 6.39 (prev_day_high), R:R 0.08; R:R 0.08 < 2.0 at 6.37; pullback: buy 6.08-6.16 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.0635,"target":6.39,"target_label":"prev_day_high","reward_risk":0.08,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.365,"vwap":6.2281,"ext_from_open_pct":0.47,"max_ext_allowed_pct":4.0,"volume_pace":3.502,"trend":"flat","recent_slope_pct":0.3544,"volatility":"high"},"price":6.365,"volume":{"bars":33,"last_bar_volume":101585.0,"baseline_avg":36694.65,"bar_rvol":2.768387,"raw_accel":0.334327,"smooth_accel":1.07453,"accel_momentum":0.37911,"rvol_3bar":[5.385751,2.234304,2.768387],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":16783.0,"sell_vol":13899.0,"unclassified_vol":0.0,"imbalance":0.093996,"bid":6.34,"ask":6.37,"spread_pct":0.472069,"quote_size_imbalance":null,"quote_age_s":0.011468},"context":{"vwap":6.22227,"price_vs_vwap_pct":2.293863,"ema9":6.269285,"ema20":6.218416,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.92604,"dist_to_hod_atr":1.120203,"atr":0.111587,"spread_atr":0.268849,"own_change_pct":2.572347,"rel_strength_pct":{"SPY":2.651999,"IWM":2.715809}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.260219},"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":"6a1aa3b97b62","ts":"2026-09-15T14:04:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8875,"target":10.2,"target_label":"prev_day_high","reward_risk":1.62,"pos_in_5d_range_pct":23.5,"room_to_5d_high_atr":2.44},"price":10.0067,"vwap":9.9711,"ext_from_open_pct":1.8,"max_ext_allowed_pct":3.0,"volume_pace":1.44,"trend":"flat","recent_slope_pct":-0.0214,"volatility":"medium"},"price":10.0067,"volume":{"bars":33,"last_bar_volume":151767.0,"baseline_avg":429073.55,"bar_rvol":0.353709,"raw_accel":-0.55794,"smooth_accel":-0.358359,"accel_momentum":-0.52388,"rvol_3bar":[0.612738,0.774758,0.353709],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":15476.0,"sell_vol":86161.0,"unclassified_vol":0.0,"imbalance":-0.695465,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.005364},"context":{"vwap":9.970679,"price_vs_vwap_pct":0.361272,"ema9":10.02191,"ema20":10.005733,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.430846,"dist_to_hod_atr":0.966646,"atr":0.044794,"spread_atr":0.223244,"own_change_pct":-0.077766,"rel_strength_pct":{"SPY":0.001886,"IWM":0.065696}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.245992},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a1ae83f76259","ts":"2026-09-15T14:04:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says WATCH; stop 5.92, target 6.03 (premarket_high), R:R 0.36; R:R 0.36 < 2.0 at 6.00; pullback: buy 5.96-5.98 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":5.9169,"target":6.03,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":109.5,"room_to_5d_high_atr":-0.21},"price":6.0,"vwap":5.984,"ext_from_open_pct":1.52,"max_ext_allowed_pct":4.0,"volume_pace":3.264,"trend":"flat","recent_slope_pct":0.0801,"volatility":"medium"},"price":6.0,"volume":{"bars":34,"last_bar_volume":204519.0,"baseline_avg":168428.35,"bar_rvol":1.214279,"raw_accel":3.04052,"smooth_accel":-0.470343,"accel_momentum":-0.132334,"rvol_3bar":[0.549478,0.275804,1.214279],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":182,"trade_rate":6.066667,"buy_vol":20351.0,"sell_vol":99917.0,"unclassified_vol":0.0,"imbalance":-0.661572,"bid":5.99,"ask":6.0,"spread_pct":0.166806,"quote_size_imbalance":null,"quote_age_s":0.014426},"context":{"vwap":5.983989,"price_vs_vwap_pct":0.267564,"ema9":5.984309,"ema20":5.978823,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.153213,"dist_to_hod_atr":1.5366,"atr":0.045555,"spread_atr":0.219514,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.079652,"IWM":0.143462}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.803334},"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":"d0ac798af4fb","ts":"2026-09-15T14:04:30+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says PASS; stop 6.07, target 7.07 (premarket_high), R:R 2.13; target 0.68 away > ~0.36 reachable in 350 min","plan":{"state":"PASS","setup":"","stop":6.07,"target":7.07,"target_label":"premarket_high","reward_risk":2.13,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.3899,"vwap":6.2293,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":3.48,"trend":"flat","recent_slope_pct":0.1176,"volatility":"high"},"price":6.3899,"volume":{"bars":34,"last_bar_volume":61666.0,"baseline_avg":40205.0,"bar_rvol":1.533789,"raw_accel":-0.392962,"smooth_accel":0.120376,"accel_momentum":-0.954154,"rvol_3bar":[2.234304,2.768387,1.533789],"trend_3bar":"MIXED","projected_rvol":0.635692},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":4345.0,"sell_vol":8434.0,"unclassified_vol":0.0,"imbalance":-0.319978,"bid":6.33,"ask":6.39,"spread_pct":0.943396,"quote_size_imbalance":null,"quote_age_s":0.712259},"context":{"vwap":6.228112,"price_vs_vwap_pct":2.597698,"ema9":6.288428,"ema20":6.232376,"ema_stack":true,"ema_warm":true,"hod":6.49,"dist_to_hod_pct":-1.542373,"dist_to_hod_atr":0.905689,"atr":0.110524,"spread_atr":0.542871,"own_change_pct":2.33119,"rel_strength_pct":{"SPY":2.410842,"IWM":2.474652}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.490779},"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":"7c90a3cf3862","ts":"2026-09-15T14:04:30+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.2175,"target":8.41,"target_label":"prev_day_high","reward_risk":1.14,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":1.28},"price":8.3076,"vwap":8.2958,"ext_from_open_pct":-0.27,"max_ext_allowed_pct":3.0,"volume_pace":1.084,"trend":"flat","recent_slope_pct":-0.0144,"volatility":"medium"},"price":8.3076,"volume":{"bars":34,"last_bar_volume":1440.0,"baseline_avg":1006.5,"bar_rvol":1.4307,"raw_accel":2.627204,"smooth_accel":-0.542385,"accel_momentum":-2.986619,"rvol_3bar":[0.496532,0.330077,1.4307],"trend_3bar":"MIXED","projected_rvol":0.188773},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":95.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.31,"ask":8.33,"spread_pct":0.240385,"quote_size_imbalance":null,"quote_age_s":1.162647},"context":{"vwap":8.295777,"price_vs_vwap_pct":0.142521,"ema9":8.304529,"ema20":8.297434,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.263529,"dist_to_hod_atr":5.195562,"atr":0.037032,"spread_atr":0.540079,"own_change_pct":0.477024,"rel_strength_pct":{"SPY":0.556676,"IWM":0.620486}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.4307},"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":"7d17200dbb9f","ts":"2026-09-15T14:04:55+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.97 below VWAP $5.98","plan":{"state":"PASS","setup":"","stop":5.8919,"target":6.03,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":106.1,"room_to_5d_high_atr":-0.14},"price":5.975,"vwap":5.984,"ext_from_open_pct":1.1,"max_ext_allowed_pct":4.0,"volume_pace":3.205,"trend":"flat","recent_slope_pct":-0.0033,"volatility":"medium"},"price":5.975,"volume":{"bars":34,"last_bar_volume":204519.0,"baseline_avg":168428.35,"bar_rvol":1.214279,"raw_accel":3.04052,"smooth_accel":-0.470343,"accel_momentum":-0.132334,"rvol_3bar":[0.549478,0.275804,1.214279],"trend_3bar":"MIXED","projected_rvol":0.398652},"flow":{"window_s":30,"trades":164,"trade_rate":5.466667,"buy_vol":8612.0,"sell_vol":25933.0,"unclassified_vol":0.0,"imbalance":-0.501404,"bid":5.97,"ask":5.98,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":0.055467},"context":{"vwap":5.983989,"price_vs_vwap_pct":-0.150217,"ema9":5.984309,"ema20":5.978823,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.565074,"dist_to_hod_atr":2.085386,"atr":0.045555,"spread_atr":0.219514,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.079652,"IWM":0.143462}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.608844},"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":"c6c0954f25be","ts":"2026-09-15T14:04:55+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.2149,"target":8.35,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.29},"price":8.305,"vwap":8.2963,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":3.0,"volume_pace":1.117,"trend":"flat","recent_slope_pct":-0.0207,"volatility":"medium"},"price":8.305,"volume":{"bars":34,"last_bar_volume":1440.0,"baseline_avg":1006.5,"bar_rvol":1.4307,"raw_accel":2.627204,"smooth_accel":-0.542385,"accel_momentum":-2.986619,"rvol_3bar":[0.496532,0.330077,1.4307],"trend_3bar":"MIXED","projected_rvol":2.781195},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":719.0,"sell_vol":1757.0,"unclassified_vol":0.0,"imbalance":-0.419225,"bid":8.3,"ask":8.31,"spread_pct":0.120409,"quote_size_imbalance":null,"quote_age_s":0.224303},"context":{"vwap":8.295777,"price_vs_vwap_pct":0.11118,"ema9":8.304529,"ema20":8.297434,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.294118,"dist_to_hod_atr":5.265772,"atr":0.037032,"spread_atr":0.27004,"own_change_pct":0.477024,"rel_strength_pct":{"SPY":0.556676,"IWM":0.620486}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.599785},"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":"a305594fbd3c","ts":"2026-09-15T14:05:30+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.41% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0563,"target":6.39,"target_label":"prev_day_high","reward_risk":0.11,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.3578,"vwap":6.2444,"ext_from_open_pct":0.36,"max_ext_allowed_pct":4.0,"volume_pace":3.657,"trend":"flat","recent_slope_pct":0.1969,"volatility":"high"},"price":6.3578,"volume":{"bars":35,"last_bar_volume":88585.0,"baseline_avg":40829.15,"bar_rvol":2.169651,"raw_accel":0.436529,"smooth_accel":0.002572,"accel_momentum":-0.117805,"rvol_3bar":[2.768387,1.533789,2.169651],"trend_3bar":"MIXED","projected_rvol":2.418076},"flow":{"window_s":30,"trades":380,"trade_rate":12.666667,"buy_vol":19122.0,"sell_vol":30242.0,"unclassified_vol":0.0,"imbalance":-0.225265,"bid":6.35,"ask":6.44,"spread_pct":1.407349,"quote_size_imbalance":null,"quote_age_s":0.172406},"context":{"vwap":6.239527,"price_vs_vwap_pct":1.895548,"ema9":6.328742,"ema20":6.256912,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.187692,"dist_to_hod_atr":1.231317,"atr":0.115486,"spread_atr":0.779314,"own_change_pct":3.63108,"rel_strength_pct":{"SPY":3.725873,"IWM":3.813025}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.488747},"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":"9ef65feecb99","ts":"2026-09-15T14:05:35+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.0785,"target":7.07,"target_label":"premarket_high","reward_risk":2.29,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":3.7},"price":6.38,"vwap":6.2453,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":3.667,"trend":"flat","recent_slope_pct":0.2662,"volatility":"high"},"price":6.38,"volume":{"bars":35,"last_bar_volume":88585.0,"baseline_avg":40829.15,"bar_rvol":2.169651,"raw_accel":0.436529,"smooth_accel":0.002572,"accel_momentum":-0.117805,"rvol_3bar":[2.768387,1.533789,2.169651],"trend_3bar":"MIXED","projected_rvol":2.43259},"flow":{"window_s":30,"trades":370,"trade_rate":12.333333,"buy_vol":16132.0,"sell_vol":30629.0,"unclassified_vol":0.0,"imbalance":-0.310023,"bid":6.36,"ask":6.38,"spread_pct":0.313972,"quote_size_imbalance":null,"quote_age_s":0.783857},"context":{"vwap":6.239527,"price_vs_vwap_pct":2.251344,"ema9":6.328742,"ema20":6.256912,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.846154,"dist_to_hod_atr":1.039086,"atr":0.115486,"spread_atr":0.173181,"own_change_pct":3.63108,"rel_strength_pct":{"SPY":3.725873,"IWM":3.813025}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.672642},"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":"feb3758e21ef","ts":"2026-09-15T14:05:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0685,"target":6.39,"target_label":"prev_day_high","reward_risk":0.07,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.37,"vwap":6.2455,"ext_from_open_pct":0.55,"max_ext_allowed_pct":4.0,"volume_pace":3.666,"trend":"flat","recent_slope_pct":0.235,"volatility":"high"},"price":6.37,"volume":{"bars":35,"last_bar_volume":88585.0,"baseline_avg":40829.15,"bar_rvol":2.169651,"raw_accel":0.436529,"smooth_accel":0.002572,"accel_momentum":-0.117805,"rvol_3bar":[2.768387,1.533789,2.169651],"trend_3bar":"MIXED","projected_rvol":2.26037},"flow":{"window_s":30,"trades":393,"trade_rate":13.1,"buy_vol":14774.0,"sell_vol":29308.0,"unclassified_vol":0.0,"imbalance":-0.329704,"bid":6.34,"ask":6.38,"spread_pct":0.628931,"quote_size_imbalance":null,"quote_age_s":0.964878},"context":{"vwap":6.239527,"price_vs_vwap_pct":2.091076,"ema9":6.328742,"ema20":6.256912,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.0,"dist_to_hod_atr":1.125676,"atr":0.115486,"spread_atr":0.346362,"own_change_pct":3.63108,"rel_strength_pct":{"SPY":3.725873,"IWM":3.813025}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.715342},"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":"21d5674182f1","ts":"2026-09-15T14:05:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.56% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":6.0885,"target":7.07,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.2462,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":3.667,"trend":"flat","recent_slope_pct":0.2974,"volatility":"high"},"price":6.39,"volume":{"bars":35,"last_bar_volume":88585.0,"baseline_avg":40829.15,"bar_rvol":2.169651,"raw_accel":0.436529,"smooth_accel":0.002572,"accel_momentum":-0.117805,"rvol_3bar":[2.768387,1.533789,2.169651],"trend_3bar":"MIXED","projected_rvol":2.158784},"flow":{"window_s":30,"trades":372,"trade_rate":12.4,"buy_vol":12756.0,"sell_vol":29685.0,"unclassified_vol":0.0,"imbalance":-0.398883,"bid":6.35,"ask":6.45,"spread_pct":1.5625,"quote_size_imbalance":null,"quote_age_s":0.447212},"context":{"vwap":6.239527,"price_vs_vwap_pct":2.411613,"ema9":6.328742,"ema20":6.256912,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.692308,"dist_to_hod_atr":0.952495,"atr":0.115486,"spread_atr":0.865905,"own_change_pct":3.63108,"rel_strength_pct":{"SPY":3.725873,"IWM":3.813025}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.865437},"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":"5163d3da55f2","ts":"2026-09-15T14:05:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.0985,"target":7.07,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":47.4,"room_to_5d_high_atr":3.68},"price":6.4,"vwap":6.2468,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":3.668,"trend":"flat","recent_slope_pct":0.3286,"volatility":"high"},"price":6.4,"volume":{"bars":35,"last_bar_volume":88585.0,"baseline_avg":40829.15,"bar_rvol":2.169651,"raw_accel":0.436529,"smooth_accel":0.002572,"accel_momentum":-0.117805,"rvol_3bar":[2.768387,1.533789,2.169651],"trend_3bar":"MIXED","projected_rvol":2.069286},"flow":{"window_s":30,"trades":300,"trade_rate":10.0,"buy_vol":12208.0,"sell_vol":19600.0,"unclassified_vol":0.0,"imbalance":-0.232394,"bid":6.36,"ask":6.42,"spread_pct":0.938967,"quote_size_imbalance":null,"quote_age_s":0.084419},"context":{"vwap":6.239527,"price_vs_vwap_pct":2.571882,"ema9":6.328742,"ema20":6.256912,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.538462,"dist_to_hod_atr":0.865905,"atr":0.115486,"spread_atr":0.519543,"own_change_pct":3.63108,"rel_strength_pct":{"SPY":3.725873,"IWM":3.813025}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.504215},"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":"0a359773db21","ts":"2026-09-15T14:06:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0485,"target":6.39,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":46.8,"room_to_5d_high_atr":3.72},"price":6.35,"vwap":6.2468,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":3.67,"trend":"flat","recent_slope_pct":0.1725,"volatility":"high"},"price":6.35,"volume":{"bars":35,"last_bar_volume":88585.0,"baseline_avg":40829.15,"bar_rvol":2.169651,"raw_accel":0.436529,"smooth_accel":0.002572,"accel_momentum":-0.117805,"rvol_3bar":[2.768387,1.533789,2.169651],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":296,"trade_rate":9.866667,"buy_vol":13664.0,"sell_vol":16040.0,"unclassified_vol":0.0,"imbalance":-0.079989,"bid":6.34,"ask":6.37,"spread_pct":0.472069,"quote_size_imbalance":null,"quote_age_s":0.097553},"context":{"vwap":6.239527,"price_vs_vwap_pct":1.770539,"ema9":6.328742,"ema20":6.256912,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.307692,"dist_to_hod_atr":1.298857,"atr":0.115486,"spread_atr":0.259771,"own_change_pct":3.63108,"rel_strength_pct":{"SPY":3.675204,"IWM":3.804284}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.173549},"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":"20dcef142345","ts":"2026-09-15T14:06:05+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.42% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0435,"target":6.39,"target_label":"prev_day_high","reward_risk":0.15,"pos_in_5d_range_pct":46.7,"room_to_5d_high_atr":3.73},"price":6.345,"vwap":6.2477,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":3.694,"trend":"flat","recent_slope_pct":-0.1331,"volatility":"high"},"price":6.345,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":355,"trade_rate":11.833333,"buy_vol":16217.0,"sell_vol":19868.0,"unclassified_vol":0.0,"imbalance":-0.101178,"bid":6.3,"ask":6.39,"spread_pct":1.41844,"quote_size_imbalance":null,"quote_age_s":1.719753},"context":{"vwap":6.246846,"price_vs_vwap_pct":1.571263,"ema9":6.332994,"ema20":6.265778,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.384615,"dist_to_hod_atr":1.30619,"atr":0.118666,"spread_atr":0.758433,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.181853},"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":"9872b71964c0","ts":"2026-09-15T14:06:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8858,"target":10.2,"target_label":"prev_day_high","reward_risk":1.64,"pos_in_5d_range_pct":23.4,"room_to_5d_high_atr":2.44},"price":10.005,"vwap":9.9724,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":1.406,"trend":"flat","recent_slope_pct":-0.035,"volatility":"medium"},"price":10.005,"volume":{"bars":36,"last_bar_volume":241006.0,"baseline_avg":421336.1,"bar_rvol":0.572004,"raw_accel":-0.192737,"smooth_accel":-0.094801,"accel_momentum":0.449411,"rvol_3bar":[0.382299,0.706232,0.572004],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":176,"trade_rate":5.866667,"buy_vol":78206.0,"sell_vol":51377.0,"unclassified_vol":0.0,"imbalance":0.207041,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.019592},"context":{"vwap":9.97231,"price_vs_vwap_pct":0.327811,"ema9":10.014136,"ema20":10.0058,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.447761,"dist_to_hod_atr":1.08515,"atr":0.041469,"spread_atr":0.241144,"own_change_pct":-0.269104,"rel_strength_pct":{"SPY":-0.22498,"IWM":-0.0959}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.118428},"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":"a1cc0640304b","ts":"2026-09-15T14:06:10+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.26% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":6.0885,"target":7.07,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.2481,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":3.695,"trend":"flat","recent_slope_pct":0.0078,"volatility":"high"},"price":6.39,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":319,"trade_rate":10.633333,"buy_vol":18390.0,"sell_vol":18408.0,"unclassified_vol":0.0,"imbalance":-0.000489,"bid":6.31,"ask":6.39,"spread_pct":1.259843,"quote_size_imbalance":null,"quote_age_s":2.401737},"context":{"vwap":6.246846,"price_vs_vwap_pct":2.291627,"ema9":6.332994,"ema20":6.265778,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.692308,"dist_to_hod_atr":0.926974,"atr":0.118666,"spread_atr":0.674163,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.000879},"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":"5c639156bc36","ts":"2026-09-15T14:06:10+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8958,"target":10.2,"target_label":"prev_day_high","reward_risk":1.55,"pos_in_5d_range_pct":24.0,"room_to_5d_high_atr":2.42},"price":10.015,"vwap":9.9733,"ext_from_open_pct":1.88,"max_ext_allowed_pct":3.0,"volume_pace":1.438,"trend":"flat","recent_slope_pct":-0.015,"volatility":"medium"},"price":10.015,"volume":{"bars":36,"last_bar_volume":241006.0,"baseline_avg":421336.1,"bar_rvol":0.572004,"raw_accel":-0.192737,"smooth_accel":-0.094801,"accel_momentum":0.449411,"rvol_3bar":[0.382299,0.706232,0.572004],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":303,"trade_rate":10.1,"buy_vol":328632.0,"sell_vol":180541.0,"unclassified_vol":0.0,"imbalance":0.290846,"bid":10.01,"ask":10.02,"spread_pct":0.09985,"quote_size_imbalance":null,"quote_age_s":0.043898},"context":{"vwap":9.97231,"price_vs_vwap_pct":0.428089,"ema9":10.014136,"ema20":10.0058,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.348259,"dist_to_hod_atr":0.844005,"atr":0.041469,"spread_atr":0.241144,"own_change_pct":-0.269104,"rel_strength_pct":{"SPY":-0.22498,"IWM":-0.0959}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.166365},"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":"125fbac66900","ts":"2026-09-15T14:06:15+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.0884,"target":7.07,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.3899,"vwap":6.2484,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":3.693,"trend":"flat","recent_slope_pct":0.0075,"volatility":"high"},"price":6.3899,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":2.044323},"flow":{"window_s":30,"trades":318,"trade_rate":10.6,"buy_vol":18105.0,"sell_vol":17340.0,"unclassified_vol":0.0,"imbalance":0.021583,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":1.300823},"context":{"vwap":6.246846,"price_vs_vwap_pct":2.290026,"ema9":6.332994,"ema20":6.265778,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.693846,"dist_to_hod_atr":0.927817,"atr":0.118666,"spread_atr":0.337081,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.038792},"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":"52d46c2b2e4c","ts":"2026-09-15T14:06:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0585,"target":6.39,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.36,"vwap":6.2483,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.686,"trend":"flat","recent_slope_pct":-0.0861,"volatility":"high"},"price":6.36,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":1.571704},"flow":{"window_s":30,"trades":296,"trade_rate":9.866667,"buy_vol":15761.0,"sell_vol":15948.0,"unclassified_vol":0.0,"imbalance":-0.005897,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":6.300823},"context":{"vwap":6.246846,"price_vs_vwap_pct":1.811384,"ema9":6.332994,"ema20":6.265778,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.153846,"dist_to_hod_atr":1.179785,"atr":0.118666,"spread_atr":0.337081,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.0106},"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":"f64de3ffc13b","ts":"2026-09-15T14:06:35+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.11% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":5.9485,"target":6.39,"target_label":"prev_day_high","reward_risk":0.46,"pos_in_5d_range_pct":45.6,"room_to_5d_high_atr":3.81},"price":6.25,"vwap":6.2482,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":4.0,"volume_pace":3.703,"trend":"flat","recent_slope_pct":-0.4319,"volatility":"high"},"price":6.25,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":1.673209},"flow":{"window_s":30,"trades":262,"trade_rate":8.733333,"buy_vol":10121.0,"sell_vol":17862.0,"unclassified_vol":0.0,"imbalance":-0.276632,"bid":6.25,"ask":6.32,"spread_pct":1.113763,"quote_size_imbalance":null,"quote_age_s":0.29588},"context":{"vwap":6.246846,"price_vs_vwap_pct":0.050496,"ema9":6.332994,"ema20":6.265778,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-3.846154,"dist_to_hod_atr":2.106759,"atr":0.118666,"spread_atr":0.589892,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.497209},"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":"5d1d239967f0","ts":"2026-09-15T14:06:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6771,"target":7.81,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7411,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.708,"trend":"flat","recent_slope_pct":-0.0006,"volatility":"medium"},"price":7.765,"volume":{"bars":36,"last_bar_volume":7034.0,"baseline_avg":13248.55,"bar_rvol":0.530926,"raw_accel":-0.650172,"smooth_accel":-0.017118,"accel_momentum":-1.754427,"rvol_3bar":[0.687894,1.448746,0.530926],"trend_3bar":"MIXED","projected_rvol":2.848355},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":12139.0,"sell_vol":9679.0,"unclassified_vol":0.0,"imbalance":0.112751,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.069289},"context":{"vwap":7.740604,"price_vs_vwap_pct":0.315174,"ema9":7.747022,"ema20":7.753015,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.939192,"atr":0.047914,"spread_atr":0.208709,"own_change_pct":-0.538001,"rel_strength_pct":{"SPY":-0.493877,"IWM":-0.364797}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.059862},"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":"d2fa66b90e53","ts":"2026-09-15T14:06:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0038,"target":6.39,"target_label":"prev_day_high","reward_risk":0.28,"pos_in_5d_range_pct":46.3,"room_to_5d_high_atr":3.76},"price":6.3053,"vwap":6.2487,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":4.0,"volume_pace":3.701,"trend":"flat","recent_slope_pct":-0.2578,"volatility":"high"},"price":6.3053,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":1.574159},"flow":{"window_s":30,"trades":262,"trade_rate":8.733333,"buy_vol":9152.0,"sell_vol":17758.0,"unclassified_vol":0.0,"imbalance":-0.319807,"bid":6.25,"ask":6.31,"spread_pct":0.955414,"quote_size_imbalance":null,"quote_age_s":0.932858},"context":{"vwap":6.246846,"price_vs_vwap_pct":0.935742,"ema9":6.332994,"ema20":6.265778,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.995385,"dist_to_hod_atr":1.640744,"atr":0.118666,"spread_atr":0.505622,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.574809},"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":"c475d8477408","ts":"2026-09-15T14:06:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.42% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0335,"target":6.39,"target_label":"prev_day_high","reward_risk":0.18,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":3.74},"price":6.335,"vwap":6.2493,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":3.705,"trend":"flat","recent_slope_pct":-0.1645,"volatility":"high"},"price":6.335,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":1.565529},"flow":{"window_s":30,"trades":252,"trade_rate":8.4,"buy_vol":11149.0,"sell_vol":18020.0,"unclassified_vol":0.0,"imbalance":-0.235558,"bid":6.29,"ask":6.38,"spread_pct":1.420679,"quote_size_imbalance":null,"quote_age_s":1.824069},"context":{"vwap":6.246846,"price_vs_vwap_pct":1.411182,"ema9":6.332994,"ema20":6.265778,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.538462,"dist_to_hod_atr":1.390461,"atr":0.118666,"spread_atr":0.758433,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.423384},"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":"f779969609c2","ts":"2026-09-15T14:06:45+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.14,"target":7.81,"target_label":"ceiling","reward_risk":0.12,"pos_in_5d_range_pct":51.5,"room_to_5d_high_atr":0.75},"price":7.7405,"vwap":7.7409,"ext_from_open_pct":0.53,"max_ext_allowed_pct":4.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":-0.064,"volatility":"medium"},"price":7.7405,"volume":{"bars":36,"last_bar_volume":7034.0,"baseline_avg":13248.55,"bar_rvol":0.530926,"raw_accel":-0.650172,"smooth_accel":-0.017118,"accel_momentum":-1.754427,"rvol_3bar":[0.687894,1.448746,0.530926],"trend_3bar":"MIXED","projected_rvol":2.287345},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":11750.0,"sell_vol":5542.0,"unclassified_vol":0.0,"imbalance":0.35901,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.277752},"context":{"vwap":7.740604,"price_vs_vwap_pct":-0.001339,"ema9":7.747022,"ema20":7.753015,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.889885,"dist_to_hod_atr":1.450531,"atr":0.047914,"spread_atr":0.208709,"own_change_pct":-0.538001,"rel_strength_pct":{"SPY":-0.493877,"IWM":-0.364797}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.190608},"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":"b2d4a4295c85","ts":"2026-09-15T14:06:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0485,"target":6.39,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":46.8,"room_to_5d_high_atr":3.72},"price":6.35,"vwap":6.2494,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":3.697,"trend":"flat","recent_slope_pct":-0.1174,"volatility":"high"},"price":6.35,"volume":{"bars":36,"last_bar_volume":79068.0,"baseline_avg":43991.1,"bar_rvol":1.797364,"raw_accel":-0.107434,"smooth_accel":-0.301223,"accel_momentum":-0.303795,"rvol_3bar":[1.533789,2.169651,1.797364],"trend_3bar":"MIXED","projected_rvol":1.417841},"flow":{"window_s":30,"trades":264,"trade_rate":8.8,"buy_vol":11038.0,"sell_vol":17892.0,"unclassified_vol":0.0,"imbalance":-0.236917,"bid":6.32,"ask":6.38,"spread_pct":0.944882,"quote_size_imbalance":null,"quote_age_s":0.820996},"context":{"vwap":6.246846,"price_vs_vwap_pct":1.651303,"ema9":6.332994,"ema20":6.265778,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.307692,"dist_to_hod_atr":1.264055,"atr":0.118666,"spread_atr":0.505622,"own_change_pct":-0.157233,"rel_strength_pct":{"SPY":-0.113109,"IWM":0.015971}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.425825},"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":"33654f1ed2f8","ts":"2026-09-15T14:06:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.6821,"target":7.83,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":56.9,"room_to_5d_high_atr":0.67},"price":7.77,"vwap":7.7412,"ext_from_open_pct":0.91,"max_ext_allowed_pct":4.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":0.0123,"volatility":"medium"},"price":7.77,"volume":{"bars":36,"last_bar_volume":7034.0,"baseline_avg":13248.55,"bar_rvol":0.530926,"raw_accel":-0.650172,"smooth_accel":-0.017118,"accel_momentum":-1.754427,"rvol_3bar":[0.687894,1.448746,0.530926],"trend_3bar":"MIXED","projected_rvol":2.068574},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":11702.0,"sell_vol":2624.0,"unclassified_vol":0.0,"imbalance":0.633673,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.329178},"context":{"vwap":7.740604,"price_vs_vwap_pct":0.379768,"ema9":7.747022,"ema20":7.753015,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.512164,"dist_to_hod_atr":0.834838,"atr":0.047914,"spread_atr":0.208709,"own_change_pct":-0.538001,"rel_strength_pct":{"SPY":-0.493877,"IWM":-0.364797}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.336434},"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":"5551826e1e1b","ts":"2026-09-15T14:06:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6723,"target":7.81,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":55.1,"room_to_5d_high_atr":0.7},"price":7.7602,"vwap":7.7411,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":-0.013,"volatility":"medium"},"price":7.7602,"volume":{"bars":36,"last_bar_volume":7034.0,"baseline_avg":13248.55,"bar_rvol":0.530926,"raw_accel":-0.650172,"smooth_accel":-0.017118,"accel_momentum":-1.754427,"rvol_3bar":[0.687894,1.448746,0.530926],"trend_3bar":"MIXED","projected_rvol":2.106961},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":11824.0,"sell_vol":5252.0,"unclassified_vol":0.0,"imbalance":0.384868,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.107388},"context":{"vwap":7.740604,"price_vs_vwap_pct":0.253163,"ema9":7.747022,"ema20":7.753015,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.637644,"dist_to_hod_atr":1.039373,"atr":0.047914,"spread_atr":0.208709,"own_change_pct":-0.538001,"rel_strength_pct":{"SPY":-0.493877,"IWM":-0.364797}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.204336},"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":"94f204d839d2","ts":"2026-09-15T14:07:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8808,"target":10.2,"target_label":"prev_day_high","reward_risk":1.68,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":2.45},"price":10.0,"vwap":9.9735,"ext_from_open_pct":1.73,"max_ext_allowed_pct":4.0,"volume_pace":1.415,"trend":"flat","recent_slope_pct":-0.0155,"volatility":"medium"},"price":10.0,"volume":{"bars":37,"last_bar_volume":592098.0,"baseline_avg":410465.3,"bar_rvol":1.442504,"raw_accel":1.456777,"smooth_accel":0.725588,"accel_momentum":0.820389,"rvol_3bar":[0.706232,0.572004,1.442504],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":72689.0,"sell_vol":10757.0,"unclassified_vol":0.0,"imbalance":0.742181,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.281154},"context":{"vwap":9.973447,"price_vs_vwap_pct":0.266234,"ema9":10.011888,"ema20":10.005523,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.497512,"dist_to_hod_atr":1.233271,"atr":0.040543,"spread_atr":0.246654,"own_change_pct":-0.220449,"rel_strength_pct":{"SPY":-0.154285,"IWM":-0.054173}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.070599},"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":"fc8a6ee5fa63","ts":"2026-09-15T14:07:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6529,"target":7.81,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":51.5,"room_to_5d_high_atr":0.75},"price":7.7408,"vwap":7.7412,"ext_from_open_pct":0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.701,"trend":"flat","recent_slope_pct":0.0537,"volatility":"medium"},"price":7.7408,"volume":{"bars":37,"last_bar_volume":25788.0,"baseline_avg":12427.2,"bar_rvol":2.075126,"raw_accel":2.666193,"smooth_accel":0.277768,"accel_momentum":0.294886,"rvol_3bar":[1.448746,0.530926,2.075126],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":556.0,"sell_vol":3631.0,"unclassified_vol":0.0,"imbalance":-0.734416,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":2.821784},"context":{"vwap":7.741216,"price_vs_vwap_pct":-0.005374,"ema9":7.750618,"ema20":7.754156,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.886044,"dist_to_hod_atr":1.456458,"atr":0.047513,"spread_atr":0.210471,"own_change_pct":0.193548,"rel_strength_pct":{"SPY":0.259712,"IWM":0.359824}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.524005},"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":"22ae44a406d4","ts":"2026-09-15T14:07:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6771,"target":7.81,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7413,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.701,"trend":"flat","recent_slope_pct":0.1162,"volatility":"medium"},"price":7.765,"volume":{"bars":37,"last_bar_volume":25788.0,"baseline_avg":12427.2,"bar_rvol":2.075126,"raw_accel":2.666193,"smooth_accel":0.277768,"accel_momentum":0.294886,"rvol_3bar":[1.448746,0.530926,2.075126],"trend_3bar":"MIXED","projected_rvol":0.429703},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1089.0,"sell_vol":3306.0,"unclassified_vol":0.0,"imbalance":-0.504437,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":1.1112},"context":{"vwap":7.741216,"price_vs_vwap_pct":0.307238,"ema9":7.750618,"ema20":7.754156,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.947118,"atr":0.047513,"spread_atr":0.210471,"own_change_pct":0.193548,"rel_strength_pct":{"SPY":0.259712,"IWM":0.359824}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.04677},"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":"d6c3dc372f4f","ts":"2026-09-15T14:07:50+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6516,"target":7.81,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":51.3,"room_to_5d_high_atr":0.75},"price":7.7395,"vwap":7.7413,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.692,"trend":"flat","recent_slope_pct":0.0504,"volatility":"medium"},"price":7.7395,"volume":{"bars":37,"last_bar_volume":25788.0,"baseline_avg":12427.2,"bar_rvol":2.075126,"raw_accel":2.666193,"smooth_accel":0.277768,"accel_momentum":0.294886,"rvol_3bar":[1.448746,0.530926,2.075126],"trend_3bar":"MIXED","projected_rvol":0.348783},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":425.0,"sell_vol":1852.0,"unclassified_vol":0.0,"imbalance":-0.626702,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.82032},"context":{"vwap":7.741216,"price_vs_vwap_pct":-0.022168,"ema9":7.750618,"ema20":7.754156,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.902689,"dist_to_hod_atr":1.483819,"atr":0.047513,"spread_atr":0.210471,"own_change_pct":0.193548,"rel_strength_pct":{"SPY":0.259712,"IWM":0.359824}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.300485},"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":"11bb8938ea7e","ts":"2026-09-15T14:07:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6771,"target":7.81,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7415,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":0.1162,"volatility":"medium"},"price":7.765,"volume":{"bars":37,"last_bar_volume":25788.0,"baseline_avg":12427.2,"bar_rvol":2.075126,"raw_accel":2.666193,"smooth_accel":0.277768,"accel_momentum":0.294886,"rvol_3bar":[1.448746,0.530926,2.075126],"trend_3bar":"MIXED","projected_rvol":0.957284},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":7027.0,"sell_vol":2214.0,"unclassified_vol":0.0,"imbalance":0.520831,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.375034},"context":{"vwap":7.741216,"price_vs_vwap_pct":0.307238,"ema9":7.750618,"ema20":7.754156,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":0.947118,"atr":0.047513,"spread_atr":0.210471,"own_change_pct":0.193548,"rel_strength_pct":{"SPY":0.259712,"IWM":0.359824}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.08079},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fcac587a32c9","ts":"2026-09-15T14:08:05+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8758,"target":10.015,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":2.46},"price":9.995,"vwap":9.9744,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":1.434,"trend":"flat","recent_slope_pct":-0.0362,"volatility":"medium"},"price":9.995,"volume":{"bars":38,"last_bar_volume":673757.0,"baseline_avg":425010.55,"bar_rvol":1.585271,"raw_accel":0.137915,"smooth_accel":1.46608,"accel_momentum":0.740492,"rvol_3bar":[0.572004,1.442504,1.585271],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":430,"trade_rate":14.333333,"buy_vol":222996.0,"sell_vol":388830.0,"unclassified_vol":0.0,"imbalance":-0.271048,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.020806},"context":{"vwap":9.974338,"price_vs_vwap_pct":0.207148,"ema9":10.007531,"ema20":10.004054,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.547264,"dist_to_hod_atr":1.40754,"atr":0.039075,"spread_atr":0.255916,"own_change_pct":-0.321284,"rel_strength_pct":{"SPY":-0.281101,"IWM":-0.231965}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.429684},"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":"08737732ce28","ts":"2026-09-15T14:08:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.25 below VWAP $6.25","plan":{"state":"PASS","setup":"","stop":5.9485,"target":6.39,"target_label":"prev_day_high","reward_risk":0.46,"pos_in_5d_range_pct":45.6,"room_to_5d_high_atr":3.81},"price":6.25,"vwap":6.2506,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":4.0,"volume_pace":3.595,"trend":"flat","recent_slope_pct":-0.8348,"volatility":"high"},"price":6.25,"volume":{"bars":38,"last_bar_volume":21385.0,"baseline_avg":47883.5,"bar_rvol":0.446605,"raw_accel":-0.606365,"smooth_accel":-0.385394,"accel_momentum":-0.312694,"rvol_3bar":[1.797364,1.166339,0.446605],"trend_3bar":"DECELERATING","projected_rvol":0.465797},"flow":{"window_s":30,"trades":118,"trade_rate":3.933333,"buy_vol":4292.0,"sell_vol":8811.0,"unclassified_vol":0.0,"imbalance":-0.344883,"bid":6.25,"ask":6.29,"spread_pct":0.637959,"quote_size_imbalance":null,"quote_age_s":1.528115},"context":{"vwap":6.250348,"price_vs_vwap_pct":-0.005562,"ema9":6.329916,"ema20":6.276725,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-3.846154,"dist_to_hod_atr":2.068986,"atr":0.120832,"spread_atr":0.331038,"own_change_pct":-1.253918,"rel_strength_pct":{"SPY":-1.213736,"IWM":-1.1646}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.154026},"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":"5e82be2df389","ts":"2026-09-15T14:08:45+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8858,"target":10.2,"target_label":"prev_day_high","reward_risk":1.64,"pos_in_5d_range_pct":23.4,"room_to_5d_high_atr":2.44},"price":10.005,"vwap":9.9746,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":1.424,"trend":"flat","recent_slope_pct":-0.0162,"volatility":"medium"},"price":10.005,"volume":{"bars":38,"last_bar_volume":673757.0,"baseline_avg":425010.55,"bar_rvol":1.585271,"raw_accel":0.137915,"smooth_accel":1.46608,"accel_momentum":0.740492,"rvol_3bar":[0.572004,1.442504,1.585271],"trend_3bar":"ACCELERATING","projected_rvol":0.606733},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":59986.0,"sell_vol":77333.0,"unclassified_vol":0.0,"imbalance":-0.126326,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.112092},"context":{"vwap":9.974338,"price_vs_vwap_pct":0.307405,"ema9":10.007531,"ema20":10.004054,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.447761,"dist_to_hod_atr":1.151624,"atr":0.039075,"spread_atr":0.255916,"own_change_pct":-0.321284,"rel_strength_pct":{"SPY":-0.281101,"IWM":-0.231965}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.200261},"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":"1a19b38253ad","ts":"2026-09-15T14:08:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.9579,"target":6.39,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":45.7,"room_to_5d_high_atr":3.8},"price":6.2594,"vwap":6.2506,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":4.0,"volume_pace":3.591,"trend":"flat","recent_slope_pct":-0.8049,"volatility":"high"},"price":6.2594,"volume":{"bars":38,"last_bar_volume":21385.0,"baseline_avg":47883.5,"bar_rvol":0.446605,"raw_accel":-0.606365,"smooth_accel":-0.385394,"accel_momentum":-0.312694,"rvol_3bar":[1.797364,1.166339,0.446605],"trend_3bar":"DECELERATING","projected_rvol":0.463625},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":4716.0,"sell_vol":10106.0,"unclassified_vol":0.0,"imbalance":-0.363649,"bid":6.25,"ask":6.3,"spread_pct":0.796813,"quote_size_imbalance":null,"quote_age_s":2.042816},"context":{"vwap":6.250348,"price_vs_vwap_pct":0.14483,"ema9":6.329916,"ema20":6.276725,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-3.701538,"dist_to_hod_atr":1.991192,"atr":0.120832,"spread_atr":0.413797,"own_change_pct":-1.253918,"rel_strength_pct":{"SPY":-1.213736,"IWM":-1.1646}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.162407},"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":"c3de8b94240d","ts":"2026-09-15T14:08:55+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.9959,"target":6.39,"target_label":"prev_day_high","reward_risk":0.31,"pos_in_5d_range_pct":46.2,"room_to_5d_high_atr":3.77},"price":6.2974,"vwap":6.2508,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":4.0,"volume_pace":3.587,"trend":"flat","recent_slope_pct":-0.6844,"volatility":"high"},"price":6.2974,"volume":{"bars":38,"last_bar_volume":21385.0,"baseline_avg":47883.5,"bar_rvol":0.446605,"raw_accel":-0.606365,"smooth_accel":-0.385394,"accel_momentum":-0.312694,"rvol_3bar":[1.797364,1.166339,0.446605],"trend_3bar":"DECELERATING","projected_rvol":0.461643},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":4814.0,"sell_vol":11743.0,"unclassified_vol":0.0,"imbalance":-0.418494,"bid":6.25,"ask":6.3,"spread_pct":0.796813,"quote_size_imbalance":null,"quote_age_s":4.987578},"context":{"vwap":6.250348,"price_vs_vwap_pct":0.752796,"ema9":6.329916,"ema20":6.276725,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-3.116923,"dist_to_hod_atr":1.676706,"atr":0.120832,"spread_atr":0.413797,"own_change_pct":-1.253918,"rel_strength_pct":{"SPY":-1.213736,"IWM":-1.1646}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.186901},"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":"b0aabfe3e437","ts":"2026-09-15T14:09:05+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8794,"target":10.2,"target_label":"prev_day_high","reward_risk":1.69,"pos_in_5d_range_pct":22.9,"room_to_5d_high_atr":2.46},"price":9.9986,"vwap":9.9746,"ext_from_open_pct":1.72,"max_ext_allowed_pct":3.0,"volume_pace":1.416,"trend":"flat","recent_slope_pct":-0.0207,"volatility":"medium"},"price":9.9986,"volume":{"bars":39,"last_bar_volume":252404.0,"baseline_avg":380803.25,"bar_rvol":0.66282,"raw_accel":-0.625378,"smooth_accel":1.168093,"accel_momentum":-0.297987,"rvol_3bar":[1.442504,1.585271,0.66282],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":60056.0,"sell_vol":50026.0,"unclassified_vol":0.0,"imbalance":0.091114,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":1.553482},"context":{"vwap":9.974643,"price_vs_vwap_pct":0.240179,"ema9":10.005545,"ema20":10.00344,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.511443,"dist_to_hod_atr":1.3376,"atr":0.038427,"spread_atr":0.260234,"own_change_pct":-0.090939,"rel_strength_pct":{"SPY":-0.036258,"IWM":-0.073419}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.060392},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d6d28a00e6b7","ts":"2026-09-15T14:09:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7718,"target":8.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":2.66},"price":7.8901,"vwap":7.8883,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":1.086,"trend":"flat","recent_slope_pct":0.0555,"volatility":"medium"},"price":7.8901,"volume":{"bars":39,"last_bar_volume":3106.0,"baseline_avg":12917.2,"bar_rvol":0.240455,"raw_accel":-0.572647,"smooth_accel":-0.435044,"accel_momentum":-0.33077,"rvol_3bar":[1.104168,0.550658,0.240455],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1225.0,"sell_vol":1816.0,"unclassified_vol":0.0,"imbalance":-0.194344,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.133541},"context":{"vwap":7.888317,"price_vs_vwap_pct":0.022609,"ema9":7.884937,"ema20":7.885151,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.503153,"dist_to_hod_atr":1.618276,"atr":0.024656,"spread_atr":0.405583,"own_change_pct":0.317662,"rel_strength_pct":{"SPY":0.372343,"IWM":0.335183}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.046731},"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":"7e9c3ea8a71f","ts":"2026-09-15T14:09:10+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8808,"target":10.2,"target_label":"prev_day_high","reward_risk":1.68,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":2.45},"price":10.0,"vwap":9.9747,"ext_from_open_pct":1.73,"max_ext_allowed_pct":3.0,"volume_pace":1.414,"trend":"flat","recent_slope_pct":-0.0179,"volatility":"medium"},"price":10.0,"volume":{"bars":39,"last_bar_volume":252404.0,"baseline_avg":380803.25,"bar_rvol":0.66282,"raw_accel":-0.625378,"smooth_accel":1.168093,"accel_momentum":-0.297987,"rvol_3bar":[1.442504,1.585271,0.66282],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":161,"trade_rate":5.366667,"buy_vol":59177.0,"sell_vol":38487.0,"unclassified_vol":0.0,"imbalance":0.211849,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.010019},"context":{"vwap":9.974643,"price_vs_vwap_pct":0.254214,"ema9":10.005545,"ema20":10.00344,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.497512,"dist_to_hod_atr":1.301168,"atr":0.038427,"spread_atr":0.260234,"own_change_pct":-0.090939,"rel_strength_pct":{"SPY":-0.036258,"IWM":-0.073419}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.140418},"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":"fb4617ea963a","ts":"2026-09-15T14:09:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.26% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":6.0845,"target":7.07,"target_label":"premarket_high","reward_risk":2.27,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":3.69},"price":6.386,"vwap":6.2511,"ext_from_open_pct":0.81,"max_ext_allowed_pct":5.0,"volume_pace":3.561,"trend":"flat","recent_slope_pct":0.0207,"volatility":"high"},"price":6.386,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":0.379954},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":5928.0,"sell_vol":2055.0,"unclassified_vol":0.0,"imbalance":0.485156,"bid":6.32,"ask":6.4,"spread_pct":1.257862,"quote_size_imbalance":null,"quote_age_s":0.844189},"context":{"vwap":6.250784,"price_vs_vwap_pct":2.163184,"ema9":6.323153,"ema20":6.27857,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.753846,"dist_to_hod_atr":0.972686,"atr":0.117201,"spread_atr":0.682586,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.027802,"IWM":-1.064962}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.206549},"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":"506540024624","ts":"2026-09-15T14:09:20+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.89 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7676,"target":7.93,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":21.0,"room_to_5d_high_atr":2.67},"price":7.8859,"vwap":7.8884,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":1.094,"trend":"flat","recent_slope_pct":0.0449,"volatility":"medium"},"price":7.8859,"volume":{"bars":39,"last_bar_volume":3106.0,"baseline_avg":12917.2,"bar_rvol":0.240455,"raw_accel":-0.572647,"smooth_accel":-0.435044,"accel_momentum":-0.33077,"rvol_3bar":[1.104168,0.550658,0.240455],"trend_3bar":"DECELERATING","projected_rvol":1.708884},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":7045.0,"sell_vol":1914.0,"unclassified_vol":0.0,"imbalance":0.57272,"bid":7.9,"ask":7.91,"spread_pct":0.126502,"quote_size_imbalance":null,"quote_age_s":1.357824},"context":{"vwap":7.888317,"price_vs_vwap_pct":-0.030635,"ema9":7.884937,"ema20":7.885151,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.556116,"dist_to_hod_atr":1.78862,"atr":0.024656,"spread_atr":0.405583,"own_change_pct":0.317662,"rel_strength_pct":{"SPY":0.372343,"IWM":0.335183}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.137713},"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":"5b943e01e019","ts":"2026-09-15T14:09:25+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.10% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0535,"target":6.39,"target_label":"prev_day_high","reward_risk":0.12,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.355,"vwap":6.2511,"ext_from_open_pct":0.32,"max_ext_allowed_pct":5.0,"volume_pace":3.556,"trend":"flat","recent_slope_pct":-0.0772,"volatility":"high"},"price":6.355,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":0.354524},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":6722.0,"sell_vol":508.0,"unclassified_vol":0.0,"imbalance":0.859474,"bid":6.32,"ask":6.39,"spread_pct":1.101495,"quote_size_imbalance":null,"quote_age_s":2.827793},"context":{"vwap":6.250784,"price_vs_vwap_pct":1.667246,"ema9":6.323153,"ema20":6.27857,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.230769,"dist_to_hod_atr":1.237188,"atr":0.117201,"spread_atr":0.597263,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.027802,"IWM":-1.064962}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.365911},"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":"ba40ffb09027","ts":"2026-09-15T14:09:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7817,"target":8.0,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.64},"price":7.9,"vwap":7.8885,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.092,"trend":"flat","recent_slope_pct":0.0806,"volatility":"medium"},"price":7.9,"volume":{"bars":39,"last_bar_volume":3106.0,"baseline_avg":12917.2,"bar_rvol":0.240455,"raw_accel":-0.572647,"smooth_accel":-0.435044,"accel_momentum":-0.33077,"rvol_3bar":[1.104168,0.550658,0.240455],"trend_3bar":"DECELERATING","projected_rvol":1.385687},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":6945.0,"sell_vol":2014.0,"unclassified_vol":0.0,"imbalance":0.550396,"bid":7.9,"ask":7.91,"spread_pct":0.126502,"quote_size_imbalance":null,"quote_age_s":0.048539},"context":{"vwap":7.888317,"price_vs_vwap_pct":0.148111,"ema9":7.884937,"ema20":7.885151,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.37831,"dist_to_hod_atr":1.216749,"atr":0.024656,"spread_atr":0.405583,"own_change_pct":0.317662,"rel_strength_pct":{"SPY":0.372343,"IWM":0.335183}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.132345},"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":"2590b74e41f7","ts":"2026-09-15T14:09:30+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0635,"target":6.39,"target_label":"prev_day_high","reward_risk":0.08,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.365,"vwap":6.2512,"ext_from_open_pct":0.47,"max_ext_allowed_pct":5.0,"volume_pace":3.55,"trend":"flat","recent_slope_pct":-0.0456,"volatility":"high"},"price":6.365,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":0.338196},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":6659.0,"sell_vol":1448.0,"unclassified_vol":0.0,"imbalance":0.642778,"bid":6.34,"ask":6.39,"spread_pct":0.785546,"quote_size_imbalance":null,"quote_age_s":0.034486},"context":{"vwap":6.250784,"price_vs_vwap_pct":1.827226,"ema9":6.323153,"ema20":6.27857,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.076923,"dist_to_hod_atr":1.151864,"atr":0.117201,"spread_atr":0.426616,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.027802,"IWM":-1.064962}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.273655},"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":"6880a4b8625b","ts":"2026-09-15T14:09:35+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.11% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0135,"target":6.39,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":46.4,"room_to_5d_high_atr":3.75},"price":6.315,"vwap":6.2512,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":5.0,"volume_pace":3.545,"trend":"flat","recent_slope_pct":-0.2039,"volatility":"high"},"price":6.315,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":0.339441},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":3648.0,"sell_vol":2479.0,"unclassified_vol":0.0,"imbalance":0.190795,"bid":6.28,"ask":6.35,"spread_pct":1.108472,"quote_size_imbalance":null,"quote_age_s":4.494129},"context":{"vwap":6.250784,"price_vs_vwap_pct":1.027326,"ema9":6.323153,"ema20":6.27857,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.846154,"dist_to_hod_atr":1.578481,"atr":0.117201,"spread_atr":0.597263,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.027802,"IWM":-1.064962}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.081229},"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":"8596c319a58f","ts":"2026-09-15T14:09:45+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0185,"target":6.39,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":46.4,"room_to_5d_high_atr":3.75},"price":6.32,"vwap":6.2513,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":5.0,"volume_pace":3.535,"trend":"flat","recent_slope_pct":-0.188,"volatility":"high"},"price":6.32,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":0.321579},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":4307.0,"sell_vol":3630.0,"unclassified_vol":0.0,"imbalance":0.085297,"bid":6.31,"ask":6.35,"spread_pct":0.631912,"quote_size_imbalance":null,"quote_age_s":4.047601},"context":{"vwap":6.250784,"price_vs_vwap_pct":1.107316,"ema9":6.323153,"ema20":6.27857,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.769231,"dist_to_hod_atr":1.535819,"atr":0.117201,"spread_atr":0.341293,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.027802,"IWM":-1.064962}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.036314},"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":"3a11dca6a1bd","ts":"2026-09-15T14:09:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.0999,"target":7.07,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":47.4,"room_to_5d_high_atr":3.68},"price":6.4014,"vwap":6.2526,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":3.558,"trend":"flat","recent_slope_pct":0.0692,"volatility":"high"},"price":6.4014,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":0.68642},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":14369.0,"sell_vol":6983.0,"unclassified_vol":0.0,"imbalance":0.345916,"bid":6.4,"ask":6.41,"spread_pct":0.156128,"quote_size_imbalance":null,"quote_age_s":1.120237},"context":{"vwap":6.250784,"price_vs_vwap_pct":2.409553,"ema9":6.323153,"ema20":6.27857,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.516923,"dist_to_hod_atr":0.841288,"atr":0.117201,"spread_atr":0.085323,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.027802,"IWM":-1.064962}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.14727},"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":"3bc714373cff","ts":"2026-09-15T14:09:55+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.25% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0585,"target":6.39,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.36,"vwap":6.2529,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.567,"trend":"flat","recent_slope_pct":-0.0614,"volatility":"high"},"price":6.36,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":0.808147},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":15658.0,"sell_vol":12776.0,"unclassified_vol":0.0,"imbalance":0.101358,"bid":6.36,"ask":6.44,"spread_pct":1.25,"quote_size_imbalance":null,"quote_age_s":0.147137},"context":{"vwap":6.250784,"price_vs_vwap_pct":1.747236,"ema9":6.323153,"ema20":6.27857,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.153846,"dist_to_hod_atr":1.194526,"atr":0.117201,"spread_atr":0.682586,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.027802,"IWM":-1.064962}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.043152},"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":"a1a4ce75addf","ts":"2026-09-15T14:10:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.0885,"target":7.07,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.2532,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":3.561,"trend":"flat","recent_slope_pct":0.0333,"volatility":"high"},"price":6.39,"volume":{"bars":39,"last_bar_volume":20411.0,"baseline_avg":47942.65,"bar_rvol":0.425738,"raw_accel":-0.045546,"smooth_accel":-0.580833,"accel_momentum":-0.195439,"rvol_3bar":[1.166339,0.446605,0.425738],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":16057.0,"sell_vol":12467.0,"unclassified_vol":0.0,"imbalance":0.125859,"bid":6.36,"ask":6.42,"spread_pct":0.938967,"quote_size_imbalance":null,"quote_age_s":0.515504},"context":{"vwap":6.250784,"price_vs_vwap_pct":2.227176,"ema9":6.323153,"ema20":6.27857,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.692308,"dist_to_hod_atr":0.938556,"atr":0.117201,"spread_atr":0.51194,"own_change_pct":-1.082482,"rel_strength_pct":{"SPY":-1.040312,"IWM":-1.078977}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.053583},"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":"2e1b74ce6bee","ts":"2026-09-15T14:10:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7617,"target":7.93,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":20.6,"room_to_5d_high_atr":2.68},"price":7.88,"vwap":7.8884,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":1.09,"trend":"flat","recent_slope_pct":-0.0127,"volatility":"high"},"price":7.88,"volume":{"bars":40,"last_bar_volume":10217.0,"baseline_avg":12791.1,"bar_rvol":0.798759,"raw_accel":2.195034,"smooth_accel":-0.589706,"accel_momentum":-0.154663,"rvol_3bar":[0.550658,0.240455,0.798759],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":1545.0,"sell_vol":5843.0,"unclassified_vol":0.0,"imbalance":-0.581754,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":1.347073},"context":{"vwap":7.888426,"price_vs_vwap_pct":-0.106819,"ema9":7.885949,"ema20":7.885613,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.630517,"dist_to_hod_atr":2.053832,"atr":0.024345,"spread_atr":0.410766,"own_change_pct":0.25413,"rel_strength_pct":{"SPY":0.2963,"IWM":0.257635}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.464681},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ff380496c9fd","ts":"2026-09-15T14:10:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 6.07, target 6.39 (prev_day_high), R:R 0.05; R:R 0.05 < 2.0 at 6.38; pullback: buy 6.25-6.29 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":6.0735,"target":6.39,"target_label":"prev_day_high","reward_risk":0.05,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":3.7},"price":6.375,"vwap":6.2535,"ext_from_open_pct":0.63,"max_ext_allowed_pct":5.0,"volume_pace":3.54,"trend":"flat","recent_slope_pct":0.2049,"volatility":"high"},"price":6.375,"volume":{"bars":40,"last_bar_volume":36631.0,"baseline_avg":46137.05,"bar_rvol":0.793961,"raw_accel":0.79467,"smooth_accel":-0.646693,"accel_momentum":-0.065861,"rvol_3bar":[0.446605,0.425738,0.793961],"trend_3bar":"MIXED","projected_rvol":0.290266},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":5996.0,"sell_vol":7675.0,"unclassified_vol":0.0,"imbalance":-0.122815,"bid":6.36,"ask":6.39,"spread_pct":0.470588,"quote_size_imbalance":null,"quote_age_s":4.143932},"context":{"vwap":6.25317,"price_vs_vwap_pct":1.948294,"ema9":6.336522,"ema20":6.289183,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.923077,"dist_to_hod_atr":1.027226,"atr":0.121687,"spread_atr":0.246534,"own_change_pct":-1.540832,"rel_strength_pct":{"SPY":-1.498662,"IWM":-1.537327}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.09751},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b475596f41a2","ts":"2026-09-15T14:10:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says PASS; stop 6.11, target 7.07 (premarket_high), R:R 2.19; target 0.66 away > ~0.54 reachable in 345 min","plan":{"state":"PASS","setup":"","stop":6.1085,"target":7.07,"target_label":"premarket_high","reward_risk":2.19,"pos_in_5d_range_pct":47.5,"room_to_5d_high_atr":3.67},"price":6.41,"vwap":6.254,"ext_from_open_pct":1.18,"max_ext_allowed_pct":5.0,"volume_pace":3.544,"trend":"flat","recent_slope_pct":0.3149,"volatility":"high"},"price":6.41,"volume":{"bars":40,"last_bar_volume":36631.0,"baseline_avg":46137.05,"bar_rvol":0.793961,"raw_accel":0.79467,"smooth_accel":-0.646693,"accel_momentum":-0.065861,"rvol_3bar":[0.446605,0.425738,0.793961],"trend_3bar":"MIXED","projected_rvol":0.535951},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":8797.0,"sell_vol":2621.0,"unclassified_vol":0.0,"imbalance":0.5409,"bid":6.36,"ask":6.42,"spread_pct":0.938967,"quote_size_imbalance":null,"quote_age_s":0.057939},"context":{"vwap":6.25317,"price_vs_vwap_pct":2.50801,"ema9":6.336522,"ema20":6.289183,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.384615,"dist_to_hod_atr":0.739603,"atr":0.121687,"spread_atr":0.493069,"own_change_pct":-1.540832,"rel_strength_pct":{"SPY":-1.498662,"IWM":-1.537327}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.429454},"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":"e4172ad56f24","ts":"2026-09-15T14:10:40+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6521,"target":7.81,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":0.75},"price":7.74,"vwap":7.7421,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.701,"trend":"flat","recent_slope_pct":-0.0774,"volatility":"medium"},"price":7.74,"volume":{"bars":40,"last_bar_volume":5911.0,"baseline_avg":11943.5,"bar_rvol":0.494914,"raw_accel":-0.645006,"smooth_accel":-0.3677,"accel_momentum":-0.805815,"rvol_3bar":[0.88383,1.39336,0.494914],"trend_3bar":"MIXED","projected_rvol":3.305313},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":6282.0,"sell_vol":19067.0,"unclassified_vol":0.0,"imbalance":-0.504359,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":1.444725},"context":{"vwap":7.741973,"price_vs_vwap_pct":-0.025488,"ema9":7.754052,"ema20":7.755164,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.896287,"dist_to_hod_atr":1.641766,"atr":0.042637,"spread_atr":0.234538,"own_change_pct":0.38835,"rel_strength_pct":{"SPY":0.43052,"IWM":0.391855}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.249614},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"98b9f4c0198e","ts":"2026-09-15T14:10:45+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.81,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7422,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.701,"trend":"flat","recent_slope_pct":-0.0645,"volatility":"medium"},"price":7.745,"volume":{"bars":40,"last_bar_volume":5911.0,"baseline_avg":11943.5,"bar_rvol":0.494914,"raw_accel":-0.645006,"smooth_accel":-0.3677,"accel_momentum":-0.805815,"rvol_3bar":[0.88383,1.39336,0.494914],"trend_3bar":"MIXED","projected_rvol":3.060075},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":7375.0,"sell_vol":19067.0,"unclassified_vol":0.0,"imbalance":-0.442175,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.361625},"context":{"vwap":7.741973,"price_vs_vwap_pct":0.039095,"ema9":7.754052,"ema20":7.755164,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":1.524497,"atr":0.042637,"spread_atr":0.234538,"own_change_pct":0.38835,"rel_strength_pct":{"SPY":0.43052,"IWM":0.391855}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.218839},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"eb35a63844a4","ts":"2026-09-15T14:10:55+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7704,"target":8.0,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.67},"price":7.8887,"vwap":7.8884,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.0094,"volatility":"medium"},"price":7.8887,"volume":{"bars":40,"last_bar_volume":10217.0,"baseline_avg":12791.1,"bar_rvol":0.798759,"raw_accel":2.195034,"smooth_accel":-0.589706,"accel_momentum":-0.154663,"rvol_3bar":[0.550658,0.240455,0.798759],"trend_3bar":"MIXED","projected_rvol":0.833506},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":529.0,"sell_vol":3211.0,"unclassified_vol":0.0,"imbalance":-0.717112,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":3.733319},"context":{"vwap":7.888426,"price_vs_vwap_pct":0.00347,"ema9":7.885949,"ema20":7.885613,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.520807,"dist_to_hod_atr":1.696465,"atr":0.024345,"spread_atr":0.410766,"own_change_pct":0.25413,"rel_strength_pct":{"SPY":0.2963,"IWM":0.257635}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.5728},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"39b7516490ac","ts":"2026-09-15T14:11:00+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7667,"target":7.93,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.67},"price":7.885,"vwap":7.8884,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":3.0,"volume_pace":1.079,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":7.885,"volume":{"bars":40,"last_bar_volume":10217.0,"baseline_avg":12791.1,"bar_rvol":0.798759,"raw_accel":2.195034,"smooth_accel":-0.589706,"accel_momentum":-0.154663,"rvol_3bar":[0.550658,0.240455,0.798759],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":314.0,"sell_vol":3142.0,"unclassified_vol":0.0,"imbalance":-0.818287,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.004514},"context":{"vwap":7.888426,"price_vs_vwap_pct":-0.043435,"ema9":7.885949,"ema20":7.885613,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.567465,"dist_to_hod_atr":1.848449,"atr":0.024345,"spread_atr":0.410766,"own_change_pct":0.25413,"rel_strength_pct":{"SPY":0.333192,"IWM":0.248627}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.653614},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b3903e66c838","ts":"2026-09-15T14:11:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says WATCH; stop 6.11, target 7.07 (premarket_high), R:R 2.19; selling not fading: red-bar volume 1.14x the advance (max 0.7); imbalance -34% still heavy selling; pullback low 6.25 br","plan":{"state":"WATCH","setup":"","stop":6.1085,"target":7.07,"target_label":"premarket_high","reward_risk":2.19,"pos_in_5d_range_pct":47.5,"room_to_5d_high_atr":3.67},"price":6.41,"vwap":6.2554,"ext_from_open_pct":1.18,"max_ext_allowed_pct":4.0,"volume_pace":3.517,"trend":"flat","recent_slope_pct":0.556,"volatility":"high"},"price":6.41,"volume":{"bars":41,"last_bar_volume":23274.0,"baseline_avg":47439.6,"bar_rvol":0.490603,"raw_accel":-0.364637,"smooth_accel":-0.481096,"accel_momentum":0.165598,"rvol_3bar":[0.425738,0.793961,0.490603],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":6949.0,"sell_vol":6151.0,"unclassified_vol":0.0,"imbalance":0.060916,"bid":6.4,"ask":6.43,"spread_pct":0.467654,"quote_size_imbalance":null,"quote_age_s":3.95194},"context":{"vwap":6.255181,"price_vs_vwap_pct":2.475055,"ema9":6.355218,"ema20":6.302594,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.384615,"dist_to_hod_atr":0.762744,"atr":0.117995,"spread_atr":0.254248,"own_change_pct":1.259843,"rel_strength_pct":{"SPY":1.338905,"IWM":1.254339}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.029886},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"93d1ce7c2430","ts":"2026-09-15T14:11:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.10% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0659,"target":6.39,"target_label":"prev_day_high","reward_risk":0.07,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.3674,"vwap":6.2557,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":3.512,"trend":"flat","recent_slope_pct":0.4227,"volatility":"high"},"price":6.3674,"volume":{"bars":41,"last_bar_volume":23274.0,"baseline_avg":47439.6,"bar_rvol":0.490603,"raw_accel":-0.364637,"smooth_accel":-0.481096,"accel_momentum":0.165598,"rvol_3bar":[0.425738,0.793961,0.490603],"trend_3bar":"MIXED","projected_rvol":0.649668},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":5124.0,"sell_vol":7776.0,"unclassified_vol":0.0,"imbalance":-0.205581,"bid":6.35,"ask":6.42,"spread_pct":1.096319,"quote_size_imbalance":null,"quote_age_s":3.014462},"context":{"vwap":6.255181,"price_vs_vwap_pct":1.794019,"ema9":6.355218,"ema20":6.302594,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.04,"dist_to_hod_atr":1.123777,"atr":0.117995,"spread_atr":0.593246,"own_change_pct":1.259843,"rel_strength_pct":{"SPY":1.338905,"IWM":1.254339}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.100859},"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":"435fa016d65e","ts":"2026-09-15T14:11:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0511,"target":6.39,"target_label":"prev_day_high","reward_risk":0.12,"pos_in_5d_range_pct":46.8,"room_to_5d_high_atr":3.72},"price":6.3526,"vwap":6.2558,"ext_from_open_pct":0.28,"max_ext_allowed_pct":4.0,"volume_pace":3.502,"trend":"flat","recent_slope_pct":0.3763,"volatility":"high"},"price":6.3526,"volume":{"bars":41,"last_bar_volume":23274.0,"baseline_avg":47439.6,"bar_rvol":0.490603,"raw_accel":-0.364637,"smooth_accel":-0.481096,"accel_momentum":0.165598,"rvol_3bar":[0.425738,0.793961,0.490603],"trend_3bar":"MIXED","projected_rvol":0.507627},"flow":{"window_s":30,"trades":123,"trade_rate":4.1,"buy_vol":4151.0,"sell_vol":7646.0,"unclassified_vol":0.0,"imbalance":-0.296262,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":2.314623},"context":{"vwap":6.255181,"price_vs_vwap_pct":1.557415,"ema9":6.355218,"ema20":6.302594,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.267692,"dist_to_hod_atr":1.249206,"atr":0.117995,"spread_atr":0.338997,"own_change_pct":1.259843,"rel_strength_pct":{"SPY":1.338905,"IWM":1.254339}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.145347},"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":"d84f48777e74","ts":"2026-09-15T14:11:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.771,"target":8.0,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.8893,"vwap":7.8884,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":4.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":-0.0144,"volatility":"medium"},"price":7.8893,"volume":{"bars":41,"last_bar_volume":9959.0,"baseline_avg":12987.5,"bar_rvol":0.766814,"raw_accel":-0.025252,"smooth_accel":-0.363775,"accel_momentum":0.225931,"rvol_3bar":[0.240455,0.798759,0.766814],"trend_3bar":"MIXED","projected_rvol":1.218526},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":5679.0,"sell_vol":1101.0,"unclassified_vol":0.0,"imbalance":0.675221,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.89907},"context":{"vwap":7.888399,"price_vs_vwap_pct":0.011425,"ema9":7.885759,"ema20":7.885555,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.513241,"dist_to_hod_atr":1.71172,"atr":0.023777,"spread_atr":0.42057,"own_change_pct":0.149876,"rel_strength_pct":{"SPY":0.228938,"IWM":0.144372}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.517769},"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":"5231178b2a1e","ts":"2026-09-15T14:11:30+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7567,"target":7.93,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.7},"price":7.875,"vwap":7.8882,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":4.0,"volume_pace":1.085,"trend":"flat","recent_slope_pct":-0.0507,"volatility":"high"},"price":7.875,"volume":{"bars":41,"last_bar_volume":9959.0,"baseline_avg":12987.5,"bar_rvol":0.766814,"raw_accel":-0.025252,"smooth_accel":-0.363775,"accel_momentum":0.225931,"rvol_3bar":[0.240455,0.798759,0.766814],"trend_3bar":"MIXED","projected_rvol":1.283696},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":5594.0,"sell_vol":2742.0,"unclassified_vol":0.0,"imbalance":0.342131,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":0.004508},"context":{"vwap":7.888399,"price_vs_vwap_pct":-0.169854,"ema9":7.885759,"ema20":7.885555,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.693569,"dist_to_hod_atr":2.313135,"atr":0.023777,"spread_atr":0.42057,"own_change_pct":0.149876,"rel_strength_pct":{"SPY":0.228938,"IWM":0.144372}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.262351},"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":"5b051473c844","ts":"2026-09-15T14:11:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.26% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0585,"target":6.39,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.36,"vwap":6.2562,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.488,"trend":"flat","recent_slope_pct":0.3995,"volatility":"high"},"price":6.36,"volume":{"bars":41,"last_bar_volume":23274.0,"baseline_avg":47439.6,"bar_rvol":0.490603,"raw_accel":-0.364637,"smooth_accel":-0.481096,"accel_momentum":0.165598,"rvol_3bar":[0.425738,0.793961,0.490603],"trend_3bar":"MIXED","projected_rvol":0.496041},"flow":{"window_s":30,"trades":164,"trade_rate":5.466667,"buy_vol":4423.0,"sell_vol":5521.0,"unclassified_vol":0.0,"imbalance":-0.110418,"bid":6.32,"ask":6.4,"spread_pct":1.257862,"quote_size_imbalance":null,"quote_age_s":0.521637},"context":{"vwap":6.255181,"price_vs_vwap_pct":1.675717,"ema9":6.355218,"ema20":6.302594,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.153846,"dist_to_hod_atr":1.186491,"atr":0.117995,"spread_atr":0.677995,"own_change_pct":1.259843,"rel_strength_pct":{"SPY":1.338905,"IWM":1.254339}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.054172},"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":"53aa0e17fb06","ts":"2026-09-15T14:11:45+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9757,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.416,"trend":"flat","recent_slope_pct":-0.0453,"volatility":"medium"},"price":9.975,"volume":{"bars":41,"last_bar_volume":439626.0,"baseline_avg":373712.25,"bar_rvol":1.176376,"raw_accel":-0.096245,"smooth_accel":-0.217928,"accel_momentum":-0.466197,"rvol_3bar":[0.66282,1.30195,1.176376],"trend_3bar":"MIXED","projected_rvol":1.031813},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":3073.0,"sell_vol":73491.0,"unclassified_vol":0.0,"imbalance":-0.919727,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.24971},"context":{"vwap":9.975642,"price_vs_vwap_pct":-0.006431,"ema9":9.999269,"ema20":10.000728,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.050447,"atr":0.036577,"spread_atr":0.273393,"own_change_pct":-0.236851,"rel_strength_pct":{"SPY":-0.157788,"IWM":-0.242354}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.081945},"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":"b0bbeec87cc1","ts":"2026-09-15T14:11:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0658,"target":6.39,"target_label":"prev_day_high","reward_risk":0.08,"pos_in_5d_range_pct":47.0,"room_to_5d_high_atr":3.71},"price":6.3673,"vwap":6.2562,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":3.481,"trend":"flat","recent_slope_pct":0.4224,"volatility":"high"},"price":6.3673,"volume":{"bars":41,"last_bar_volume":23274.0,"baseline_avg":47439.6,"bar_rvol":0.490603,"raw_accel":-0.364637,"smooth_accel":-0.481096,"accel_momentum":0.165598,"rvol_3bar":[0.425738,0.793961,0.490603],"trend_3bar":"MIXED","projected_rvol":0.447145},"flow":{"window_s":30,"trades":159,"trade_rate":5.3,"buy_vol":4010.0,"sell_vol":5350.0,"unclassified_vol":0.0,"imbalance":-0.143162,"bid":6.35,"ask":6.4,"spread_pct":0.784314,"quote_size_imbalance":null,"quote_age_s":0.477442},"context":{"vwap":6.255181,"price_vs_vwap_pct":1.792421,"ema9":6.355218,"ema20":6.302594,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.041538,"dist_to_hod_atr":1.124624,"atr":0.117995,"spread_atr":0.423747,"own_change_pct":1.259843,"rel_strength_pct":{"SPY":1.338905,"IWM":1.254339}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.070236},"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":"6179dc941ab8","ts":"2026-09-15T14:12:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.25% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.0885,"target":7.07,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.2573,"ext_from_open_pct":0.87,"max_ext_allowed_pct":5.0,"volume_pace":3.495,"trend":"flat","recent_slope_pct":0.4935,"volatility":"high"},"price":6.39,"volume":{"bars":41,"last_bar_volume":23274.0,"baseline_avg":47439.6,"bar_rvol":0.490603,"raw_accel":-0.364637,"smooth_accel":-0.481096,"accel_momentum":0.165598,"rvol_3bar":[0.425738,0.793961,0.490603],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":181,"trade_rate":6.033333,"buy_vol":16567.0,"sell_vol":5290.0,"unclassified_vol":0.0,"imbalance":0.515945,"bid":6.35,"ask":6.43,"spread_pct":1.251956,"quote_size_imbalance":null,"quote_age_s":3.079269},"context":{"vwap":6.255181,"price_vs_vwap_pct":2.15532,"ema9":6.355218,"ema20":6.302594,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.692308,"dist_to_hod_atr":0.932243,"atr":0.117995,"spread_atr":0.677995,"own_change_pct":1.259843,"rel_strength_pct":{"SPY":1.328739,"IWM":1.259843}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.253124},"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":"3c2c76d873ed","ts":"2026-09-15T14:12:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0486,"target":6.39,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":46.8,"room_to_5d_high_atr":3.72},"price":6.3501,"vwap":6.2573,"ext_from_open_pct":0.24,"max_ext_allowed_pct":5.0,"volume_pace":3.489,"trend":"flat","recent_slope_pct":0.1695,"volatility":"high"},"price":6.3501,"volume":{"bars":42,"last_bar_volume":32503.0,"baseline_avg":47276.8,"bar_rvol":0.687504,"raw_accel":0.396537,"smooth_accel":-0.038648,"accel_momentum":0.442447,"rvol_3bar":[0.793961,0.490603,0.687504],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":160,"trade_rate":5.333333,"buy_vol":15992.0,"sell_vol":4697.0,"unclassified_vol":0.0,"imbalance":0.545942,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":0.597302},"context":{"vwap":6.257274,"price_vs_vwap_pct":1.483484,"ema9":6.362174,"ema20":6.310918,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.306154,"dist_to_hod_atr":1.253693,"atr":0.119567,"spread_atr":0.334541,"own_change_pct":0.550747,"rel_strength_pct":{"SPY":0.619644,"IWM":0.550747}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.375338},"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":"ceb716d70cec","ts":"2026-09-15T14:13:05+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":6.0585,"target":6.39,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":3.72},"price":6.36,"vwap":6.2578,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":3.423,"trend":"flat","recent_slope_pct":-0.1957,"volatility":"high"},"price":6.36,"volume":{"bars":43,"last_bar_volume":8293.0,"baseline_avg":47599.3,"bar_rvol":0.174225,"raw_accel":-0.744854,"smooth_accel":-0.183062,"accel_momentum":-0.144414,"rvol_3bar":[0.490603,0.687504,0.174225],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":998.0,"sell_vol":2912.0,"unclassified_vol":0.0,"imbalance":-0.489514,"bid":6.33,"ask":6.39,"spread_pct":0.943396,"quote_size_imbalance":null,"quote_age_s":1.499619},"context":{"vwap":6.257784,"price_vs_vwap_pct":1.633427,"ema9":6.362739,"ema20":6.316069,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.153846,"dist_to_hod_atr":1.21734,"atr":0.115005,"spread_atr":0.521717,"own_change_pct":1.031746,"rel_strength_pct":{"SPY":1.113462,"IWM":1.049275}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.085286},"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":"341290e03e94","ts":"2026-09-15T14:13:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7767,"target":8.0,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":2.65},"price":7.895,"vwap":7.8884,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.136,"trend":"flat","recent_slope_pct":0.0315,"volatility":"medium"},"price":7.895,"volume":{"bars":43,"last_bar_volume":14817.0,"baseline_avg":11285.55,"bar_rvol":1.312918,"raw_accel":-0.505127,"smooth_accel":1.657326,"accel_momentum":0.631578,"rvol_3bar":[0.766814,2.285468,1.312918],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":3746.0,"sell_vol":2048.0,"unclassified_vol":0.0,"imbalance":0.293062,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":2.34055},"context":{"vwap":7.8884,"price_vs_vwap_pct":0.083673,"ema9":7.889906,"ema20":7.887648,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.441362,"dist_to_hod_atr":1.475283,"atr":0.023724,"spread_atr":0.421509,"own_change_pct":0.125475,"rel_strength_pct":{"SPY":0.207191,"IWM":0.143004}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.384766},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ceeae778b4b8","ts":"2026-09-15T14:13:15+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0885,"target":7.07,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.258,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":3.416,"trend":"flat","recent_slope_pct":-0.1017,"volatility":"high"},"price":6.39,"volume":{"bars":43,"last_bar_volume":8293.0,"baseline_avg":47599.3,"bar_rvol":0.174225,"raw_accel":-0.744854,"smooth_accel":-0.183062,"accel_momentum":-0.144414,"rvol_3bar":[0.490603,0.687504,0.174225],"trend_3bar":"MIXED","projected_rvol":0.32261},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":3126.0,"sell_vol":2590.0,"unclassified_vol":0.0,"imbalance":0.093772,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":1.342915},"context":{"vwap":6.257784,"price_vs_vwap_pct":2.11283,"ema9":6.362739,"ema20":6.316069,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.692308,"dist_to_hod_atr":0.956481,"atr":0.115005,"spread_atr":0.347811,"own_change_pct":1.031746,"rel_strength_pct":{"SPY":1.113462,"IWM":1.049275}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.016337},"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":"325abb7df0d3","ts":"2026-09-15T14:13:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":6.0485,"target":6.39,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":46.8,"room_to_5d_high_atr":3.72},"price":6.35,"vwap":6.2581,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":3.412,"trend":"flat","recent_slope_pct":-0.2271,"volatility":"high"},"price":6.35,"volume":{"bars":43,"last_bar_volume":8293.0,"baseline_avg":47599.3,"bar_rvol":0.174225,"raw_accel":-0.744854,"smooth_accel":-0.183062,"accel_momentum":-0.144414,"rvol_3bar":[0.490603,0.687504,0.174225],"trend_3bar":"MIXED","projected_rvol":0.336686},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":3206.0,"sell_vol":3720.0,"unclassified_vol":0.0,"imbalance":-0.074213,"bid":6.35,"ask":6.39,"spread_pct":0.627943,"quote_size_imbalance":null,"quote_age_s":0.658047},"context":{"vwap":6.257784,"price_vs_vwap_pct":1.473626,"ema9":6.362739,"ema20":6.316069,"ema_stack":false,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-2.307692,"dist_to_hod_atr":1.304293,"atr":0.115005,"spread_atr":0.347811,"own_change_pct":1.031746,"rel_strength_pct":{"SPY":1.113462,"IWM":1.049275}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.01293},"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":"264d5bde909e","ts":"2026-09-15T14:13:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1165.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.90; target 0.09 away > ~0.08 reachable in 342 min","plan":{"state":"PASS","setup":"","stop":10.0667,"target":10.2,"target_label":"prev_day_high","reward_risk":1.9,"pos_in_5d_range_pct":11.0,"room_to_5d_high_atr":4.1},"price":10.1126,"vwap":10.0964,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.842,"trend":"flat","recent_slope_pct":0.0074,"volatility":"low"},"price":10.1126,"volume":{"bars":43,"last_bar_volume":79609.0,"baseline_avg":30536.8,"bar_rvol":2.606986,"raw_accel":1.850917,"smooth_accel":0.848793,"accel_momentum":0.785581,"rvol_3bar":[0.759451,0.920594,2.606986],"trend_3bar":"ACCELERATING","projected_rvol":0.611852},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2052.0,"sell_vol":5199.0,"unclassified_vol":0.0,"imbalance":-0.434009,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":0.212993},"context":{"vwap":10.09639,"price_vs_vwap_pct":0.160556,"ema9":10.110533,"ema20":10.106635,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.171767,"dist_to_hod_atr":1.014809,"atr":0.017146,"spread_atr":0.583224,"own_change_pct":0.023739,"rel_strength_pct":{"SPY":0.105454,"IWM":0.041268}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.131456},"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":"b14dc5379c71","ts":"2026-09-15T14:13:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0785,"target":7.07,"target_label":"premarket_high","reward_risk":2.29,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":3.7},"price":6.38,"vwap":6.2581,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":3.407,"trend":"flat","recent_slope_pct":-0.133,"volatility":"high"},"price":6.38,"volume":{"bars":43,"last_bar_volume":8293.0,"baseline_avg":47599.3,"bar_rvol":0.174225,"raw_accel":-0.744854,"smooth_accel":-0.183062,"accel_momentum":-0.144414,"rvol_3bar":[0.490603,0.687504,0.174225],"trend_3bar":"MIXED","projected_rvol":0.298744},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":3152.0,"sell_vol":4007.0,"unclassified_vol":0.0,"imbalance":-0.11943,"bid":6.37,"ask":6.39,"spread_pct":0.31348,"quote_size_imbalance":null,"quote_age_s":3.103521},"context":{"vwap":6.257784,"price_vs_vwap_pct":1.953029,"ema9":6.362739,"ema20":6.316069,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.846154,"dist_to_hod_atr":1.043434,"atr":0.115005,"spread_atr":0.173906,"own_change_pct":1.031746,"rel_strength_pct":{"SPY":1.113462,"IWM":1.049275}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.020808},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1356ca157503","ts":"2026-09-15T14:13:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1170.0s, plan says WATCH; stop 10.08, target 10.20 (prev_day_high), R:R 1.67; R:R 1.67 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 88328 sh","plan":{"state":"WATCH","setup":"","stop":10.0774,"target":10.2,"target_label":"prev_day_high","reward_risk":1.67,"pos_in_5d_range_pct":12.2,"room_to_5d_high_atr":4.04},"price":10.1233,"vwap":10.0965,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":0.0286,"volatility":"low"},"price":10.1233,"volume":{"bars":43,"last_bar_volume":79609.0,"baseline_avg":30536.8,"bar_rvol":2.606986,"raw_accel":1.850917,"smooth_accel":0.848793,"accel_momentum":0.785581,"rvol_3bar":[0.759451,0.920594,2.606986],"trend_3bar":"ACCELERATING","projected_rvol":0.566346},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2632.0,"sell_vol":5478.0,"unclassified_vol":0.0,"imbalance":-0.350925,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":1.446981},"context":{"vwap":10.09639,"price_vs_vwap_pct":0.266535,"ema9":10.110533,"ema20":10.106635,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.06614,"dist_to_hod_atr":0.39076,"atr":0.017146,"spread_atr":0.583224,"own_change_pct":0.023739,"rel_strength_pct":{"SPY":0.105454,"IWM":0.041268}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.914856},"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":"a993ae18bedf","ts":"2026-09-15T14:13:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6544,"target":7.81,"target_label":"ceiling","reward_risk":0.77,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":0.75},"price":7.7423,"vwap":7.7426,"ext_from_open_pct":0.55,"max_ext_allowed_pct":3.0,"volume_pace":0.681,"trend":"flat","recent_slope_pct":-0.0261,"volatility":"medium"},"price":7.7423,"volume":{"bars":43,"last_bar_volume":9982.0,"baseline_avg":12468.3,"bar_rvol":0.80059,"raw_accel":2.202361,"smooth_accel":0.453013,"accel_momentum":0.617737,"rvol_3bar":[3.063258,0.204142,0.80059],"trend_3bar":"MIXED","projected_rvol":0.721029},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2092.0,"sell_vol":2403.0,"unclassified_vol":0.0,"imbalance":-0.069188,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.004541},"context":{"vwap":7.742549,"price_vs_vwap_pct":-0.003215,"ema9":7.753915,"ema20":7.75475,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.866837,"dist_to_hod_atr":1.837708,"atr":0.036839,"spread_atr":0.271449,"own_change_pct":-0.126207,"rel_strength_pct":{"SPY":-0.044492,"IWM":-0.108678}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.055391},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a9b72f1f3ee1","ts":"2026-09-15T14:13:35+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":6.0735,"target":6.39,"target_label":"prev_day_high","reward_risk":0.05,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":3.7},"price":6.375,"vwap":6.2583,"ext_from_open_pct":0.63,"max_ext_allowed_pct":5.0,"volume_pace":3.399,"trend":"flat","recent_slope_pct":-0.1487,"volatility":"high"},"price":6.375,"volume":{"bars":43,"last_bar_volume":8293.0,"baseline_avg":47599.3,"bar_rvol":0.174225,"raw_accel":-0.744854,"smooth_accel":-0.183062,"accel_momentum":-0.144414,"rvol_3bar":[0.490603,0.687504,0.174225],"trend_3bar":"MIXED","projected_rvol":0.330005},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":4947.0,"sell_vol":3971.0,"unclassified_vol":0.0,"imbalance":0.109442,"bid":6.35,"ask":6.4,"spread_pct":0.784314,"quote_size_imbalance":null,"quote_age_s":1.407679},"context":{"vwap":6.257784,"price_vs_vwap_pct":1.873128,"ema9":6.362739,"ema20":6.316069,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.923077,"dist_to_hod_atr":1.086911,"atr":0.115005,"spread_atr":0.434764,"own_change_pct":1.031746,"rel_strength_pct":{"SPY":1.113462,"IWM":1.049275}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.019067},"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":"5ba704209c36","ts":"2026-09-15T14:13:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.81,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7426,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.0191,"volatility":"medium"},"price":7.745,"volume":{"bars":43,"last_bar_volume":9982.0,"baseline_avg":12468.3,"bar_rvol":0.80059,"raw_accel":2.202361,"smooth_accel":0.453013,"accel_momentum":0.617737,"rvol_3bar":[3.063258,0.204142,0.80059],"trend_3bar":"MIXED","projected_rvol":0.624899},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":2131.0,"sell_vol":2390.0,"unclassified_vol":0.0,"imbalance":-0.057288,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.299737},"context":{"vwap":7.742549,"price_vs_vwap_pct":0.031657,"ema9":7.753915,"ema20":7.75475,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":1.764417,"atr":0.036839,"spread_atr":0.271449,"own_change_pct":-0.126207,"rel_strength_pct":{"SPY":-0.044492,"IWM":-0.108678}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.045864},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e3b4f4a1172b","ts":"2026-09-15T14:13:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.0985,"target":7.07,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":47.4,"room_to_5d_high_atr":3.68},"price":6.4,"vwap":6.2584,"ext_from_open_pct":1.03,"max_ext_allowed_pct":4.0,"volume_pace":3.393,"trend":"flat","recent_slope_pct":-0.0704,"volatility":"high"},"price":6.4,"volume":{"bars":43,"last_bar_volume":8293.0,"baseline_avg":47599.3,"bar_rvol":0.174225,"raw_accel":-0.744854,"smooth_accel":-0.183062,"accel_momentum":-0.144414,"rvol_3bar":[0.490603,0.687504,0.174225],"trend_3bar":"MIXED","projected_rvol":0.293166},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":4796.0,"sell_vol":3921.0,"unclassified_vol":0.0,"imbalance":0.100379,"bid":6.37,"ask":6.4,"spread_pct":0.469851,"quote_size_imbalance":null,"quote_age_s":1.963364},"context":{"vwap":6.257784,"price_vs_vwap_pct":2.27263,"ema9":6.362739,"ema20":6.316069,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-1.538462,"dist_to_hod_atr":0.869528,"atr":0.115005,"spread_atr":0.260859,"own_change_pct":1.031746,"rel_strength_pct":{"SPY":1.113462,"IWM":1.049275}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.017488},"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":"988ca1c63611","ts":"2026-09-15T14:13:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1185.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.90; target 0.09 away > ~0.08 reachable in 341 min","plan":{"state":"PASS","setup":"","stop":10.0669,"target":10.2,"target_label":"prev_day_high","reward_risk":1.9,"pos_in_5d_range_pct":11.0,"room_to_5d_high_atr":4.1},"price":10.1128,"vwap":10.0965,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":0.837,"trend":"flat","recent_slope_pct":0.0078,"volatility":"low"},"price":10.1128,"volume":{"bars":43,"last_bar_volume":79609.0,"baseline_avg":30536.8,"bar_rvol":2.606986,"raw_accel":1.850917,"smooth_accel":0.848793,"accel_momentum":0.785581,"rvol_3bar":[0.759451,0.920594,2.606986],"trend_3bar":"ACCELERATING","projected_rvol":0.515771},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":2828.0,"sell_vol":5542.0,"unclassified_vol":0.0,"imbalance":-0.324253,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":0.646506},"context":{"vwap":10.09639,"price_vs_vwap_pct":0.162537,"ema9":10.110533,"ema20":10.106635,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.169793,"dist_to_hod_atr":1.003145,"atr":0.017146,"spread_atr":0.583224,"own_change_pct":0.023739,"rel_strength_pct":{"SPY":0.105454,"IWM":0.041268}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.845324},"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":"4bc61fdd2f91","ts":"2026-09-15T14:13:45+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.21,"target":5.296,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":1.76},"price":5.27,"vwap":5.2437,"ext_from_open_pct":0.19,"max_ext_allowed_pct":3.0,"volume_pace":1.235,"trend":"flat","recent_slope_pct":0.1719,"volatility":"medium"},"price":5.27,"volume":{"bars":43,"last_bar_volume":149302.0,"baseline_avg":75556.7,"bar_rvol":1.976026,"raw_accel":4.210693,"smooth_accel":0.993901,"accel_momentum":0.28924,"rvol_3bar":[5.968421,0.377816,1.976026],"trend_3bar":"MIXED","projected_rvol":0.289972},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":300.0,"sell_vol":5112.0,"unclassified_vol":0.0,"imbalance":-0.889135,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":1.448525},"context":{"vwap":5.243574,"price_vs_vwap_pct":0.503977,"ema9":5.238582,"ema20":5.242001,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.015593,"spread_atr":0.64133,"own_change_pct":-0.093422,"rel_strength_pct":{"SPY":-0.011707,"IWM":-0.075893}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.756954},"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":"373767de1d98","ts":"2026-09-15T14:13:45+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7644,"target":7.93,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":20.8,"room_to_5d_high_atr":2.68},"price":7.8827,"vwap":7.8884,"ext_from_open_pct":-0.22,"max_ext_allowed_pct":3.0,"volume_pace":1.122,"trend":"flat","recent_slope_pct":0.0004,"volatility":"high"},"price":7.8827,"volume":{"bars":43,"last_bar_volume":14817.0,"baseline_avg":11285.55,"bar_rvol":1.312918,"raw_accel":-0.505127,"smooth_accel":1.657326,"accel_momentum":0.631578,"rvol_3bar":[0.766814,2.285468,1.312918],"trend_3bar":"MIXED","projected_rvol":0.755538},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":410.0,"sell_vol":192.0,"unclassified_vol":0.0,"imbalance":0.362126,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":0.067157},"context":{"vwap":7.8884,"price_vs_vwap_pct":-0.072252,"ema9":7.889906,"ema20":7.887648,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.596469,"dist_to_hod_atr":1.993739,"atr":0.023724,"spread_atr":0.421509,"own_change_pct":0.125475,"rel_strength_pct":{"SPY":0.207191,"IWM":0.143004}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.475442},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d4c5fbf25494","ts":"2026-09-15T14:13:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1190.0s, plan says WATCH; stop 10.08, target 10.20 (prev_day_high), R:R 1.63; R:R 1.63 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 88328 sh","plan":{"state":"WATCH","setup":"","stop":10.0791,"target":10.2,"target_label":"prev_day_high","reward_risk":1.63,"pos_in_5d_range_pct":12.4,"room_to_5d_high_atr":4.03},"price":10.125,"vwap":10.0965,"ext_from_open_pct":0.35,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":0.0319,"volatility":"low"},"price":10.125,"volume":{"bars":43,"last_bar_volume":79609.0,"baseline_avg":30536.8,"bar_rvol":2.606986,"raw_accel":1.850917,"smooth_accel":0.848793,"accel_momentum":0.785581,"rvol_3bar":[0.759451,0.920594,2.606986],"trend_3bar":"ACCELERATING","projected_rvol":0.459206},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":2839.0,"sell_vol":5442.0,"unclassified_vol":0.0,"imbalance":-0.314334,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":1.291507},"context":{"vwap":10.09639,"price_vs_vwap_pct":0.283373,"ema9":10.110533,"ema20":10.106635,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.049358,"dist_to_hod_atr":0.291612,"atr":0.017146,"spread_atr":0.583224,"own_change_pct":0.023739,"rel_strength_pct":{"SPY":0.105454,"IWM":0.041268}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.819464},"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":"90928fa14d87","ts":"2026-09-15T14:13:50+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":5.2038,"target":5.296,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":12.5,"room_to_5d_high_atr":1.91},"price":5.245,"vwap":5.2436,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":1.233,"trend":"flat","recent_slope_pct":0.0766,"volatility":"medium"},"price":5.245,"volume":{"bars":43,"last_bar_volume":149302.0,"baseline_avg":75556.7,"bar_rvol":1.976026,"raw_accel":4.210693,"smooth_accel":0.993901,"accel_momentum":0.28924,"rvol_3bar":[5.968421,0.377816,1.976026],"trend_3bar":"MIXED","projected_rvol":0.264247},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":400.0,"sell_vol":5158.0,"unclassified_vol":0.0,"imbalance":-0.856063,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":1.502596},"context":{"vwap":5.243574,"price_vs_vwap_pct":0.027203,"ema9":5.238582,"ema20":5.242001,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.474383,"dist_to_hod_atr":1.603325,"atr":0.015593,"spread_atr":0.64133,"own_change_pct":-0.093422,"rel_strength_pct":{"SPY":-0.011707,"IWM":-0.075893}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.691603},"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":"3c2fa19ec2ba","ts":"2026-09-15T14:14:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7717,"target":8.0,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":21.2,"room_to_5d_high_atr":2.66},"price":7.89,"vwap":7.8884,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":1.117,"trend":"flat","recent_slope_pct":0.0013,"volatility":"medium"},"price":7.89,"volume":{"bars":44,"last_bar_volume":7795.0,"baseline_avg":11935.7,"bar_rvol":0.653083,"raw_accel":-0.473915,"smooth_accel":1.257237,"accel_momentum":-0.400089,"rvol_3bar":[2.285468,1.312918,0.653083],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":204.0,"sell_vol":1391.0,"unclassified_vol":0.0,"imbalance":-0.744201,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.241878},"context":{"vwap":7.888387,"price_vs_vwap_pct":0.020453,"ema9":7.888925,"ema20":7.887396,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.504414,"dist_to_hod_atr":1.719292,"atr":0.023265,"spread_atr":0.429823,"own_change_pct":-0.126662,"rel_strength_pct":{"SPY":-0.046903,"IWM":-0.063613}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.486025},"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":"90a215683ecb","ts":"2026-09-15T14:14:10+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.23% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.1985,"target":7.07,"target_label":"premarket_high","reward_risk":1.89,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":3.6},"price":6.5,"vwap":6.2667,"ext_from_open_pct":2.6,"max_ext_allowed_pct":5.0,"volume_pace":3.496,"trend":"flat","recent_slope_pct":0.3112,"volatility":"high"},"price":6.5,"volume":{"bars":44,"last_bar_volume":32926.0,"baseline_avg":47722.0,"bar_rvol":0.689954,"raw_accel":1.759817,"smooth_accel":-0.082101,"accel_momentum":0.100961,"rvol_3bar":[0.687504,0.174225,0.689954],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":391,"trade_rate":13.033333,"buy_vol":62246.0,"sell_vol":17988.0,"unclassified_vol":0.0,"imbalance":0.551612,"bid":6.46,"ask":6.54,"spread_pct":1.230769,"quote_size_imbalance":null,"quote_age_s":0.391638},"context":{"vwap":6.260384,"price_vs_vwap_pct":3.827496,"ema9":6.380192,"ema20":6.328824,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.115362,"spread_atr":0.693471,"own_change_pct":2.44437,"rel_strength_pct":{"SPY":2.524129,"IWM":2.50742}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.380587},"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":"03e9934e6333","ts":"2026-09-15T14:14:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.766,"target":7.93,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.68},"price":7.8843,"vwap":7.8884,"ext_from_open_pct":-0.2,"max_ext_allowed_pct":3.0,"volume_pace":1.114,"trend":"flat","recent_slope_pct":-0.0132,"volatility":"high"},"price":7.8843,"volume":{"bars":44,"last_bar_volume":7795.0,"baseline_avg":11935.7,"bar_rvol":0.653083,"raw_accel":-0.473915,"smooth_accel":1.257237,"accel_momentum":-0.400089,"rvol_3bar":[2.285468,1.312918,0.653083],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":204.0,"sell_vol":1404.0,"unclassified_vol":0.0,"imbalance":-0.746269,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.216081},"context":{"vwap":7.888387,"price_vs_vwap_pct":-0.051805,"ema9":7.888925,"ema20":7.887396,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.576293,"dist_to_hod_atr":1.964291,"atr":0.023265,"spread_atr":0.429823,"own_change_pct":-0.126662,"rel_strength_pct":{"SPY":-0.046903,"IWM":-0.063613}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.487375},"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":"a569971695c1","ts":"2026-09-15T14:14:15+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2129,"target":7.07,"target_label":"premarket_high","reward_risk":1.84,"pos_in_5d_range_pct":48.7,"room_to_5d_high_atr":3.59},"price":6.5144,"vwap":6.2675,"ext_from_open_pct":2.83,"max_ext_allowed_pct":5.0,"volume_pace":3.499,"trend":"flat","recent_slope_pct":0.3558,"volatility":"high"},"price":6.5144,"volume":{"bars":44,"last_bar_volume":32926.0,"baseline_avg":47722.0,"bar_rvol":0.689954,"raw_accel":1.759817,"smooth_accel":-0.082101,"accel_momentum":0.100961,"rvol_3bar":[0.687504,0.174225,0.689954],"trend_3bar":"MIXED","projected_rvol":5.21906},"flow":{"window_s":30,"trades":392,"trade_rate":13.066667,"buy_vol":58398.0,"sell_vol":15623.0,"unclassified_vol":0.0,"imbalance":0.577877,"bid":6.5,"ask":6.54,"spread_pct":0.613497,"quote_size_imbalance":null,"quote_age_s":0.428558},"context":{"vwap":6.260384,"price_vs_vwap_pct":4.057514,"ema9":6.380192,"ema20":6.328824,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":0.221538,"dist_to_hod_atr":-0.124825,"atr":0.115362,"spread_atr":0.346736,"own_change_pct":2.44437,"rel_strength_pct":{"SPY":2.524129,"IWM":2.50742}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.398708},"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":"66b3787b34e5","ts":"2026-09-15T14:14:15+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.6601,"target":7.81,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":52.8,"room_to_5d_high_atr":0.73},"price":7.748,"vwap":7.7426,"ext_from_open_pct":0.62,"max_ext_allowed_pct":4.0,"volume_pace":0.672,"trend":"flat","recent_slope_pct":-0.0139,"volatility":"medium"},"price":7.748,"volume":{"bars":44,"last_bar_volume":7895.0,"baseline_avg":12248.4,"bar_rvol":0.644574,"raw_accel":-0.209076,"smooth_accel":-0.652037,"accel_momentum":-1.10505,"rvol_3bar":[0.204142,0.80059,0.644574],"trend_3bar":"MIXED","projected_rvol":0.041148},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":2785.0,"sell_vol":21.0,"unclassified_vol":0.0,"imbalance":0.985032,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":5.052987},"context":{"vwap":7.742628,"price_vs_vwap_pct":0.069385,"ema9":7.752772,"ema20":7.754126,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.793854,"dist_to_hod_atr":1.752078,"atr":0.035387,"spread_atr":0.282593,"own_change_pct":-0.088974,"rel_strength_pct":{"SPY":-0.009215,"IWM":-0.025924}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.634926},"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":"f1f426a2a862","ts":"2026-09-15T14:14:30+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.23% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.1486,"target":7.07,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.4501,"vwap":6.2719,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":3.557,"trend":"flat","recent_slope_pct":0.1561,"volatility":"high"},"price":6.4501,"volume":{"bars":44,"last_bar_volume":32926.0,"baseline_avg":47722.0,"bar_rvol":0.689954,"raw_accel":1.759817,"smooth_accel":-0.082101,"accel_momentum":0.100961,"rvol_3bar":[0.687504,0.174225,0.689954],"trend_3bar":"MIXED","projected_rvol":4.468798},"flow":{"window_s":30,"trades":789,"trade_rate":26.3,"buy_vol":75476.0,"sell_vol":31154.0,"unclassified_vol":0.0,"imbalance":0.415662,"bid":6.45,"ask":6.53,"spread_pct":1.232666,"quote_size_imbalance":null,"quote_age_s":1.788039},"context":{"vwap":6.260384,"price_vs_vwap_pct":3.03042,"ema9":6.380192,"ema20":6.328824,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.767692,"dist_to_hod_atr":0.432553,"atr":0.115362,"spread_atr":0.693471,"own_change_pct":2.44437,"rel_strength_pct":{"SPY":2.524129,"IWM":2.50742}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.286788},"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":"000032767064","ts":"2026-09-15T14:14:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2049,"target":8.35,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.32},"price":8.295,"vwap":8.2947,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":3.0,"volume_pace":1.101,"trend":"flat","recent_slope_pct":0.0572,"volatility":"medium"},"price":8.295,"volume":{"bars":44,"last_bar_volume":1008.0,"baseline_avg":1340.4,"bar_rvol":0.752014,"raw_accel":-0.423341,"smooth_accel":3.538462,"accel_momentum":2.250173,"rvol_3bar":[0.799775,1.219308,0.752014],"trend_3bar":"MIXED","projected_rvol":0.278808},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":16.0,"sell_vol":202.0,"unclassified_vol":0.0,"imbalance":-0.853211,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":0.457121},"context":{"vwap":8.294683,"price_vs_vwap_pct":0.003827,"ema9":8.290267,"ema20":8.290651,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.411765,"dist_to_hod_atr":6.745297,"atr":0.030392,"spread_atr":0.329039,"own_change_pct":0.302115,"rel_strength_pct":{"SPY":0.381874,"IWM":0.365165}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.641627},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"44e5f21dfa60","ts":"2026-09-15T14:14:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1785,"target":7.07,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.48,"vwap":6.2737,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":3.565,"trend":"flat","recent_slope_pct":0.2491,"volatility":"high"},"price":6.48,"volume":{"bars":44,"last_bar_volume":32926.0,"baseline_avg":47722.0,"bar_rvol":0.689954,"raw_accel":1.759817,"smooth_accel":-0.082101,"accel_momentum":0.100961,"rvol_3bar":[0.687504,0.174225,0.689954],"trend_3bar":"MIXED","projected_rvol":3.723597},"flow":{"window_s":30,"trades":614,"trade_rate":20.466667,"buy_vol":33761.0,"sell_vol":28093.0,"unclassified_vol":0.0,"imbalance":0.091635,"bid":6.46,"ask":6.5,"spread_pct":0.617284,"quote_size_imbalance":null,"quote_age_s":1.05096},"context":{"vwap":6.260384,"price_vs_vwap_pct":3.508027,"ema9":6.380192,"ema20":6.328824,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.307692,"dist_to_hod_atr":0.173368,"atr":0.115362,"spread_atr":0.346736,"own_change_pct":2.44437,"rel_strength_pct":{"SPY":2.524129,"IWM":2.50742}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.063224},"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":"f47f5365865c","ts":"2026-09-15T14:14:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7753,"target":8.0,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":21.5,"room_to_5d_high_atr":2.66},"price":7.8936,"vwap":7.8884,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":4.0,"volume_pace":1.1,"trend":"flat","recent_slope_pct":0.0104,"volatility":"medium"},"price":7.8936,"volume":{"bars":44,"last_bar_volume":7795.0,"baseline_avg":11935.7,"bar_rvol":0.653083,"raw_accel":-0.473915,"smooth_accel":1.257237,"accel_momentum":-0.400089,"rvol_3bar":[2.285468,1.312918,0.653083],"trend_3bar":"DECELERATING","projected_rvol":0.014522},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":108.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":0.494514},"context":{"vwap":7.888387,"price_vs_vwap_pct":0.06609,"ema9":7.888925,"ema20":7.887396,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.459016,"dist_to_hod_atr":1.564556,"atr":0.023265,"spread_atr":0.429823,"own_change_pct":-0.126662,"rel_strength_pct":{"SPY":-0.046903,"IWM":-0.063613}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.653083},"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":"484efe6e57c1","ts":"2026-09-15T14:14:50+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.88 below VWAP $7.89","plan":{"state":"PASS","setup":"","stop":7.7657,"target":7.93,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.68},"price":7.884,"vwap":7.8884,"ext_from_open_pct":-0.2,"max_ext_allowed_pct":3.0,"volume_pace":1.098,"trend":"flat","recent_slope_pct":-0.0139,"volatility":"high"},"price":7.884,"volume":{"bars":44,"last_bar_volume":7795.0,"baseline_avg":11935.7,"bar_rvol":0.653083,"raw_accel":-0.473915,"smooth_accel":1.257237,"accel_momentum":-0.400089,"rvol_3bar":[2.285468,1.312918,0.653083],"trend_3bar":"DECELERATING","projected_rvol":0.013171},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":108.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.981651,"bid":7.88,"ask":7.89,"spread_pct":0.126823,"quote_size_imbalance":null,"quote_age_s":1.604414},"context":{"vwap":7.888387,"price_vs_vwap_pct":-0.055608,"ema9":7.888925,"ema20":7.887396,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.580076,"dist_to_hod_atr":1.977186,"atr":0.023265,"spread_atr":0.429823,"own_change_pct":-0.126662,"rel_strength_pct":{"SPY":-0.046903,"IWM":-0.063613}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.6411},"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":"852fc59c4f3a","ts":"2026-09-15T14:14:55+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.08% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.1586,"target":7.07,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.4601,"vwap":6.274,"ext_from_open_pct":1.97,"max_ext_allowed_pct":4.0,"volume_pace":3.556,"trend":"flat","recent_slope_pct":0.1873,"volatility":"high"},"price":6.4601,"volume":{"bars":44,"last_bar_volume":32926.0,"baseline_avg":47722.0,"bar_rvol":0.689954,"raw_accel":1.759817,"smooth_accel":-0.082101,"accel_momentum":0.100961,"rvol_3bar":[0.687504,0.174225,0.689954],"trend_3bar":"MIXED","projected_rvol":2.853892},"flow":{"window_s":30,"trades":325,"trade_rate":10.833333,"buy_vol":11367.0,"sell_vol":16679.0,"unclassified_vol":0.0,"imbalance":-0.189403,"bid":6.46,"ask":6.53,"spread_pct":1.077752,"quote_size_imbalance":null,"quote_age_s":0.511942},"context":{"vwap":6.260384,"price_vs_vwap_pct":3.190155,"ema9":6.380192,"ema20":6.328824,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":-0.613846,"dist_to_hod_atr":0.345869,"atr":0.115362,"spread_atr":0.606787,"own_change_pct":2.44437,"rel_strength_pct":{"SPY":2.524129,"IWM":2.50742}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.13068},"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":"6cf3688a35d8","ts":"2026-09-15T14:14:55+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.2013,"target":8.35,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":45.0,"room_to_5d_high_atr":1.33},"price":8.2914,"vwap":8.2947,"ext_from_open_pct":-0.46,"max_ext_allowed_pct":3.0,"volume_pace":1.1,"trend":"flat","recent_slope_pct":0.0485,"volatility":"medium"},"price":8.2914,"volume":{"bars":44,"last_bar_volume":1008.0,"baseline_avg":1340.4,"bar_rvol":0.752014,"raw_accel":-0.423341,"smooth_accel":3.538462,"accel_momentum":2.250173,"rvol_3bar":[0.799775,1.219308,0.752014],"trend_3bar":"MIXED","projected_rvol":0.595752},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":223.0,"sell_vol":509.0,"unclassified_vol":0.0,"imbalance":-0.39071,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":1.553374},"context":{"vwap":8.294683,"price_vs_vwap_pct":-0.039574,"ema9":8.290267,"ema20":8.290651,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.454118,"dist_to_hod_atr":6.863751,"atr":0.030392,"spread_atr":0.329039,"own_change_pct":0.302115,"rel_strength_pct":{"SPY":0.381874,"IWM":0.365165}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.29382},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4c51f68c9908","ts":"2026-09-15T14:15:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1985,"target":7.07,"target_label":"premarket_high","reward_risk":1.89,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":3.6},"price":6.5,"vwap":6.2751,"ext_from_open_pct":2.6,"max_ext_allowed_pct":4.0,"volume_pace":3.554,"trend":"flat","recent_slope_pct":0.3112,"volatility":"high"},"price":6.5,"volume":{"bars":44,"last_bar_volume":32926.0,"baseline_avg":47722.0,"bar_rvol":0.689954,"raw_accel":1.759817,"smooth_accel":-0.082101,"accel_momentum":0.100961,"rvol_3bar":[0.687504,0.174225,0.689954],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":308,"trade_rate":10.266667,"buy_vol":11255.0,"sell_vol":9744.0,"unclassified_vol":0.0,"imbalance":0.071956,"bid":6.46,"ask":6.51,"spread_pct":0.77101,"quote_size_imbalance":null,"quote_age_s":1.672285},"context":{"vwap":6.260384,"price_vs_vwap_pct":3.827496,"ema9":6.380192,"ema20":6.328824,"ema_stack":true,"ema_warm":true,"hod":6.5,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.115362,"spread_atr":0.43342,"own_change_pct":2.44437,"rel_strength_pct":{"SPY":2.515563,"IWM":2.475919}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.049646},"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":"0f534c21e863","ts":"2026-09-15T14:15:00+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2078,"target":8.35,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":45.7,"room_to_5d_high_atr":1.31},"price":8.2979,"vwap":8.2947,"ext_from_open_pct":-0.39,"max_ext_allowed_pct":3.0,"volume_pace":1.098,"trend":"flat","recent_slope_pct":0.0642,"volatility":"medium"},"price":8.2979,"volume":{"bars":44,"last_bar_volume":1008.0,"baseline_avg":1340.4,"bar_rvol":0.752014,"raw_accel":-0.423341,"smooth_accel":3.538462,"accel_momentum":2.250173,"rvol_3bar":[0.799775,1.219308,0.752014],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":225.0,"sell_vol":509.0,"unclassified_vol":0.0,"imbalance":-0.386921,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":6.553374},"context":{"vwap":8.294683,"price_vs_vwap_pct":0.038789,"ema9":8.290267,"ema20":8.290651,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.377647,"dist_to_hod_atr":6.649876,"atr":0.030392,"spread_atr":0.329039,"own_change_pct":0.302115,"rel_strength_pct":{"SPY":0.373307,"IWM":0.333664}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.29097},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"33b3a3ded2e6","ts":"2026-09-15T14:15:05+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.2038,"target":5.296,"target_label":"prev_day_high","reward_risk":1.24,"pos_in_5d_range_pct":12.5,"room_to_5d_high_atr":1.91},"price":5.245,"vwap":5.2436,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":1.203,"trend":"flat","recent_slope_pct":0.0284,"volatility":"medium"},"price":5.245,"volume":{"bars":45,"last_bar_volume":8480.0,"baseline_avg":76473.0,"bar_rvol":0.110889,"raw_accel":-0.556445,"smooth_accel":-0.59919,"accel_momentum":0.011196,"rvol_3bar":[1.976026,0.225804,0.110889],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":3962.0,"sell_vol":3697.0,"unclassified_vol":0.0,"imbalance":0.0346,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.057069},"context":{"vwap":5.243612,"price_vs_vwap_pct":0.026464,"ema9":5.241117,"ema20":5.242666,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.474383,"dist_to_hod_atr":1.466123,"atr":0.017052,"spread_atr":0.586449,"own_change_pct":0.286807,"rel_strength_pct":{"SPY":0.357999,"IWM":0.318356}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.003837},"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":"04a5fbbbf729","ts":"2026-09-15T14:15:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.33% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":7.9757,"target":8.1957,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":117.8,"room_to_5d_high_atr":-0.65},"price":8.1957,"vwap":7.8597,"ext_from_open_pct":6.99,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.441,"volatility":"high"},"price":8.1957,"volume":{"bars":45,"last_bar_volume":15150.0,"baseline_avg":4794.65,"bar_rvol":3.159772,"raw_accel":11.639087,"smooth_accel":1.844716,"accel_momentum":2.27411,"rvol_3bar":[0.356098,0.235463,3.159772],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":5767.0,"sell_vol":1694.0,"unclassified_vol":0.0,"imbalance":0.545905,"bid":8.19,"ask":8.3,"spread_pct":1.334142,"quote_size_imbalance":null,"quote_age_s":4.493188},"context":{"vwap":7.85923,"price_vs_vwap_pct":4.281215,"ema9":8.122007,"ema20":8.040418,"ema_stack":true,"ema_warm":true,"hod":8.3,"dist_to_hod_pct":-1.256627,"dist_to_hod_atr":0.928872,"atr":0.112287,"spread_atr":0.979635,"own_change_pct":2.091387,"rel_strength_pct":{"SPY":2.162579,"IWM":2.122936}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.724936},"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":"b7be39f64952","ts":"2026-09-15T14:15:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.23% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.2285,"target":7.07,"target_label":"premarket_high","reward_risk":1.79,"pos_in_5d_range_pct":48.9,"room_to_5d_high_atr":3.57},"price":6.53,"vwap":6.2783,"ext_from_open_pct":3.08,"max_ext_allowed_pct":4.0,"volume_pace":3.583,"trend":"flat","recent_slope_pct":0.6437,"volatility":"high"},"price":6.53,"volume":{"bars":45,"last_bar_volume":127629.0,"baseline_avg":48887.85,"bar_rvol":2.610649,"raw_accel":2.876238,"smooth_accel":0.827201,"accel_momentum":0.909302,"rvol_3bar":[0.174225,0.689954,2.610649],"trend_3bar":"ACCELERATING","projected_rvol":2.314604},"flow":{"window_s":30,"trades":380,"trade_rate":12.666667,"buy_vol":19669.0,"sell_vol":16605.0,"unclassified_vol":0.0,"imbalance":0.084468,"bid":6.46,"ask":6.54,"spread_pct":1.230769,"quote_size_imbalance":null,"quote_age_s":0.232823},"context":{"vwap":6.275061,"price_vs_vwap_pct":4.062738,"ema9":6.404153,"ema20":6.345127,"ema_stack":true,"ema_warm":true,"hod":6.58,"dist_to_hod_pct":-0.759878,"dist_to_hod_atr":0.419262,"atr":0.119257,"spread_atr":0.670819,"own_change_pct":1.72144,"rel_strength_pct":{"SPY":1.792632,"IWM":1.752989}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.220517},"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":"da31d4bee9cc","ts":"2026-09-15T14:15:15+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1941,"target":5.296,"target_label":"prev_day_high","reward_risk":1.47,"pos_in_5d_range_pct":9.8,"room_to_5d_high_atr":1.97},"price":5.2353,"vwap":5.2436,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":1.199,"trend":"flat","recent_slope_pct":-0.0086,"volatility":"medium"},"price":5.2353,"volume":{"bars":45,"last_bar_volume":8480.0,"baseline_avg":76473.0,"bar_rvol":0.110889,"raw_accel":-0.556445,"smooth_accel":-0.59919,"accel_momentum":0.011196,"rvol_3bar":[1.976026,0.225804,0.110889],"trend_3bar":"DECELERATING","projected_rvol":0.058374},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":3987.0,"sell_vol":4421.0,"unclassified_vol":0.0,"imbalance":-0.051618,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":1.364426},"context":{"vwap":5.243612,"price_vs_vwap_pct":-0.158523,"ema9":5.241117,"ema20":5.242666,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.658444,"dist_to_hod_atr":2.034979,"atr":0.017052,"spread_atr":0.586449,"own_change_pct":0.286807,"rel_strength_pct":{"SPY":0.357999,"IWM":0.318356}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.005724},"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":"3ddeaf5afefc","ts":"2026-09-15T14:15:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2285,"target":7.07,"target_label":"premarket_high","reward_risk":1.79,"pos_in_5d_range_pct":48.9,"room_to_5d_high_atr":3.57},"price":6.53,"vwap":6.2803,"ext_from_open_pct":3.08,"max_ext_allowed_pct":4.0,"volume_pace":3.606,"trend":"flat","recent_slope_pct":0.6437,"volatility":"high"},"price":6.53,"volume":{"bars":45,"last_bar_volume":127629.0,"baseline_avg":48887.85,"bar_rvol":2.610649,"raw_accel":2.876238,"smooth_accel":0.827201,"accel_momentum":0.909302,"rvol_3bar":[0.174225,0.689954,2.610649],"trend_3bar":"ACCELERATING","projected_rvol":2.782225},"flow":{"window_s":30,"trades":396,"trade_rate":13.2,"buy_vol":26139.0,"sell_vol":24129.0,"unclassified_vol":0.0,"imbalance":0.039986,"bid":6.5,"ask":6.56,"spread_pct":0.918836,"quote_size_imbalance":null,"quote_age_s":0.151738},"context":{"vwap":6.275061,"price_vs_vwap_pct":4.062738,"ema9":6.404153,"ema20":6.345127,"ema_stack":true,"ema_warm":true,"hod":6.58,"dist_to_hod_pct":-0.759878,"dist_to_hod_atr":0.419262,"atr":0.119257,"spread_atr":0.503114,"own_change_pct":1.72144,"rel_strength_pct":{"SPY":1.792632,"IWM":1.752989}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.104389},"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":"73534b20a681","ts":"2026-09-15T14:15:30+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.2088,"target":5.296,"target_label":"prev_day_high","reward_risk":1.12,"pos_in_5d_range_pct":13.9,"room_to_5d_high_atr":1.88},"price":5.25,"vwap":5.2436,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":3.0,"volume_pace":1.192,"trend":"flat","recent_slope_pct":0.0475,"volatility":"medium"},"price":5.25,"volume":{"bars":45,"last_bar_volume":8480.0,"baseline_avg":76473.0,"bar_rvol":0.110889,"raw_accel":-0.556445,"smooth_accel":-0.59919,"accel_momentum":0.011196,"rvol_3bar":[1.976026,0.225804,0.110889],"trend_3bar":"DECELERATING","projected_rvol":0.042577},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":776.0,"sell_vol":852.0,"unclassified_vol":0.0,"imbalance":-0.046683,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.003448},"context":{"vwap":5.243612,"price_vs_vwap_pct":0.121818,"ema9":5.241117,"ema20":5.242666,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.379507,"dist_to_hod_atr":1.172898,"atr":0.017052,"spread_atr":0.586449,"own_change_pct":0.286807,"rel_strength_pct":{"SPY":0.357999,"IWM":0.318356}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.005177},"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":"d7ab15f61fd2","ts":"2026-09-15T14:15:40+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.1983,"target":8.35,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.34},"price":8.2884,"vwap":8.2947,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":-0.0064,"volatility":"medium"},"price":8.2884,"volume":{"bars":45,"last_bar_volume":734.0,"baseline_avg":1388.05,"bar_rvol":0.528799,"raw_accel":-0.271825,"smooth_accel":1.300593,"accel_momentum":-2.237868,"rvol_3bar":[1.219308,0.752014,0.528799],"trend_3bar":"DECELERATING","projected_rvol":0.111307},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":103.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":12.499425},"context":{"vwap":8.294695,"price_vs_vwap_pct":-0.07589,"ema9":8.291793,"ema20":8.291342,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.489412,"dist_to_hod_atr":7.312941,"atr":0.028935,"spread_atr":0.345602,"own_change_pct":0.276737,"rel_strength_pct":{"SPY":0.347929,"IWM":0.308286}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.528799},"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":"9d2b639aba64","ts":"2026-09-15T14:15:45+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1988,"target":5.296,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.94},"price":5.24,"vwap":5.2436,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.186,"trend":"flat","recent_slope_pct":0.0093,"volatility":"medium"},"price":5.24,"volume":{"bars":45,"last_bar_volume":8480.0,"baseline_avg":76473.0,"bar_rvol":0.110889,"raw_accel":-0.556445,"smooth_accel":-0.59919,"accel_momentum":0.011196,"rvol_3bar":[1.976026,0.225804,0.110889],"trend_3bar":"DECELERATING","projected_rvol":0.035638},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":775.0,"sell_vol":153.0,"unclassified_vol":0.0,"imbalance":0.670259,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.520714},"context":{"vwap":5.243612,"price_vs_vwap_pct":-0.06889,"ema9":5.241117,"ema20":5.242666,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.56926,"dist_to_hod_atr":1.759347,"atr":0.017052,"spread_atr":0.586449,"own_change_pct":0.286807,"rel_strength_pct":{"SPY":0.357999,"IWM":0.318356}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.074324},"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":"2b58f95a1cae","ts":"2026-09-15T14:15:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2049,"target":8.35,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.32},"price":8.295,"vwap":8.2947,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":3.0,"volume_pace":1.086,"trend":"flat","recent_slope_pct":0.0095,"volatility":"medium"},"price":8.295,"volume":{"bars":45,"last_bar_volume":734.0,"baseline_avg":1388.05,"bar_rvol":0.528799,"raw_accel":-0.271825,"smooth_accel":1.300593,"accel_momentum":-2.237868,"rvol_3bar":[1.219308,0.752014,0.528799],"trend_3bar":"DECELERATING","projected_rvol":0.426498},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":141.0,"sell_vol":300.0,"unclassified_vol":0.0,"imbalance":-0.360544,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":2.759861},"context":{"vwap":8.294695,"price_vs_vwap_pct":0.003679,"ema9":8.291793,"ema20":8.291342,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.411765,"dist_to_hod_atr":7.084844,"atr":0.028935,"spread_atr":0.345602,"own_change_pct":0.276737,"rel_strength_pct":{"SPY":0.347929,"IWM":0.308286}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.190656},"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":"4fdbe7b77eb1","ts":"2026-09-15T14:15:50+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.24,"target":7.07,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":3.5},"price":6.62,"vwap":6.288,"ext_from_open_pct":4.5,"max_ext_allowed_pct":5.0,"volume_pace":3.649,"trend":"flat","recent_slope_pct":0.9203,"volatility":"high"},"price":6.62,"volume":{"bars":45,"last_bar_volume":127629.0,"baseline_avg":48887.85,"bar_rvol":2.610649,"raw_accel":2.876238,"smooth_accel":0.827201,"accel_momentum":0.909302,"rvol_3bar":[0.174225,0.689954,2.610649],"trend_3bar":"ACCELERATING","projected_rvol":2.306733},"flow":{"window_s":30,"trades":419,"trade_rate":13.966667,"buy_vol":37678.0,"sell_vol":10959.0,"unclassified_vol":0.0,"imbalance":0.549355,"bid":6.56,"ask":6.63,"spread_pct":1.06141,"quote_size_imbalance":null,"quote_age_s":0.781135},"context":{"vwap":6.275061,"price_vs_vwap_pct":5.496987,"ema9":6.404153,"ema20":6.345127,"ema_stack":true,"ema_warm":true,"hod":6.58,"dist_to_hod_pct":0.607903,"dist_to_hod_atr":-0.335409,"atr":0.119257,"spread_atr":0.586966,"own_change_pct":1.72144,"rel_strength_pct":{"SPY":1.792632,"IWM":1.752989}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.434174},"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":"8e0da7d9f5fc","ts":"2026-09-15T14:15:50+00:00","symbol":"STLA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.2088,"target":5.296,"target_label":"prev_day_high","reward_risk":1.12,"pos_in_5d_range_pct":13.9,"room_to_5d_high_atr":1.88},"price":5.25,"vwap":5.2436,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":3.0,"volume_pace":1.184,"trend":"flat","recent_slope_pct":0.0475,"volatility":"medium"},"price":5.25,"volume":{"bars":45,"last_bar_volume":8480.0,"baseline_avg":76473.0,"bar_rvol":0.110889,"raw_accel":-0.556445,"smooth_accel":-0.59919,"accel_momentum":0.011196,"rvol_3bar":[1.976026,0.225804,0.110889],"trend_3bar":"DECELERATING","projected_rvol":0.03562},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1001.0,"sell_vol":153.0,"unclassified_vol":0.0,"imbalance":0.734835,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":5.520714},"context":{"vwap":5.243612,"price_vs_vwap_pct":0.121818,"ema9":5.241117,"ema20":5.242666,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.379507,"dist_to_hod_atr":1.172898,"atr":0.017052,"spread_atr":0.586449,"own_change_pct":0.286807,"rel_strength_pct":{"SPY":0.357999,"IWM":0.318356}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.081485},"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":"f895c6c8b22f","ts":"2026-09-15T14:15:55+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.24,"target":7.07,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":3.5},"price":6.62,"vwap":6.2887,"ext_from_open_pct":4.5,"max_ext_allowed_pct":5.0,"volume_pace":3.652,"trend":"flat","recent_slope_pct":0.9203,"volatility":"high"},"price":6.62,"volume":{"bars":45,"last_bar_volume":127629.0,"baseline_avg":48887.85,"bar_rvol":2.610649,"raw_accel":2.876238,"smooth_accel":0.827201,"accel_momentum":0.909302,"rvol_3bar":[0.174225,0.689954,2.610649],"trend_3bar":"ACCELERATING","projected_rvol":2.221433},"flow":{"window_s":30,"trades":472,"trade_rate":15.733333,"buy_vol":38532.0,"sell_vol":13160.0,"unclassified_vol":0.0,"imbalance":0.49083,"bid":6.6,"ask":6.62,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":0.125074},"context":{"vwap":6.275061,"price_vs_vwap_pct":5.496987,"ema9":6.404153,"ema20":6.345127,"ema_stack":true,"ema_warm":true,"hod":6.58,"dist_to_hod_pct":0.607903,"dist_to_hod_atr":-0.335409,"atr":0.119257,"spread_atr":0.167705,"own_change_pct":1.72144,"rel_strength_pct":{"SPY":1.792632,"IWM":1.752989}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.281385},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9d09cd238bd3","ts":"2026-09-15T14:16:05+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.4% above open $6.33 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.24,"target":7.07,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":50.7,"room_to_5d_high_atr":3.45},"price":6.6801,"vwap":6.3017,"ext_from_open_pct":5.45,"max_ext_allowed_pct":4.0,"volume_pace":3.771,"trend":"flat","recent_slope_pct":1.2566,"volatility":"high"},"price":6.6801,"volume":{"bars":46,"last_bar_volume":118658.0,"baseline_avg":54973.15,"bar_rvol":2.158472,"raw_accel":-0.07029,"smooth_accel":3.357937,"accel_momentum":2.530736,"rvol_3bar":[0.689954,2.610649,2.158472],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":757,"trade_rate":25.233333,"buy_vol":76182.0,"sell_vol":44467.0,"unclassified_vol":0.0,"imbalance":0.26287,"bid":6.68,"ask":6.71,"spread_pct":0.448096,"quote_size_imbalance":null,"quote_age_s":0.214883},"context":{"vwap":6.291834,"price_vs_vwap_pct":6.170945,"ema9":6.451323,"ema20":6.37321,"ema_stack":true,"ema_warm":true,"hod":6.647,"dist_to_hod_pct":0.497969,"dist_to_hod_atr":-0.266729,"atr":0.124096,"spread_atr":0.241748,"own_change_pct":3.265941,"rel_strength_pct":{"SPY":3.294954,"IWM":3.241652}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.567397},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e5c1b1f72d2b","ts":"2026-09-15T14:16:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6589,"target":7.81,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":52.6,"room_to_5d_high_atr":0.73},"price":7.7468,"vwap":7.7427,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":-0.0217,"volatility":"medium"},"price":7.7468,"volume":{"bars":46,"last_bar_volume":1327.0,"baseline_avg":12281.35,"bar_rvol":0.10805,"raw_accel":-0.698409,"smooth_accel":-0.719873,"accel_momentum":-0.21984,"rvol_3bar":[0.644574,0.355484,0.10805],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":531.0,"sell_vol":150.0,"unclassified_vol":0.0,"imbalance":0.559471,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":1.223887},"context":{"vwap":7.742654,"price_vs_vwap_pct":0.053542,"ema9":7.750614,"ema20":7.752776,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.809219,"dist_to_hod_atr":1.988913,"atr":0.031776,"spread_atr":0.314701,"own_change_pct":-0.023226,"rel_strength_pct":{"SPY":0.005787,"IWM":-0.047515}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.060451},"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":"ab4d671d4c4e","ts":"2026-09-15T14:16:10+00:00","symbol":"STLA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1988,"target":5.296,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.94},"price":5.24,"vwap":5.2436,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":3.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":-0.0031,"volatility":"medium"},"price":5.24,"volume":{"bars":46,"last_bar_volume":2519.0,"baseline_avg":74957.1,"bar_rvol":0.033606,"raw_accel":-0.865576,"smooth_accel":-0.947821,"accel_momentum":-0.34863,"rvol_3bar":[0.225804,0.110889,0.033606],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1826.0,"sell_vol":4774.0,"unclassified_vol":0.0,"imbalance":-0.446667,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.609887},"context":{"vwap":5.243612,"price_vs_vwap_pct":-0.068887,"ema9":5.241893,"ema20":5.242888,"ema_stack":false,"ema_warm":true,"hod":5.27,"dist_to_hod_pct":-0.56926,"dist_to_hod_atr":1.776852,"atr":0.016884,"spread_atr":0.592284,"own_change_pct":0.286807,"rel_strength_pct":{"SPY":0.31582,"IWM":0.262518}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.015011},"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":"11f3f21c7206","ts":"2026-09-15T14:16:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.1949,"target":8.35,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":44.3,"room_to_5d_high_atr":1.35},"price":8.285,"vwap":8.2946,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":3.0,"volume_pace":1.09,"trend":"flat","recent_slope_pct":-0.0422,"volatility":"medium"},"price":8.285,"volume":{"bars":46,"last_bar_volume":445.0,"baseline_avg":1390.4,"bar_rvol":0.320052,"raw_accel":-0.393733,"smooth_accel":-0.28248,"accel_momentum":-1.583074,"rvol_3bar":[0.752014,0.528799,0.320052],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":148.0,"sell_vol":1149.0,"unclassified_vol":0.0,"imbalance":-0.771781,"bid":8.28,"ask":8.29,"spread_pct":0.1207,"quote_size_imbalance":null,"quote_age_s":2.004059},"context":{"vwap":8.294694,"price_vs_vwap_pct":-0.116864,"ema9":8.292435,"ema20":8.29169,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.529412,"dist_to_hod_atr":7.762632,"atr":0.027697,"spread_atr":0.361053,"own_change_pct":0.225946,"rel_strength_pct":{"SPY":0.254959,"IWM":0.201657}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.24701},"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":"5fa19a2dad59","ts":"2026-09-15T14:16:45+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.6821,"target":7.83,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":56.9,"room_to_5d_high_atr":0.67},"price":7.77,"vwap":7.7446,"ext_from_open_pct":0.91,"max_ext_allowed_pct":4.0,"volume_pace":0.711,"trend":"flat","recent_slope_pct":0.0382,"volatility":"medium"},"price":7.77,"volume":{"bars":46,"last_bar_volume":1327.0,"baseline_avg":12281.35,"bar_rvol":0.10805,"raw_accel":-0.698409,"smooth_accel":-0.719873,"accel_momentum":-0.21984,"rvol_3bar":[0.644574,0.355484,0.10805],"trend_3bar":"DECELERATING","projected_rvol":8.606329},"flow":{"window_s":30,"trades":249,"trade_rate":8.3,"buy_vol":55853.0,"sell_vol":17781.0,"unclassified_vol":0.0,"imbalance":0.517044,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.420024},"context":{"vwap":7.742654,"price_vs_vwap_pct":0.353181,"ema9":7.750614,"ema20":7.752776,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.512164,"dist_to_hod_atr":1.258805,"atr":0.031776,"spread_atr":0.314701,"own_change_pct":-0.023226,"rel_strength_pct":{"SPY":0.005787,"IWM":-0.047515}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.055867},"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":"67aee72c8e3f","ts":"2026-09-15T14:16:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6771,"target":7.81,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.68},"price":7.765,"vwap":7.7445,"ext_from_open_pct":0.84,"max_ext_allowed_pct":4.0,"volume_pace":0.712,"trend":"flat","recent_slope_pct":0.0253,"volatility":"medium"},"price":7.765,"volume":{"bars":46,"last_bar_volume":1327.0,"baseline_avg":12281.35,"bar_rvol":0.10805,"raw_accel":-0.698409,"smooth_accel":-0.719873,"accel_momentum":-0.21984,"rvol_3bar":[0.644574,0.355484,0.10805],"trend_3bar":"DECELERATING","projected_rvol":7.950885},"flow":{"window_s":30,"trades":235,"trade_rate":7.833333,"buy_vol":56681.0,"sell_vol":14581.0,"unclassified_vol":0.0,"imbalance":0.590778,"bid":7.76,"ask":7.77,"spread_pct":0.128783,"quote_size_imbalance":null,"quote_age_s":0.312296},"context":{"vwap":7.742654,"price_vs_vwap_pct":0.288603,"ema9":7.750614,"ema20":7.752776,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.576184,"dist_to_hod_atr":1.416156,"atr":0.031776,"spread_atr":0.314701,"own_change_pct":-0.023226,"rel_strength_pct":{"SPY":0.005787,"IWM":-0.047515}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.063834},"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":"dce3a7fe932f","ts":"2026-09-15T14:17:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.664,"target":7.81,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":53.6,"room_to_5d_high_atr":0.72},"price":7.7519,"vwap":7.7443,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":0.0225,"volatility":"medium"},"price":7.7519,"volume":{"bars":47,"last_bar_volume":86937.0,"baseline_avg":11961.5,"bar_rvol":7.268068,"raw_accel":28.072274,"smooth_accel":3.539015,"accel_momentum":4.258889,"rvol_3bar":[0.355484,0.10805,7.268068],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":230,"trade_rate":7.666667,"buy_vol":57329.0,"sell_vol":17246.0,"unclassified_vol":0.0,"imbalance":0.537486,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":0.87368},"context":{"vwap":7.744265,"price_vs_vwap_pct":0.098584,"ema9":7.751491,"ema20":7.752987,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.743918,"dist_to_hod_atr":1.828728,"atr":0.031771,"spread_atr":0.314755,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.020444,"IWM":-0.022791}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.906483},"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":"dc9ccbe0abfc","ts":"2026-09-15T14:17:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2299,"target":8.41,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":1.25},"price":8.32,"vwap":8.2952,"ext_from_open_pct":-0.12,"max_ext_allowed_pct":3.0,"volume_pace":1.102,"trend":"flat","recent_slope_pct":0.0387,"volatility":"medium"},"price":8.32,"volume":{"bars":47,"last_bar_volume":1642.0,"baseline_avg":1381.1,"bar_rvol":1.188907,"raw_accel":2.689888,"smooth_accel":-0.275552,"accel_momentum":0.006928,"rvol_3bar":[0.528799,0.320052,1.188907],"trend_3bar":"MIXED","projected_rvol":2.824801},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2202.0,"sell_vol":605.0,"unclassified_vol":0.0,"imbalance":0.568935,"bid":8.31,"ask":8.33,"spread_pct":0.240385,"quote_size_imbalance":null,"quote_age_s":0.18303},"context":{"vwap":8.294607,"price_vs_vwap_pct":0.306143,"ema9":8.291948,"ema20":8.291529,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.117647,"dist_to_hod_atr":6.780422,"atr":0.026547,"spread_atr":0.75338,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.020444,"IWM":-0.022791}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.676411},"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":"e93370cff808","ts":"2026-09-15T14:17:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2149,"target":8.35,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.29},"price":8.305,"vwap":8.295,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":3.0,"volume_pace":1.107,"trend":"flat","recent_slope_pct":0.0025,"volatility":"medium"},"price":8.305,"volume":{"bars":47,"last_bar_volume":1642.0,"baseline_avg":1381.1,"bar_rvol":1.188907,"raw_accel":2.689888,"smooth_accel":-0.275552,"accel_momentum":0.006928,"rvol_3bar":[0.528799,0.320052,1.188907],"trend_3bar":"MIXED","projected_rvol":2.935921},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":2292.0,"sell_vol":966.0,"unclassified_vol":0.0,"imbalance":0.406998,"bid":8.3,"ask":8.32,"spread_pct":0.240674,"quote_size_imbalance":null,"quote_age_s":0.45161},"context":{"vwap":8.294607,"price_vs_vwap_pct":0.125302,"ema9":8.291948,"ema20":8.291529,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.294118,"dist_to_hod_atr":7.345457,"atr":0.026547,"spread_atr":0.75338,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.020444,"IWM":-0.022791}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.483883},"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":"101526ba92ed","ts":"2026-09-15T14:17:55+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2199,"target":8.41,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.28},"price":8.31,"vwap":8.2951,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":1.105,"trend":"flat","recent_slope_pct":0.0146,"volatility":"medium"},"price":8.31,"volume":{"bars":47,"last_bar_volume":1642.0,"baseline_avg":1381.1,"bar_rvol":1.188907,"raw_accel":2.689888,"smooth_accel":-0.275552,"accel_momentum":0.006928,"rvol_3bar":[0.528799,0.320052,1.188907],"trend_3bar":"MIXED","projected_rvol":2.684816},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2312.0,"sell_vol":966.0,"unclassified_vol":0.0,"imbalance":0.410616,"bid":8.3,"ask":8.32,"spread_pct":0.240674,"quote_size_imbalance":null,"quote_age_s":2.98716},"context":{"vwap":8.294607,"price_vs_vwap_pct":0.185582,"ema9":8.291948,"ema20":8.291529,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.235294,"dist_to_hod_atr":7.157112,"atr":0.026547,"spread_atr":0.75338,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.020444,"IWM":-0.022791}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.488185},"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":"c909bc09140f","ts":"2026-09-15T14:18:00+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1889,"target":5.43,"target_label":"prev_day_high","reward_risk":2.17,"pos_in_5d_range_pct":6.4,"room_to_5d_high_atr":1.87},"price":5.265,"vwap":5.2534,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":4.0,"volume_pace":1.444,"trend":"flat","recent_slope_pct":0.1719,"volatility":"medium"},"price":5.265,"volume":{"bars":47,"last_bar_volume":2151.0,"baseline_avg":3836.5,"bar_rvol":0.560667,"raw_accel":1.242669,"smooth_accel":-0.067627,"accel_momentum":-0.549071,"rvol_3bar":[1.121323,0.115029,0.560667],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":18211.0,"sell_vol":5419.0,"unclassified_vol":0.0,"imbalance":0.541346,"bid":5.26,"ask":5.27,"spread_pct":0.189934,"quote_size_imbalance":null,"quote_age_s":1.96408},"context":{"vwap":5.252542,"price_vs_vwap_pct":0.237183,"ema9":5.218657,"ema20":5.217862,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.590194,"dist_to_hod_atr":5.830113,"atr":0.024013,"spread_atr":0.416437,"own_change_pct":0.861505,"rel_strength_pct":{"SPY":0.841719,"IWM":0.73878}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.303515},"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":"1a3fd2d22f7c","ts":"2026-09-15T14:18:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 8.21, target 8.35 (ceiling), R:R 0.55; R:R 0.55 < 2.0 at 8.30; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.2106,"target":8.35,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.3},"price":8.3007,"vwap":8.2951,"ext_from_open_pct":-0.35,"max_ext_allowed_pct":3.0,"volume_pace":1.102,"trend":"flat","recent_slope_pct":0.0248,"volatility":"medium"},"price":8.3007,"volume":{"bars":48,"last_bar_volume":3399.0,"baseline_avg":1461.45,"bar_rvol":2.325772,"raw_accel":1.070037,"smooth_accel":0.57192,"accel_momentum":0.847472,"rvol_3bar":[0.320052,1.188907,2.325772],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2113.0,"sell_vol":1002.0,"unclassified_vol":0.0,"imbalance":0.356661,"bid":8.3,"ask":8.32,"spread_pct":0.240674,"quote_size_imbalance":null,"quote_age_s":0.207916},"context":{"vwap":8.295106,"price_vs_vwap_pct":0.067433,"ema9":8.295558,"ema20":8.293288,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.344706,"dist_to_hod_atr":7.438326,"atr":0.026794,"spread_atr":0.746445,"own_change_pct":0.120482,"rel_strength_pct":{"SPY":0.100696,"IWM":-0.002243}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.829513},"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":"1d6de8bfa485","ts":"2026-09-15T14:18:15+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6553,"target":7.81,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":0.74},"price":7.7432,"vwap":7.7444,"ext_from_open_pct":0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":0.0041,"volatility":"medium"},"price":7.7432,"volume":{"bars":48,"last_bar_volume":5091.0,"baseline_avg":15704.9,"bar_rvol":0.324166,"raw_accel":-0.94144,"smooth_accel":3.190645,"accel_momentum":-0.34837,"rvol_3bar":[0.10805,7.268068,0.324166],"trend_3bar":"MIXED","projected_rvol":1.403129},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":3812.0,"sell_vol":2414.0,"unclassified_vol":0.0,"imbalance":0.224542,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.170618},"context":{"vwap":7.744342,"price_vs_vwap_pct":-0.01474,"ema9":7.752193,"ema20":7.753179,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.855314,"dist_to_hod_atr":2.186992,"atr":0.030544,"spread_atr":0.327394,"own_change_pct":-0.002579,"rel_strength_pct":{"SPY":-0.022365,"IWM":-0.125304}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.072789},"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":"39facc99e8b3","ts":"2026-09-15T14:18:20+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.8608,"target":10.015,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.5},"price":9.98,"vwap":9.9755,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":1.293,"trend":"flat","recent_slope_pct":0.0465,"volatility":"medium"},"price":9.98,"volume":{"bars":48,"last_bar_volume":57481.0,"baseline_avg":319736.65,"bar_rvol":0.179776,"raw_accel":-0.652974,"smooth_accel":0.125121,"accel_momentum":0.007025,"rvol_3bar":[0.772672,0.480642,0.179776],"trend_3bar":"DECELERATING","projected_rvol":0.403119},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":13156.0,"sell_vol":33071.0,"unclassified_vol":0.0,"imbalance":-0.430809,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.330358},"context":{"vwap":9.975525,"price_vs_vwap_pct":0.044856,"ema9":9.977906,"ema20":9.985939,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.696517,"dist_to_hod_atr":2.048139,"atr":0.034177,"spread_atr":0.292591,"own_change_pct":0.100351,"rel_strength_pct":{"SPY":0.080565,"IWM":-0.022374}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.077449},"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":"d7a4f03c4b51","ts":"2026-09-15T14:18:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.6722,"target":7.81,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":55.1,"room_to_5d_high_atr":0.7},"price":7.7601,"vwap":7.7444,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.703,"trend":"flat","recent_slope_pct":0.0477,"volatility":"medium"},"price":7.7601,"volume":{"bars":48,"last_bar_volume":5091.0,"baseline_avg":15704.9,"bar_rvol":0.324166,"raw_accel":-0.94144,"smooth_accel":3.190645,"accel_momentum":-0.34837,"rvol_3bar":[0.10805,7.268068,0.324166],"trend_3bar":"MIXED","projected_rvol":1.071449},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":3888.0,"sell_vol":2414.0,"unclassified_vol":0.0,"imbalance":0.233894,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.985746},"context":{"vwap":7.744342,"price_vs_vwap_pct":0.203484,"ema9":7.752193,"ema20":7.753179,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.638924,"dist_to_hod_atr":1.633696,"atr":0.030544,"spread_atr":0.327394,"own_change_pct":-0.002579,"rel_strength_pct":{"SPY":-0.022365,"IWM":-0.125304}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.075821},"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":"193eab4e8b96","ts":"2026-09-15T14:18:25+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9755,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.29,"trend":"flat","recent_slope_pct":0.0365,"volatility":"medium"},"price":9.975,"volume":{"bars":48,"last_bar_volume":57481.0,"baseline_avg":319736.65,"bar_rvol":0.179776,"raw_accel":-0.652974,"smooth_accel":0.125121,"accel_momentum":0.007025,"rvol_3bar":[0.772672,0.480642,0.179776],"trend_3bar":"DECELERATING","projected_rvol":0.333747},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":12757.0,"sell_vol":33374.0,"unclassified_vol":0.0,"imbalance":-0.446923,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.05665},"context":{"vwap":9.975525,"price_vs_vwap_pct":-0.005267,"ema9":9.977906,"ema20":9.985939,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.194434,"atr":0.034177,"spread_atr":0.292591,"own_change_pct":0.100351,"rel_strength_pct":{"SPY":0.080565,"IWM":-0.022374}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.080346},"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":"ea23dfc0cda0","ts":"2026-09-15T14:18:35+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.8607,"target":10.015,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.5},"price":9.9799,"vwap":9.9755,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":1.295,"trend":"flat","recent_slope_pct":0.0463,"volatility":"medium"},"price":9.9799,"volume":{"bars":48,"last_bar_volume":57481.0,"baseline_avg":319736.65,"bar_rvol":0.179776,"raw_accel":-0.652974,"smooth_accel":0.125121,"accel_momentum":0.007025,"rvol_3bar":[0.772672,0.480642,0.179776],"trend_3bar":"DECELERATING","projected_rvol":0.959064},"flow":{"window_s":30,"trades":185,"trade_rate":6.166667,"buy_vol":106455.0,"sell_vol":57314.0,"unclassified_vol":0.0,"imbalance":0.300063,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.208963},"context":{"vwap":9.975525,"price_vs_vwap_pct":0.043853,"ema9":9.977906,"ema20":9.985939,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.697512,"dist_to_hod_atr":2.051065,"atr":0.034177,"spread_atr":0.292591,"own_change_pct":0.100351,"rel_strength_pct":{"SPY":0.080565,"IWM":-0.022374}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.053944},"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":"06f5ddbc49cd","ts":"2026-09-15T14:18:40+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9755,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.293,"trend":"flat","recent_slope_pct":0.0365,"volatility":"medium"},"price":9.975,"volume":{"bars":48,"last_bar_volume":57481.0,"baseline_avg":319736.65,"bar_rvol":0.179776,"raw_accel":-0.652974,"smooth_accel":0.125121,"accel_momentum":0.007025,"rvol_3bar":[0.772672,0.480642,0.179776],"trend_3bar":"DECELERATING","projected_rvol":0.882168},"flow":{"window_s":30,"trades":181,"trade_rate":6.033333,"buy_vol":106334.0,"sell_vol":60441.0,"unclassified_vol":0.0,"imbalance":0.275179,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.146483},"context":{"vwap":9.975525,"price_vs_vwap_pct":-0.005267,"ema9":9.977906,"ema20":9.985939,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.194434,"atr":0.034177,"spread_atr":0.292591,"own_change_pct":0.100351,"rel_strength_pct":{"SPY":0.080565,"IWM":-0.022374}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.049471},"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":"967849498d19","ts":"2026-09-15T14:18:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says WATCH; stop 8.22, target 8.41 (prev_day_high), R:R 1.11; R:R 1.11 < 2.0 at 8.31; breakout: 1-min close > 8.36 on >= 2564 sh","plan":{"state":"WATCH","setup":"","stop":8.2199,"target":8.41,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.28},"price":8.31,"vwap":8.2951,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":1.089,"trend":"flat","recent_slope_pct":0.0472,"volatility":"medium"},"price":8.31,"volume":{"bars":48,"last_bar_volume":3399.0,"baseline_avg":1461.45,"bar_rvol":2.325772,"raw_accel":1.070037,"smooth_accel":0.57192,"accel_momentum":0.847472,"rvol_3bar":[0.320052,1.188907,2.325772],"trend_3bar":"ACCELERATING","projected_rvol":0.044134},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":6.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.29,"ask":8.31,"spread_pct":0.240964,"quote_size_imbalance":null,"quote_age_s":0.692056},"context":{"vwap":8.295106,"price_vs_vwap_pct":0.179547,"ema9":8.295558,"ema20":8.293288,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.235294,"dist_to_hod_atr":7.091229,"atr":0.026794,"spread_atr":0.746445,"own_change_pct":0.120482,"rel_strength_pct":{"SPY":0.100696,"IWM":-0.002243}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.325772},"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":"7bfe332dc8db","ts":"2026-09-15T14:18:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says PASS; stop 8.21, target 8.35 (ceiling), R:R 0.51; R:R 0.51 < 2.0 at 8.30; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.2142,"target":8.35,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":46.5,"room_to_5d_high_atr":1.29},"price":8.3043,"vwap":8.2951,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":4.0,"volume_pace":1.085,"trend":"flat","recent_slope_pct":0.0335,"volatility":"medium"},"price":8.3043,"volume":{"bars":48,"last_bar_volume":3399.0,"baseline_avg":1461.45,"bar_rvol":2.325772,"raw_accel":1.070037,"smooth_accel":0.57192,"accel_momentum":0.847472,"rvol_3bar":[0.320052,1.188907,2.325772],"trend_3bar":"ACCELERATING","projected_rvol":0.042697},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":14.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.866667,"bid":8.29,"ask":8.31,"spread_pct":0.240964,"quote_size_imbalance":null,"quote_age_s":10.692056},"context":{"vwap":8.295106,"price_vs_vwap_pct":0.110832,"ema9":8.295558,"ema20":8.293288,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.302353,"dist_to_hod_atr":7.303966,"atr":0.026794,"spread_atr":0.746445,"own_change_pct":0.120482,"rel_strength_pct":{"SPY":0.100696,"IWM":-0.002243}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.015669},"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":"e2170d259747","ts":"2026-09-15T14:18:55+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.8636,"target":10.015,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.49},"price":9.9828,"vwap":9.9755,"ext_from_open_pct":1.55,"max_ext_allowed_pct":3.0,"volume_pace":1.295,"trend":"flat","recent_slope_pct":0.0521,"volatility":"medium"},"price":9.9828,"volume":{"bars":48,"last_bar_volume":57481.0,"baseline_avg":319736.65,"bar_rvol":0.179776,"raw_accel":-0.652974,"smooth_accel":0.125121,"accel_momentum":0.007025,"rvol_3bar":[0.772672,0.480642,0.179776],"trend_3bar":"DECELERATING","projected_rvol":1.093926},"flow":{"window_s":30,"trades":306,"trade_rate":10.2,"buy_vol":126200.0,"sell_vol":149958.0,"unclassified_vol":0.0,"imbalance":-0.08603,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.895861},"context":{"vwap":9.975525,"price_vs_vwap_pct":0.072925,"ema9":9.977906,"ema20":9.985939,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.668657,"dist_to_hod_atr":1.966213,"atr":0.034177,"spread_atr":0.292591,"own_change_pct":0.100351,"rel_strength_pct":{"SPY":0.080565,"IWM":-0.022374}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.015466},"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":"27641dddbd80","ts":"2026-09-15T14:19:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":9.8594,"target":10.015,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":2.5},"price":9.9786,"vwap":9.9755,"ext_from_open_pct":1.51,"max_ext_allowed_pct":3.0,"volume_pace":1.293,"trend":"flat","recent_slope_pct":0.0437,"volatility":"medium"},"price":9.9786,"volume":{"bars":48,"last_bar_volume":57481.0,"baseline_avg":319736.65,"bar_rvol":0.179776,"raw_accel":-0.652974,"smooth_accel":0.125121,"accel_momentum":0.007025,"rvol_3bar":[0.772672,0.480642,0.179776],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":305,"trade_rate":10.166667,"buy_vol":126113.0,"sell_vol":149119.0,"unclassified_vol":0.0,"imbalance":-0.083588,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.004778},"context":{"vwap":9.975525,"price_vs_vwap_pct":0.030821,"ema9":9.977906,"ema20":9.985939,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.710448,"dist_to_hod_atr":2.089101,"atr":0.034177,"spread_atr":0.292591,"own_change_pct":0.100351,"rel_strength_pct":{"SPY":0.06077,"IWM":-0.032877}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.015027},"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":"f07e289ebf16","ts":"2026-09-15T14:19:00+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.30","plan":{"state":"PASS","setup":"","stop":8.2049,"target":8.35,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.32},"price":8.295,"vwap":8.2951,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":4.0,"volume_pace":1.085,"trend":"flat","recent_slope_pct":0.0111,"volatility":"medium"},"price":8.295,"volume":{"bars":48,"last_bar_volume":3399.0,"baseline_avg":1461.45,"bar_rvol":2.325772,"raw_accel":1.070037,"smooth_accel":0.57192,"accel_momentum":0.847472,"rvol_3bar":[0.320052,1.188907,2.325772],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":59.0,"sell_vol":246.0,"unclassified_vol":0.0,"imbalance":-0.613115,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":0.230917},"context":{"vwap":8.295106,"price_vs_vwap_pct":-0.001282,"ema9":8.295558,"ema20":8.293288,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.411765,"dist_to_hod_atr":7.651063,"atr":0.026794,"spread_atr":0.373223,"own_change_pct":0.120482,"rel_strength_pct":{"SPY":0.0809,"IWM":-0.012746}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.425965},"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":"b39530f4b70b","ts":"2026-09-15T14:19:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2145,"target":8.35,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":46.5,"room_to_5d_high_atr":1.29},"price":8.3046,"vwap":8.2951,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":4.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.0292,"volatility":"medium"},"price":8.3046,"volume":{"bars":49,"last_bar_volume":347.0,"baseline_avg":1601.65,"bar_rvol":0.216652,"raw_accel":-0.897911,"smooth_accel":1.463649,"accel_momentum":0.891729,"rvol_3bar":[1.188907,2.325772,0.216652],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":59.0,"sell_vol":246.0,"unclassified_vol":0.0,"imbalance":-0.613115,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":0.438965},"context":{"vwap":8.295127,"price_vs_vwap_pct":0.1142,"ema9":8.295446,"ema20":8.293451,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.298824,"dist_to_hod_atr":7.5295,"atr":0.025951,"spread_atr":0.385338,"own_change_pct":-0.060241,"rel_strength_pct":{"SPY":-0.099822,"IWM":-0.193469}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.132832},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aba1e442a474","ts":"2026-09-15T14:19:15+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.30","plan":{"state":"PASS","setup":"","stop":8.2049,"target":8.35,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.32},"price":8.295,"vwap":8.2951,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":4.0,"volume_pace":1.082,"trend":"flat","recent_slope_pct":0.006,"volatility":"medium"},"price":8.295,"volume":{"bars":49,"last_bar_volume":347.0,"baseline_avg":1601.65,"bar_rvol":0.216652,"raw_accel":-0.897911,"smooth_accel":1.463649,"accel_momentum":0.891729,"rvol_3bar":[1.188907,2.325772,0.216652],"trend_3bar":"MIXED","projected_rvol":0.501982},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":58.0,"sell_vol":446.0,"unclassified_vol":0.0,"imbalance":-0.769841,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":2.998671},"context":{"vwap":8.295127,"price_vs_vwap_pct":-0.001531,"ema9":8.295446,"ema20":8.293451,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.411765,"dist_to_hod_atr":7.899425,"atr":0.025951,"spread_atr":0.385338,"own_change_pct":-0.060241,"rel_strength_pct":{"SPY":-0.099822,"IWM":-0.193469}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.166787},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"98e397489fc3","ts":"2026-09-15T14:19:25+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.8758,"target":10.015,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":2.46},"price":9.995,"vwap":9.9756,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":1.288,"trend":"flat","recent_slope_pct":0.0316,"volatility":"medium"},"price":9.995,"volume":{"bars":49,"last_bar_volume":320855.0,"baseline_avg":305406.65,"bar_rvol":1.050583,"raw_accel":3.202332,"smooth_accel":-0.088245,"accel_momentum":-0.213366,"rvol_3bar":[0.480642,0.179776,1.050583],"trend_3bar":"MIXED","projected_rvol":0.748887},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":85182.0,"sell_vol":10350.0,"unclassified_vol":0.0,"imbalance":0.783319,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":1.288191},"context":{"vwap":9.975499,"price_vs_vwap_pct":0.195491,"ema9":9.978045,"ema20":9.98524,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.547264,"dist_to_hod_atr":1.648802,"atr":0.033358,"spread_atr":0.299782,"own_change_pct":0.136478,"rel_strength_pct":{"SPY":0.096896,"IWM":0.00325}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.822941},"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":"c855808646f1","ts":"2026-09-15T14:19:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2138,"target":8.35,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":46.4,"room_to_5d_high_atr":1.29},"price":8.3039,"vwap":8.2951,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":3.0,"volume_pace":1.078,"trend":"flat","recent_slope_pct":0.0275,"volatility":"medium"},"price":8.3039,"volume":{"bars":49,"last_bar_volume":347.0,"baseline_avg":1601.65,"bar_rvol":0.216652,"raw_accel":-0.897911,"smooth_accel":1.463649,"accel_momentum":0.891729,"rvol_3bar":[1.188907,2.325772,0.216652],"trend_3bar":"MIXED","projected_rvol":0.37836},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":102.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":-0.326733,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":1.099304},"context":{"vwap":8.295127,"price_vs_vwap_pct":0.105761,"ema9":8.295446,"ema20":8.293451,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.307059,"dist_to_hod_atr":7.556474,"atr":0.025951,"spread_atr":0.385338,"own_change_pct":-0.060241,"rel_strength_pct":{"SPY":-0.099822,"IWM":-0.193469}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.070787},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c9be8992a2c8","ts":"2026-09-15T14:19:40+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.30","plan":{"state":"PASS","setup":"","stop":8.2049,"target":8.35,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.32},"price":8.295,"vwap":8.2951,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":4.0,"volume_pace":1.076,"trend":"flat","recent_slope_pct":0.006,"volatility":"medium"},"price":8.295,"volume":{"bars":49,"last_bar_volume":347.0,"baseline_avg":1601.65,"bar_rvol":0.216652,"raw_accel":-0.897911,"smooth_accel":1.463649,"accel_momentum":0.891729,"rvol_3bar":[1.188907,2.325772,0.216652],"trend_3bar":"MIXED","projected_rvol":0.426123},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":201.0,"sell_vol":253.0,"unclassified_vol":0.0,"imbalance":-0.114537,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":1.179816},"context":{"vwap":8.295127,"price_vs_vwap_pct":-0.001531,"ema9":8.295446,"ema20":8.293451,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.411765,"dist_to_hod_atr":7.899425,"atr":0.025951,"spread_atr":0.385338,"own_change_pct":-0.060241,"rel_strength_pct":{"SPY":-0.099822,"IWM":-0.193469}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.024815},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"088048c5c381","ts":"2026-09-15T14:20:15+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.98 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.856,"target":10.015,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.9752,"vwap":9.9756,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.269,"trend":"flat","recent_slope_pct":0.0106,"volatility":"medium"},"price":9.9752,"volume":{"bars":50,"last_bar_volume":127974.0,"baseline_avg":314307.75,"bar_rvol":0.407161,"raw_accel":-0.601147,"smooth_accel":-0.245269,"accel_momentum":-0.157024,"rvol_3bar":[0.179776,1.050583,0.407161],"trend_3bar":"MIXED","projected_rvol":0.219937},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":996.0,"sell_vol":26611.0,"unclassified_vol":0.0,"imbalance":-0.927844,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.251938},"context":{"vwap":9.975579,"price_vs_vwap_pct":-0.003797,"ema9":9.981436,"ema20":9.98617,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.744279,"dist_to_hod_atr":2.258609,"atr":0.033118,"spread_atr":0.301953,"own_change_pct":0.401808,"rel_strength_pct":{"SPY":0.370145,"IWM":0.270312}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.377782},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"092f9912612c","ts":"2026-09-15T14:20:20+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.8708,"target":10.015,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":22.4,"room_to_5d_high_atr":2.47},"price":9.99,"vwap":9.9756,"ext_from_open_pct":1.63,"max_ext_allowed_pct":3.0,"volume_pace":1.268,"trend":"flat","recent_slope_pct":0.0403,"volatility":"medium"},"price":9.99,"volume":{"bars":50,"last_bar_volume":127974.0,"baseline_avg":314307.75,"bar_rvol":0.407161,"raw_accel":-0.601147,"smooth_accel":-0.245269,"accel_momentum":-0.157024,"rvol_3bar":[0.179776,1.050583,0.407161],"trend_3bar":"MIXED","projected_rvol":0.20087},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":697.0,"sell_vol":23989.0,"unclassified_vol":0.0,"imbalance":-0.943531,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.095329},"context":{"vwap":9.975579,"price_vs_vwap_pct":0.144565,"ema9":9.981436,"ema20":9.98617,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.597015,"dist_to_hod_atr":1.811718,"atr":0.033118,"spread_atr":0.301953,"own_change_pct":0.401808,"rel_strength_pct":{"SPY":0.370145,"IWM":0.270312}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.384169},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"267aa5bc7855","ts":"2026-09-15T14:20:35+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8548,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":2.51},"price":9.974,"vwap":9.9756,"ext_from_open_pct":1.46,"max_ext_allowed_pct":3.0,"volume_pace":1.262,"trend":"flat","recent_slope_pct":0.0082,"volatility":"medium"},"price":9.974,"volume":{"bars":50,"last_bar_volume":127974.0,"baseline_avg":314307.75,"bar_rvol":0.407161,"raw_accel":-0.601147,"smooth_accel":-0.245269,"accel_momentum":-0.157024,"rvol_3bar":[0.179776,1.050583,0.407161],"trend_3bar":"MIXED","projected_rvol":0.203118},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":982.0,"sell_vol":35268.0,"unclassified_vol":0.0,"imbalance":-0.945821,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":0.495102},"context":{"vwap":9.975579,"price_vs_vwap_pct":-0.015826,"ema9":9.981436,"ema20":9.98617,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.756219,"dist_to_hod_atr":2.294843,"atr":0.033118,"spread_atr":0.301953,"own_change_pct":0.401808,"rel_strength_pct":{"SPY":0.370145,"IWM":0.270312}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.385102},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"21888e32eefd","ts":"2026-09-15T14:20:40+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.8758,"target":10.015,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":2.46},"price":9.995,"vwap":9.9756,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":1.26,"trend":"flat","recent_slope_pct":0.0503,"volatility":"medium"},"price":9.995,"volume":{"bars":50,"last_bar_volume":127974.0,"baseline_avg":314307.75,"bar_rvol":0.407161,"raw_accel":-0.601147,"smooth_accel":-0.245269,"accel_momentum":-0.157024,"rvol_3bar":[0.179776,1.050583,0.407161],"trend_3bar":"MIXED","projected_rvol":0.18975},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":962.0,"sell_vol":32774.0,"unclassified_vol":0.0,"imbalance":-0.942969,"bid":9.99,"ask":10.0,"spread_pct":0.10005,"quote_size_imbalance":null,"quote_age_s":1.189094},"context":{"vwap":9.975579,"price_vs_vwap_pct":0.194688,"ema9":9.981436,"ema20":9.98617,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.547264,"dist_to_hod_atr":1.660742,"atr":0.033118,"spread_atr":0.301953,"own_change_pct":0.401808,"rel_strength_pct":{"SPY":0.370145,"IWM":0.270312}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.383941},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7476c9c65b11","ts":"2026-09-15T14:21:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.80% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.04,"target":8.42,"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.94},"price":8.42,"vwap":7.9116,"ext_from_open_pct":9.92,"max_ext_allowed_pct":4.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":-0.006,"volatility":"high"},"price":8.42,"volume":{"bars":51,"last_bar_volume":1392.0,"baseline_avg":4602.5,"bar_rvol":0.302444,"raw_accel":-0.595701,"smooth_accel":-0.695337,"accel_momentum":0.023843,"rvol_3bar":[0.605064,0.733435,0.302444],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":171.0,"sell_vol":89.0,"unclassified_vol":0.0,"imbalance":0.315385,"bid":8.27,"ask":8.42,"spread_pct":1.797484,"quote_size_imbalance":null,"quote_age_s":6.953397},"context":{"vwap":7.911495,"price_vs_vwap_pct":6.427413,"ema9":8.291566,"ema20":8.179992,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-0.236967,"dist_to_hod_atr":0.162011,"atr":0.123448,"spread_atr":1.215083,"own_change_pct":1.274272,"rel_strength_pct":{"SPY":1.24591,"IWM":1.246239}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.095386},"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":"43fc686ce585","ts":"2026-09-15T14:21:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.80% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.04,"target":8.345,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":123.1,"room_to_5d_high_atr":-0.84},"price":8.345,"vwap":7.9117,"ext_from_open_pct":8.94,"max_ext_allowed_pct":4.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":-0.1853,"volatility":"high"},"price":8.345,"volume":{"bars":51,"last_bar_volume":1392.0,"baseline_avg":4602.5,"bar_rvol":0.302444,"raw_accel":-0.595701,"smooth_accel":-0.695337,"accel_momentum":0.023843,"rvol_3bar":[0.605064,0.733435,0.302444],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":171.0,"sell_vol":149.0,"unclassified_vol":0.0,"imbalance":0.06875,"bid":8.27,"ask":8.42,"spread_pct":1.797484,"quote_size_imbalance":null,"quote_age_s":11.953397},"context":{"vwap":7.911495,"price_vs_vwap_pct":5.479426,"ema9":8.291566,"ema20":8.179992,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-1.125592,"dist_to_hod_atr":0.769552,"atr":0.123448,"spread_atr":1.215083,"own_change_pct":1.274272,"rel_strength_pct":{"SPY":1.24591,"IWM":1.246239}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.020793},"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":"69c5b4c701f0","ts":"2026-09-15T14:21:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1645.0s, plan says PASS; stop 10.08, target 10.20 (prev_day_high), R:R 1.67; target 0.08 away > ~0.08 reachable in 334 min","plan":{"state":"PASS","setup":"","stop":10.0774,"target":10.2,"target_label":"prev_day_high","reward_risk":1.67,"pos_in_5d_range_pct":12.2,"room_to_5d_high_atr":4.04},"price":10.1233,"vwap":10.0994,"ext_from_open_pct":0.33,"max_ext_allowed_pct":4.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0065,"volatility":"low"},"price":10.1233,"volume":{"bars":51,"last_bar_volume":15786.0,"baseline_avg":33892.15,"bar_rvol":0.465772,"raw_accel":0.527875,"smooth_accel":-0.546559,"accel_momentum":-0.229049,"rvol_3bar":[0.493125,0.302755,0.465772],"trend_3bar":"MIXED","projected_rvol":9.293391},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":102833.0,"sell_vol":4346.0,"unclassified_vol":0.0,"imbalance":0.918902,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":0.182993},"context":{"vwap":10.098446,"price_vs_vwap_pct":0.246113,"ema9":10.121062,"ema20":10.115849,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.06614,"dist_to_hod_atr":0.448017,"atr":0.014955,"spread_atr":0.668683,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.028361,"IWM":-0.028033}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.427998},"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":"66c043557d42","ts":"2026-09-15T14:21:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1650.0s, plan says WATCH; stop 10.08, target 10.20 (prev_day_high), R:R 1.67; R:R 1.67 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 80625 sh","plan":{"state":"WATCH","setup":"","stop":10.0776,"target":10.2,"target_label":"prev_day_high","reward_risk":1.67,"pos_in_5d_range_pct":12.2,"room_to_5d_high_atr":4.04},"price":10.1235,"vwap":10.0994,"ext_from_open_pct":0.33,"max_ext_allowed_pct":4.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.0069,"volatility":"low"},"price":10.1235,"volume":{"bars":51,"last_bar_volume":15786.0,"baseline_avg":33892.15,"bar_rvol":0.465772,"raw_accel":0.527875,"smooth_accel":-0.546559,"accel_momentum":-0.229049,"rvol_3bar":[0.493125,0.302755,0.465772],"trend_3bar":"MIXED","projected_rvol":7.52684},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":102488.0,"sell_vol":4644.0,"unclassified_vol":0.0,"imbalance":0.913303,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":0.264505},"context":{"vwap":10.098446,"price_vs_vwap_pct":0.248094,"ema9":10.121062,"ema20":10.115849,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.064166,"dist_to_hod_atr":0.434644,"atr":0.014955,"spread_atr":0.668683,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.028361,"IWM":-0.028033}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.425391},"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":"a3710cc2da82","ts":"2026-09-15T14:21:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.80% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.04,"target":8.414,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":125.6,"room_to_5d_high_atr":-0.93},"price":8.414,"vwap":7.912,"ext_from_open_pct":9.84,"max_ext_allowed_pct":4.0,"volume_pace":0.587,"trend":"flat","recent_slope_pct":-0.0203,"volatility":"high"},"price":8.414,"volume":{"bars":51,"last_bar_volume":1392.0,"baseline_avg":4602.5,"bar_rvol":0.302444,"raw_accel":-0.595701,"smooth_accel":-0.695337,"accel_momentum":0.023843,"rvol_3bar":[0.605064,0.733435,0.302444],"trend_3bar":"MIXED","projected_rvol":0.136882},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":166.0,"sell_vol":149.0,"unclassified_vol":0.0,"imbalance":0.053968,"bid":8.27,"ask":8.42,"spread_pct":1.797484,"quote_size_imbalance":null,"quote_age_s":7.386428},"context":{"vwap":7.911495,"price_vs_vwap_pct":6.351574,"ema9":8.291566,"ema20":8.179992,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-0.308057,"dist_to_hod_atr":0.210614,"atr":0.123448,"spread_atr":1.215083,"own_change_pct":1.274272,"rel_strength_pct":{"SPY":1.24591,"IWM":1.246239}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.016322},"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":"e31ab171a696","ts":"2026-09-15T14:21:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.80% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.04,"target":8.345,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":123.1,"room_to_5d_high_atr":-0.84},"price":8.345,"vwap":7.912,"ext_from_open_pct":8.94,"max_ext_allowed_pct":4.0,"volume_pace":0.585,"trend":"flat","recent_slope_pct":-0.1853,"volatility":"high"},"price":8.345,"volume":{"bars":51,"last_bar_volume":1392.0,"baseline_avg":4602.5,"bar_rvol":0.302444,"raw_accel":-0.595701,"smooth_accel":-0.695337,"accel_momentum":0.023843,"rvol_3bar":[0.605064,0.733435,0.302444],"trend_3bar":"MIXED","projected_rvol":0.105921},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":126.0,"sell_vol":97.0,"unclassified_vol":0.0,"imbalance":0.130045,"bid":8.27,"ask":8.42,"spread_pct":1.797484,"quote_size_imbalance":null,"quote_age_s":17.386428},"context":{"vwap":7.911495,"price_vs_vwap_pct":5.479426,"ema9":8.291566,"ema20":8.179992,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-1.125592,"dist_to_hod_atr":0.769552,"atr":0.123448,"spread_atr":1.215083,"own_change_pct":1.274272,"rel_strength_pct":{"SPY":1.24591,"IWM":1.246239}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.039331},"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":"93d0fb16bf54","ts":"2026-09-15T14:21:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1665.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.74; target 0.08 away > ~0.08 reachable in 333 min","plan":{"state":"PASS","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.0995,"ext_from_open_pct":0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":10.12,"volume":{"bars":51,"last_bar_volume":15786.0,"baseline_avg":33892.15,"bar_rvol":0.465772,"raw_accel":0.527875,"smooth_accel":-0.546559,"accel_momentum":-0.229049,"rvol_3bar":[0.493125,0.302755,0.465772],"trend_3bar":"MIXED","projected_rvol":5.587223},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":18704.0,"sell_vol":4878.0,"unclassified_vol":0.0,"imbalance":0.586295,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":0.097738},"context":{"vwap":10.098446,"price_vs_vwap_pct":0.213435,"ema9":10.121062,"ema20":10.115849,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.668683,"atr":0.014955,"spread_atr":0.668683,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.028361,"IWM":-0.028033}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.273079},"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":"1f943beec25c","ts":"2026-09-15T14:21:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1680.0s, plan says WATCH; stop 10.08, target 10.20 (prev_day_high), R:R 1.63; R:R 1.63 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 80625 sh","plan":{"state":"WATCH","setup":"","stop":10.0791,"target":10.2,"target_label":"prev_day_high","reward_risk":1.63,"pos_in_5d_range_pct":12.4,"room_to_5d_high_atr":4.03},"price":10.125,"vwap":10.0996,"ext_from_open_pct":0.35,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0099,"volatility":"low"},"price":10.125,"volume":{"bars":51,"last_bar_volume":15786.0,"baseline_avg":33892.15,"bar_rvol":0.465772,"raw_accel":0.527875,"smooth_accel":-0.546559,"accel_momentum":-0.229049,"rvol_3bar":[0.493125,0.302755,0.465772],"trend_3bar":"MIXED","projected_rvol":4.144548},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":18368.0,"sell_vol":4102.0,"unclassified_vol":0.0,"imbalance":0.634891,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":0.351294},"context":{"vwap":10.098446,"price_vs_vwap_pct":0.262948,"ema9":10.121062,"ema20":10.115849,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.049358,"dist_to_hod_atr":0.334341,"atr":0.014955,"spread_atr":0.668683,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.028361,"IWM":-0.028033}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.295714},"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":"bb0acaf3857b","ts":"2026-09-15T14:22:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1685.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.74; target 0.08 away > ~0.08 reachable in 333 min","plan":{"state":"PASS","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.0996,"ext_from_open_pct":0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":10.12,"volume":{"bars":51,"last_bar_volume":15786.0,"baseline_avg":33892.15,"bar_rvol":0.465772,"raw_accel":0.527875,"smooth_accel":-0.546559,"accel_momentum":-0.229049,"rvol_3bar":[0.493125,0.302755,0.465772],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":17568.0,"sell_vol":4758.0,"unclassified_vol":0.0,"imbalance":0.57377,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":0.084624},"context":{"vwap":10.098446,"price_vs_vwap_pct":0.213435,"ema9":10.121062,"ema20":10.115849,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.668683,"atr":0.014955,"spread_atr":0.668683,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.048813,"IWM":0.007011}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.267246},"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":"c7a171af7202","ts":"2026-09-15T14:22:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6521,"target":7.81,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":0.75},"price":7.74,"vwap":7.7447,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":-0.0658,"volatility":"medium"},"price":7.74,"volume":{"bars":52,"last_bar_volume":4166.0,"baseline_avg":15456.7,"bar_rvol":0.269527,"raw_accel":0.078109,"smooth_accel":-0.769081,"accel_momentum":-0.058696,"rvol_3bar":[1.166955,0.086485,0.269527],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":781.0,"sell_vol":2509.0,"unclassified_vol":0.0,"imbalance":-0.525228,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":1.416506},"context":{"vwap":7.744671,"price_vs_vwap_pct":-0.060312,"ema9":7.752829,"ema20":7.753439,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.896287,"dist_to_hod_atr":2.606066,"atr":0.02686,"spread_atr":0.372295,"own_change_pct":-0.128949,"rel_strength_pct":{"SPY":-0.080136,"IWM":-0.121938}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.141563},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5a78a8836f28","ts":"2026-09-15T14:22:20+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.44% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.04,"target":8.3955,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.9,"room_to_5d_high_atr":-0.91},"price":8.3955,"vwap":7.9171,"ext_from_open_pct":9.6,"max_ext_allowed_pct":4.0,"volume_pace":0.584,"trend":"flat","recent_slope_pct":0.086,"volatility":"high"},"price":8.3955,"volume":{"bars":52,"last_bar_volume":3076.0,"baseline_avg":4223.55,"bar_rvol":0.728297,"raw_accel":1.20977,"smooth_accel":-0.601882,"accel_momentum":0.093455,"rvol_3bar":[0.733435,0.302444,0.728297],"trend_3bar":"MIXED","projected_rvol":0.37504},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":3149.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":0.936059,"bid":8.3,"ask":8.42,"spread_pct":1.435407,"quote_size_imbalance":null,"quote_age_s":2.580414},"context":{"vwap":7.916267,"price_vs_vwap_pct":6.053779,"ema9":8.306433,"ema20":8.197698,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-0.527251,"dist_to_hod_atr":0.361195,"atr":0.123202,"spread_atr":0.97401,"own_change_pct":-0.048984,"rel_strength_pct":{"SPY":-0.000172,"IWM":-0.041973}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.681729},"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":"1c69a42c6432","ts":"2026-09-15T14:22:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.44% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.04,"target":8.39,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.7,"room_to_5d_high_atr":-0.9},"price":8.39,"vwap":7.9173,"ext_from_open_pct":9.53,"max_ext_allowed_pct":4.0,"volume_pace":0.583,"trend":"flat","recent_slope_pct":0.0728,"volatility":"high"},"price":8.39,"volume":{"bars":52,"last_bar_volume":3076.0,"baseline_avg":4223.55,"bar_rvol":0.728297,"raw_accel":1.20977,"smooth_accel":-0.601882,"accel_momentum":0.093455,"rvol_3bar":[0.733435,0.302444,0.728297],"trend_3bar":"MIXED","projected_rvol":0.368221},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":2064.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":0.904059,"bid":8.3,"ask":8.42,"spread_pct":1.435407,"quote_size_imbalance":null,"quote_age_s":7.580414},"context":{"vwap":7.916267,"price_vs_vwap_pct":5.984302,"ema9":8.306433,"ema20":8.197698,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-0.592417,"dist_to_hod_atr":0.405837,"atr":0.123202,"spread_atr":0.97401,"own_change_pct":-0.048984,"rel_strength_pct":{"SPY":-0.000172,"IWM":-0.041973}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.658424},"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":"acd0bf98d52b","ts":"2026-09-15T14:22:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.6694,"target":7.81,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":54.6,"room_to_5d_high_atr":0.7},"price":7.7573,"vwap":7.7447,"ext_from_open_pct":0.74,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":-0.0211,"volatility":"medium"},"price":7.7573,"volume":{"bars":52,"last_bar_volume":4166.0,"baseline_avg":15456.7,"bar_rvol":0.269527,"raw_accel":0.078109,"smooth_accel":-0.769081,"accel_momentum":-0.058696,"rvol_3bar":[1.166955,0.086485,0.269527],"trend_3bar":"MIXED","projected_rvol":0.849008},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":546.0,"sell_vol":6978.0,"unclassified_vol":0.0,"imbalance":-0.854864,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":1.491383},"context":{"vwap":7.744671,"price_vs_vwap_pct":0.163068,"ema9":7.752829,"ema20":7.753439,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.674776,"dist_to_hod_atr":1.961995,"atr":0.02686,"spread_atr":0.372295,"own_change_pct":-0.128949,"rel_strength_pct":{"SPY":-0.080136,"IWM":-0.121938}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.230409},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"69f205b3444d","ts":"2026-09-15T14:22:40+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.1889,"target":5.43,"target_label":"prev_day_high","reward_risk":2.95,"pos_in_5d_range_pct":2.6,"room_to_5d_high_atr":1.95},"price":5.25,"vwap":5.2541,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":3.0,"volume_pace":1.411,"trend":"flat","recent_slope_pct":-0.038,"volatility":"medium"},"price":5.25,"volume":{"bars":52,"last_bar_volume":2578.0,"baseline_avg":4814.05,"bar_rvol":0.535516,"raw_accel":1.033123,"smooth_accel":-0.642228,"accel_momentum":-0.168591,"rvol_3bar":[1.528967,0.261387,0.535516],"trend_3bar":"MIXED","projected_rvol":0.068861},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":100.0,"sell_vol":21.0,"unclassified_vol":0.0,"imbalance":0.652893,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.254946},"context":{"vwap":5.254071,"price_vs_vwap_pct":-0.077478,"ema9":5.24679,"ema20":5.234763,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.867715,"dist_to_hod_atr":6.807404,"atr":0.022769,"spread_atr":0.439187,"own_change_pct":0.190658,"rel_strength_pct":{"SPY":0.23947,"IWM":0.197669}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.349634},"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":"b7e13fc212e6","ts":"2026-09-15T14:22:45+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6538,"target":7.81,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":51.7,"room_to_5d_high_atr":0.75},"price":7.7417,"vwap":7.7447,"ext_from_open_pct":0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":-0.0614,"volatility":"medium"},"price":7.7417,"volume":{"bars":52,"last_bar_volume":4166.0,"baseline_avg":15456.7,"bar_rvol":0.269527,"raw_accel":0.078109,"smooth_accel":-0.769081,"accel_momentum":-0.058696,"rvol_3bar":[1.166955,0.086485,0.269527],"trend_3bar":"MIXED","projected_rvol":0.662582},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":127.0,"sell_vol":32.0,"unclassified_vol":0.0,"imbalance":0.597484,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":1.253443},"context":{"vwap":7.744671,"price_vs_vwap_pct":-0.038361,"ema9":7.752829,"ema20":7.753439,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.87452,"dist_to_hod_atr":2.542775,"atr":0.02686,"spread_atr":0.372295,"own_change_pct":-0.128949,"rel_strength_pct":{"SPY":-0.080136,"IWM":-0.121938}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.161038},"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":"6c1d6c9f5530","ts":"2026-09-15T14:22:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.0% above open $7.66 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.04,"target":8.4287,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.1,"room_to_5d_high_atr":-0.95},"price":8.4287,"vwap":7.9174,"ext_from_open_pct":10.04,"max_ext_allowed_pct":3.0,"volume_pace":0.579,"trend":"flat","recent_slope_pct":0.1652,"volatility":"high"},"price":8.4287,"volume":{"bars":52,"last_bar_volume":3076.0,"baseline_avg":4223.55,"bar_rvol":0.728297,"raw_accel":1.20977,"smooth_accel":-0.601882,"accel_momentum":0.093455,"rvol_3bar":[0.733435,0.302444,0.728297],"trend_3bar":"MIXED","projected_rvol":0.195759},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":131.0,"sell_vol":30.0,"unclassified_vol":0.0,"imbalance":0.627329,"bid":8.39,"ask":8.43,"spread_pct":0.475624,"quote_size_imbalance":null,"quote_age_s":4.609753},"context":{"vwap":7.916267,"price_vs_vwap_pct":6.473169,"ema9":8.306433,"ema20":8.197698,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-0.133886,"dist_to_hod_atr":0.091719,"atr":0.123202,"spread_atr":0.32467,"own_change_pct":-0.048984,"rel_strength_pct":{"SPY":-0.000172,"IWM":-0.041973}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.456882},"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":"a903192a6b02","ts":"2026-09-15T14:22:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.6694,"target":7.81,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":54.6,"room_to_5d_high_atr":0.7},"price":7.7573,"vwap":7.7447,"ext_from_open_pct":0.74,"max_ext_allowed_pct":3.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.0211,"volatility":"medium"},"price":7.7573,"volume":{"bars":52,"last_bar_volume":4166.0,"baseline_avg":15456.7,"bar_rvol":0.269527,"raw_accel":0.078109,"smooth_accel":-0.769081,"accel_momentum":-0.058696,"rvol_3bar":[1.166955,0.086485,0.269527],"trend_3bar":"MIXED","projected_rvol":0.611851},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":227.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.388379,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":0.036289},"context":{"vwap":7.744671,"price_vs_vwap_pct":0.163068,"ema9":7.752829,"ema20":7.753439,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.674776,"dist_to_hod_atr":1.961995,"atr":0.02686,"spread_atr":0.372295,"own_change_pct":-0.128949,"rel_strength_pct":{"SPY":-0.080136,"IWM":-0.121938}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.104679},"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":"4d3124bc7154","ts":"2026-09-15T14:22:55+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.73 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6431,"target":7.81,"target_label":"ceiling","reward_risk":0.9,"pos_in_5d_range_pct":49.7,"room_to_5d_high_atr":0.78},"price":7.731,"vwap":7.7446,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":-0.089,"volatility":"medium"},"price":7.731,"volume":{"bars":52,"last_bar_volume":4166.0,"baseline_avg":15456.7,"bar_rvol":0.269527,"raw_accel":0.078109,"smooth_accel":-0.769081,"accel_momentum":-0.058696,"rvol_3bar":[1.166955,0.086485,0.269527],"trend_3bar":"MIXED","projected_rvol":0.563286},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":227.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":0.063232,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":0.016034},"context":{"vwap":7.744671,"price_vs_vwap_pct":-0.17652,"ema9":7.752829,"ema20":7.753439,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.011524,"dist_to_hod_atr":2.941131,"atr":0.02686,"spread_atr":0.372295,"own_change_pct":-0.128949,"rel_strength_pct":{"SPY":-0.080136,"IWM":-0.121938}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.017043},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"922f4fc78816","ts":"2026-09-15T14:22:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1740.0s, plan says WATCH; stop 10.08, target 10.20 (prev_day_high), R:R 1.53; R:R 1.53 < 2.0 at 10.13; breakout: 1-min close > 10.14 on >= 82818 sh","plan":{"state":"WATCH","setup":"","stop":10.0841,"target":10.2,"target_label":"prev_day_high","reward_risk":1.53,"pos_in_5d_range_pct":13.0,"room_to_5d_high_atr":4.0},"price":10.13,"vwap":10.1,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.0099,"volatility":"low"},"price":10.13,"volume":{"bars":52,"last_bar_volume":129770.0,"baseline_avg":33329.65,"bar_rvol":3.89353,"raw_accel":7.220575,"smooth_accel":0.638408,"accel_momentum":1.184968,"rvol_3bar":[0.302755,0.465772,3.89353],"trend_3bar":"ACCELERATING","projected_rvol":1.561984},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":21423.0,"sell_vol":18736.0,"unclassified_vol":0.0,"imbalance":0.066909,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":2.87712},"context":{"vwap":10.099571,"price_vs_vwap_pct":0.301287,"ema9":10.12085,"ema20":10.116244,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.014601,"spread_atr":0.684891,"own_change_pct":-0.013832,"rel_strength_pct":{"SPY":0.034981,"IWM":-0.006821}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.260512},"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":"93827528b892","ts":"2026-09-15T14:23:15+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9757,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.212,"trend":"flat","recent_slope_pct":-0.0454,"volatility":"medium"},"price":9.975,"volume":{"bars":53,"last_bar_volume":125232.0,"baseline_avg":257723.65,"bar_rvol":0.485916,"raw_accel":0.943663,"smooth_accel":-0.592767,"accel_momentum":0.023156,"rvol_3bar":[0.155909,0.133874,0.485916],"trend_3bar":"MIXED","projected_rvol":0.787976},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":52512.0,"sell_vol":44368.0,"unclassified_vol":0.0,"imbalance":0.084063,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.976403},"context":{"vwap":9.97571,"price_vs_vwap_pct":-0.007117,"ema9":9.984579,"ema20":9.986654,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.386832,"atr":0.031422,"spread_atr":0.318244,"own_change_pct":0.147368,"rel_strength_pct":{"SPY":0.251554,"IWM":0.271694}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.040847},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0c0a00f1a19c","ts":"2026-09-15T14:23:20+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.8588,"target":10.015,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":2.5},"price":9.978,"vwap":9.9757,"ext_from_open_pct":1.51,"max_ext_allowed_pct":3.0,"volume_pace":1.21,"trend":"flat","recent_slope_pct":-0.0393,"volatility":"medium"},"price":9.978,"volume":{"bars":53,"last_bar_volume":125232.0,"baseline_avg":257723.65,"bar_rvol":0.485916,"raw_accel":0.943663,"smooth_accel":-0.592767,"accel_momentum":0.023156,"rvol_3bar":[0.155909,0.133874,0.485916],"trend_3bar":"MIXED","projected_rvol":0.695769},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":52085.0,"sell_vol":52592.0,"unclassified_vol":0.0,"imbalance":-0.004843,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.029833},"context":{"vwap":9.97571,"price_vs_vwap_pct":0.022956,"ema9":9.984579,"ema20":9.986654,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.716418,"dist_to_hod_atr":2.291359,"atr":0.031422,"spread_atr":0.318244,"own_change_pct":0.147368,"rel_strength_pct":{"SPY":0.251554,"IWM":0.271694}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.002354},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"00072b587c1c","ts":"2026-09-15T14:23:30+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9757,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.209,"trend":"flat","recent_slope_pct":-0.0454,"volatility":"medium"},"price":9.975,"volume":{"bars":53,"last_bar_volume":125232.0,"baseline_avg":257723.65,"bar_rvol":0.485916,"raw_accel":0.943663,"smooth_accel":-0.592767,"accel_momentum":0.023156,"rvol_3bar":[0.155909,0.133874,0.485916],"trend_3bar":"MIXED","projected_rvol":0.827569},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":8036.0,"sell_vol":98606.0,"unclassified_vol":0.0,"imbalance":-0.84929,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.004613},"context":{"vwap":9.97571,"price_vs_vwap_pct":-0.007117,"ema9":9.984579,"ema20":9.986654,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.386832,"atr":0.031422,"spread_atr":0.318244,"own_change_pct":0.147368,"rel_strength_pct":{"SPY":0.251554,"IWM":0.271694}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.412684},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6ca8bdfc9474","ts":"2026-09-15T14:23:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.65% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.04,"target":8.39,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":124.7,"room_to_5d_high_atr":-0.9},"price":8.39,"vwap":7.9568,"ext_from_open_pct":9.53,"max_ext_allowed_pct":4.0,"volume_pace":0.616,"trend":"flat","recent_slope_pct":0.2074,"volatility":"high"},"price":8.39,"volume":{"bars":53,"last_bar_volume":689.0,"baseline_avg":4307.3,"bar_rvol":0.159961,"raw_accel":-0.776008,"smooth_accel":-0.501884,"accel_momentum":0.099999,"rvol_3bar":[0.302444,0.728297,0.159961],"trend_3bar":"MIXED","projected_rvol":8.269101},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":22297.0,"sell_vol":873.0,"unclassified_vol":0.0,"imbalance":0.924644,"bid":8.39,"ask":8.53,"spread_pct":1.654846,"quote_size_imbalance":null,"quote_age_s":0.6184},"context":{"vwap":7.917394,"price_vs_vwap_pct":5.969215,"ema9":8.330886,"ema20":8.219698,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":-0.592417,"dist_to_hod_atr":0.409278,"atr":0.122166,"spread_atr":1.14598,"own_change_pct":0.222354,"rel_strength_pct":{"SPY":0.32654,"IWM":0.34668}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.147907},"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":"63ba9fcbf053","ts":"2026-09-15T14:23:40+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1889,"target":5.43,"target_label":"prev_day_high","reward_risk":2.19,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":1.87},"price":5.2645,"vwap":5.2541,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":4.0,"volume_pace":1.387,"trend":"flat","recent_slope_pct":-0.0209,"volatility":"medium"},"price":5.2645,"volume":{"bars":53,"last_bar_volume":253.0,"baseline_avg":4856.45,"bar_rvol":0.052096,"raw_accel":-0.901862,"smooth_accel":-0.887769,"accel_momentum":-0.245542,"rvol_3bar":[0.261387,0.535516,0.052096],"trend_3bar":"MIXED","projected_rvol":0.100382},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":203.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.897196,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":1.237017},"context":{"vwap":5.254073,"price_vs_vwap_pct":0.198464,"ema9":5.248432,"ema20":5.236691,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.599445,"dist_to_hod_atr":6.373921,"atr":0.022043,"spread_atr":0.45366,"own_change_pct":-0.189934,"rel_strength_pct":{"SPY":-0.085748,"IWM":-0.065608}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.04674},"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":"f957247b7d19","ts":"2026-09-15T14:23:45+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.54% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.04,"target":8.46,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":127.2,"room_to_5d_high_atr":-0.99},"price":8.46,"vwap":7.9587,"ext_from_open_pct":10.44,"max_ext_allowed_pct":3.0,"volume_pace":0.616,"trend":"flat","recent_slope_pct":0.3739,"volatility":"high"},"price":8.46,"volume":{"bars":53,"last_bar_volume":689.0,"baseline_avg":4307.3,"bar_rvol":0.159961,"raw_accel":-0.776008,"smooth_accel":-0.501884,"accel_momentum":0.099999,"rvol_3bar":[0.302444,0.728297,0.159961],"trend_3bar":"MIXED","projected_rvol":7.369814},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":22299.0,"sell_vol":933.0,"unclassified_vol":0.0,"imbalance":0.91968,"bid":8.4,"ask":8.53,"spread_pct":1.535735,"quote_size_imbalance":null,"quote_age_s":0.711156},"context":{"vwap":7.917394,"price_vs_vwap_pct":6.853344,"ema9":8.330886,"ema20":8.219698,"ema_stack":true,"ema_warm":true,"hod":8.44,"dist_to_hod_pct":0.236967,"dist_to_hod_atr":-0.163711,"atr":0.122166,"spread_atr":1.064124,"own_change_pct":0.222354,"rel_strength_pct":{"SPY":0.32654,"IWM":0.34668}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.147113},"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":"83df22fe1669","ts":"2026-09-15T14:23:50+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.8603,"target":10.015,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.5},"price":9.9795,"vwap":9.9757,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":1.203,"trend":"flat","recent_slope_pct":-0.0363,"volatility":"medium"},"price":9.9795,"volume":{"bars":53,"last_bar_volume":125232.0,"baseline_avg":257723.65,"bar_rvol":0.485916,"raw_accel":0.943663,"smooth_accel":-0.592767,"accel_momentum":0.023156,"rvol_3bar":[0.155909,0.133874,0.485916],"trend_3bar":"MIXED","projected_rvol":0.592039},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":864.0,"sell_vol":66516.0,"unclassified_vol":0.0,"imbalance":-0.974354,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.064412},"context":{"vwap":9.97571,"price_vs_vwap_pct":0.037992,"ema9":9.984579,"ema20":9.986654,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.701493,"dist_to_hod_atr":2.243622,"atr":0.031422,"spread_atr":0.318244,"own_change_pct":0.147368,"rel_strength_pct":{"SPY":0.251554,"IWM":0.271694}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.473454},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"765875a7852e","ts":"2026-09-15T14:24:05+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.44","plan":{"state":"PASS","setup":"","stop":6.1284,"target":7.07,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.4299,"vwap":6.4381,"ext_from_open_pct":1.5,"max_ext_allowed_pct":4.0,"volume_pace":4.979,"trend":"flat","recent_slope_pct":-1.0991,"volatility":"high"},"price":6.4299,"volume":{"bars":54,"last_bar_volume":95788.0,"baseline_avg":93998.95,"bar_rvol":1.019033,"raw_accel":0.00161,"smooth_accel":-0.452973,"accel_momentum":0.06827,"rvol_3bar":[1.102875,1.014184,1.019033],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":321,"trade_rate":10.7,"buy_vol":12687.0,"sell_vol":31213.0,"unclassified_vol":0.0,"imbalance":-0.422005,"bid":6.42,"ask":6.43,"spread_pct":0.155642,"quote_size_imbalance":null,"quote_age_s":0.834957},"context":{"vwap":6.438088,"price_vs_vwap_pct":-0.127184,"ema9":6.588098,"ema20":6.521445,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.542151,"dist_to_hod_atr":3.131323,"atr":0.143741,"spread_atr":0.06957,"own_change_pct":-3.437967,"rel_strength_pct":{"SPY":-3.300806,"IWM":-3.315388}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.430036},"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":"706716fe5d54","ts":"2026-09-15T14:24:10+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1411,"target":7.07,"target_label":"premarket_high","reward_risk":2.08,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.65},"price":6.4426,"vwap":6.4382,"ext_from_open_pct":1.7,"max_ext_allowed_pct":4.0,"volume_pace":5.027,"trend":"flat","recent_slope_pct":-1.0599,"volatility":"high"},"price":6.4426,"volume":{"bars":54,"last_bar_volume":95788.0,"baseline_avg":93998.95,"bar_rvol":1.019033,"raw_accel":0.00161,"smooth_accel":-0.452973,"accel_momentum":0.06827,"rvol_3bar":[1.102875,1.014184,1.019033],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":480,"trade_rate":16.0,"buy_vol":30851.0,"sell_vol":45565.0,"unclassified_vol":0.0,"imbalance":-0.192551,"bid":6.44,"ask":6.49,"spread_pct":0.773395,"quote_size_imbalance":null,"quote_age_s":3.289403},"context":{"vwap":6.438088,"price_vs_vwap_pct":0.070079,"ema9":6.588098,"ema20":6.521445,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.357558,"dist_to_hod_atr":3.04297,"atr":0.143741,"spread_atr":0.347848,"own_change_pct":-3.437967,"rel_strength_pct":{"SPY":-3.300806,"IWM":-3.315388}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.196216},"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":"3225944268d7","ts":"2026-09-15T14:24:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":6.1585,"target":7.07,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.46,"vwap":6.4383,"ext_from_open_pct":1.97,"max_ext_allowed_pct":4.0,"volume_pace":5.025,"trend":"flat","recent_slope_pct":-1.0063,"volatility":"high"},"price":6.46,"volume":{"bars":54,"last_bar_volume":95788.0,"baseline_avg":93998.95,"bar_rvol":1.019033,"raw_accel":0.00161,"smooth_accel":-0.452973,"accel_momentum":0.06827,"rvol_3bar":[1.102875,1.014184,1.019033],"trend_3bar":"MIXED","projected_rvol":2.488155},"flow":{"window_s":30,"trades":485,"trade_rate":16.166667,"buy_vol":28002.0,"sell_vol":45574.0,"unclassified_vol":0.0,"imbalance":-0.238828,"bid":6.45,"ask":6.48,"spread_pct":0.464037,"quote_size_imbalance":null,"quote_age_s":0.129574},"context":{"vwap":6.438088,"price_vs_vwap_pct":0.340346,"ema9":6.588098,"ema20":6.521445,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.104651,"dist_to_hod_atr":2.921919,"atr":0.143741,"spread_atr":0.208709,"own_change_pct":-3.437967,"rel_strength_pct":{"SPY":-3.300806,"IWM":-3.315388}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.243373},"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":"77d3abe31ebe","ts":"2026-09-15T14:24:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1485,"target":7.07,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.45,"vwap":6.4384,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":5.026,"trend":"flat","recent_slope_pct":-1.0371,"volatility":"high"},"price":6.45,"volume":{"bars":54,"last_bar_volume":95788.0,"baseline_avg":93998.95,"bar_rvol":1.019033,"raw_accel":0.00161,"smooth_accel":-0.452973,"accel_momentum":0.06827,"rvol_3bar":[1.102875,1.014184,1.019033],"trend_3bar":"MIXED","projected_rvol":1.379186},"flow":{"window_s":30,"trades":212,"trade_rate":7.066667,"buy_vol":22627.0,"sell_vol":9105.0,"unclassified_vol":0.0,"imbalance":0.426131,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":0.357886},"context":{"vwap":6.438088,"price_vs_vwap_pct":0.18502,"ema9":6.588098,"ema20":6.521445,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.25,"dist_to_hod_atr":2.991489,"atr":0.143741,"spread_atr":0.06957,"own_change_pct":-3.437967,"rel_strength_pct":{"SPY":-3.300806,"IWM":-3.315388}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.434242},"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":"90482510d957","ts":"2026-09-15T14:24:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":6.1585,"target":7.07,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.46,"vwap":6.4385,"ext_from_open_pct":1.97,"max_ext_allowed_pct":4.0,"volume_pace":5.023,"trend":"flat","recent_slope_pct":-1.0063,"volatility":"high"},"price":6.46,"volume":{"bars":54,"last_bar_volume":95788.0,"baseline_avg":93998.95,"bar_rvol":1.019033,"raw_accel":0.00161,"smooth_accel":-0.452973,"accel_momentum":0.06827,"rvol_3bar":[1.102875,1.014184,1.019033],"trend_3bar":"MIXED","projected_rvol":1.273007},"flow":{"window_s":30,"trades":216,"trade_rate":7.2,"buy_vol":22976.0,"sell_vol":8299.0,"unclassified_vol":0.0,"imbalance":0.469289,"bid":6.45,"ask":6.47,"spread_pct":0.309598,"quote_size_imbalance":null,"quote_age_s":0.768116},"context":{"vwap":6.438088,"price_vs_vwap_pct":0.340346,"ema9":6.588098,"ema20":6.521445,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.104651,"dist_to_hod_atr":2.921919,"atr":0.143741,"spread_atr":0.139139,"own_change_pct":-3.437967,"rel_strength_pct":{"SPY":-3.300806,"IWM":-3.315388}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.47822},"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":"c79a623710c2","ts":"2026-09-15T14:25:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2085,"target":7.07,"target_label":"premarket_high","reward_risk":1.86,"pos_in_5d_range_pct":48.7,"room_to_5d_high_atr":3.59},"price":6.51,"vwap":6.4395,"ext_from_open_pct":2.76,"max_ext_allowed_pct":4.0,"volume_pace":5.017,"trend":"flat","recent_slope_pct":-0.413,"volatility":"high"},"price":6.51,"volume":{"bars":55,"last_bar_volume":105187.0,"baseline_avg":95705.05,"bar_rvol":1.099075,"raw_accel":0.098123,"smooth_accel":-0.039917,"accel_momentum":0.413056,"rvol_3bar":[1.014184,1.019033,1.099075],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":206,"trade_rate":6.866667,"buy_vol":12092.0,"sell_vol":9237.0,"unclassified_vol":0.0,"imbalance":0.133855,"bid":6.5,"ask":6.53,"spread_pct":0.460476,"quote_size_imbalance":null,"quote_age_s":11.775964},"context":{"vwap":6.439428,"price_vs_vwap_pct":1.095934,"ema9":6.574479,"ema20":6.521307,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.377907,"dist_to_hod_atr":2.591899,"atr":0.142752,"spread_atr":0.210154,"own_change_pct":-4.537402,"rel_strength_pct":{"SPY":-4.464862,"IWM":-4.460359}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.147117},"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":"4dbbd786d07c","ts":"2026-09-15T14:25:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6621,"target":7.81,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":53.2,"room_to_5d_high_atr":0.73},"price":7.75,"vwap":7.7443,"ext_from_open_pct":0.65,"max_ext_allowed_pct":4.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":0.0258,"volatility":"medium"},"price":7.75,"volume":{"bars":55,"last_bar_volume":9895.0,"baseline_avg":14915.45,"bar_rvol":0.663406,"raw_accel":-0.231337,"smooth_accel":0.571373,"accel_momentum":0.439665,"rvol_3bar":[0.888669,0.871599,0.663406],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":9254.0,"sell_vol":532.0,"unclassified_vol":0.0,"imbalance":0.891273,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":1.212495},"context":{"vwap":7.744313,"price_vs_vwap_pct":0.073428,"ema9":7.742849,"ema20":7.747877,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.768246,"dist_to_hod_atr":2.257123,"atr":0.026583,"spread_atr":0.376187,"own_change_pct":-0.257898,"rel_strength_pct":{"SPY":-0.185359,"IWM":-0.180855}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.591276},"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":"12e245a23f6b","ts":"2026-09-15T14:25:10+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":6.1789,"target":7.07,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.4804,"vwap":6.4395,"ext_from_open_pct":2.3,"max_ext_allowed_pct":4.0,"volume_pace":5.012,"trend":"flat","recent_slope_pct":-0.5041,"volatility":"high"},"price":6.4804,"volume":{"bars":55,"last_bar_volume":105187.0,"baseline_avg":95705.05,"bar_rvol":1.099075,"raw_accel":0.098123,"smooth_accel":-0.039917,"accel_momentum":0.413056,"rvol_3bar":[1.014184,1.019033,1.099075],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":210,"trade_rate":7.0,"buy_vol":12069.0,"sell_vol":10201.0,"unclassified_vol":0.0,"imbalance":0.08388,"bid":6.48,"ask":6.52,"spread_pct":0.615385,"quote_size_imbalance":null,"quote_age_s":0.296575},"context":{"vwap":6.439428,"price_vs_vwap_pct":0.636266,"ema9":6.574479,"ema20":6.521307,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.80814,"dist_to_hod_atr":2.799251,"atr":0.142752,"spread_atr":0.280205,"own_change_pct":-4.537402,"rel_strength_pct":{"SPY":-4.464862,"IWM":-4.460359}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.09219},"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":"a494fc217502","ts":"2026-09-15T14:25:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.29,"target":8.52,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-1.07},"price":8.52,"vwap":7.9598,"ext_from_open_pct":11.23,"max_ext_allowed_pct":3.0,"volume_pace":0.602,"trend":"flat","recent_slope_pct":0.3905,"volatility":"high"},"price":8.52,"volume":{"bars":55,"last_bar_volume":1259.0,"baseline_avg":4955.8,"bar_rvol":0.254046,"raw_accel":-0.947384,"smooth_accel":2.270889,"accel_momentum":-0.273135,"rvol_3bar":[0.159961,6.178555,0.254046],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":176.0,"sell_vol":221.0,"unclassified_vol":0.0,"imbalance":-0.11335,"bid":8.45,"ask":8.54,"spread_pct":1.059447,"quote_size_imbalance":null,"quote_age_s":11.859357},"context":{"vwap":7.959838,"price_vs_vwap_pct":7.037352,"ema9":8.368967,"ema20":8.258891,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.234192,"dist_to_hod_atr":0.161076,"atr":0.124165,"spread_atr":0.724843,"own_change_pct":1.258238,"rel_strength_pct":{"SPY":1.330778,"IWM":1.335281}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.028796},"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":"e2274ba6868e","ts":"2026-09-15T14:25:25+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.42 below VWAP $6.44","plan":{"state":"PASS","setup":"","stop":6.1186,"target":7.07,"target_label":"premarket_high","reward_risk":2.16,"pos_in_5d_range_pct":47.6,"room_to_5d_high_atr":3.67},"price":6.4201,"vwap":6.4395,"ext_from_open_pct":1.34,"max_ext_allowed_pct":4.0,"volume_pace":5.009,"trend":"flat","recent_slope_pct":-0.6902,"volatility":"high"},"price":6.4201,"volume":{"bars":55,"last_bar_volume":105187.0,"baseline_avg":95705.05,"bar_rvol":1.099075,"raw_accel":0.098123,"smooth_accel":-0.039917,"accel_momentum":0.413056,"rvol_3bar":[1.014184,1.019033,1.099075],"trend_3bar":"ACCELERATING","projected_rvol":0.43125},"flow":{"window_s":30,"trades":213,"trade_rate":7.1,"buy_vol":5330.0,"sell_vol":15585.0,"unclassified_vol":0.0,"imbalance":-0.490318,"bid":6.42,"ask":6.45,"spread_pct":0.4662,"quote_size_imbalance":null,"quote_age_s":2.031863},"context":{"vwap":6.439428,"price_vs_vwap_pct":-0.300153,"ema9":6.574479,"ema20":6.521307,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.684593,"dist_to_hod_atr":3.22166,"atr":0.142752,"spread_atr":0.210154,"own_change_pct":-4.537402,"rel_strength_pct":{"SPY":-4.464862,"IWM":-4.460359}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.538896},"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":"5e682927c460","ts":"2026-09-15T14:25:25+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8611,"target":10.015,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.49},"price":9.9803,"vwap":9.976,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":1.2,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"medium"},"price":9.9803,"volume":{"bars":55,"last_bar_volume":492488.0,"baseline_avg":256325.7,"bar_rvol":1.921337,"raw_accel":2.091634,"smooth_accel":2.719066,"accel_momentum":3.068078,"rvol_3bar":[0.485916,0.621291,1.921337],"trend_3bar":"ACCELERATING","projected_rvol":0.324066},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":19191.0,"sell_vol":26601.0,"unclassified_vol":0.0,"imbalance":-0.161819,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.989038},"context":{"vwap":9.976002,"price_vs_vwap_pct":0.043085,"ema9":9.983731,"ema20":9.985878,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.693532,"dist_to_hod_atr":2.336652,"atr":0.029829,"spread_atr":0.335244,"own_change_pct":-0.150075,"rel_strength_pct":{"SPY":-0.077536,"IWM":-0.073032}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.310908},"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":"2633be6cbfae","ts":"2026-09-15T14:25:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6517,"target":7.81,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":51.3,"room_to_5d_high_atr":0.75},"price":7.7396,"vwap":7.7443,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":-0.001,"volatility":"medium"},"price":7.7396,"volume":{"bars":55,"last_bar_volume":9895.0,"baseline_avg":14915.45,"bar_rvol":0.663406,"raw_accel":-0.231337,"smooth_accel":0.571373,"accel_momentum":0.439665,"rvol_3bar":[0.888669,0.871599,0.663406],"trend_3bar":"DECELERATING","projected_rvol":2.65462},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":5056.0,"sell_vol":9298.0,"unclassified_vol":0.0,"imbalance":-0.295527,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":1.698461},"context":{"vwap":7.744313,"price_vs_vwap_pct":-0.060864,"ema9":7.742849,"ema20":7.747877,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.901408,"dist_to_hod_atr":2.648357,"atr":0.026583,"spread_atr":0.376187,"own_change_pct":-0.257898,"rel_strength_pct":{"SPY":-0.185359,"IWM":-0.180855}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.196055},"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":"0009ac6015f3","ts":"2026-09-15T14:25:40+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.665,"target":7.81,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":53.7,"room_to_5d_high_atr":0.72},"price":7.7529,"vwap":7.7444,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":0.0333,"volatility":"medium"},"price":7.7529,"volume":{"bars":55,"last_bar_volume":9895.0,"baseline_avg":14915.45,"bar_rvol":0.663406,"raw_accel":-0.231337,"smooth_accel":0.571373,"accel_momentum":0.439665,"rvol_3bar":[0.888669,0.871599,0.663406],"trend_3bar":"DECELERATING","projected_rvol":2.32933},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1992.0,"sell_vol":5448.0,"unclassified_vol":0.0,"imbalance":-0.464516,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":0.510236},"context":{"vwap":7.744313,"price_vs_vwap_pct":0.110875,"ema9":7.742849,"ema20":7.747877,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.731114,"dist_to_hod_atr":2.148028,"atr":0.026583,"spread_atr":0.376187,"own_change_pct":-0.257898,"rel_strength_pct":{"SPY":-0.185359,"IWM":-0.180855}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.308163},"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":"e2fc6afa515a","ts":"2026-09-15T14:25:45+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1385,"target":7.07,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.65},"price":6.44,"vwap":6.4396,"ext_from_open_pct":1.66,"max_ext_allowed_pct":4.0,"volume_pace":4.991,"trend":"flat","recent_slope_pct":-0.6287,"volatility":"high"},"price":6.44,"volume":{"bars":55,"last_bar_volume":105187.0,"baseline_avg":95705.05,"bar_rvol":1.099075,"raw_accel":0.098123,"smooth_accel":-0.039917,"accel_momentum":0.413056,"rvol_3bar":[1.014184,1.019033,1.099075],"trend_3bar":"ACCELERATING","projected_rvol":0.357181},"flow":{"window_s":30,"trades":168,"trade_rate":5.6,"buy_vol":6012.0,"sell_vol":10268.0,"unclassified_vol":0.0,"imbalance":-0.261425,"bid":6.43,"ask":6.45,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":1.059506},"context":{"vwap":6.439428,"price_vs_vwap_pct":0.008881,"ema9":6.574479,"ema20":6.521307,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.395349,"dist_to_hod_atr":3.082258,"atr":0.142752,"spread_atr":0.140103,"own_change_pct":-4.537402,"rel_strength_pct":{"SPY":-4.464862,"IWM":-4.460359}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.287326},"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":"a866290f42ff","ts":"2026-09-15T14:25:50+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.44","plan":{"state":"PASS","setup":"","stop":6.1335,"target":7.07,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":47.8,"room_to_5d_high_atr":3.65},"price":6.435,"vwap":6.4396,"ext_from_open_pct":1.58,"max_ext_allowed_pct":4.0,"volume_pace":4.984,"trend":"flat","recent_slope_pct":-0.6442,"volatility":"high"},"price":6.435,"volume":{"bars":55,"last_bar_volume":105187.0,"baseline_avg":95705.05,"bar_rvol":1.099075,"raw_accel":0.098123,"smooth_accel":-0.039917,"accel_momentum":0.413056,"rvol_3bar":[1.014184,1.019033,1.099075],"trend_3bar":"ACCELERATING","projected_rvol":0.327318},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":5773.0,"sell_vol":8198.0,"unclassified_vol":0.0,"imbalance":-0.173574,"bid":6.43,"ask":6.44,"spread_pct":0.1554,"quote_size_imbalance":null,"quote_age_s":2.134844},"context":{"vwap":6.439428,"price_vs_vwap_pct":-0.068766,"ema9":6.574479,"ema20":6.521307,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.468023,"dist_to_hod_atr":3.117283,"atr":0.142752,"spread_atr":0.070051,"own_change_pct":-4.537402,"rel_strength_pct":{"SPY":-4.464862,"IWM":-4.460359}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.190771},"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":"5103e650cca9","ts":"2026-09-15T14:26:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1485,"target":7.07,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.45,"vwap":6.4397,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":4.982,"trend":"flat","recent_slope_pct":-0.5979,"volatility":"high"},"price":6.45,"volume":{"bars":55,"last_bar_volume":105187.0,"baseline_avg":95705.05,"bar_rvol":1.099075,"raw_accel":0.098123,"smooth_accel":-0.039917,"accel_momentum":0.413056,"rvol_3bar":[1.014184,1.019033,1.099075],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":4421.0,"sell_vol":10399.0,"unclassified_vol":0.0,"imbalance":-0.403374,"bid":6.45,"ask":6.47,"spread_pct":0.309598,"quote_size_imbalance":null,"quote_age_s":1.559757},"context":{"vwap":6.439428,"price_vs_vwap_pct":0.164174,"ema9":6.574479,"ema20":6.521307,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.25,"dist_to_hod_atr":3.012207,"atr":0.142752,"spread_atr":0.140103,"own_change_pct":-4.537402,"rel_strength_pct":{"SPY":-4.44311,"IWM":-4.467339}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.443338},"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":"874da149bad3","ts":"2026-09-15T14:26:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6554,"target":7.81,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":0.74},"price":7.7433,"vwap":7.7444,"ext_from_open_pct":0.56,"max_ext_allowed_pct":3.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.0667,"volatility":"medium"},"price":7.7433,"volume":{"bars":56,"last_bar_volume":26676.0,"baseline_avg":14404.85,"bar_rvol":1.851876,"raw_accel":1.695907,"smooth_accel":1.590997,"accel_momentum":1.019624,"rvol_3bar":[0.871599,0.663406,1.851876],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1222.0,"sell_vol":2417.0,"unclassified_vol":0.0,"imbalance":-0.328387,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.476878},"context":{"vwap":7.74443,"price_vs_vwap_pct":-0.014588,"ema9":7.744279,"ema20":7.748079,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.854033,"dist_to_hod_atr":2.520563,"atr":0.026462,"spread_atr":0.377896,"own_change_pct":-0.097968,"rel_strength_pct":{"SPY":-0.003677,"IWM":-0.027906}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.608132},"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":"235af4e686c8","ts":"2026-09-15T14:26:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.1% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.29,"target":8.51,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":129.0,"room_to_5d_high_atr":-1.06},"price":8.51,"vwap":7.9646,"ext_from_open_pct":11.1,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.2926,"volatility":"high"},"price":8.51,"volume":{"bars":56,"last_bar_volume":2568.0,"baseline_avg":4955.2,"bar_rvol":0.518243,"raw_accel":1.039714,"smooth_accel":4.382005,"accel_momentum":2.111116,"rvol_3bar":[6.178555,0.254046,0.518243],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":583.0,"sell_vol":156.0,"unclassified_vol":0.0,"imbalance":0.577808,"bid":8.46,"ask":8.54,"spread_pct":0.941176,"quote_size_imbalance":null,"quote_age_s":1.348023},"context":{"vwap":7.964229,"price_vs_vwap_pct":6.852783,"ema9":8.396174,"ema20":8.28233,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.351288,"dist_to_hod_atr":0.246458,"atr":0.121724,"spread_atr":0.657222,"own_change_pct":1.917316,"rel_strength_pct":{"SPY":2.011607,"IWM":1.987378}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.299445},"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":"219c8eb91274","ts":"2026-09-15T14:26:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.665,"target":7.81,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":53.7,"room_to_5d_high_atr":0.72},"price":7.7529,"vwap":7.7444,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":0.0915,"volatility":"medium"},"price":7.7529,"volume":{"bars":56,"last_bar_volume":26676.0,"baseline_avg":14404.85,"bar_rvol":1.851876,"raw_accel":1.695907,"smooth_accel":1.590997,"accel_momentum":1.019624,"rvol_3bar":[0.871599,0.663406,1.851876],"trend_3bar":"MIXED","projected_rvol":0.020271},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1166.0,"sell_vol":2362.0,"unclassified_vol":0.0,"imbalance":-0.339002,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.222378},"context":{"vwap":7.74443,"price_vs_vwap_pct":0.109372,"ema9":7.744279,"ema20":7.748079,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.731114,"dist_to_hod_atr":2.157784,"atr":0.026462,"spread_atr":0.377896,"own_change_pct":-0.097968,"rel_strength_pct":{"SPY":-0.003677,"IWM":-0.027906}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.62779},"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":"027f9bff1cc5","ts":"2026-09-15T14:26:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.39 below VWAP $6.44","plan":{"state":"PASS","setup":"","stop":6.0885,"target":7.07,"target_label":"premarket_high","reward_risk":2.26,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":3.69},"price":6.39,"vwap":6.4395,"ext_from_open_pct":0.87,"max_ext_allowed_pct":4.0,"volume_pace":4.98,"trend":"flat","recent_slope_pct":-0.4482,"volatility":"high"},"price":6.39,"volume":{"bars":56,"last_bar_volume":35769.0,"baseline_avg":96535.15,"bar_rvol":0.370528,"raw_accel":-0.659948,"smooth_accel":-0.184066,"accel_momentum":-0.144149,"rvol_3bar":[1.019033,1.099075,0.370528],"trend_3bar":"MIXED","projected_rvol":0.608638},"flow":{"window_s":30,"trades":293,"trade_rate":9.766667,"buy_vol":6111.0,"sell_vol":23138.0,"unclassified_vol":0.0,"imbalance":-0.58214,"bid":6.37,"ask":6.41,"spread_pct":0.625978,"quote_size_imbalance":null,"quote_age_s":0.225432},"context":{"vwap":6.439667,"price_vs_vwap_pct":-0.771261,"ema9":6.549583,"ema20":6.514516,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-7.122093,"dist_to_hod_atr":3.472042,"atr":0.141127,"spread_atr":0.283432,"own_change_pct":-3.731343,"rel_strength_pct":{"SPY":-3.637052,"IWM":-3.661281}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.215699},"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":"d1d1f2fe84b9","ts":"2026-09-15T14:26:20+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.29% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.23,"target":8.45,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.98},"price":8.45,"vwap":7.9651,"ext_from_open_pct":10.31,"max_ext_allowed_pct":3.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":0.151,"volatility":"high"},"price":8.45,"volume":{"bars":56,"last_bar_volume":2568.0,"baseline_avg":4955.2,"bar_rvol":0.518243,"raw_accel":1.039714,"smooth_accel":4.382005,"accel_momentum":2.111116,"rvol_3bar":[6.178555,0.254046,0.518243],"trend_3bar":"MIXED","projected_rvol":0.314215},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":270.0,"sell_vol":249.0,"unclassified_vol":0.0,"imbalance":0.040462,"bid":8.44,"ask":8.55,"spread_pct":1.294879,"quote_size_imbalance":null,"quote_age_s":0.203904},"context":{"vwap":7.964229,"price_vs_vwap_pct":6.099414,"ema9":8.396174,"ema20":8.28233,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.053864,"dist_to_hod_atr":0.739375,"atr":0.121724,"spread_atr":0.903681,"own_change_pct":1.917316,"rel_strength_pct":{"SPY":2.011607,"IWM":1.987378}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.020969},"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":"cf32c6c3e8ee","ts":"2026-09-15T14:26:25+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6521,"target":7.81,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":0.75},"price":7.74,"vwap":7.7444,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":0.0582,"volatility":"medium"},"price":7.74,"volume":{"bars":56,"last_bar_volume":26676.0,"baseline_avg":14404.85,"bar_rvol":1.851876,"raw_accel":1.695907,"smooth_accel":1.590997,"accel_momentum":1.019624,"rvol_3bar":[0.871599,0.663406,1.851876],"trend_3bar":"MIXED","projected_rvol":0.470342},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":132.0,"sell_vol":2810.0,"unclassified_vol":0.0,"imbalance":-0.910265,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.007658},"context":{"vwap":7.74443,"price_vs_vwap_pct":-0.057199,"ema9":7.744279,"ema20":7.748079,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.896287,"dist_to_hod_atr":2.645269,"atr":0.026462,"spread_atr":0.377896,"own_change_pct":-0.097968,"rel_strength_pct":{"SPY":-0.003677,"IWM":-0.027906}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.685698},"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":"058ad17a139c","ts":"2026-09-15T14:26:35+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.29% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.29,"target":8.5365,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-1.09},"price":8.5365,"vwap":7.9652,"ext_from_open_pct":11.44,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.355,"volatility":"high"},"price":8.5365,"volume":{"bars":56,"last_bar_volume":2568.0,"baseline_avg":4955.2,"bar_rvol":0.518243,"raw_accel":1.039714,"smooth_accel":4.382005,"accel_momentum":2.111116,"rvol_3bar":[6.178555,0.254046,0.518243],"trend_3bar":"MIXED","projected_rvol":0.196849},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":320.0,"sell_vol":249.0,"unclassified_vol":0.0,"imbalance":0.12478,"bid":8.44,"ask":8.55,"spread_pct":1.294879,"quote_size_imbalance":null,"quote_age_s":15.203904},"context":{"vwap":7.964229,"price_vs_vwap_pct":7.185521,"ema9":8.396174,"ema20":8.28233,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.040984,"dist_to_hod_atr":0.028753,"atr":0.121724,"spread_atr":0.903681,"own_change_pct":1.917316,"rel_strength_pct":{"SPY":2.011607,"IWM":1.987378}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.064667},"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":"7d76c56e92a1","ts":"2026-09-15T14:26:40+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.8607,"target":10.015,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.5},"price":9.9799,"vwap":9.976,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":1.184,"trend":"flat","recent_slope_pct":-0.0397,"volatility":"medium"},"price":9.9799,"volume":{"bars":56,"last_bar_volume":145145.0,"baseline_avg":266022.75,"bar_rvol":0.545611,"raw_accel":-0.705282,"smooth_accel":2.865102,"accel_momentum":0.146036,"rvol_3bar":[0.621291,1.921337,0.545611],"trend_3bar":"MIXED","projected_rvol":0.480934},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":56597.0,"sell_vol":21302.0,"unclassified_vol":0.0,"imbalance":0.453087,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":1.115542},"context":{"vwap":9.975973,"price_vs_vwap_pct":0.039368,"ema9":9.979985,"ema20":9.983889,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.697512,"dist_to_hod_atr":2.3491,"atr":0.029841,"spread_atr":0.335107,"own_change_pct":-0.30015,"rel_strength_pct":{"SPY":-0.205858,"IWM":-0.230088}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.247209},"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":"8370ba13d9c6","ts":"2026-09-15T14:26:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.29% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.22,"target":8.44,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.97},"price":8.44,"vwap":7.9668,"ext_from_open_pct":10.18,"max_ext_allowed_pct":3.0,"volume_pace":0.594,"trend":"flat","recent_slope_pct":0.1274,"volatility":"high"},"price":8.44,"volume":{"bars":56,"last_bar_volume":2568.0,"baseline_avg":4955.2,"bar_rvol":0.518243,"raw_accel":1.039714,"smooth_accel":4.382005,"accel_momentum":2.111116,"rvol_3bar":[6.178555,0.254046,0.518243],"trend_3bar":"MIXED","projected_rvol":0.490091},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":118.0,"sell_vol":1299.0,"unclassified_vol":0.0,"imbalance":-0.833451,"bid":8.44,"ask":8.55,"spread_pct":1.294879,"quote_size_imbalance":null,"quote_age_s":0.29365},"context":{"vwap":7.964229,"price_vs_vwap_pct":5.973853,"ema9":8.396174,"ema20":8.28233,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.17096,"dist_to_hod_atr":0.821528,"atr":0.121724,"spread_atr":0.903681,"own_change_pct":1.917316,"rel_strength_pct":{"SPY":2.011607,"IWM":1.987378}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.431931},"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":"18de3f661659","ts":"2026-09-15T14:26:40+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.81,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7444,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.0711,"volatility":"medium"},"price":7.745,"volume":{"bars":56,"last_bar_volume":26676.0,"baseline_avg":14404.85,"bar_rvol":1.851876,"raw_accel":1.695907,"smooth_accel":1.590997,"accel_momentum":1.019624,"rvol_3bar":[0.871599,0.663406,1.851876],"trend_3bar":"MIXED","projected_rvol":0.891887},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1518.0,"sell_vol":6987.0,"unclassified_vol":0.0,"imbalance":-0.643034,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.064203},"context":{"vwap":7.74443,"price_vs_vwap_pct":0.007363,"ema9":7.744279,"ema20":7.748079,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":2.456321,"atr":0.026462,"spread_atr":0.377896,"own_change_pct":-0.097968,"rel_strength_pct":{"SPY":-0.003677,"IWM":-0.027906}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.190819},"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":"c2640f76088b","ts":"2026-09-15T14:26:45+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.976,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.184,"trend":"flat","recent_slope_pct":-0.0495,"volatility":"medium"},"price":9.975,"volume":{"bars":56,"last_bar_volume":145145.0,"baseline_avg":266022.75,"bar_rvol":0.545611,"raw_accel":-0.705282,"smooth_accel":2.865102,"accel_momentum":0.146036,"rvol_3bar":[0.621291,1.921337,0.545611],"trend_3bar":"MIXED","projected_rvol":0.538586},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":50610.0,"sell_vol":42685.0,"unclassified_vol":0.0,"imbalance":0.084946,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.224348},"context":{"vwap":9.975973,"price_vs_vwap_pct":-0.00975,"ema9":9.979985,"ema20":9.983889,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.513302,"atr":0.029841,"spread_atr":0.335107,"own_change_pct":-0.30015,"rel_strength_pct":{"SPY":-0.205858,"IWM":-0.230088}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.046347},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dd75a12e2b3a","ts":"2026-09-15T14:27:10+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":6.1585,"target":7.07,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.46,"vwap":6.4393,"ext_from_open_pct":1.97,"max_ext_allowed_pct":5.0,"volume_pace":4.958,"trend":"flat","recent_slope_pct":-0.1858,"volatility":"high"},"price":6.46,"volume":{"bars":57,"last_bar_volume":45039.0,"baseline_avg":94370.2,"bar_rvol":0.477259,"raw_accel":0.259163,"smooth_accel":-0.367284,"accel_momentum":-0.183218,"rvol_3bar":[1.099075,0.370528,0.477259],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":186,"trade_rate":6.2,"buy_vol":19413.0,"sell_vol":7680.0,"unclassified_vol":0.0,"imbalance":0.433064,"bid":6.43,"ask":6.46,"spread_pct":0.465477,"quote_size_imbalance":null,"quote_age_s":0.270706},"context":{"vwap":6.43934,"price_vs_vwap_pct":0.320841,"ema9":6.519666,"ema20":6.50361,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.104651,"dist_to_hod_atr":3.039301,"atr":0.13819,"spread_atr":0.217093,"own_change_pct":-3.613006,"rel_strength_pct":{"SPY":-3.607727,"IWM":-3.637547}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.206684},"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":"baf7c69efab0","ts":"2026-09-15T14:27:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6522,"target":7.81,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":0.75},"price":7.7401,"vwap":7.7444,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":0.0261,"volatility":"medium"},"price":7.7401,"volume":{"bars":57,"last_bar_volume":18435.0,"baseline_avg":15386.95,"bar_rvol":1.198093,"raw_accel":-0.308929,"smooth_accel":0.797699,"accel_momentum":-0.793298,"rvol_3bar":[0.663406,1.851876,1.198093],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":9483.0,"sell_vol":6042.0,"unclassified_vol":0.0,"imbalance":0.221643,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.057095},"context":{"vwap":7.74446,"price_vs_vwap_pct":-0.0563,"ema9":7.744423,"ema20":7.747786,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.895006,"dist_to_hod_atr":2.741865,"atr":0.025494,"spread_atr":0.392255,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.00528,"IWM":-0.024541}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.265548},"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":"240fb7255acd","ts":"2026-09-15T14:27:50+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.7837,"target":6.87,"target_label":"premarket_high","reward_risk":3.24,"pos_in_5d_range_pct":58.4,"room_to_5d_high_atr":3.36},"price":6.04,"vwap":6.0105,"ext_from_open_pct":-4.58,"max_ext_allowed_pct":4.0,"volume_pace":0.131,"trend":"flat","recent_slope_pct":0.6724,"volatility":"high"},"price":6.04,"volume":{"bars":57,"last_bar_volume":14388.0,"baseline_avg":27873.45,"bar_rvol":0.51619,"raw_accel":0.433353,"smooth_accel":-0.140546,"accel_momentum":-0.251839,"rvol_3bar":[1.049953,0.311685,0.51619],"trend_3bar":"MIXED","projected_rvol":0.705532},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":6643.0,"sell_vol":340.0,"unclassified_vol":0.0,"imbalance":0.902621,"bid":5.97,"ask":6.01,"spread_pct":0.66778,"quote_size_imbalance":null,"quote_age_s":7.999965},"context":{"vwap":6.010487,"price_vs_vwap_pct":0.491033,"ema9":5.975979,"ema20":5.940068,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.715994,"dist_to_hod_atr":4.988956,"atr":0.130288,"spread_atr":0.307013,"own_change_pct":-2.76873,"rel_strength_pct":{"SPY":-2.76345,"IWM":-2.79327}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.465924},"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":"b5eb90b79d35","ts":"2026-09-15T14:27:55+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.44","plan":{"state":"PASS","setup":"","stop":6.1285,"target":7.07,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.43,"vwap":6.4393,"ext_from_open_pct":1.5,"max_ext_allowed_pct":4.0,"volume_pace":4.925,"trend":"flat","recent_slope_pct":-0.279,"volatility":"high"},"price":6.43,"volume":{"bars":57,"last_bar_volume":45039.0,"baseline_avg":94370.2,"bar_rvol":0.477259,"raw_accel":0.259163,"smooth_accel":-0.367284,"accel_momentum":-0.183218,"rvol_3bar":[1.099075,0.370528,0.477259],"trend_3bar":"MIXED","projected_rvol":0.404954},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":7528.0,"sell_vol":6531.0,"unclassified_vol":0.0,"imbalance":0.070915,"bid":6.42,"ask":6.48,"spread_pct":0.930233,"quote_size_imbalance":null,"quote_age_s":3.270754},"context":{"vwap":6.43934,"price_vs_vwap_pct":-0.145045,"ema9":6.519666,"ema20":6.50361,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.540698,"dist_to_hod_atr":3.256394,"atr":0.13819,"spread_atr":0.434186,"own_change_pct":-3.613006,"rel_strength_pct":{"SPY":-3.607727,"IWM":-3.637547}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.033845},"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":"836bcef53d0f","ts":"2026-09-15T14:28:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":6.1685,"target":7.07,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":48.2,"room_to_5d_high_atr":3.62},"price":6.47,"vwap":6.4394,"ext_from_open_pct":2.13,"max_ext_allowed_pct":4.0,"volume_pace":4.919,"trend":"flat","recent_slope_pct":-0.1548,"volatility":"high"},"price":6.47,"volume":{"bars":57,"last_bar_volume":45039.0,"baseline_avg":94370.2,"bar_rvol":0.477259,"raw_accel":0.259163,"smooth_accel":-0.367284,"accel_momentum":-0.183218,"rvol_3bar":[1.099075,0.370528,0.477259],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":6311.0,"sell_vol":6348.0,"unclassified_vol":0.0,"imbalance":-0.002923,"bid":6.42,"ask":6.45,"spread_pct":0.4662,"quote_size_imbalance":null,"quote_age_s":1.945404},"context":{"vwap":6.43934,"price_vs_vwap_pct":0.476137,"ema9":6.519666,"ema20":6.50361,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.959302,"dist_to_hod_atr":2.966937,"atr":0.13819,"spread_atr":0.217093,"own_change_pct":-3.613006,"rel_strength_pct":{"SPY":-3.620267,"IWM":-3.59898}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001395},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a0c2c49ee4e1","ts":"2026-09-15T14:28:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2045.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 327 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1015,"ext_from_open_pct":0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0155,"volatility":"low"},"price":10.115,"volume":{"bars":57,"last_bar_volume":39069.0,"baseline_avg":35930.6,"bar_rvol":1.087346,"raw_accel":-0.458736,"smooth_accel":-0.3495,"accel_momentum":0.080909,"rvol_3bar":[0.439098,1.803571,1.087346],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":8988.0,"sell_vol":10817.0,"unclassified_vol":0.0,"imbalance":-0.09235,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.92194},"context":{"vwap":10.101023,"price_vs_vwap_pct":0.13837,"ema9":10.120787,"ema20":10.118204,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.08746,"atr":0.013794,"spread_atr":0.724974,"own_change_pct":-0.023715,"rel_strength_pct":{"SPY":-0.030976,"IWM":-0.009689}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.100417},"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":"1235313973ed","ts":"2026-09-15T14:28:05+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.0653,"target":10.2,"target_label":"prev_day_high","reward_risk":1.93,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":4.11},"price":10.1112,"vwap":10.1015,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":-0.0286,"volatility":"low"},"price":10.1112,"volume":{"bars":58,"last_bar_volume":91598.0,"baseline_avg":36954.4,"bar_rvol":2.478676,"raw_accel":1.344519,"smooth_accel":1.36359,"accel_momentum":1.713089,"rvol_3bar":[1.803571,1.087346,2.478676],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":9013.0,"sell_vol":10567.0,"unclassified_vol":0.0,"imbalance":-0.079367,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.04258},"context":{"vwap":10.10154,"price_vs_vwap_pct":0.095634,"ema9":10.11963,"ema20":10.117899,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.185587,"dist_to_hod_atr":1.330523,"atr":0.01413,"spread_atr":0.707725,"own_change_pct":-0.123426,"rel_strength_pct":{"SPY":-0.130687,"IWM":-0.1094}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.196724},"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":"a5fec369fc4b","ts":"2026-09-15T14:28:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0718,"target":10.2,"target_label":"prev_day_high","reward_risk":1.79,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":4.07},"price":10.1177,"vwap":10.1015,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0157,"volatility":"low"},"price":10.1177,"volume":{"bars":58,"last_bar_volume":91598.0,"baseline_avg":36954.4,"bar_rvol":2.478676,"raw_accel":1.344519,"smooth_accel":1.36359,"accel_momentum":1.713089,"rvol_3bar":[1.803571,1.087346,2.478676],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":8902.0,"sell_vol":10826.0,"unclassified_vol":0.0,"imbalance":-0.097526,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.762704},"context":{"vwap":10.10154,"price_vs_vwap_pct":0.159981,"ema9":10.11963,"ema20":10.117899,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.121422,"dist_to_hod_atr":0.870502,"atr":0.01413,"spread_atr":0.707725,"own_change_pct":-0.123426,"rel_strength_pct":{"SPY":-0.130687,"IWM":-0.1094}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.241736},"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":"9045f6c788ed","ts":"2026-09-15T14:28:15+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.8808,"target":10.2,"target_label":"prev_day_high","reward_risk":1.68,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":2.45},"price":10.0,"vwap":9.9762,"ext_from_open_pct":1.73,"max_ext_allowed_pct":3.0,"volume_pace":1.188,"trend":"flat","recent_slope_pct":0.0501,"volatility":"medium"},"price":10.0,"volume":{"bars":58,"last_bar_volume":177498.0,"baseline_avg":237121.7,"bar_rvol":0.748552,"raw_accel":0.614528,"smooth_accel":-0.44328,"accel_momentum":-1.771545,"rvol_3bar":[0.545611,0.420848,0.748552],"trend_3bar":"MIXED","projected_rvol":7.820676},"flow":{"window_s":30,"trades":428,"trade_rate":14.266667,"buy_vol":331866.0,"sell_vol":153253.0,"unclassified_vol":0.0,"imbalance":0.368184,"bid":10.0,"ask":10.01,"spread_pct":0.09995,"quote_size_imbalance":null,"quote_age_s":0.09389},"context":{"vwap":9.975921,"price_vs_vwap_pct":0.241367,"ema9":9.97819,"ema20":9.982277,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.497512,"dist_to_hod_atr":1.742976,"atr":0.028687,"spread_atr":0.348595,"own_change_pct":-0.147152,"rel_strength_pct":{"SPY":-0.154413,"IWM":-0.133126}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.275605},"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":"d150c73428dc","ts":"2026-09-15T14:28:20+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1015,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.0309,"volatility":"low"},"price":10.11,"volume":{"bars":58,"last_bar_volume":91598.0,"baseline_avg":36954.4,"bar_rvol":2.478676,"raw_accel":1.344519,"smooth_accel":1.36359,"accel_momentum":1.713089,"rvol_3bar":[1.803571,1.087346,2.478676],"trend_3bar":"MIXED","projected_rvol":0.106916},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":9006.0,"sell_vol":8473.0,"unclassified_vol":0.0,"imbalance":0.030494,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":1.501789},"context":{"vwap":10.10154,"price_vs_vwap_pct":0.083755,"ema9":10.11963,"ema20":10.117899,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.197433,"dist_to_hod_atr":1.41545,"atr":0.01413,"spread_atr":0.707725,"own_change_pct":-0.123426,"rel_strength_pct":{"SPY":-0.130687,"IWM":-0.1094}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.075584},"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":"43e3d260bb63","ts":"2026-09-15T14:28:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.29,"target":8.5392,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":130.1,"room_to_5d_high_atr":-1.1},"price":8.5392,"vwap":7.99,"ext_from_open_pct":11.48,"max_ext_allowed_pct":3.0,"volume_pace":0.608,"trend":"flat","recent_slope_pct":0.0159,"volatility":"high"},"price":8.5392,"volume":{"bars":58,"last_bar_volume":1942.0,"baseline_avg":5348.65,"bar_rvol":0.363082,"raw_accel":-0.816758,"smooth_accel":-0.416139,"accel_momentum":0.062972,"rvol_3bar":[0.518243,2.115454,0.363082],"trend_3bar":"MIXED","projected_rvol":2.984379},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":3034.0,"sell_vol":3619.0,"unclassified_vol":0.0,"imbalance":-0.08793,"bid":8.45,"ask":8.54,"spread_pct":1.059447,"quote_size_imbalance":null,"quote_age_s":6.080601},"context":{"vwap":7.980582,"price_vs_vwap_pct":6.999717,"ema9":8.383151,"ema20":8.296669,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.009368,"dist_to_hod_atr":0.006188,"atr":0.129288,"spread_atr":0.696121,"own_change_pct":-1.052357,"rel_strength_pct":{"SPY":-1.059618,"IWM":-1.038331}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.031926},"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":"c3a9e55c09ee","ts":"2026-09-15T14:28:25+00:00","symbol":"RUM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.57,"target":7.93,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":48.5,"room_to_5d_high_atr":1.15},"price":7.805,"vwap":7.7587,"ext_from_open_pct":1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.448,"trend":"flat","recent_slope_pct":0.2365,"volatility":"high"},"price":7.805,"volume":{"bars":58,"last_bar_volume":5250.0,"baseline_avg":13687.1,"bar_rvol":0.383573,"raw_accel":-0.205629,"smooth_accel":0.132559,"accel_momentum":-0.081649,"rvol_3bar":[0.230899,0.487629,0.383573],"trend_3bar":"MIXED","projected_rvol":0.83746},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":2785.0,"sell_vol":2268.0,"unclassified_vol":0.0,"imbalance":0.102315,"bid":7.8,"ask":7.81,"spread_pct":0.128123,"quote_size_imbalance":null,"quote_age_s":0.01785},"context":{"vwap":7.758598,"price_vs_vwap_pct":0.598071,"ema9":7.733759,"ema20":7.712459,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-1.947236,"dist_to_hod_atr":2.737583,"atr":0.056619,"spread_atr":0.176618,"own_change_pct":0.659767,"rel_strength_pct":{"SPY":0.652506,"IWM":0.673793}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.039245},"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":"947888665f39","ts":"2026-09-15T14:28:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.29,"target":8.495,"target_label":"clear air (typical 60-min move)","reward_risk":0.0,"pos_in_5d_range_pct":128.5,"room_to_5d_high_atr":-1.04},"price":8.495,"vwap":7.9897,"ext_from_open_pct":10.9,"max_ext_allowed_pct":3.0,"volume_pace":0.607,"trend":"flat","recent_slope_pct":-0.0889,"volatility":"high"},"price":8.495,"volume":{"bars":58,"last_bar_volume":1942.0,"baseline_avg":5348.65,"bar_rvol":0.363082,"raw_accel":-0.816758,"smooth_accel":-0.416139,"accel_momentum":0.062972,"rvol_3bar":[0.518243,2.115454,0.363082],"trend_3bar":"MIXED","projected_rvol":2.494461},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":3034.0,"sell_vol":3637.0,"unclassified_vol":0.0,"imbalance":-0.090391,"bid":8.45,"ask":8.54,"spread_pct":1.059447,"quote_size_imbalance":null,"quote_age_s":11.080601},"context":{"vwap":7.980582,"price_vs_vwap_pct":6.445873,"ema9":8.383151,"ema20":8.296669,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.526932,"dist_to_hod_atr":0.34806,"atr":0.129288,"spread_atr":0.696121,"own_change_pct":-1.052357,"rel_strength_pct":{"SPY":-1.059618,"IWM":-1.038331}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.032819},"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":"f25974fdaf1c","ts":"2026-09-15T14:28:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0733,"target":10.2,"target_label":"prev_day_high","reward_risk":1.76,"pos_in_5d_range_pct":11.7,"room_to_5d_high_atr":4.06},"price":10.1192,"vwap":10.1016,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.0127,"volatility":"low"},"price":10.1192,"volume":{"bars":58,"last_bar_volume":91598.0,"baseline_avg":36954.4,"bar_rvol":2.478676,"raw_accel":1.344519,"smooth_accel":1.36359,"accel_momentum":1.713089,"rvol_3bar":[1.803571,1.087346,2.478676],"trend_3bar":"MIXED","projected_rvol":0.127246},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":464.0,"sell_vol":2103.0,"unclassified_vol":0.0,"imbalance":-0.638489,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":5.058918},"context":{"vwap":10.10154,"price_vs_vwap_pct":0.17483,"ema9":10.11963,"ema20":10.117899,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.106614,"dist_to_hod_atr":0.764343,"atr":0.01413,"spread_atr":0.707725,"own_change_pct":-0.123426,"rel_strength_pct":{"SPY":-0.130687,"IWM":-0.1094}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.582606},"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":"9e61482556cd","ts":"2026-09-15T14:28:40+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.76 below VWAP $7.76","plan":{"state":"PASS","setup":"","stop":7.5679,"target":7.93,"target_label":"ceiling","reward_risk":0.91,"pos_in_5d_range_pct":45.7,"room_to_5d_high_atr":1.21},"price":7.7576,"vwap":7.7586,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":0.1145,"volatility":"high"},"price":7.7576,"volume":{"bars":58,"last_bar_volume":5250.0,"baseline_avg":13687.1,"bar_rvol":0.383573,"raw_accel":-0.205629,"smooth_accel":0.132559,"accel_momentum":-0.081649,"rvol_3bar":[0.230899,0.487629,0.383573],"trend_3bar":"MIXED","projected_rvol":0.71498},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3186.0,"sell_vol":2325.0,"unclassified_vol":0.0,"imbalance":0.156233,"bid":7.8,"ask":7.81,"spread_pct":0.128123,"quote_size_imbalance":null,"quote_age_s":3.051972},"context":{"vwap":7.758598,"price_vs_vwap_pct":-0.012864,"ema9":7.733759,"ema20":7.712459,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-2.542714,"dist_to_hod_atr":3.574753,"atr":0.056619,"spread_atr":0.176618,"own_change_pct":0.659767,"rel_strength_pct":{"SPY":0.652506,"IWM":0.673793}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.059927},"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":"5ee5c4f16020","ts":"2026-09-15T14:28:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.44","plan":{"state":"PASS","setup":"","stop":6.1295,"target":7.07,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":47.8,"room_to_5d_high_atr":3.66},"price":6.431,"vwap":6.4394,"ext_from_open_pct":1.52,"max_ext_allowed_pct":4.0,"volume_pace":4.872,"trend":"flat","recent_slope_pct":-0.2448,"volatility":"high"},"price":6.431,"volume":{"bars":58,"last_bar_volume":36117.0,"baseline_avg":93905.8,"bar_rvol":0.384609,"raw_accel":-0.198095,"smooth_accel":-0.605794,"accel_momentum":-0.23851,"rvol_3bar":[0.370528,0.477259,0.384609],"trend_3bar":"MIXED","projected_rvol":0.164803},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":2373.0,"sell_vol":973.0,"unclassified_vol":0.0,"imbalance":0.41841,"bid":6.43,"ask":6.45,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":2.295782},"context":{"vwap":6.439379,"price_vs_vwap_pct":-0.130125,"ema9":6.509733,"ema20":6.500409,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.526163,"dist_to_hod_atr":3.314587,"atr":0.135462,"spread_atr":0.147643,"own_change_pct":-0.918836,"rel_strength_pct":{"SPY":-0.926097,"IWM":-0.90481}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.160924},"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":"7bc62f1fbd68","ts":"2026-09-15T14:28:45+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1016,"ext_from_open_pct":0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.0211,"volatility":"low"},"price":10.115,"volume":{"bars":58,"last_bar_volume":91598.0,"baseline_avg":36954.4,"bar_rvol":2.478676,"raw_accel":1.344519,"smooth_accel":1.36359,"accel_momentum":1.713089,"rvol_3bar":[1.803571,1.087346,2.478676],"trend_3bar":"MIXED","projected_rvol":0.120437},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":769.0,"sell_vol":1505.0,"unclassified_vol":0.0,"imbalance":-0.323659,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":1.691626},"context":{"vwap":10.10154,"price_vs_vwap_pct":0.133252,"ema9":10.11963,"ema20":10.117899,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.061588,"atr":0.01413,"spread_atr":0.707725,"own_change_pct":-0.123426,"rel_strength_pct":{"SPY":-0.130687,"IWM":-0.1094}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.802245},"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":"53b274c049ca","ts":"2026-09-15T14:28:45+00:00","symbol":"RUM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.57,"target":7.93,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":48.5,"room_to_5d_high_atr":1.15},"price":7.8041,"vwap":7.7587,"ext_from_open_pct":1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.446,"trend":"flat","recent_slope_pct":0.2342,"volatility":"high"},"price":7.8041,"volume":{"bars":58,"last_bar_volume":5250.0,"baseline_avg":13687.1,"bar_rvol":0.383573,"raw_accel":-0.205629,"smooth_accel":0.132559,"accel_momentum":-0.081649,"rvol_3bar":[0.230899,0.487629,0.383573],"trend_3bar":"MIXED","projected_rvol":0.714347},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3578.0,"sell_vol":2525.0,"unclassified_vol":0.0,"imbalance":0.172538,"bid":7.8,"ask":7.81,"spread_pct":0.128123,"quote_size_imbalance":null,"quote_age_s":3.081614},"context":{"vwap":7.758598,"price_vs_vwap_pct":0.586471,"ema9":7.733759,"ema20":7.712459,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-1.958543,"dist_to_hod_atr":2.753478,"atr":0.056619,"spread_atr":0.176618,"own_change_pct":0.659767,"rel_strength_pct":{"SPY":0.652506,"IWM":0.673793}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.066181},"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":"f35ddcb0c142","ts":"2026-09-15T14:28:55+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":6.1685,"target":7.07,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":48.2,"room_to_5d_high_atr":3.62},"price":6.47,"vwap":6.4395,"ext_from_open_pct":2.13,"max_ext_allowed_pct":5.0,"volume_pace":4.869,"trend":"flat","recent_slope_pct":-0.1238,"volatility":"high"},"price":6.47,"volume":{"bars":58,"last_bar_volume":36117.0,"baseline_avg":93905.8,"bar_rvol":0.384609,"raw_accel":-0.198095,"smooth_accel":-0.605794,"accel_momentum":-0.23851,"rvol_3bar":[0.370528,0.477259,0.384609],"trend_3bar":"MIXED","projected_rvol":0.227787},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":8663.0,"sell_vol":1048.0,"unclassified_vol":0.0,"imbalance":0.784162,"bid":6.46,"ask":6.5,"spread_pct":0.617284,"quote_size_imbalance":null,"quote_age_s":2.709405},"context":{"vwap":6.439379,"price_vs_vwap_pct":0.475523,"ema9":6.509733,"ema20":6.500409,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.959302,"dist_to_hod_atr":3.026683,"atr":0.135462,"spread_atr":0.295286,"own_change_pct":-0.918836,"rel_strength_pct":{"SPY":-0.926097,"IWM":-0.90481}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.301596},"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":"8855a9874778","ts":"2026-09-15T14:29:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1785,"target":7.07,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.48,"vwap":6.4396,"ext_from_open_pct":2.29,"max_ext_allowed_pct":5.0,"volume_pace":4.861,"trend":"flat","recent_slope_pct":0.2323,"volatility":"high"},"price":6.48,"volume":{"bars":59,"last_bar_volume":23163.0,"baseline_avg":94642.4,"bar_rvol":0.244742,"raw_accel":-0.358668,"smooth_accel":-0.559359,"accel_momentum":0.046435,"rvol_3bar":[0.477259,0.384609,0.244742],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":123,"trade_rate":4.1,"buy_vol":11088.0,"sell_vol":2710.0,"unclassified_vol":0.0,"imbalance":0.607189,"bid":6.44,"ask":6.48,"spread_pct":0.619195,"quote_size_imbalance":null,"quote_age_s":3.319188},"context":{"vwap":6.439613,"price_vs_vwap_pct":0.627159,"ema9":6.505786,"ema20":6.499418,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.813953,"dist_to_hod_atr":3.009129,"atr":0.132929,"spread_atr":0.300913,"own_change_pct":0.464396,"rel_strength_pct":{"SPY":0.402325,"IWM":0.467903}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.148605},"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":"b7af4751b14d","ts":"2026-09-15T14:29:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1016,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0119,"volatility":"low"},"price":10.115,"volume":{"bars":59,"last_bar_volume":6068.0,"baseline_avg":40574.25,"bar_rvol":0.149553,"raw_accel":-0.933754,"smooth_accel":0.241251,"accel_momentum":-1.122338,"rvol_3bar":[1.087346,2.478676,0.149553],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":9370.0,"sell_vol":421.0,"unclassified_vol":0.0,"imbalance":0.914003,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.36226},"context":{"vwap":10.101567,"price_vs_vwap_pct":0.13298,"ema9":10.118704,"ema20":10.117623,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.069861,"atr":0.014021,"spread_atr":0.713241,"own_change_pct":-0.049407,"rel_strength_pct":{"SPY":-0.111479,"IWM":-0.045901}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.136692},"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":"9202d3c9ca38","ts":"2026-09-15T14:29:15+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.00 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7437,"target":6.87,"target_label":"premarket_high","reward_risk":3.39,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0,"vwap":6.0109,"ext_from_open_pct":-5.21,"max_ext_allowed_pct":3.0,"volume_pace":0.129,"trend":"flat","recent_slope_pct":0.2447,"volatility":"high"},"price":6.0,"volume":{"bars":59,"last_bar_volume":17256.0,"baseline_avg":27210.75,"bar_rvol":0.634161,"raw_accel":0.034036,"smooth_accel":-0.285875,"accel_momentum":0.214514,"rvol_3bar":[0.51619,0.60571,0.634161],"trend_3bar":"ACCELERATING","projected_rvol":1.165128},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":4155.0,"sell_vol":9674.0,"unclassified_vol":0.0,"imbalance":-0.399089,"bid":6.0,"ask":6.09,"spread_pct":1.488834,"quote_size_imbalance":null,"quote_age_s":0.215308},"context":{"vwap":6.010796,"price_vs_vwap_pct":-0.179603,"ema9":6.004366,"ema20":5.960739,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.313901,"dist_to_hod_atr":5.66338,"atr":0.121835,"spread_atr":0.738702,"own_change_pct":3.0,"rel_strength_pct":{"SPY":2.937928,"IWM":3.003507}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.253087},"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":"09000cd0a87e","ts":"2026-09-15T14:29:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1017,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.002,"volatility":"low"},"price":10.12,"volume":{"bars":59,"last_bar_volume":6068.0,"baseline_avg":40574.25,"bar_rvol":0.149553,"raw_accel":-0.933754,"smooth_accel":0.241251,"accel_momentum":-1.122338,"rvol_3bar":[1.087346,2.478676,0.149553],"trend_3bar":"MIXED","projected_rvol":2.31191},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":22835.0,"sell_vol":3346.0,"unclassified_vol":0.0,"imbalance":0.744395,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":3.186714},"context":{"vwap":10.101567,"price_vs_vwap_pct":0.182477,"ema9":10.118704,"ema20":10.117623,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.713241,"atr":0.014021,"spread_atr":0.713241,"own_change_pct":-0.049407,"rel_strength_pct":{"SPY":-0.111479,"IWM":-0.045901}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.111326},"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":"0507b9b2e15a","ts":"2026-09-15T14:29:20+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.49% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":5.7837,"target":6.87,"target_label":"premarket_high","reward_risk":3.24,"pos_in_5d_range_pct":58.4,"room_to_5d_high_atr":3.36},"price":6.04,"vwap":6.011,"ext_from_open_pct":-4.58,"max_ext_allowed_pct":3.0,"volume_pace":0.129,"trend":"flat","recent_slope_pct":0.3773,"volatility":"high"},"price":6.04,"volume":{"bars":59,"last_bar_volume":17256.0,"baseline_avg":27210.75,"bar_rvol":0.634161,"raw_accel":0.034036,"smooth_accel":-0.285875,"accel_momentum":0.214514,"rvol_3bar":[0.51619,0.60571,0.634161],"trend_3bar":"ACCELERATING","projected_rvol":1.389818},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":6303.0,"sell_vol":11826.0,"unclassified_vol":0.0,"imbalance":-0.30465,"bid":6.0,"ask":6.09,"spread_pct":1.488834,"quote_size_imbalance":null,"quote_age_s":5.215308},"context":{"vwap":6.010796,"price_vs_vwap_pct":0.485866,"ema9":6.004366,"ema20":5.960739,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.715994,"dist_to_hod_atr":5.335068,"atr":0.121835,"spread_atr":0.738702,"own_change_pct":3.0,"rel_strength_pct":{"SPY":2.937928,"IWM":3.003507}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.193197},"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":"8a66c56ad4ac","ts":"2026-09-15T14:29:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1017,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":-0.0217,"volatility":"low"},"price":10.11,"volume":{"bars":59,"last_bar_volume":6068.0,"baseline_avg":40574.25,"bar_rvol":0.149553,"raw_accel":-0.933754,"smooth_accel":0.241251,"accel_momentum":-1.122338,"rvol_3bar":[1.087346,2.478676,0.149553],"trend_3bar":"MIXED","projected_rvol":1.827169},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":23951.0,"sell_vol":3372.0,"unclassified_vol":0.0,"imbalance":0.753175,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.417434},"context":{"vwap":10.101567,"price_vs_vwap_pct":0.083482,"ema9":10.118704,"ema20":10.117623,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.197433,"dist_to_hod_atr":1.426482,"atr":0.014021,"spread_atr":0.713241,"own_change_pct":-0.049407,"rel_strength_pct":{"SPY":-0.111479,"IWM":-0.045901}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.11264},"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":"ef49f7273f79","ts":"2026-09-15T14:29:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.81; R:R 1.81 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 80485 sh","plan":{"state":"WATCH","setup":"","stop":10.0712,"target":10.2,"target_label":"prev_day_high","reward_risk":1.81,"pos_in_5d_range_pct":11.5,"room_to_5d_high_atr":4.07},"price":10.1171,"vwap":10.1017,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0077,"volatility":"low"},"price":10.1171,"volume":{"bars":59,"last_bar_volume":6068.0,"baseline_avg":40574.25,"bar_rvol":0.149553,"raw_accel":-0.933754,"smooth_accel":0.241251,"accel_momentum":-1.122338,"rvol_3bar":[1.087346,2.478676,0.149553],"trend_3bar":"MIXED","projected_rvol":1.475162},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":24072.0,"sell_vol":3170.0,"unclassified_vol":0.0,"imbalance":0.767271,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.486058},"context":{"vwap":10.101567,"price_vs_vwap_pct":0.153769,"ema9":10.118704,"ema20":10.117623,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.127345,"dist_to_hod_atr":0.920081,"atr":0.014021,"spread_atr":0.713241,"own_change_pct":-0.049407,"rel_strength_pct":{"SPY":-0.111479,"IWM":-0.045901}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.114748},"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":"eb0a358d1f64","ts":"2026-09-15T14:29:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 326 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1018,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.0119,"volatility":"low"},"price":10.115,"volume":{"bars":59,"last_bar_volume":6068.0,"baseline_avg":40574.25,"bar_rvol":0.149553,"raw_accel":-0.933754,"smooth_accel":0.241251,"accel_momentum":-1.122338,"rvol_3bar":[1.087346,2.478676,0.149553],"trend_3bar":"MIXED","projected_rvol":2.27563},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":43049.0,"sell_vol":3117.0,"unclassified_vol":0.0,"imbalance":0.864966,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.731399},"context":{"vwap":10.101567,"price_vs_vwap_pct":0.13298,"ema9":10.118704,"ema20":10.117623,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.069861,"atr":0.014021,"spread_atr":0.713241,"own_change_pct":-0.049407,"rel_strength_pct":{"SPY":-0.111479,"IWM":-0.045901}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.129358},"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":"29fa11a00635","ts":"2026-09-15T14:29:35+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.00 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7437,"target":6.87,"target_label":"premarket_high","reward_risk":3.39,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0,"vwap":6.0109,"ext_from_open_pct":-5.21,"max_ext_allowed_pct":3.0,"volume_pace":0.129,"trend":"flat","recent_slope_pct":0.2447,"volatility":"high"},"price":6.0,"volume":{"bars":59,"last_bar_volume":17256.0,"baseline_avg":27210.75,"bar_rvol":0.634161,"raw_accel":0.034036,"smooth_accel":-0.285875,"accel_momentum":0.214514,"rvol_3bar":[0.51619,0.60571,0.634161],"trend_3bar":"ACCELERATING","projected_rvol":0.919994},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":6631.0,"sell_vol":7664.0,"unclassified_vol":0.0,"imbalance":-0.072263,"bid":6.0,"ask":6.03,"spread_pct":0.498753,"quote_size_imbalance":null,"quote_age_s":0.365194},"context":{"vwap":6.010796,"price_vs_vwap_pct":-0.179603,"ema9":6.004366,"ema20":5.960739,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.313901,"dist_to_hod_atr":5.66338,"atr":0.121835,"spread_atr":0.246234,"own_change_pct":3.0,"rel_strength_pct":{"SPY":2.937928,"IWM":3.003507}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.045826},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"47cf62282d63","ts":"2026-09-15T14:29:45+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.13x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.7714,"target":6.87,"target_label":"premarket_high","reward_risk":3.29,"pos_in_5d_range_pct":58.2,"room_to_5d_high_atr":3.37},"price":6.0277,"vwap":6.011,"ext_from_open_pct":-4.78,"max_ext_allowed_pct":3.0,"volume_pace":0.129,"trend":"flat","recent_slope_pct":0.3366,"volatility":"high"},"price":6.0277,"volume":{"bars":59,"last_bar_volume":17256.0,"baseline_avg":27210.75,"bar_rvol":0.634161,"raw_accel":0.034036,"smooth_accel":-0.285875,"accel_momentum":0.214514,"rvol_3bar":[0.51619,0.60571,0.634161],"trend_3bar":"ACCELERATING","projected_rvol":0.908317},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":5102.0,"sell_vol":5509.0,"unclassified_vol":0.0,"imbalance":-0.038356,"bid":5.99,"ask":6.03,"spread_pct":0.665557,"quote_size_imbalance":null,"quote_age_s":0.117053},"context":{"vwap":6.010796,"price_vs_vwap_pct":0.281234,"ema9":6.004366,"ema20":5.960739,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.899851,"dist_to_hod_atr":5.436024,"atr":0.121835,"spread_atr":0.328312,"own_change_pct":3.0,"rel_strength_pct":{"SPY":2.937928,"IWM":3.003507}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.024324},"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":"a4133d7d1a9d","ts":"2026-09-15T14:29:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.74; R:R 1.74 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 80485 sh","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1019,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":-0.002,"volatility":"low"},"price":10.12,"volume":{"bars":59,"last_bar_volume":6068.0,"baseline_avg":40574.25,"bar_rvol":0.149553,"raw_accel":-0.933754,"smooth_accel":0.241251,"accel_momentum":-1.122338,"rvol_3bar":[1.087346,2.478676,0.149553],"trend_3bar":"MIXED","projected_rvol":2.211748},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":38672.0,"sell_vol":5182.0,"unclassified_vol":0.0,"imbalance":0.76367,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.708253},"context":{"vwap":10.101567,"price_vs_vwap_pct":0.182477,"ema9":10.118704,"ema20":10.117623,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.713241,"atr":0.014021,"spread_atr":0.713241,"own_change_pct":-0.049407,"rel_strength_pct":{"SPY":-0.111479,"IWM":-0.045901}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.114209},"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":"ff513333709c","ts":"2026-09-15T14:29:50+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.1889,"target":5.43,"target_label":"prev_day_high","reward_risk":2.95,"pos_in_5d_range_pct":2.6,"room_to_5d_high_atr":1.95},"price":5.25,"vwap":5.2546,"ext_from_open_pct":-1.5,"max_ext_allowed_pct":3.0,"volume_pace":1.317,"trend":"flat","recent_slope_pct":-0.0585,"volatility":"medium"},"price":5.25,"volume":{"bars":59,"last_bar_volume":410.0,"baseline_avg":3536.35,"bar_rvol":0.115939,"raw_accel":-0.943828,"smooth_accel":1.166504,"accel_momentum":-1.439175,"rvol_3bar":[0.340131,2.189952,0.115939],"trend_3bar":"MIXED","projected_rvol":0.699026},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":203.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.942584,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":0.179829},"context":{"vwap":5.25455,"price_vs_vwap_pct":-0.086593,"ema9":5.259678,"ema20":5.248983,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.867715,"dist_to_hod_atr":8.11927,"atr":0.01909,"spread_atr":0.523824,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.062072,"IWM":0.003507}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.109282},"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":"a98b6f5f75a2","ts":"2026-09-15T14:29:55+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.2101,"target":5.43,"target_label":"prev_day_high","reward_risk":3.5,"pos_in_5d_range_pct":4.8,"room_to_5d_high_atr":1.9},"price":5.2589,"vwap":5.2546,"ext_from_open_pct":-1.33,"max_ext_allowed_pct":4.0,"volume_pace":1.316,"trend":"flat","recent_slope_pct":-0.0247,"volatility":"medium"},"price":5.2589,"volume":{"bars":59,"last_bar_volume":410.0,"baseline_avg":3536.35,"bar_rvol":0.115939,"raw_accel":-0.943828,"smooth_accel":1.166504,"accel_momentum":-1.439175,"rvol_3bar":[0.340131,2.189952,0.115939],"trend_3bar":"MIXED","projected_rvol":0.667252},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":103.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.839286,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":5.179829},"context":{"vwap":5.25455,"price_vs_vwap_pct":0.082784,"ema9":5.259678,"ema20":5.248983,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.703053,"dist_to_hod_atr":7.653067,"atr":0.01909,"spread_atr":0.523824,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.062072,"IWM":0.003507}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.097306},"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":"708c5a210d71","ts":"2026-09-15T14:30:05+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.01 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7537,"target":6.87,"target_label":"premarket_high","reward_risk":3.36,"pos_in_5d_range_pct":58.0,"room_to_5d_high_atr":3.38},"price":6.01,"vwap":6.011,"ext_from_open_pct":-5.06,"max_ext_allowed_pct":3.0,"volume_pace":0.128,"trend":"flat","recent_slope_pct":0.0889,"volatility":"high"},"price":6.01,"volume":{"bars":60,"last_bar_volume":20693.0,"baseline_avg":26642.95,"bar_rvol":0.776678,"raw_accel":0.199177,"smooth_accel":-0.055426,"accel_momentum":0.230449,"rvol_3bar":[0.60571,0.634161,0.776678],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":4261.0,"sell_vol":3239.0,"unclassified_vol":0.0,"imbalance":0.136267,"bid":6.0,"ask":6.02,"spread_pct":0.332779,"quote_size_imbalance":null,"quote_age_s":4.585645},"context":{"vwap":6.010964,"price_vs_vwap_pct":-0.016037,"ema9":6.006193,"ema20":5.965764,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.164425,"dist_to_hod_atr":5.653677,"atr":0.120276,"spread_atr":0.166285,"own_change_pct":2.444634,"rel_strength_pct":{"SPY":2.468391,"IWM":2.512974}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.105835},"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":"b932d0500936","ts":"2026-09-15T14:30:10+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.13x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.7637,"target":6.87,"target_label":"premarket_high","reward_risk":3.32,"pos_in_5d_range_pct":58.1,"room_to_5d_high_atr":3.37},"price":6.02,"vwap":6.011,"ext_from_open_pct":-4.9,"max_ext_allowed_pct":3.0,"volume_pace":0.128,"trend":"flat","recent_slope_pct":0.1221,"volatility":"high"},"price":6.02,"volume":{"bars":60,"last_bar_volume":20693.0,"baseline_avg":26642.95,"bar_rvol":0.776678,"raw_accel":0.199177,"smooth_accel":-0.055426,"accel_momentum":0.230449,"rvol_3bar":[0.60571,0.634161,0.776678],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":3892.0,"sell_vol":2637.0,"unclassified_vol":0.0,"imbalance":0.192219,"bid":6.0,"ask":6.02,"spread_pct":0.332779,"quote_size_imbalance":null,"quote_age_s":2.053342},"context":{"vwap":6.010964,"price_vs_vwap_pct":0.150325,"ema9":6.006193,"ema20":5.965764,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.014948,"dist_to_hod_atr":5.570535,"atr":0.120276,"spread_atr":0.166285,"own_change_pct":2.444634,"rel_strength_pct":{"SPY":2.468391,"IWM":2.512974}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.149293},"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":"d91d45527bde","ts":"2026-09-15T14:30:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.81; target 0.08 away > ~0.08 reachable in 325 min","plan":{"state":"PASS","setup":"","stop":10.0709,"target":10.2,"target_label":"prev_day_high","reward_risk":1.81,"pos_in_5d_range_pct":11.5,"room_to_5d_high_atr":4.08},"price":10.1168,"vwap":10.1029,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.817,"trend":"flat","recent_slope_pct":0.0015,"volatility":"low"},"price":10.1168,"volume":{"bars":60,"last_bar_volume":96308.0,"baseline_avg":39325.0,"bar_rvol":2.449027,"raw_accel":8.796109,"smooth_accel":0.505822,"accel_momentum":0.264571,"rvol_3bar":[2.478676,0.149553,2.449027],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":224,"trade_rate":7.466667,"buy_vol":189139.0,"sell_vol":13180.0,"unclassified_vol":0.0,"imbalance":0.869711,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.608412},"context":{"vwap":10.102066,"price_vs_vwap_pct":0.145852,"ema9":10.118583,"ema20":10.117669,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.130306,"dist_to_hod_atr":0.926007,"atr":0.014255,"spread_atr":0.70152,"own_change_pct":-0.051367,"rel_strength_pct":{"SPY":-0.027609,"IWM":0.016974}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.129945},"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":"efeed25ddab7","ts":"2026-09-15T14:30:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.78; R:R 1.78 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 81551 sh","plan":{"state":"WATCH","setup":"","stop":10.0726,"target":10.2,"target_label":"prev_day_high","reward_risk":1.78,"pos_in_5d_range_pct":11.7,"room_to_5d_high_atr":4.07},"price":10.1185,"vwap":10.1029,"ext_from_open_pct":0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.818,"trend":"flat","recent_slope_pct":0.0048,"volatility":"low"},"price":10.1185,"volume":{"bars":60,"last_bar_volume":96308.0,"baseline_avg":39325.0,"bar_rvol":2.449027,"raw_accel":8.796109,"smooth_accel":0.505822,"accel_momentum":0.264571,"rvol_3bar":[2.478676,0.149553,2.449027],"trend_3bar":"MIXED","projected_rvol":17.046154},"flow":{"window_s":30,"trades":225,"trade_rate":7.5,"buy_vol":183536.0,"sell_vol":13052.0,"unclassified_vol":0.0,"imbalance":0.867215,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":2.728835},"context":{"vwap":10.102066,"price_vs_vwap_pct":0.162681,"ema9":10.118583,"ema20":10.117669,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.113524,"dist_to_hod_atr":0.806748,"atr":0.014255,"spread_atr":0.70152,"own_change_pct":-0.051367,"rel_strength_pct":{"SPY":-0.027609,"IWM":0.016974}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.123832},"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":"bcac18bd780f","ts":"2026-09-15T14:30:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $6.33 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.3035,"target":7.07,"target_label":"premarket_high","reward_risk":1.54,"pos_in_5d_range_pct":49.8,"room_to_5d_high_atr":3.51},"price":6.605,"vwap":6.4421,"ext_from_open_pct":4.26,"max_ext_allowed_pct":4.0,"volume_pace":4.872,"trend":"flat","recent_slope_pct":0.7156,"volatility":"high"},"price":6.605,"volume":{"bars":60,"last_bar_volume":33834.0,"baseline_avg":94780.0,"bar_rvol":0.356974,"raw_accel":0.427896,"smooth_accel":-0.499374,"accel_momentum":0.059986,"rvol_3bar":[0.384609,0.244742,0.356974],"trend_3bar":"MIXED","projected_rvol":1.68966},"flow":{"window_s":30,"trades":314,"trade_rate":10.466667,"buy_vol":28403.0,"sell_vol":29019.0,"unclassified_vol":0.0,"imbalance":-0.010728,"bid":6.59,"ask":6.62,"spread_pct":0.454201,"quote_size_imbalance":null,"quote_age_s":0.215539},"context":{"vwap":6.44018,"price_vs_vwap_pct":2.55924,"ema9":6.509629,"ema20":6.501854,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-3.997093,"dist_to_hod_atr":2.107193,"atr":0.130505,"spread_atr":0.229876,"own_change_pct":0.076687,"rel_strength_pct":{"SPY":0.100444,"IWM":0.145028}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.003829},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fab498e24247","ts":"2026-09-15T14:30:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2785,"target":7.07,"target_label":"premarket_high","reward_risk":1.63,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":3.53},"price":6.58,"vwap":6.4423,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":4.876,"trend":"flat","recent_slope_pct":0.6391,"volatility":"high"},"price":6.58,"volume":{"bars":60,"last_bar_volume":33834.0,"baseline_avg":94780.0,"bar_rvol":0.356974,"raw_accel":0.427896,"smooth_accel":-0.499374,"accel_momentum":0.059986,"rvol_3bar":[0.384609,0.244742,0.356974],"trend_3bar":"MIXED","projected_rvol":1.577751},"flow":{"window_s":30,"trades":335,"trade_rate":11.166667,"buy_vol":29082.0,"sell_vol":33337.0,"unclassified_vol":0.0,"imbalance":-0.068168,"bid":6.57,"ask":6.58,"spread_pct":0.152091,"quote_size_imbalance":null,"quote_age_s":0.083158},"context":{"vwap":6.44018,"price_vs_vwap_pct":2.171053,"ema9":6.509629,"ema20":6.501854,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.360465,"dist_to_hod_atr":2.298756,"atr":0.130505,"spread_atr":0.076625,"own_change_pct":0.076687,"rel_strength_pct":{"SPY":0.100444,"IWM":0.145028}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.024334},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"78c7ff5d6258","ts":"2026-09-15T14:30:25+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.1889,"target":5.43,"target_label":"prev_day_high","reward_risk":3.3,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2546,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":4.0,"volume_pace":1.31,"trend":"flat","recent_slope_pct":-0.0592,"volatility":"medium"},"price":5.245,"volume":{"bars":60,"last_bar_volume":2163.0,"baseline_avg":3550.0,"bar_rvol":0.609296,"raw_accel":1.437183,"smooth_accel":1.043469,"accel_momentum":-0.123035,"rvol_3bar":[2.189952,0.115939,0.609296],"trend_3bar":"MIXED","projected_rvol":0.686873},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":813.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":0.600394,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":1.264892},"context":{"vwap":5.254583,"price_vs_vwap_pct":-0.182382,"ema9":5.259522,"ema20":5.249927,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":8.447251,"atr":0.018941,"spread_atr":0.527953,"own_change_pct":-0.153788,"rel_strength_pct":{"SPY":-0.13003,"IWM":-0.085447}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.365817},"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":"c23984009517","ts":"2026-09-15T14:30:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 80.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 325 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1029,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.817,"trend":"flat","recent_slope_pct":-0.0021,"volatility":"low"},"price":10.115,"volume":{"bars":60,"last_bar_volume":96308.0,"baseline_avg":39325.0,"bar_rvol":2.449027,"raw_accel":8.796109,"smooth_accel":0.505822,"accel_momentum":0.264571,"rvol_3bar":[2.478676,0.149553,2.449027],"trend_3bar":"MIXED","projected_rvol":10.494637},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":163351.0,"sell_vol":11043.0,"unclassified_vol":0.0,"imbalance":0.873356,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":1.176582},"context":{"vwap":10.102066,"price_vs_vwap_pct":0.128034,"ema9":10.118583,"ema20":10.117669,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.05228,"atr":0.014255,"spread_atr":0.70152,"own_change_pct":-0.051367,"rel_strength_pct":{"SPY":-0.027609,"IWM":0.016974}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.138872},"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":"66ea802f30e1","ts":"2026-09-15T14:30:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.75; R:R 1.75 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 81551 sh","plan":{"state":"WATCH","setup":"","stop":10.074,"target":10.2,"target_label":"prev_day_high","reward_risk":1.75,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.1199,"vwap":10.103,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":0.0076,"volatility":"low"},"price":10.1199,"volume":{"bars":60,"last_bar_volume":96308.0,"baseline_avg":39325.0,"bar_rvol":2.449027,"raw_accel":8.796109,"smooth_accel":0.505822,"accel_momentum":0.264571,"rvol_3bar":[2.478676,0.149553,2.449027],"trend_3bar":"MIXED","projected_rvol":9.387514},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":172658.0,"sell_vol":11924.0,"unclassified_vol":0.0,"imbalance":0.8708,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.014358},"context":{"vwap":10.102066,"price_vs_vwap_pct":0.176539,"ema9":10.118583,"ema20":10.117669,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.099704,"dist_to_hod_atr":0.708535,"atr":0.014255,"spread_atr":0.70152,"own_change_pct":-0.051367,"rel_strength_pct":{"SPY":-0.027609,"IWM":0.016974}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.132613},"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":"a52597071369","ts":"2026-09-15T14:30:35+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $6.33 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.3024,"target":7.07,"target_label":"premarket_high","reward_risk":1.55,"pos_in_5d_range_pct":49.8,"room_to_5d_high_atr":3.51},"price":6.6039,"vwap":6.4426,"ext_from_open_pct":4.24,"max_ext_allowed_pct":4.0,"volume_pace":4.87,"trend":"flat","recent_slope_pct":0.7122,"volatility":"high"},"price":6.6039,"volume":{"bars":60,"last_bar_volume":33834.0,"baseline_avg":94780.0,"bar_rvol":0.356974,"raw_accel":0.427896,"smooth_accel":-0.499374,"accel_momentum":0.059986,"rvol_3bar":[0.384609,0.244742,0.356974],"trend_3bar":"MIXED","projected_rvol":1.228216},"flow":{"window_s":30,"trades":362,"trade_rate":12.066667,"buy_vol":30897.0,"sell_vol":31900.0,"unclassified_vol":0.0,"imbalance":-0.015972,"bid":6.57,"ask":6.61,"spread_pct":0.60698,"quote_size_imbalance":null,"quote_age_s":1.721943},"context":{"vwap":6.44018,"price_vs_vwap_pct":2.54216,"ema9":6.509629,"ema20":6.501854,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.013081,"dist_to_hod_atr":2.115622,"atr":0.130505,"spread_atr":0.306501,"own_change_pct":0.076687,"rel_strength_pct":{"SPY":0.100444,"IWM":0.145028}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.005702},"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":"a81787afcece","ts":"2026-09-15T14:30:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 90.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 324 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1029,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.818,"trend":"flat","recent_slope_pct":-0.0021,"volatility":"low"},"price":10.115,"volume":{"bars":60,"last_bar_volume":96308.0,"baseline_avg":39325.0,"bar_rvol":2.449027,"raw_accel":8.796109,"smooth_accel":0.505822,"accel_momentum":0.264571,"rvol_3bar":[2.478676,0.149553,2.449027],"trend_3bar":"MIXED","projected_rvol":8.085064},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":44331.0,"sell_vol":1407.0,"unclassified_vol":0.0,"imbalance":0.938476,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.386518},"context":{"vwap":10.102066,"price_vs_vwap_pct":0.128034,"ema9":10.118583,"ema20":10.117669,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.05228,"atr":0.014255,"spread_atr":0.70152,"own_change_pct":-0.051367,"rel_strength_pct":{"SPY":-0.027609,"IWM":0.016974}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.298353},"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":"c97e26037962","ts":"2026-09-15T14:30:40+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.00 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7437,"target":6.87,"target_label":"premarket_high","reward_risk":3.39,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0,"vwap":6.011,"ext_from_open_pct":-5.21,"max_ext_allowed_pct":3.0,"volume_pace":0.127,"trend":"flat","recent_slope_pct":0.0557,"volatility":"high"},"price":6.0,"volume":{"bars":60,"last_bar_volume":20693.0,"baseline_avg":26642.95,"bar_rvol":0.776678,"raw_accel":0.199177,"smooth_accel":-0.055426,"accel_momentum":0.230449,"rvol_3bar":[0.60571,0.634161,0.776678],"trend_3bar":"ACCELERATING","projected_rvol":0.467122},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":215.0,"sell_vol":4890.0,"unclassified_vol":0.0,"imbalance":-0.915769,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":0.006399},"context":{"vwap":6.010964,"price_vs_vwap_pct":-0.1824,"ema9":6.006193,"ema20":5.965764,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.313901,"dist_to_hod_atr":5.736819,"atr":0.120276,"spread_atr":0.415712,"own_change_pct":2.444634,"rel_strength_pct":{"SPY":2.468391,"IWM":2.512974}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.711258},"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":"23e39edf52c7","ts":"2026-09-15T14:30:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.75; R:R 1.75 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 81551 sh","plan":{"state":"WATCH","setup":"","stop":10.074,"target":10.2,"target_label":"prev_day_high","reward_risk":1.75,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.1199,"vwap":10.103,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.817,"trend":"flat","recent_slope_pct":0.0076,"volatility":"low"},"price":10.1199,"volume":{"bars":60,"last_bar_volume":96308.0,"baseline_avg":39325.0,"bar_rvol":2.449027,"raw_accel":8.796109,"smooth_accel":0.505822,"accel_momentum":0.264571,"rvol_3bar":[2.478676,0.149553,2.449027],"trend_3bar":"MIXED","projected_rvol":7.126116},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":25998.0,"sell_vol":1407.0,"unclassified_vol":0.0,"imbalance":0.897318,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.248521},"context":{"vwap":10.102066,"price_vs_vwap_pct":0.176539,"ema9":10.118583,"ema20":10.117669,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.099704,"dist_to_hod_atr":0.708535,"atr":0.014255,"spread_atr":0.70152,"own_change_pct":-0.051367,"rel_strength_pct":{"SPY":-0.027609,"IWM":0.016974}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.197556},"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":"257ee6a2ade3","ts":"2026-09-15T14:30:45+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2785,"target":7.07,"target_label":"premarket_high","reward_risk":1.63,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":3.53},"price":6.58,"vwap":6.4427,"ext_from_open_pct":3.87,"max_ext_allowed_pct":5.0,"volume_pace":4.865,"trend":"flat","recent_slope_pct":0.6391,"volatility":"high"},"price":6.58,"volume":{"bars":60,"last_bar_volume":33834.0,"baseline_avg":94780.0,"bar_rvol":0.356974,"raw_accel":0.427896,"smooth_accel":-0.499374,"accel_momentum":0.059986,"rvol_3bar":[0.384609,0.244742,0.356974],"trend_3bar":"MIXED","projected_rvol":1.049701},"flow":{"window_s":30,"trades":254,"trade_rate":8.466667,"buy_vol":18588.0,"sell_vol":25105.0,"unclassified_vol":0.0,"imbalance":-0.149154,"bid":6.57,"ask":6.6,"spread_pct":0.455581,"quote_size_imbalance":null,"quote_age_s":0.293176},"context":{"vwap":6.44018,"price_vs_vwap_pct":2.171053,"ema9":6.509629,"ema20":6.501854,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.360465,"dist_to_hod_atr":2.298756,"atr":0.130505,"spread_atr":0.229876,"own_change_pct":0.076687,"rel_strength_pct":{"SPY":0.100444,"IWM":0.145028}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.053244},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"168e90042a50","ts":"2026-09-15T14:30:45+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.13x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.7687,"target":6.87,"target_label":"premarket_high","reward_risk":3.3,"pos_in_5d_range_pct":58.2,"room_to_5d_high_atr":3.37},"price":6.025,"vwap":6.011,"ext_from_open_pct":-4.82,"max_ext_allowed_pct":3.0,"volume_pace":0.127,"trend":"flat","recent_slope_pct":0.1386,"volatility":"high"},"price":6.025,"volume":{"bars":60,"last_bar_volume":20693.0,"baseline_avg":26642.95,"bar_rvol":0.776678,"raw_accel":0.199177,"smooth_accel":-0.055426,"accel_momentum":0.230449,"rvol_3bar":[0.60571,0.634161,0.776678],"trend_3bar":"ACCELERATING","projected_rvol":0.452002},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":109.0,"sell_vol":5609.0,"unclassified_vol":0.0,"imbalance":-0.961875,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":5.006399},"context":{"vwap":6.010964,"price_vs_vwap_pct":0.233507,"ema9":6.006193,"ema20":5.965764,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.940209,"dist_to_hod_atr":5.528964,"atr":0.120276,"spread_atr":0.415712,"own_change_pct":2.444634,"rel_strength_pct":{"SPY":2.468391,"IWM":2.512974}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.747067},"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":"ff69cd64a05d","ts":"2026-09-15T14:31:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9767,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.167,"trend":"flat","recent_slope_pct":0.015,"volatility":"medium"},"price":9.975,"volume":{"bars":60,"last_bar_volume":37412.0,"baseline_avg":248854.5,"bar_rvol":0.150337,"raw_accel":-0.961953,"smooth_accel":0.60283,"accel_momentum":0.008267,"rvol_3bar":[0.748552,4.631552,0.150337],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":10179.0,"sell_vol":13081.0,"unclassified_vol":0.0,"imbalance":-0.124764,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.004388},"context":{"vwap":9.976626,"price_vs_vwap_pct":-0.0163,"ema9":9.983242,"ema20":9.984109,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.65265,"atr":0.028274,"spread_atr":0.353687,"own_change_pct":0.1002,"rel_strength_pct":{"SPY":0.143101,"IWM":0.163301}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.018757},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9bfb81091d69","ts":"2026-09-15T14:31:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.81,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7443,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.663,"trend":"flat","recent_slope_pct":0.0076,"volatility":"medium"},"price":7.745,"volume":{"bars":61,"last_bar_volume":1725.0,"baseline_avg":15773.85,"bar_rvol":0.109358,"raw_accel":-0.724441,"smooth_accel":-0.734173,"accel_momentum":-0.616949,"rvol_3bar":[0.753634,0.397299,0.109358],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":1997.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":0.900095,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.642035},"context":{"vwap":7.744346,"price_vs_vwap_pct":0.008451,"ema9":7.743457,"ema20":7.746134,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":2.913632,"atr":0.022309,"spread_atr":0.448251,"own_change_pct":-0.110968,"rel_strength_pct":{"SPY":-0.068067,"IWM":-0.047867}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.098433},"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":"c83117d210f4","ts":"2026-09-15T14:31:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 125.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 324 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1031,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":0.0049,"volatility":"low"},"price":10.115,"volume":{"bars":61,"last_bar_volume":192104.0,"baseline_avg":43089.1,"bar_rvol":4.458297,"raw_accel":0.994684,"smooth_accel":0.451727,"accel_momentum":-0.054095,"rvol_3bar":[0.149553,2.449027,4.458297],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":10784.0,"sell_vol":198.0,"unclassified_vol":0.0,"imbalance":0.963941,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.405735},"context":{"vwap":10.103063,"price_vs_vwap_pct":0.118149,"ema9":10.118866,"ema20":10.117891,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.022834,"atr":0.014665,"spread_atr":0.68189,"own_change_pct":0.002965,"rel_strength_pct":{"SPY":0.045865,"IWM":0.066065}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":4.297535},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5af698376f5c","ts":"2026-09-15T14:31:15+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.01 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7498,"target":6.87,"target_label":"premarket_high","reward_risk":3.37,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0061,"vwap":6.011,"ext_from_open_pct":-5.12,"max_ext_allowed_pct":3.0,"volume_pace":0.126,"trend":"flat","recent_slope_pct":-0.1816,"volatility":"high"},"price":6.0061,"volume":{"bars":61,"last_bar_volume":10687.0,"baseline_avg":26408.8,"bar_rvol":0.404676,"raw_accel":-0.483545,"smooth_accel":0.182955,"accel_momentum":0.238381,"rvol_3bar":[0.634161,0.776678,0.404676],"trend_3bar":"MIXED","projected_rvol":0.181909},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":153.0,"sell_vol":2703.0,"unclassified_vol":0.0,"imbalance":-0.892857,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":3.510187},"context":{"vwap":6.011024,"price_vs_vwap_pct":-0.081911,"ema9":6.009955,"ema20":5.971405,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.22272,"dist_to_hod_atr":5.933747,"atr":0.115256,"spread_atr":0.433817,"own_change_pct":0.840195,"rel_strength_pct":{"SPY":0.883096,"IWM":0.903296}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.361318},"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":"ae89044c2f71","ts":"2026-09-15T14:31:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $6.33 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.3135,"target":7.07,"target_label":"premarket_high","reward_risk":1.51,"pos_in_5d_range_pct":49.9,"room_to_5d_high_atr":3.5},"price":6.615,"vwap":6.4439,"ext_from_open_pct":4.42,"max_ext_allowed_pct":4.0,"volume_pace":4.875,"trend":"flat","recent_slope_pct":0.5208,"volatility":"high"},"price":6.615,"volume":{"bars":61,"last_bar_volume":91011.0,"baseline_avg":94640.15,"bar_rvol":0.961653,"raw_accel":1.689927,"smooth_accel":0.265837,"accel_momentum":0.765211,"rvol_3bar":[0.244742,0.356974,0.961653],"trend_3bar":"ACCELERATING","projected_rvol":0.868712},"flow":{"window_s":30,"trades":233,"trade_rate":7.766667,"buy_vol":21611.0,"sell_vol":10917.0,"unclassified_vol":0.0,"imbalance":0.328763,"bid":6.59,"ask":6.64,"spread_pct":0.755858,"quote_size_imbalance":null,"quote_age_s":0.86462},"context":{"vwap":6.44296,"price_vs_vwap_pct":2.670205,"ema9":6.515703,"ema20":6.505487,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-3.851744,"dist_to_hod_atr":2.053616,"atr":0.129041,"spread_atr":0.387475,"own_change_pct":1.395349,"rel_strength_pct":{"SPY":1.438249,"IWM":1.458449}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.316156},"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":"0fab75725691","ts":"2026-09-15T14:31:25+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.13x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.7637,"target":6.87,"target_label":"premarket_high","reward_risk":3.32,"pos_in_5d_range_pct":58.1,"room_to_5d_high_atr":3.37},"price":6.02,"vwap":6.011,"ext_from_open_pct":-4.9,"max_ext_allowed_pct":3.0,"volume_pace":0.126,"trend":"flat","recent_slope_pct":-0.1354,"volatility":"high"},"price":6.02,"volume":{"bars":61,"last_bar_volume":10687.0,"baseline_avg":26408.8,"bar_rvol":0.404676,"raw_accel":-0.483545,"smooth_accel":0.182955,"accel_momentum":0.238381,"rvol_3bar":[0.634161,0.776678,0.404676],"trend_3bar":"MIXED","projected_rvol":0.200115},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":890.0,"sell_vol":1409.0,"unclassified_vol":0.0,"imbalance":-0.22575,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":3.8e-05},"context":{"vwap":6.011024,"price_vs_vwap_pct":0.149331,"ema9":6.009955,"ema20":5.971405,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.014948,"dist_to_hod_atr":5.813146,"atr":0.115256,"spread_atr":0.433817,"own_change_pct":0.840195,"rel_strength_pct":{"SPY":0.883096,"IWM":0.903296}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.091356},"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":"d84a7beb2b6d","ts":"2026-09-15T14:31:25+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6536,"target":7.81,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":51.7,"room_to_5d_high_atr":0.75},"price":7.7415,"vwap":7.7443,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.662,"trend":"flat","recent_slope_pct":-0.0014,"volatility":"medium"},"price":7.7415,"volume":{"bars":61,"last_bar_volume":1725.0,"baseline_avg":15773.85,"bar_rvol":0.109358,"raw_accel":-0.724441,"smooth_accel":-0.734173,"accel_momentum":-0.616949,"rvol_3bar":[0.753634,0.397299,0.109358],"trend_3bar":"DECELERATING","projected_rvol":0.764861},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1903.0,"sell_vol":3229.0,"unclassified_vol":0.0,"imbalance":-0.258379,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.571146},"context":{"vwap":7.744346,"price_vs_vwap_pct":-0.036744,"ema9":7.743457,"ema20":7.746134,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.877081,"dist_to_hod_atr":3.07052,"atr":0.022309,"spread_atr":0.448251,"own_change_pct":-0.110968,"rel_strength_pct":{"SPY":-0.068067,"IWM":-0.047867}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.028256},"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":"67ee55f5881f","ts":"2026-09-15T14:31:30+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.00 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7437,"target":6.87,"target_label":"premarket_high","reward_risk":3.39,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0,"vwap":6.011,"ext_from_open_pct":-5.21,"max_ext_allowed_pct":4.0,"volume_pace":0.126,"trend":"flat","recent_slope_pct":-0.2019,"volatility":"high"},"price":6.0,"volume":{"bars":61,"last_bar_volume":10687.0,"baseline_avg":26408.8,"bar_rvol":0.404676,"raw_accel":-0.483545,"smooth_accel":0.182955,"accel_momentum":0.238381,"rvol_3bar":[0.634161,0.776678,0.404676],"trend_3bar":"MIXED","projected_rvol":0.264154},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":2166.0,"sell_vol":1322.0,"unclassified_vol":0.0,"imbalance":0.241972,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":2.230441},"context":{"vwap":6.011024,"price_vs_vwap_pct":-0.183391,"ema9":6.009955,"ema20":5.971405,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.313901,"dist_to_hod_atr":5.986672,"atr":0.115256,"spread_atr":0.433817,"own_change_pct":0.840195,"rel_strength_pct":{"SPY":0.883096,"IWM":0.903296}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.09792},"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":"a11e9684ed62","ts":"2026-09-15T14:31:30+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.81,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7444,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.662,"trend":"flat","recent_slope_pct":0.0076,"volatility":"medium"},"price":7.745,"volume":{"bars":61,"last_bar_volume":1725.0,"baseline_avg":15773.85,"bar_rvol":0.109358,"raw_accel":-0.724441,"smooth_accel":-0.734173,"accel_momentum":-0.616949,"rvol_3bar":[0.753634,0.397299,0.109358],"trend_3bar":"DECELERATING","projected_rvol":0.640554},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":1928.0,"sell_vol":3124.0,"unclassified_vol":0.0,"imbalance":-0.236738,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.003904},"context":{"vwap":7.744346,"price_vs_vwap_pct":0.008451,"ema9":7.743457,"ema20":7.746134,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":2.913632,"atr":0.022309,"spread_atr":0.448251,"own_change_pct":-0.110968,"rel_strength_pct":{"SPY":-0.068067,"IWM":-0.047867}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.025889},"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":"67ae6bed3d49","ts":"2026-09-15T14:31:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.74; R:R 1.74 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 65319 sh","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1031,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.811,"trend":"flat","recent_slope_pct":0.0148,"volatility":"low"},"price":10.12,"volume":{"bars":61,"last_bar_volume":192104.0,"baseline_avg":43089.1,"bar_rvol":4.458297,"raw_accel":0.994684,"smooth_accel":0.451727,"accel_momentum":-0.054095,"rvol_3bar":[0.149553,2.449027,4.458297],"trend_3bar":"ACCELERATING","projected_rvol":0.687923},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":10740.0,"sell_vol":4081.0,"unclassified_vol":0.0,"imbalance":0.449295,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.37664},"context":{"vwap":10.103063,"price_vs_vwap_pct":0.167639,"ema9":10.118866,"ema20":10.117891,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.68189,"atr":0.014665,"spread_atr":0.68189,"own_change_pct":0.002965,"rel_strength_pct":{"SPY":0.045865,"IWM":0.066065}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.00309},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c09ac8811b1","ts":"2026-09-15T14:31:35+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.13x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.7687,"target":6.87,"target_label":"premarket_high","reward_risk":3.3,"pos_in_5d_range_pct":58.2,"room_to_5d_high_atr":3.37},"price":6.025,"vwap":6.011,"ext_from_open_pct":-4.82,"max_ext_allowed_pct":4.0,"volume_pace":0.126,"trend":"flat","recent_slope_pct":-0.1188,"volatility":"high"},"price":6.025,"volume":{"bars":61,"last_bar_volume":10687.0,"baseline_avg":26408.8,"bar_rvol":0.404676,"raw_accel":-0.483545,"smooth_accel":0.182955,"accel_momentum":0.238381,"rvol_3bar":[0.634161,0.776678,0.404676],"trend_3bar":"MIXED","projected_rvol":0.228495},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":2167.0,"sell_vol":352.0,"unclassified_vol":0.0,"imbalance":0.720524,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":3.35411},"context":{"vwap":6.011024,"price_vs_vwap_pct":0.232512,"ema9":6.009955,"ema20":5.971405,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.940209,"dist_to_hod_atr":5.769764,"atr":0.115256,"spread_atr":0.433817,"own_change_pct":0.840195,"rel_strength_pct":{"SPY":0.883096,"IWM":0.903296}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.291579},"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":"782b16116d9f","ts":"2026-09-15T14:31:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 323 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1031,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.812,"trend":"flat","recent_slope_pct":0.0049,"volatility":"low"},"price":10.115,"volume":{"bars":61,"last_bar_volume":192104.0,"baseline_avg":43089.1,"bar_rvol":4.458297,"raw_accel":0.994684,"smooth_accel":0.451727,"accel_momentum":-0.054095,"rvol_3bar":[0.149553,2.449027,4.458297],"trend_3bar":"ACCELERATING","projected_rvol":0.943613},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":19549.0,"sell_vol":4081.0,"unclassified_vol":0.0,"imbalance":0.654592,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.361844},"context":{"vwap":10.103063,"price_vs_vwap_pct":0.118149,"ema9":10.118866,"ema20":10.117891,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.022834,"atr":0.014665,"spread_atr":0.68189,"own_change_pct":0.002965,"rel_strength_pct":{"SPY":0.045865,"IWM":0.066065}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.918364},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d3b01b311978","ts":"2026-09-15T14:31:40+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.8633,"target":10.015,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.49},"price":9.9825,"vwap":9.9767,"ext_from_open_pct":1.55,"max_ext_allowed_pct":3.0,"volume_pace":1.157,"trend":"flat","recent_slope_pct":-0.005,"volatility":"medium"},"price":9.9825,"volume":{"bars":61,"last_bar_volume":83817.0,"baseline_avg":226402.9,"bar_rvol":0.370212,"raw_accel":0.480847,"smooth_accel":1.55339,"accel_momentum":0.95056,"rvol_3bar":[4.631552,0.150337,0.370212],"trend_3bar":"MIXED","projected_rvol":0.421373},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":8506.0,"sell_vol":44049.0,"unclassified_vol":0.0,"imbalance":-0.676301,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.528145},"context":{"vwap":9.976651,"price_vs_vwap_pct":0.05863,"ema9":9.981593,"ema20":9.983241,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.671642,"dist_to_hod_atr":2.407294,"atr":0.02804,"spread_atr":0.356636,"own_change_pct":0.100351,"rel_strength_pct":{"SPY":0.143252,"IWM":0.163452}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.250375},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8f7074dc786","ts":"2026-09-15T14:31:40+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.01 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7495,"target":6.87,"target_label":"premarket_high","reward_risk":3.37,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0058,"vwap":6.011,"ext_from_open_pct":-5.12,"max_ext_allowed_pct":4.0,"volume_pace":0.126,"trend":"flat","recent_slope_pct":-0.1826,"volatility":"high"},"price":6.0058,"volume":{"bars":61,"last_bar_volume":10687.0,"baseline_avg":26408.8,"bar_rvol":0.404676,"raw_accel":-0.483545,"smooth_accel":0.182955,"accel_momentum":0.238381,"rvol_3bar":[0.634161,0.776678,0.404676],"trend_3bar":"MIXED","projected_rvol":0.216973},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":2157.0,"sell_vol":609.0,"unclassified_vol":0.0,"imbalance":0.559653,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":8.35411},"context":{"vwap":6.011024,"price_vs_vwap_pct":-0.086902,"ema9":6.009955,"ema20":5.971405,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.227205,"dist_to_hod_atr":5.93635,"atr":0.115256,"spread_atr":0.433817,"own_change_pct":0.840195,"rel_strength_pct":{"SPY":0.883096,"IWM":0.903296}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.226478},"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":"731177e27976","ts":"2026-09-15T14:31:50+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.13x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":5.7687,"target":6.87,"target_label":"premarket_high","reward_risk":3.3,"pos_in_5d_range_pct":58.2,"room_to_5d_high_atr":3.37},"price":6.025,"vwap":6.011,"ext_from_open_pct":-4.82,"max_ext_allowed_pct":3.0,"volume_pace":0.125,"trend":"flat","recent_slope_pct":-0.1188,"volatility":"high"},"price":6.025,"volume":{"bars":61,"last_bar_volume":10687.0,"baseline_avg":26408.8,"bar_rvol":0.404676,"raw_accel":-0.483545,"smooth_accel":0.182955,"accel_momentum":0.238381,"rvol_3bar":[0.634161,0.776678,0.404676],"trend_3bar":"MIXED","projected_rvol":0.212611},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":2236.0,"sell_vol":1117.0,"unclassified_vol":0.0,"imbalance":0.333731,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":0.037997},"context":{"vwap":6.011024,"price_vs_vwap_pct":0.232512,"ema9":6.009955,"ema20":5.971405,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.940209,"dist_to_hod_atr":5.769764,"atr":0.115256,"spread_atr":0.433817,"own_change_pct":0.840195,"rel_strength_pct":{"SPY":0.883096,"IWM":0.903296}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.135053},"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":"30f48831c0be","ts":"2026-09-15T14:32:05+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8658,"target":10.015,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":22.0,"room_to_5d_high_atr":2.49},"price":9.985,"vwap":9.9768,"ext_from_open_pct":1.58,"max_ext_allowed_pct":3.0,"volume_pace":1.163,"trend":"flat","recent_slope_pct":-0.02,"volatility":"medium"},"price":9.985,"volume":{"bars":62,"last_bar_volume":339890.0,"baseline_avg":208612.45,"bar_rvol":1.629289,"raw_accel":3.055144,"smooth_accel":-0.63713,"accel_momentum":-2.19052,"rvol_3bar":[0.150337,0.370212,1.629289],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":119817.0,"sell_vol":168059.0,"unclassified_vol":0.0,"imbalance":-0.167579,"bid":9.98,"ask":9.99,"spread_pct":0.10015,"quote_size_imbalance":null,"quote_age_s":0.232067},"context":{"vwap":9.976758,"price_vs_vwap_pct":0.082617,"ema9":9.983275,"ema20":9.983885,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.646766,"dist_to_hod_atr":2.354967,"atr":0.027601,"spread_atr":0.362303,"own_change_pct":0.150376,"rel_strength_pct":{"SPY":0.149056,"IWM":0.19594}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.273035},"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":"15aa57d43bc8","ts":"2026-09-15T14:32:05+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.2141,"target":5.43,"target_label":"prev_day_high","reward_risk":3.42,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":1.88},"price":5.2629,"vwap":5.2546,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":4.0,"volume_pace":1.279,"trend":"flat","recent_slope_pct":-0.0249,"volatility":"medium"},"price":5.2629,"volume":{"bars":62,"last_bar_volume":156.0,"baseline_avg":3573.35,"bar_rvol":0.043657,"raw_accel":-0.911765,"smooth_accel":-0.539441,"accel_momentum":0.0278,"rvol_3bar":[0.609296,0.504602,0.043657],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":106.0,"sell_vol":64.0,"unclassified_vol":0.0,"imbalance":0.247059,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":6.585259},"context":{"vwap":5.254596,"price_vs_vwap_pct":0.158031,"ema9":5.258446,"ema20":5.251207,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.629047,"dist_to_hod_atr":7.320812,"atr":0.01941,"spread_atr":0.515187,"own_change_pct":-0.190114,"rel_strength_pct":{"SPY":-0.191434,"IWM":-0.14455}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.010786},"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":"0dd0a2e1b7d0","ts":"2026-09-15T14:32:10+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.25 below VWAP $5.25","plan":{"state":"PASS","setup":"","stop":5.1889,"target":5.43,"target_label":"prev_day_high","reward_risk":3.28,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.2452,"vwap":5.2546,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":4.0,"volume_pace":1.278,"trend":"flat","recent_slope_pct":-0.0923,"volatility":"medium"},"price":5.2452,"volume":{"bars":62,"last_bar_volume":156.0,"baseline_avg":3573.35,"bar_rvol":0.043657,"raw_accel":-0.911765,"smooth_accel":-0.539441,"accel_momentum":0.0278,"rvol_3bar":[0.609296,0.504602,0.043657],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":107.0,"sell_vol":72.0,"unclassified_vol":0.0,"imbalance":0.195531,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.751947},"context":{"vwap":5.254596,"price_vs_vwap_pct":-0.178817,"ema9":5.258446,"ema20":5.251207,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.956522,"dist_to_hod_atr":8.232694,"atr":0.01941,"spread_atr":0.515187,"own_change_pct":-0.190114,"rel_strength_pct":{"SPY":-0.191434,"IWM":-0.14455}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.008536},"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":"222914d80a72","ts":"2026-09-15T14:32:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.74; R:R 1.74 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 65144 sh","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1032,"ext_from_open_pct":0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":0.0068,"volatility":"low"},"price":10.12,"volume":{"bars":62,"last_bar_volume":37076.0,"baseline_avg":51481.85,"bar_rvol":0.720176,"raw_accel":-0.807,"smooth_accel":1.380429,"accel_momentum":0.928702,"rvol_3bar":[2.449027,4.458297,0.720176],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":4034.0,"sell_vol":6623.0,"unclassified_vol":0.0,"imbalance":-0.242939,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.535381},"context":{"vwap":10.10319,"price_vs_vwap_pct":0.166382,"ema9":10.118093,"ema20":10.117615,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.697744,"atr":0.014332,"spread_atr":0.697744,"own_change_pct":-0.025698,"rel_strength_pct":{"SPY":-0.027018,"IWM":0.019867}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.174959},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c2404936c61d","ts":"2026-09-15T14:32:15+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6542,"target":7.81,"target_label":"ceiling","reward_risk":0.77,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":0.75},"price":7.7421,"vwap":7.7444,"ext_from_open_pct":0.55,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":-0.0041,"volatility":"medium"},"price":7.7421,"volume":{"bars":62,"last_bar_volume":6612.0,"baseline_avg":14054.7,"bar_rvol":0.470448,"raw_accel":0.88179,"smooth_accel":-0.759653,"accel_momentum":-0.02548,"rvol_3bar":[0.397299,0.109358,0.470448],"trend_3bar":"MIXED","projected_rvol":0.09335},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":211.0,"sell_vol":219.0,"unclassified_vol":0.0,"imbalance":-0.018605,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":11.596232},"context":{"vwap":7.744353,"price_vs_vwap_pct":-0.029095,"ema9":7.743766,"ema20":7.746026,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.869398,"dist_to_hod_atr":3.183352,"atr":0.02133,"spread_atr":0.468829,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.00132,"IWM":0.045564}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.008753},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e12662ef3808","ts":"2026-09-15T14:32:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.81,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7444,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.654,"trend":"flat","recent_slope_pct":0.0034,"volatility":"medium"},"price":7.745,"volume":{"bars":62,"last_bar_volume":6612.0,"baseline_avg":14054.7,"bar_rvol":0.470448,"raw_accel":0.88179,"smooth_accel":-0.759653,"accel_momentum":-0.02548,"rvol_3bar":[0.397299,0.109358,0.470448],"trend_3bar":"MIXED","projected_rvol":0.073},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":225.0,"sell_vol":219.0,"unclassified_vol":0.0,"imbalance":0.013514,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":16.596232},"context":{"vwap":7.744353,"price_vs_vwap_pct":0.008351,"ema9":7.743766,"ema20":7.746026,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":3.047391,"atr":0.02133,"spread_atr":0.468829,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.00132,"IWM":0.045564}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.006357},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c43476590c46","ts":"2026-09-15T14:32:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.80; target 0.08 away > ~0.08 reachable in 323 min","plan":{"state":"PASS","setup":"","stop":10.0714,"target":10.2,"target_label":"prev_day_high","reward_risk":1.8,"pos_in_5d_range_pct":11.5,"room_to_5d_high_atr":4.07},"price":10.1173,"vwap":10.1032,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.805,"trend":"flat","recent_slope_pct":0.0015,"volatility":"low"},"price":10.1173,"volume":{"bars":62,"last_bar_volume":37076.0,"baseline_avg":51481.85,"bar_rvol":0.720176,"raw_accel":-0.807,"smooth_accel":1.380429,"accel_momentum":0.928702,"rvol_3bar":[2.449027,4.458297,0.720176],"trend_3bar":"MIXED","projected_rvol":0.079892},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":4243.0,"sell_vol":4444.0,"unclassified_vol":0.0,"imbalance":-0.023138,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":6.02878},"context":{"vwap":10.10319,"price_vs_vwap_pct":0.139658,"ema9":10.118093,"ema20":10.117615,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.12537,"dist_to_hod_atr":0.886135,"atr":0.014332,"spread_atr":0.697744,"own_change_pct":-0.025698,"rel_strength_pct":{"SPY":-0.027018,"IWM":0.019867}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.016663},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f8095fe279a2","ts":"2026-09-15T14:32:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1032,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":0.0068,"volatility":"low"},"price":10.12,"volume":{"bars":62,"last_bar_volume":37076.0,"baseline_avg":51481.85,"bar_rvol":0.720176,"raw_accel":-0.807,"smooth_accel":1.380429,"accel_momentum":0.928702,"rvol_3bar":[2.449027,4.458297,0.720176],"trend_3bar":"MIXED","projected_rvol":0.057846},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":992.0,"sell_vol":497.0,"unclassified_vol":0.0,"imbalance":0.332438,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.792406},"context":{"vwap":10.10319,"price_vs_vwap_pct":0.166382,"ema9":10.118093,"ema20":10.117615,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.697744,"atr":0.014332,"spread_atr":0.697744,"own_change_pct":-0.025698,"rel_strength_pct":{"SPY":-0.027018,"IWM":0.019867}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.239414},"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":"f25d38912bda","ts":"2026-09-15T14:32:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0666,"target":10.2,"target_label":"prev_day_high","reward_risk":1.91,"pos_in_5d_range_pct":10.9,"room_to_5d_high_atr":4.1},"price":10.1125,"vwap":10.1032,"ext_from_open_pct":0.22,"max_ext_allowed_pct":4.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.008,"volatility":"low"},"price":10.1125,"volume":{"bars":62,"last_bar_volume":37076.0,"baseline_avg":51481.85,"bar_rvol":0.720176,"raw_accel":-0.807,"smooth_accel":1.380429,"accel_momentum":0.928702,"rvol_3bar":[2.449027,4.458297,0.720176],"trend_3bar":"MIXED","projected_rvol":0.054577},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1021.0,"sell_vol":180.0,"unclassified_vol":0.0,"imbalance":0.70025,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":2.220258},"context":{"vwap":10.10319,"price_vs_vwap_pct":0.092148,"ema9":10.118093,"ema20":10.117615,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.172754,"dist_to_hod_atr":1.221052,"atr":0.014332,"spread_atr":0.697744,"own_change_pct":-0.025698,"rel_strength_pct":{"SPY":-0.027018,"IWM":0.019867}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.504303},"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":"3558088b46c8","ts":"2026-09-15T14:32:40+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.00 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7437,"target":6.87,"target_label":"premarket_high","reward_risk":3.39,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0,"vwap":6.0111,"ext_from_open_pct":-5.21,"max_ext_allowed_pct":3.0,"volume_pace":0.124,"trend":"flat","recent_slope_pct":-0.194,"volatility":"high"},"price":6.0,"volume":{"bars":62,"last_bar_volume":5237.0,"baseline_avg":25343.15,"bar_rvol":0.206644,"raw_accel":-0.509965,"smooth_accel":-0.242386,"accel_momentum":-0.425341,"rvol_3bar":[0.776678,0.404676,0.206644],"trend_3bar":"DECELERATING","projected_rvol":0.36205},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":286.0,"sell_vol":4134.0,"unclassified_vol":0.0,"imbalance":-0.870588,"bid":6.0,"ask":6.02,"spread_pct":0.332779,"quote_size_imbalance":null,"quote_age_s":4.261086},"context":{"vwap":6.011046,"price_vs_vwap_pct":-0.183758,"ema9":6.013964,"ema20":5.976986,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.313901,"dist_to_hod_atr":6.300021,"atr":0.109523,"spread_atr":0.182609,"own_change_pct":1.005025,"rel_strength_pct":{"SPY":1.003705,"IWM":1.05059}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.179901},"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":"66932655e7d6","ts":"2026-09-15T14:33:00+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2785,"target":7.07,"target_label":"premarket_high","reward_risk":1.63,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":3.53},"price":6.58,"vwap":6.4496,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":4.89,"trend":"flat","recent_slope_pct":0.4652,"volatility":"high"},"price":6.58,"volume":{"bars":62,"last_bar_volume":79300.0,"baseline_avg":98027.0,"bar_rvol":0.808961,"raw_accel":-0.128677,"smooth_accel":0.95693,"accel_momentum":0.691093,"rvol_3bar":[0.356974,0.961653,0.808961],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":416,"trade_rate":13.866667,"buy_vol":20280.0,"sell_vol":20550.0,"unclassified_vol":0.0,"imbalance":-0.006613,"bid":6.58,"ask":6.63,"spread_pct":0.757002,"quote_size_imbalance":null,"quote_age_s":2.089803},"context":{"vwap":6.446702,"price_vs_vwap_pct":2.067692,"ema9":6.542563,"ema20":6.51925,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.360465,"dist_to_hod_atr":2.201917,"atr":0.136245,"spread_atr":0.366986,"own_change_pct":3.90625,"rel_strength_pct":{"SPY":3.930672,"IWM":3.937462}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.005349},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol","spread"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"11a82ac14e77","ts":"2026-09-15T14:33:00+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6536,"target":7.81,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":51.7,"room_to_5d_high_atr":0.75},"price":7.7415,"vwap":7.7444,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.647,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":7.7415,"volume":{"bars":62,"last_bar_volume":6612.0,"baseline_avg":14054.7,"bar_rvol":0.470448,"raw_accel":0.88179,"smooth_accel":-0.759653,"accel_momentum":-0.02548,"rvol_3bar":[0.397299,0.109358,0.470448],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":3.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":-0.76,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.003846},"context":{"vwap":7.744353,"price_vs_vwap_pct":-0.036843,"ema9":7.743766,"ema20":7.746026,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.877081,"dist_to_hod_atr":3.211482,"atr":0.02133,"spread_atr":0.468829,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.024422,"IWM":0.031212}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.35754},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b91534314827","ts":"2026-09-15T14:33:05+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $6.33 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.2985,"target":7.07,"target_label":"premarket_high","reward_risk":1.56,"pos_in_5d_range_pct":49.8,"room_to_5d_high_atr":3.52},"price":6.6,"vwap":6.4497,"ext_from_open_pct":4.18,"max_ext_allowed_pct":4.0,"volume_pace":4.884,"trend":"flat","recent_slope_pct":0.2888,"volatility":"high"},"price":6.6,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":209,"trade_rate":6.966667,"buy_vol":8306.0,"sell_vol":14345.0,"unclassified_vol":0.0,"imbalance":-0.266611,"bid":6.57,"ask":6.63,"spread_pct":0.909091,"quote_size_imbalance":null,"quote_age_s":2.09555},"context":{"vwap":6.449639,"price_vs_vwap_pct":2.331304,"ema9":6.55005,"ema20":6.525036,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.069767,"dist_to_hod_atr":2.029843,"atr":0.137942,"spread_atr":0.434966,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.171601},"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":"5bf5c0fcedca","ts":"2026-09-15T14:33:05+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.8584,"target":10.015,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":2.5},"price":9.9776,"vwap":9.9768,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":1.147,"trend":"flat","recent_slope_pct":-0.0248,"volatility":"medium"},"price":9.9776,"volume":{"bars":63,"last_bar_volume":46789.0,"baseline_avg":206428.15,"bar_rvol":0.22666,"raw_accel":-0.862341,"smooth_accel":-0.607341,"accel_momentum":0.029789,"rvol_3bar":[0.370212,1.629289,0.22666],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":11991.0,"sell_vol":28477.0,"unclassified_vol":0.0,"imbalance":-0.407384,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":1.457602},"context":{"vwap":9.976762,"price_vs_vwap_pct":0.008403,"ema9":9.98162,"ema20":9.983039,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.720398,"dist_to_hod_atr":2.665152,"atr":0.027165,"spread_atr":0.368115,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.024422,"IWM":0.031212}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.092338},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4e8b760fd894","ts":"2026-09-15T14:33:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.81,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7444,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.647,"trend":"flat","recent_slope_pct":0.0001,"volatility":"medium"},"price":7.745,"volume":{"bars":63,"last_bar_volume":769.0,"baseline_avg":14258.4,"bar_rvol":0.053933,"raw_accel":-0.883696,"smooth_accel":-0.812472,"accel_momentum":-0.052819,"rvol_3bar":[0.109358,0.470448,0.053933],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":200.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.801802,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":3.267368},"context":{"vwap":7.744353,"price_vs_vwap_pct":0.008358,"ema9":7.743313,"ema20":7.745595,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":3.205508,"atr":0.020278,"spread_atr":0.493155,"own_change_pct":0.007751,"rel_strength_pct":{"SPY":0.032173,"IWM":0.038963}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.043244},"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":"36317e8de611","ts":"2026-09-15T14:33:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1032,"ext_from_open_pct":0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.001,"volatility":"low"},"price":10.12,"volume":{"bars":63,"last_bar_volume":5448.0,"baseline_avg":51939.45,"bar_rvol":0.104891,"raw_accel":-0.853059,"smooth_accel":0.209585,"accel_momentum":-1.170845,"rvol_3bar":[4.458297,0.720176,0.104891],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1450.0,"sell_vol":2579.0,"unclassified_vol":0.0,"imbalance":-0.280218,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.662667},"context":{"vwap":10.10321,"price_vs_vwap_pct":0.166186,"ema9":10.117915,"ema20":10.117576,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.711329,"atr":0.014058,"spread_atr":0.711329,"own_change_pct":0.02175,"rel_strength_pct":{"SPY":0.046172,"IWM":0.052962}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.029392},"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":"1d7f8801a0f2","ts":"2026-09-15T14:33:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.57,"target":7.93,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.18},"price":7.7809,"vwap":7.7601,"ext_from_open_pct":1.05,"max_ext_allowed_pct":3.0,"volume_pace":0.431,"trend":"flat","recent_slope_pct":-0.1042,"volatility":"high"},"price":7.7809,"volume":{"bars":63,"last_bar_volume":12059.0,"baseline_avg":11396.7,"bar_rvol":1.058113,"raw_accel":-0.397261,"smooth_accel":0.192961,"accel_momentum":-1.003465,"rvol_3bar":[0.923622,1.745256,1.058113],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2801.0,"sell_vol":901.0,"unclassified_vol":0.0,"imbalance":0.513236,"bid":7.78,"ask":7.79,"spread_pct":0.128452,"quote_size_imbalance":null,"quote_age_s":4.569485},"context":{"vwap":7.76006,"price_vs_vwap_pct":0.268553,"ema9":7.775743,"ema20":7.745863,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-2.25,"dist_to_hod_atr":3.37755,"atr":0.053027,"spread_atr":0.188585,"own_change_pct":0.016707,"rel_strength_pct":{"SPY":0.041129,"IWM":0.04792}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.543062},"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":"f64e5d849493","ts":"2026-09-15T14:33:10+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2773,"target":7.07,"target_label":"premarket_high","reward_risk":1.63,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":3.53},"price":6.5788,"vwap":6.4497,"ext_from_open_pct":3.85,"max_ext_allowed_pct":4.0,"volume_pace":4.88,"trend":"flat","recent_slope_pct":0.2245,"volatility":"high"},"price":6.5788,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":220,"trade_rate":7.333333,"buy_vol":8801.0,"sell_vol":14678.0,"unclassified_vol":0.0,"imbalance":-0.250309,"bid":6.57,"ask":6.58,"spread_pct":0.152091,"quote_size_imbalance":null,"quote_age_s":0.313409},"context":{"vwap":6.449639,"price_vs_vwap_pct":2.002604,"ema9":6.55005,"ema20":6.525036,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.377907,"dist_to_hod_atr":2.183531,"atr":0.137942,"spread_atr":0.072494,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.161108},"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":"8878ba540d17","ts":"2026-09-15T14:33:10+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9768,"ext_from_open_pct":1.48,"max_ext_allowed_pct":4.0,"volume_pace":1.146,"trend":"flat","recent_slope_pct":-0.0301,"volatility":"medium"},"price":9.975,"volume":{"bars":63,"last_bar_volume":46789.0,"baseline_avg":206428.15,"bar_rvol":0.22666,"raw_accel":-0.862341,"smooth_accel":-0.607341,"accel_momentum":0.029789,"rvol_3bar":[0.370212,1.629289,0.22666],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":12292.0,"sell_vol":27897.0,"unclassified_vol":0.0,"imbalance":-0.38829,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.338051},"context":{"vwap":9.976762,"price_vs_vwap_pct":-0.017658,"ema9":9.98162,"ema20":9.983039,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.760862,"atr":0.027165,"spread_atr":0.368115,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.024422,"IWM":0.031212}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.08801},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"75958f5ea4f6","ts":"2026-09-15T14:33:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.067,"target":10.2,"target_label":"prev_day_high","reward_risk":1.9,"pos_in_5d_range_pct":11.0,"room_to_5d_high_atr":4.1},"price":10.1129,"vwap":10.1032,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":-0.013,"volatility":"low"},"price":10.1129,"volume":{"bars":63,"last_bar_volume":5448.0,"baseline_avg":51939.45,"bar_rvol":0.104891,"raw_accel":-0.853059,"smooth_accel":0.209585,"accel_momentum":-1.170845,"rvol_3bar":[4.458297,0.720176,0.104891],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1411.0,"sell_vol":2866.0,"unclassified_vol":0.0,"imbalance":-0.340192,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.416336},"context":{"vwap":10.10321,"price_vs_vwap_pct":0.095911,"ema9":10.117915,"ema20":10.117576,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.168806,"dist_to_hod_atr":1.216372,"atr":0.014058,"spread_atr":0.711329,"own_change_pct":0.02175,"rel_strength_pct":{"SPY":0.046172,"IWM":0.052962}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.035683},"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":"7003785acd4d","ts":"2026-09-15T14:33:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.2335,"target":7.07,"target_label":"premarket_high","reward_risk":1.77,"pos_in_5d_range_pct":49.0,"room_to_5d_high_atr":3.57},"price":6.535,"vwap":6.45,"ext_from_open_pct":3.16,"max_ext_allowed_pct":4.0,"volume_pace":4.886,"trend":"flat","recent_slope_pct":0.0914,"volatility":"high"},"price":6.535,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":0.513476},"flow":{"window_s":30,"trades":317,"trade_rate":10.566667,"buy_vol":9604.0,"sell_vol":21858.0,"unclassified_vol":0.0,"imbalance":-0.389486,"bid":6.5,"ask":6.57,"spread_pct":1.071155,"quote_size_imbalance":null,"quote_age_s":0.208311},"context":{"vwap":6.449639,"price_vs_vwap_pct":1.323496,"ema9":6.55005,"ema20":6.525036,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.014535,"dist_to_hod_atr":2.501056,"atr":0.137942,"spread_atr":0.507461,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.250688},"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":"507fea4289b1","ts":"2026-09-15T14:33:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2685,"target":7.07,"target_label":"premarket_high","reward_risk":1.66,"pos_in_5d_range_pct":49.4,"room_to_5d_high_atr":3.54},"price":6.57,"vwap":6.4502,"ext_from_open_pct":3.71,"max_ext_allowed_pct":4.0,"volume_pace":4.888,"trend":"flat","recent_slope_pct":0.1978,"volatility":"high"},"price":6.57,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":0.596163},"flow":{"window_s":30,"trades":281,"trade_rate":9.366667,"buy_vol":7495.0,"sell_vol":22881.0,"unclassified_vol":0.0,"imbalance":-0.506518,"bid":6.52,"ask":6.58,"spread_pct":0.916031,"quote_size_imbalance":null,"quote_age_s":0.622432},"context":{"vwap":6.449639,"price_vs_vwap_pct":1.866162,"ema9":6.55005,"ema20":6.525036,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.505814,"dist_to_hod_atr":2.247326,"atr":0.137942,"spread_atr":0.434966,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.326015},"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":"1e0c983ab94e","ts":"2026-09-15T14:33:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0727,"target":10.2,"target_label":"prev_day_high","reward_risk":1.77,"pos_in_5d_range_pct":11.7,"room_to_5d_high_atr":4.07},"price":10.1186,"vwap":10.1032,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":-0.0018,"volatility":"low"},"price":10.1186,"volume":{"bars":63,"last_bar_volume":5448.0,"baseline_avg":51939.45,"bar_rvol":0.104891,"raw_accel":-0.853059,"smooth_accel":0.209585,"accel_momentum":-1.170845,"rvol_3bar":[4.458297,0.720176,0.104891],"trend_3bar":"DECELERATING","projected_rvol":0.360766},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":759.0,"sell_vol":5669.0,"unclassified_vol":0.0,"imbalance":-0.763846,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":5.65303},"context":{"vwap":10.10321,"price_vs_vwap_pct":0.152329,"ema9":10.117915,"ema20":10.117576,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.112537,"dist_to_hod_atr":0.810915,"atr":0.014058,"spread_atr":0.711329,"own_change_pct":0.02175,"rel_strength_pct":{"SPY":0.046172,"IWM":0.052962}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.080121},"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":"2efae0afb731","ts":"2026-09-15T14:33:30+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.21% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.2685,"target":7.07,"target_label":"premarket_high","reward_risk":1.66,"pos_in_5d_range_pct":49.4,"room_to_5d_high_atr":3.54},"price":6.57,"vwap":6.4504,"ext_from_open_pct":3.71,"max_ext_allowed_pct":4.0,"volume_pace":4.883,"trend":"flat","recent_slope_pct":0.1978,"volatility":"high"},"price":6.57,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":0.512002},"flow":{"window_s":30,"trades":264,"trade_rate":8.8,"buy_vol":9832.0,"sell_vol":15862.0,"unclassified_vol":0.0,"imbalance":-0.234685,"bid":6.55,"ask":6.63,"spread_pct":1.213961,"quote_size_imbalance":null,"quote_age_s":0.411713},"context":{"vwap":6.449639,"price_vs_vwap_pct":1.866162,"ema9":6.55005,"ema20":6.525036,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.505814,"dist_to_hod_atr":2.247326,"atr":0.137942,"spread_atr":0.579955,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.151052},"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":"f530d696cb26","ts":"2026-09-15T14:33:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.74 below VWAP $7.74","plan":{"state":"PASS","setup":"","stop":7.6521,"target":7.81,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":0.75},"price":7.74,"vwap":7.7443,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.65,"trend":"flat","recent_slope_pct":-0.0128,"volatility":"medium"},"price":7.74,"volume":{"bars":63,"last_bar_volume":769.0,"baseline_avg":14258.4,"bar_rvol":0.053933,"raw_accel":-0.883696,"smooth_accel":-0.812472,"accel_momentum":-0.052819,"rvol_3bar":[0.109358,0.470448,0.053933],"trend_3bar":"MIXED","projected_rvol":1.52175},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1985.0,"sell_vol":10472.0,"unclassified_vol":0.0,"imbalance":-0.681304,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":0.666727},"context":{"vwap":7.744353,"price_vs_vwap_pct":-0.056205,"ema9":7.743313,"ema20":7.745595,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.896287,"dist_to_hod_atr":3.452086,"atr":0.020278,"spread_atr":0.493155,"own_change_pct":0.007751,"rel_strength_pct":{"SPY":0.032173,"IWM":0.038963}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.036745},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f7052ed2b636","ts":"2026-09-15T14:33:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 321 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1033,"ext_from_open_pct":0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"low"},"price":10.115,"volume":{"bars":63,"last_bar_volume":5448.0,"baseline_avg":51939.45,"bar_rvol":0.104891,"raw_accel":-0.853059,"smooth_accel":0.209585,"accel_momentum":-1.170845,"rvol_3bar":[4.458297,0.720176,0.104891],"trend_3bar":"DECELERATING","projected_rvol":0.638656},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":12477.0,"sell_vol":6653.0,"unclassified_vol":0.0,"imbalance":0.304443,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":3.353058},"context":{"vwap":10.10321,"price_vs_vwap_pct":0.116697,"ema9":10.117915,"ema20":10.117576,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.066993,"atr":0.014058,"spread_atr":0.711329,"own_change_pct":0.02175,"rel_strength_pct":{"SPY":0.046172,"IWM":0.052962}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.031933},"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":"aaf50689c006","ts":"2026-09-15T14:33:40+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2785,"target":7.07,"target_label":"premarket_high","reward_risk":1.63,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":3.53},"price":6.58,"vwap":6.4505,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":4.875,"trend":"flat","recent_slope_pct":0.2281,"volatility":"high"},"price":6.58,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":0.446308},"flow":{"window_s":30,"trades":251,"trade_rate":8.366667,"buy_vol":11670.0,"sell_vol":15670.0,"unclassified_vol":0.0,"imbalance":-0.146306,"bid":6.56,"ask":6.62,"spread_pct":0.91047,"quote_size_imbalance":null,"quote_age_s":2.39057},"context":{"vwap":6.449639,"price_vs_vwap_pct":2.02121,"ema9":6.55005,"ema20":6.525036,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.360465,"dist_to_hod_atr":2.174832,"atr":0.137942,"spread_atr":0.434966,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.094168},"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":"71cecc7b3f0f","ts":"2026-09-15T14:33:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $6.33 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":6.3185,"target":7.07,"target_label":"premarket_high","reward_risk":1.49,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":3.5},"price":6.62,"vwap":6.4507,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":4.872,"trend":"flat","recent_slope_pct":0.3494,"volatility":"high"},"price":6.62,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":0.430394},"flow":{"window_s":30,"trades":186,"trade_rate":6.2,"buy_vol":10261.0,"sell_vol":9253.0,"unclassified_vol":0.0,"imbalance":0.051655,"bid":6.56,"ask":6.62,"spread_pct":0.91047,"quote_size_imbalance":null,"quote_age_s":1.65087},"context":{"vwap":6.449639,"price_vs_vwap_pct":2.641399,"ema9":6.55005,"ema20":6.525036,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-3.77907,"dist_to_hod_atr":1.884854,"atr":0.137942,"spread_atr":0.434966,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.033247},"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":"55a27900181b","ts":"2026-09-15T14:33:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.74; R:R 1.74 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 63260 sh","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1033,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.001,"volatility":"low"},"price":10.12,"volume":{"bars":63,"last_bar_volume":5448.0,"baseline_avg":51939.45,"bar_rvol":0.104891,"raw_accel":-0.853059,"smooth_accel":0.209585,"accel_momentum":-1.170845,"rvol_3bar":[4.458297,0.720176,0.104891],"trend_3bar":"DECELERATING","projected_rvol":0.582833},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":14192.0,"sell_vol":7275.0,"unclassified_vol":0.0,"imbalance":0.322215,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":3.336939},"context":{"vwap":10.10321,"price_vs_vwap_pct":0.166186,"ema9":10.117915,"ema20":10.117576,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.711329,"atr":0.014058,"spread_atr":0.711329,"own_change_pct":0.02175,"rel_strength_pct":{"SPY":0.046172,"IWM":0.052962}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.033798},"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":"d16715751452","ts":"2026-09-15T14:33:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2785,"target":7.07,"target_label":"premarket_high","reward_risk":1.63,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":3.53},"price":6.58,"vwap":6.4506,"ext_from_open_pct":3.87,"max_ext_allowed_pct":4.0,"volume_pace":4.866,"trend":"flat","recent_slope_pct":0.2281,"volatility":"high"},"price":6.58,"volume":{"bars":63,"last_bar_volume":64600.0,"baseline_avg":100366.85,"bar_rvol":0.643639,"raw_accel":-0.185372,"smooth_accel":1.522832,"accel_momentum":0.565902,"rvol_3bar":[0.961653,0.808961,0.643639],"trend_3bar":"DECELERATING","projected_rvol":0.390846},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":8602.0,"sell_vol":4143.0,"unclassified_vol":0.0,"imbalance":0.349863,"bid":6.57,"ask":6.6,"spread_pct":0.455581,"quote_size_imbalance":null,"quote_age_s":0.350314},"context":{"vwap":6.449639,"price_vs_vwap_pct":2.02121,"ema9":6.55005,"ema20":6.525036,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.360465,"dist_to_hod_atr":2.174832,"atr":0.137942,"spread_atr":0.217483,"own_change_pct":1.700155,"rel_strength_pct":{"SPY":1.724576,"IWM":1.731367}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.225185},"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":"7d9d45ca27e0","ts":"2026-09-15T14:33:50+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 321 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1033,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"low"},"price":10.115,"volume":{"bars":63,"last_bar_volume":5448.0,"baseline_avg":51939.45,"bar_rvol":0.104891,"raw_accel":-0.853059,"smooth_accel":0.209585,"accel_momentum":-1.170845,"rvol_3bar":[4.458297,0.720176,0.104891],"trend_3bar":"DECELERATING","projected_rvol":0.545528},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":15094.0,"sell_vol":2272.0,"unclassified_vol":0.0,"imbalance":0.738339,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.71313},"context":{"vwap":10.10321,"price_vs_vwap_pct":0.116697,"ema9":10.117915,"ema20":10.117576,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.066993,"atr":0.014058,"spread_atr":0.711329,"own_change_pct":0.02175,"rel_strength_pct":{"SPY":0.046172,"IWM":0.052962}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.077445},"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":"f0a859b5746e","ts":"2026-09-15T14:33:55+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.8608,"target":10.015,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.5},"price":9.98,"vwap":9.9768,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":1.135,"trend":"flat","recent_slope_pct":-0.02,"volatility":"medium"},"price":9.98,"volume":{"bars":63,"last_bar_volume":46789.0,"baseline_avg":206428.15,"bar_rvol":0.22666,"raw_accel":-0.862341,"smooth_accel":-0.607341,"accel_momentum":0.029789,"rvol_3bar":[0.370212,1.629289,0.22666],"trend_3bar":"MIXED","projected_rvol":0.270566},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":359.0,"sell_vol":19763.0,"unclassified_vol":0.0,"imbalance":-0.964318,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.053571},"context":{"vwap":9.976762,"price_vs_vwap_pct":0.032459,"ema9":9.98162,"ema20":9.983039,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.696517,"dist_to_hod_atr":2.576804,"atr":0.027165,"spread_atr":0.368115,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.024422,"IWM":0.031212}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.218572},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ae1f39c458d1","ts":"2026-09-15T14:33:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.75; R:R 1.75 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 63260 sh","plan":{"state":"WATCH","setup":"","stop":10.0739,"target":10.2,"target_label":"prev_day_high","reward_risk":1.75,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.1198,"vwap":10.1034,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":0.0006,"volatility":"low"},"price":10.1198,"volume":{"bars":63,"last_bar_volume":5448.0,"baseline_avg":51939.45,"bar_rvol":0.104891,"raw_accel":-0.853059,"smooth_accel":0.209585,"accel_momentum":-1.170845,"rvol_3bar":[4.458297,0.720176,0.104891],"trend_3bar":"DECELERATING","projected_rvol":1.052778},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":35015.0,"sell_vol":2172.0,"unclassified_vol":0.0,"imbalance":0.883185,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.622565},"context":{"vwap":10.10321,"price_vs_vwap_pct":0.164206,"ema9":10.117915,"ema20":10.117576,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.100691,"dist_to_hod_atr":0.725555,"atr":0.014058,"spread_atr":0.711329,"own_change_pct":0.02175,"rel_strength_pct":{"SPY":0.046172,"IWM":0.052962}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.092638},"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":"c1642ac19645","ts":"2026-09-15T14:34:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8558,"target":10.015,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.51},"price":9.975,"vwap":9.9768,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.133,"trend":"flat","recent_slope_pct":-0.0301,"volatility":"medium"},"price":9.975,"volume":{"bars":63,"last_bar_volume":46789.0,"baseline_avg":206428.15,"bar_rvol":0.22666,"raw_accel":-0.862341,"smooth_accel":-0.607341,"accel_momentum":0.029789,"rvol_3bar":[0.370212,1.629289,0.22666],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":335.0,"sell_vol":23926.0,"unclassified_vol":0.0,"imbalance":-0.972384,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.004322},"context":{"vwap":9.976762,"price_vs_vwap_pct":-0.017658,"ema9":9.98162,"ema20":9.983039,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.746269,"dist_to_hod_atr":2.760862,"atr":0.027165,"spread_atr":0.368115,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.039596,"IWM":0.02104}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.2204},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e9887a05476e","ts":"2026-09-15T14:34:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.8608,"target":10.015,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.5},"price":9.98,"vwap":9.9768,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":1.136,"trend":"flat","recent_slope_pct":-0.005,"volatility":"medium"},"price":9.98,"volume":{"bars":64,"last_bar_volume":56255.0,"baseline_avg":202517.6,"bar_rvol":0.277778,"raw_accel":0.111113,"smooth_accel":-0.598991,"accel_momentum":0.00835,"rvol_3bar":[1.629289,0.22666,0.277778],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":50335.0,"sell_vol":47443.0,"unclassified_vol":0.0,"imbalance":0.029577,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.242386},"context":{"vwap":9.976767,"price_vs_vwap_pct":0.032408,"ema9":9.980296,"ema20":9.982273,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.696517,"dist_to_hod_atr":2.615073,"atr":0.026768,"spread_atr":0.373582,"own_change_pct":-0.2001,"rel_strength_pct":{"SPY":-0.160504,"IWM":-0.17906}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.008216},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f25b03252a68","ts":"2026-09-15T14:34:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 321 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1034,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":-0.005,"volatility":"low"},"price":10.115,"volume":{"bars":64,"last_bar_volume":50175.0,"baseline_avg":48231.4,"bar_rvol":1.040297,"raw_accel":3.16119,"smooth_accel":-0.685211,"accel_momentum":-0.894796,"rvol_3bar":[0.720176,0.104891,1.040297],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":30478.0,"sell_vol":1173.0,"unclassified_vol":0.0,"imbalance":0.925879,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.291971},"context":{"vwap":10.1034,"price_vs_vwap_pct":0.114815,"ema9":10.118312,"ema20":10.117797,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.089457,"atr":0.013768,"spread_atr":0.726305,"own_change_pct":0.048443,"rel_strength_pct":{"SPY":0.088039,"IWM":0.069483}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.96319},"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":"25893e7703a6","ts":"2026-09-15T14:34:05+00:00","symbol":"RUM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.57,"target":7.93,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":1.15},"price":7.8017,"vwap":7.7601,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.425,"trend":"flat","recent_slope_pct":0.0146,"volatility":"high"},"price":7.8017,"volume":{"bars":64,"last_bar_volume":1140.0,"baseline_avg":11424.5,"bar_rvol":0.099786,"raw_accel":-0.905465,"smooth_accel":-0.185329,"accel_momentum":-0.37829,"rvol_3bar":[1.745256,1.058113,0.099786],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1585.0,"sell_vol":234.0,"unclassified_vol":0.0,"imbalance":0.742716,"bid":7.8,"ask":7.82,"spread_pct":0.256082,"quote_size_imbalance":null,"quote_age_s":0.945985},"context":{"vwap":7.760082,"price_vs_vwap_pct":0.536311,"ema9":7.780894,"ema20":7.751162,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-1.988693,"dist_to_hod_atr":3.117255,"atr":0.050782,"spread_atr":0.393841,"own_change_pct":0.083387,"rel_strength_pct":{"SPY":0.122982,"IWM":0.104427}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.074112},"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":"2a11c13caafe","ts":"2026-09-15T14:34:10+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8508,"target":10.015,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":21.1,"room_to_5d_high_atr":2.52},"price":9.97,"vwap":9.9768,"ext_from_open_pct":1.42,"max_ext_allowed_pct":3.0,"volume_pace":1.134,"trend":"flat","recent_slope_pct":-0.0251,"volatility":"medium"},"price":9.97,"volume":{"bars":64,"last_bar_volume":56255.0,"baseline_avg":202517.6,"bar_rvol":0.277778,"raw_accel":0.111113,"smooth_accel":-0.598991,"accel_momentum":0.00835,"rvol_3bar":[1.629289,0.22666,0.277778],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":50330.0,"sell_vol":45909.0,"unclassified_vol":0.0,"imbalance":0.045938,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":1.577455},"context":{"vwap":9.976767,"price_vs_vwap_pct":-0.067825,"ema9":9.980296,"ema20":9.982273,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.79602,"dist_to_hod_atr":2.988654,"atr":0.026768,"spread_atr":0.373582,"own_change_pct":-0.2001,"rel_strength_pct":{"SPY":-0.160504,"IWM":-0.17906}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.012761},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2420416a5df5","ts":"2026-09-15T14:34:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.0729,"target":10.2,"target_label":"prev_day_high","reward_risk":1.77,"pos_in_5d_range_pct":11.7,"room_to_5d_high_atr":4.06},"price":10.1188,"vwap":10.1034,"ext_from_open_pct":0.29,"max_ext_allowed_pct":4.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.0025,"volatility":"low"},"price":10.1188,"volume":{"bars":64,"last_bar_volume":50175.0,"baseline_avg":48231.4,"bar_rvol":1.040297,"raw_accel":3.16119,"smooth_accel":-0.685211,"accel_momentum":-0.894796,"rvol_3bar":[0.720176,0.104891,1.040297],"trend_3bar":"MIXED","projected_rvol":0.83033},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":37431.0,"sell_vol":52.0,"unclassified_vol":0.0,"imbalance":0.997225,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":4.234248},"context":{"vwap":10.1034,"price_vs_vwap_pct":0.152426,"ema9":10.118312,"ema20":10.117797,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.110563,"dist_to_hod_atr":0.813461,"atr":0.013768,"spread_atr":0.726305,"own_change_pct":0.048443,"rel_strength_pct":{"SPY":0.088039,"IWM":0.069483}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.037411},"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":"3bd1fa63ddad","ts":"2026-09-15T14:34:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1034,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":-0.005,"volatility":"low"},"price":10.115,"volume":{"bars":64,"last_bar_volume":50175.0,"baseline_avg":48231.4,"bar_rvol":1.040297,"raw_accel":3.16119,"smooth_accel":-0.685211,"accel_momentum":-0.894796,"rvol_3bar":[0.720176,0.104891,1.040297],"trend_3bar":"MIXED","projected_rvol":0.624054},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":36544.0,"sell_vol":52.0,"unclassified_vol":0.0,"imbalance":0.997158,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.351856},"context":{"vwap":10.1034,"price_vs_vwap_pct":0.114815,"ema9":10.118312,"ema20":10.117797,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.089457,"atr":0.013768,"spread_atr":0.726305,"own_change_pct":0.048443,"rel_strength_pct":{"SPY":0.088039,"IWM":0.069483}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.037341},"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":"54af0ef415e0","ts":"2026-09-15T14:34:30+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.07% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.2505,"target":7.07,"target_label":"premarket_high","reward_risk":1.72,"pos_in_5d_range_pct":49.2,"room_to_5d_high_atr":3.56},"price":6.552,"vwap":6.4511,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":4.848,"trend":"flat","recent_slope_pct":-0.1156,"volatility":"high"},"price":6.552,"volume":{"bars":64,"last_bar_volume":35998.0,"baseline_avg":103182.2,"bar_rvol":0.348878,"raw_accel":-0.442755,"smooth_accel":0.215461,"accel_momentum":-1.307371,"rvol_3bar":[0.808961,0.643639,0.348878],"trend_3bar":"DECELERATING","projected_rvol":0.462018},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":10501.0,"sell_vol":13335.0,"unclassified_vol":0.0,"imbalance":-0.118896,"bid":6.49,"ask":6.56,"spread_pct":1.072797,"quote_size_imbalance":null,"quote_age_s":0.089047},"context":{"vwap":6.450634,"price_vs_vwap_pct":1.571412,"ema9":6.55004,"ema20":6.527413,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-4.767442,"dist_to_hod_atr":2.387635,"atr":0.137374,"spread_atr":0.509556,"own_change_pct":0.924499,"rel_strength_pct":{"SPY":0.964095,"IWM":0.945539}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.04148},"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":"ddc756204ee9","ts":"2026-09-15T14:34:30+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8608,"target":10.015,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":2.5},"price":9.98,"vwap":9.9768,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":1.133,"trend":"flat","recent_slope_pct":-0.005,"volatility":"medium"},"price":9.98,"volume":{"bars":64,"last_bar_volume":56255.0,"baseline_avg":202517.6,"bar_rvol":0.277778,"raw_accel":0.111113,"smooth_accel":-0.598991,"accel_momentum":0.00835,"rvol_3bar":[1.629289,0.22666,0.277778],"trend_3bar":"MIXED","projected_rvol":1.699803},"flow":{"window_s":30,"trades":156,"trade_rate":5.2,"buy_vol":74394.0,"sell_vol":97726.0,"unclassified_vol":0.0,"imbalance":-0.135557,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.00431},"context":{"vwap":9.976767,"price_vs_vwap_pct":0.032408,"ema9":9.980296,"ema20":9.982273,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.696517,"dist_to_hod_atr":2.615073,"atr":0.026768,"spread_atr":0.373582,"own_change_pct":-0.2001,"rel_strength_pct":{"SPY":-0.160504,"IWM":-0.17906}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.037655},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d184b2c70cae","ts":"2026-09-15T14:34:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 10.07, target 10.20 (prev_day_high), R:R 1.74; R:R 1.74 < 2.0 at 10.12; breakout: 1-min close > 10.14 on >= 62650 sh","plan":{"state":"WATCH","setup":"","stop":10.0741,"target":10.2,"target_label":"prev_day_high","reward_risk":1.74,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.12,"vwap":10.1034,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":0.0048,"volatility":"low"},"price":10.12,"volume":{"bars":64,"last_bar_volume":50175.0,"baseline_avg":48231.4,"bar_rvol":1.040297,"raw_accel":3.16119,"smooth_accel":-0.685211,"accel_momentum":-0.894796,"rvol_3bar":[0.720176,0.104891,1.040297],"trend_3bar":"MIXED","projected_rvol":0.436396},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":11335.0,"sell_vol":117.0,"unclassified_vol":0.0,"imbalance":0.979567,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":4.541832},"context":{"vwap":10.1034,"price_vs_vwap_pct":0.164303,"ema9":10.118312,"ema20":10.117797,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.098717,"dist_to_hod_atr":0.726305,"atr":0.013768,"spread_atr":0.726305,"own_change_pct":0.048443,"rel_strength_pct":{"SPY":0.088039,"IWM":0.069483}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.019041},"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":"973eb1343572","ts":"2026-09-15T14:34:40+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.97 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8539,"target":10.015,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":2.51},"price":9.9731,"vwap":9.9767,"ext_from_open_pct":1.46,"max_ext_allowed_pct":3.0,"volume_pace":1.131,"trend":"flat","recent_slope_pct":-0.0188,"volatility":"medium"},"price":9.9731,"volume":{"bars":64,"last_bar_volume":56255.0,"baseline_avg":202517.6,"bar_rvol":0.277778,"raw_accel":0.111113,"smooth_accel":-0.598991,"accel_momentum":0.00835,"rvol_3bar":[1.629289,0.22666,0.277778],"trend_3bar":"MIXED","projected_rvol":1.461214},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":30953.0,"sell_vol":83719.0,"unclassified_vol":0.0,"imbalance":-0.460147,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.255256},"context":{"vwap":9.976767,"price_vs_vwap_pct":-0.036753,"ema9":9.980296,"ema20":9.982273,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.765174,"dist_to_hod_atr":2.872844,"atr":0.026768,"spread_atr":0.373582,"own_change_pct":-0.2001,"rel_strength_pct":{"SPY":-0.160504,"IWM":-0.17906}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.127819},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f6942765a41d","ts":"2026-09-15T14:34:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.85; target 0.08 away > ~0.08 reachable in 320 min","plan":{"state":"PASS","setup":"","stop":10.0691,"target":10.2,"target_label":"prev_day_high","reward_risk":1.85,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.115,"vwap":10.1034,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":-0.005,"volatility":"low"},"price":10.115,"volume":{"bars":64,"last_bar_volume":50175.0,"baseline_avg":48231.4,"bar_rvol":1.040297,"raw_accel":3.16119,"smooth_accel":-0.685211,"accel_momentum":-0.894796,"rvol_3bar":[0.720176,0.104891,1.040297],"trend_3bar":"MIXED","projected_rvol":0.363028},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2283.0,"sell_vol":837.0,"unclassified_vol":0.0,"imbalance":0.463462,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":14.541832},"context":{"vwap":10.1034,"price_vs_vwap_pct":0.114815,"ema9":10.118312,"ema20":10.117797,"ema_stack":false,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.148075,"dist_to_hod_atr":1.089457,"atr":0.013768,"spread_atr":0.726305,"own_change_pct":0.048443,"rel_strength_pct":{"SPY":0.088039,"IWM":0.069483}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.482138},"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":"e0efc5d2553e","ts":"2026-09-15T14:34:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1835,"target":7.07,"target_label":"premarket_high","reward_risk":1.94,"pos_in_5d_range_pct":48.4,"room_to_5d_high_atr":3.61},"price":6.485,"vwap":6.4511,"ext_from_open_pct":2.37,"max_ext_allowed_pct":4.0,"volume_pace":4.843,"trend":"flat","recent_slope_pct":-0.3201,"volatility":"high"},"price":6.485,"volume":{"bars":64,"last_bar_volume":35998.0,"baseline_avg":103182.2,"bar_rvol":0.348878,"raw_accel":-0.442755,"smooth_accel":0.215461,"accel_momentum":-1.307371,"rvol_3bar":[0.808961,0.643639,0.348878],"trend_3bar":"DECELERATING","projected_rvol":0.472663},"flow":{"window_s":30,"trades":226,"trade_rate":7.533333,"buy_vol":8936.0,"sell_vol":24812.0,"unclassified_vol":0.0,"imbalance":-0.470428,"bid":6.46,"ask":6.51,"spread_pct":0.77101,"quote_size_imbalance":null,"quote_age_s":1.688574},"context":{"vwap":6.450634,"price_vs_vwap_pct":0.532755,"ema9":6.55004,"ema20":6.527413,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.741279,"dist_to_hod_atr":2.875353,"atr":0.137374,"spread_atr":0.363969,"own_change_pct":0.924499,"rel_strength_pct":{"SPY":0.964095,"IWM":0.945539}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.164122},"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":"2f5c69b69bc2","ts":"2026-09-15T14:35:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.38% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.1785,"target":7.07,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.48,"vwap":6.4512,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":4.834,"trend":"flat","recent_slope_pct":-0.3354,"volatility":"high"},"price":6.48,"volume":{"bars":64,"last_bar_volume":35998.0,"baseline_avg":103182.2,"bar_rvol":0.348878,"raw_accel":-0.442755,"smooth_accel":0.215461,"accel_momentum":-1.307371,"rvol_3bar":[0.808961,0.643639,0.348878],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":159,"trade_rate":5.3,"buy_vol":5383.0,"sell_vol":14283.0,"unclassified_vol":0.0,"imbalance":-0.452558,"bid":6.46,"ask":6.55,"spread_pct":1.383551,"quote_size_imbalance":null,"quote_age_s":0.344773},"context":{"vwap":6.450634,"price_vs_vwap_pct":0.455243,"ema9":6.55004,"ema20":6.527413,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.813953,"dist_to_hod_atr":2.91175,"atr":0.137374,"spread_atr":0.655144,"own_change_pct":0.924499,"rel_strength_pct":{"SPY":0.941661,"IWM":0.924499}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.157887},"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":"b950c28226ce","ts":"2026-09-15T14:35:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.2185,"target":7.07,"target_label":"premarket_high","reward_risk":1.82,"pos_in_5d_range_pct":48.8,"room_to_5d_high_atr":3.58},"price":6.52,"vwap":6.4512,"ext_from_open_pct":2.92,"max_ext_allowed_pct":4.0,"volume_pace":4.829,"trend":"flat","recent_slope_pct":-0.5491,"volatility":"high"},"price":6.52,"volume":{"bars":65,"last_bar_volume":43502.0,"baseline_avg":103335.8,"bar_rvol":0.420977,"raw_accel":0.208456,"smooth_accel":-0.294129,"accel_momentum":-0.50959,"rvol_3bar":[0.643639,0.348878,0.420977],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":4938.0,"sell_vol":10046.0,"unclassified_vol":0.0,"imbalance":-0.340897,"bid":6.49,"ask":6.55,"spread_pct":0.920245,"quote_size_imbalance":null,"quote_age_s":2.760911},"context":{"vwap":6.451166,"price_vs_vwap_pct":1.066998,"ema9":6.536032,"ema20":6.522898,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.232558,"dist_to_hod_atr":2.672652,"atr":0.134698,"spread_atr":0.445442,"own_change_pct":-0.689655,"rel_strength_pct":{"SPY":-0.672493,"IWM":-0.689655}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.14351},"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":"75c0951a4ba7","ts":"2026-09-15T14:35:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.39% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":6.2234,"target":7.07,"target_label":"premarket_high","reward_risk":1.81,"pos_in_5d_range_pct":48.9,"room_to_5d_high_atr":3.58},"price":6.5249,"vwap":6.4512,"ext_from_open_pct":3.0,"max_ext_allowed_pct":4.0,"volume_pace":4.822,"trend":"flat","recent_slope_pct":-0.5341,"volatility":"high"},"price":6.5249,"volume":{"bars":65,"last_bar_volume":43502.0,"baseline_avg":103335.8,"bar_rvol":0.420977,"raw_accel":0.208456,"smooth_accel":-0.294129,"accel_momentum":-0.50959,"rvol_3bar":[0.643639,0.348878,0.420977],"trend_3bar":"MIXED","projected_rvol":0.214485},"flow":{"window_s":30,"trades":144,"trade_rate":4.8,"buy_vol":3978.0,"sell_vol":11629.0,"unclassified_vol":0.0,"imbalance":-0.490229,"bid":6.45,"ask":6.54,"spread_pct":1.385681,"quote_size_imbalance":null,"quote_age_s":4.552127},"context":{"vwap":6.451166,"price_vs_vwap_pct":1.142953,"ema9":6.536032,"ema20":6.522898,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.161337,"dist_to_hod_atr":2.636274,"atr":0.134698,"spread_atr":0.668163,"own_change_pct":-0.689655,"rel_strength_pct":{"SPY":-0.672493,"IWM":-0.689655}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.206375},"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":"4ff8dbb5c829","ts":"2026-09-15T14:35:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says WATCH; stop 10.08, target 10.20 (prev_day_high), R:R 1.59; R:R 1.59 < 2.0 at 10.13; breakout: 1-min close > 10.14 on >= 60521 sh","plan":{"state":"WATCH","setup":"","stop":10.0812,"target":10.2,"target_label":"prev_day_high","reward_risk":1.59,"pos_in_5d_range_pct":12.7,"room_to_5d_high_atr":4.02},"price":10.1271,"vwap":10.1036,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.789,"trend":"flat","recent_slope_pct":0.0243,"volatility":"low"},"price":10.1271,"volume":{"bars":65,"last_bar_volume":14733.0,"baseline_avg":50065.85,"bar_rvol":0.294272,"raw_accel":-0.706368,"smooth_accel":-0.783845,"accel_momentum":-0.098633,"rvol_3bar":[0.104891,1.040297,0.294272],"trend_3bar":"MIXED","projected_rvol":1.513207},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":12907.0,"sell_vol":7634.0,"unclassified_vol":0.0,"imbalance":0.256706,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":1.692092},"context":{"vwap":10.103451,"price_vs_vwap_pct":0.234065,"ema9":10.118169,"ema20":10.117778,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.028628,"dist_to_hod_atr":0.214828,"atr":0.013499,"spread_atr":0.740787,"own_change_pct":-0.004942,"rel_strength_pct":{"SPY":0.012221,"IWM":-0.004942}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.075542},"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":"ad5cf30da328","ts":"2026-09-15T14:35:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.45 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":6.1485,"target":7.07,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.45,"vwap":6.4512,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":4.817,"trend":"flat","recent_slope_pct":-0.7643,"volatility":"high"},"price":6.45,"volume":{"bars":65,"last_bar_volume":43502.0,"baseline_avg":103335.8,"bar_rvol":0.420977,"raw_accel":0.208456,"smooth_accel":-0.294129,"accel_momentum":-0.50959,"rvol_3bar":[0.643639,0.348878,0.420977],"trend_3bar":"MIXED","projected_rvol":0.18525},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":3136.0,"sell_vol":6105.0,"unclassified_vol":0.0,"imbalance":-0.321286,"bid":6.45,"ask":6.49,"spread_pct":0.618238,"quote_size_imbalance":null,"quote_age_s":0.137356},"context":{"vwap":6.451166,"price_vs_vwap_pct":-0.018077,"ema9":6.536032,"ema20":6.522898,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.25,"dist_to_hod_atr":3.192334,"atr":0.134698,"spread_atr":0.296961,"own_change_pct":-0.689655,"rel_strength_pct":{"SPY":-0.672493,"IWM":-0.689655}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.135254},"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":"a01af5369f6b","ts":"2026-09-15T14:35:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":6.1884,"target":7.07,"target_label":"premarket_high","reward_risk":1.92,"pos_in_5d_range_pct":48.5,"room_to_5d_high_atr":3.61},"price":6.4899,"vwap":6.4512,"ext_from_open_pct":2.45,"max_ext_allowed_pct":4.0,"volume_pace":4.812,"trend":"flat","recent_slope_pct":-0.6415,"volatility":"high"},"price":6.4899,"volume":{"bars":65,"last_bar_volume":43502.0,"baseline_avg":103335.8,"bar_rvol":0.420977,"raw_accel":0.208456,"smooth_accel":-0.294129,"accel_momentum":-0.50959,"rvol_3bar":[0.643639,0.348878,0.420977],"trend_3bar":"MIXED","projected_rvol":0.160626},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":1957.0,"sell_vol":6133.0,"unclassified_vol":0.0,"imbalance":-0.516193,"bid":6.45,"ask":6.49,"spread_pct":0.618238,"quote_size_imbalance":null,"quote_age_s":1.231466},"context":{"vwap":6.451166,"price_vs_vwap_pct":0.600416,"ema9":6.536032,"ema20":6.522898,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.670058,"dist_to_hod_atr":2.896115,"atr":0.134698,"spread_atr":0.296961,"own_change_pct":-0.689655,"rel_strength_pct":{"SPY":-0.672493,"IWM":-0.689655}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.217305},"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":"ded315c4571d","ts":"2026-09-15T14:35:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says PASS; stop 10.07, target 10.20 (prev_day_high), R:R 1.77; target 0.08 away > ~0.07 reachable in 320 min","plan":{"state":"PASS","setup":"","stop":10.0729,"target":10.2,"target_label":"prev_day_high","reward_risk":1.77,"pos_in_5d_range_pct":11.7,"room_to_5d_high_atr":4.06},"price":10.1188,"vwap":10.1036,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.787,"trend":"flat","recent_slope_pct":0.0079,"volatility":"low"},"price":10.1188,"volume":{"bars":65,"last_bar_volume":14733.0,"baseline_avg":50065.85,"bar_rvol":0.294272,"raw_accel":-0.706368,"smooth_accel":-0.783845,"accel_momentum":-0.098633,"rvol_3bar":[0.104891,1.040297,0.294272],"trend_3bar":"MIXED","projected_rvol":0.92777},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":12428.0,"sell_vol":6928.0,"unclassified_vol":0.0,"imbalance":0.28415,"bid":10.12,"ask":10.13,"spread_pct":0.098765,"quote_size_imbalance":null,"quote_age_s":1.629102},"context":{"vwap":10.103451,"price_vs_vwap_pct":0.151915,"ema9":10.118169,"ema20":10.117778,"ema_stack":true,"ema_warm":true,"hod":10.13,"dist_to_hod_pct":-0.110563,"dist_to_hod_atr":0.829681,"atr":0.013499,"spread_atr":0.740787,"own_change_pct":-0.004942,"rel_strength_pct":{"SPY":0.012221,"IWM":-0.004942}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.083617},"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":"faa185b8437a","ts":"2026-09-15T14:35:45+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8594,"target":10.015,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":2.5},"price":9.9786,"vwap":9.9767,"ext_from_open_pct":1.51,"max_ext_allowed_pct":3.0,"volume_pace":1.122,"trend":"flat","recent_slope_pct":-0.0277,"volatility":"medium"},"price":9.9786,"volume":{"bars":65,"last_bar_volume":260827.0,"baseline_avg":200759.6,"bar_rvol":1.299201,"raw_accel":3.636512,"smooth_accel":-0.210896,"accel_momentum":0.388095,"rvol_3bar":[0.22666,0.277778,1.299201],"trend_3bar":"ACCELERATING","projected_rvol":0.890604},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":35871.0,"sell_vol":92788.0,"unclassified_vol":0.0,"imbalance":-0.442386,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.047581},"context":{"vwap":9.976708,"price_vs_vwap_pct":0.018969,"ema9":9.978277,"ema20":9.981123,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.710448,"dist_to_hod_atr":2.746284,"atr":0.025999,"spread_atr":0.384634,"own_change_pct":-0.198198,"rel_strength_pct":{"SPY":-0.181036,"IWM":-0.198198}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.574749},"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":"77b3ff8920ce","ts":"2026-09-15T14:35:50+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.98 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8566,"target":10.015,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.5},"price":9.9758,"vwap":9.9767,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":1.124,"trend":"flat","recent_slope_pct":-0.0333,"volatility":"medium"},"price":9.9758,"volume":{"bars":65,"last_bar_volume":260827.0,"baseline_avg":200759.6,"bar_rvol":1.299201,"raw_accel":3.636512,"smooth_accel":-0.210896,"accel_momentum":0.388095,"rvol_3bar":[0.22666,0.277778,1.299201],"trend_3bar":"ACCELERATING","projected_rvol":1.281778},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":44430.0,"sell_vol":154347.0,"unclassified_vol":0.0,"imbalance":-0.552966,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.012811},"context":{"vwap":9.976708,"price_vs_vwap_pct":-0.009096,"ema9":9.978277,"ema20":9.981123,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.738308,"dist_to_hod_atr":2.853982,"atr":0.025999,"spread_atr":0.384634,"own_change_pct":-0.198198,"rel_strength_pct":{"SPY":-0.181036,"IWM":-0.198198}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.718414},"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":"ce32d1f5f7bf","ts":"2026-09-15T14:36:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.5819,"target":7.93,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":46.5,"room_to_5d_high_atr":1.19},"price":7.7716,"vwap":7.7607,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.419,"trend":"flat","recent_slope_pct":-0.0357,"volatility":"high"},"price":7.7716,"volume":{"bars":66,"last_bar_volume":19004.0,"baseline_avg":10982.8,"bar_rvol":1.730342,"raw_accel":0.342849,"smooth_accel":-0.192522,"accel_momentum":0.259416,"rvol_3bar":[0.099786,1.281687,1.730342],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":177,"trade_rate":5.9,"buy_vol":9197.0,"sell_vol":8220.0,"unclassified_vol":0.0,"imbalance":0.056095,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":1.518962},"context":{"vwap":7.760735,"price_vs_vwap_pct":0.140004,"ema9":7.786568,"ema20":7.759434,"ema_stack":false,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-2.366834,"dist_to_hod_atr":3.938088,"atr":0.04784,"spread_atr":0.209028,"own_change_pct":-0.002566,"rel_strength_pct":{"SPY":-0.029624,"IWM":-0.002566}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.097063},"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":"e9eb68d7829b","ts":"2026-09-15T14:36:10+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.7912,"target":6.87,"target_label":"premarket_high","reward_risk":3.21,"pos_in_5d_range_pct":58.4,"room_to_5d_high_atr":3.35},"price":6.0475,"vwap":6.0098,"ext_from_open_pct":-4.46,"max_ext_allowed_pct":3.0,"volume_pace":0.119,"trend":"flat","recent_slope_pct":0.4612,"volatility":"high"},"price":6.0475,"volume":{"bars":66,"last_bar_volume":13014.0,"baseline_avg":19285.35,"bar_rvol":0.674813,"raw_accel":-0.191878,"smooth_accel":0.712379,"accel_momentum":0.732588,"rvol_3bar":[0.500613,0.724334,0.674813],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":989.0,"sell_vol":1044.0,"unclassified_vol":0.0,"imbalance":-0.027054,"bid":6.0,"ask":6.05,"spread_pct":0.829876,"quote_size_imbalance":null,"quote_age_s":1.837915},"context":{"vwap":6.009752,"price_vs_vwap_pct":0.628119,"ema9":5.973967,"ema20":5.965984,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.603886,"dist_to_hod_atr":5.837833,"atr":0.110058,"spread_atr":0.454306,"own_change_pct":-0.497925,"rel_strength_pct":{"SPY":-0.524984,"IWM":-0.497925}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.018256},"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":"0333ac16bc07","ts":"2026-09-15T14:36:20+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.45 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":6.1458,"target":7.07,"target_label":"premarket_high","reward_risk":2.07,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.4473,"vwap":6.4513,"ext_from_open_pct":1.77,"max_ext_allowed_pct":4.0,"volume_pace":4.771,"trend":"flat","recent_slope_pct":-0.5387,"volatility":"high"},"price":6.4473,"volume":{"bars":66,"last_bar_volume":25555.0,"baseline_avg":99129.45,"bar_rvol":0.257794,"raw_accel":-0.412556,"smooth_accel":-0.552788,"accel_momentum":-0.258659,"rvol_3bar":[0.348878,0.420977,0.257794],"trend_3bar":"MIXED","projected_rvol":0.105317},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":2711.0,"sell_vol":3364.0,"unclassified_vol":0.0,"imbalance":-0.10749,"bid":6.42,"ask":6.45,"spread_pct":0.4662,"quote_size_imbalance":null,"quote_age_s":0.708257},"context":{"vwap":6.451284,"price_vs_vwap_pct":-0.061762,"ema9":6.521826,"ema20":6.517384,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.289244,"dist_to_hod_atr":3.263954,"atr":0.132569,"spread_atr":0.226297,"own_change_pct":-1.146789,"rel_strength_pct":{"SPY":-1.173848,"IWM":-1.146789}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.02771},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8376132edbda","ts":"2026-09-15T14:36:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.1558,"target":7.07,"target_label":"premarket_high","reward_risk":2.03,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.4573,"vwap":6.4513,"ext_from_open_pct":1.93,"max_ext_allowed_pct":4.0,"volume_pace":4.766,"trend":"flat","recent_slope_pct":-0.5078,"volatility":"high"},"price":6.4573,"volume":{"bars":66,"last_bar_volume":25555.0,"baseline_avg":99129.45,"bar_rvol":0.257794,"raw_accel":-0.412556,"smooth_accel":-0.552788,"accel_momentum":-0.258659,"rvol_3bar":[0.348878,0.420977,0.257794],"trend_3bar":"MIXED","projected_rvol":0.101225},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":3078.0,"sell_vol":2342.0,"unclassified_vol":0.0,"imbalance":0.135793,"bid":6.42,"ask":6.46,"spread_pct":0.621118,"quote_size_imbalance":null,"quote_age_s":1.361879},"context":{"vwap":6.451284,"price_vs_vwap_pct":0.093246,"ema9":6.521826,"ema20":6.517384,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.143895,"dist_to_hod_atr":3.188521,"atr":0.132569,"spread_atr":0.301729,"own_change_pct":-1.146789,"rel_strength_pct":{"SPY":-1.173848,"IWM":-1.146789}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.035007},"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":"e6fc3f1d66d3","ts":"2026-09-15T14:36:30+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.44 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":6.1385,"target":7.07,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.65},"price":6.44,"vwap":6.4513,"ext_from_open_pct":1.66,"max_ext_allowed_pct":4.0,"volume_pace":4.761,"trend":"flat","recent_slope_pct":-0.5613,"volatility":"high"},"price":6.44,"volume":{"bars":66,"last_bar_volume":25555.0,"baseline_avg":99129.45,"bar_rvol":0.257794,"raw_accel":-0.412556,"smooth_accel":-0.552788,"accel_momentum":-0.258659,"rvol_3bar":[0.348878,0.420977,0.257794],"trend_3bar":"MIXED","projected_rvol":0.103703},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3016.0,"sell_vol":2124.0,"unclassified_vol":0.0,"imbalance":0.173541,"bid":6.43,"ask":6.49,"spread_pct":0.928793,"quote_size_imbalance":null,"quote_age_s":2.666732},"context":{"vwap":6.451284,"price_vs_vwap_pct":-0.174917,"ema9":6.521826,"ema20":6.517384,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.395349,"dist_to_hod_atr":3.319019,"atr":0.132569,"spread_atr":0.452594,"own_change_pct":-1.146789,"rel_strength_pct":{"SPY":-1.173848,"IWM":-1.146789}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.044738},"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":"1aba536e014d","ts":"2026-09-15T14:36:35+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.1691,"target":7.07,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":48.2,"room_to_5d_high_atr":3.62},"price":6.4706,"vwap":6.4513,"ext_from_open_pct":2.14,"max_ext_allowed_pct":4.0,"volume_pace":4.756,"trend":"flat","recent_slope_pct":-0.4667,"volatility":"high"},"price":6.4706,"volume":{"bars":66,"last_bar_volume":25555.0,"baseline_avg":99129.45,"bar_rvol":0.257794,"raw_accel":-0.412556,"smooth_accel":-0.552788,"accel_momentum":-0.258659,"rvol_3bar":[0.348878,0.420977,0.257794],"trend_3bar":"MIXED","projected_rvol":0.103968},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":2296.0,"sell_vol":1931.0,"unclassified_vol":0.0,"imbalance":0.08635,"bid":6.47,"ask":6.49,"spread_pct":0.308642,"quote_size_imbalance":null,"quote_age_s":0.795683},"context":{"vwap":6.451284,"price_vs_vwap_pct":0.299407,"ema9":6.521826,"ema20":6.517384,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.950581,"dist_to_hod_atr":3.088196,"atr":0.132569,"spread_atr":0.150865,"own_change_pct":-1.146789,"rel_strength_pct":{"SPY":-1.173848,"IWM":-1.146789}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.02226},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ad9f1febf444","ts":"2026-09-15T14:36:40+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.00 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7437,"target":6.87,"target_label":"premarket_high","reward_risk":3.39,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":3.39},"price":6.0,"vwap":6.0098,"ext_from_open_pct":-5.21,"max_ext_allowed_pct":3.0,"volume_pace":0.119,"trend":"flat","recent_slope_pct":0.3023,"volatility":"high"},"price":6.0,"volume":{"bars":66,"last_bar_volume":13014.0,"baseline_avg":19285.35,"bar_rvol":0.674813,"raw_accel":-0.191878,"smooth_accel":0.712379,"accel_momentum":0.732588,"rvol_3bar":[0.500613,0.724334,0.674813],"trend_3bar":"MIXED","projected_rvol":0.858761},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":7745.0,"sell_vol":2855.0,"unclassified_vol":0.0,"imbalance":0.461321,"bid":5.98,"ask":6.05,"spread_pct":1.163757,"quote_size_imbalance":null,"quote_age_s":6.544644},"context":{"vwap":6.009752,"price_vs_vwap_pct":-0.162263,"ema9":5.973967,"ema20":5.965984,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.313901,"dist_to_hod_atr":6.269424,"atr":0.110058,"spread_atr":0.636029,"own_change_pct":-0.497925,"rel_strength_pct":{"SPY":-0.524984,"IWM":-0.497925}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.311305},"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":"5a4f9c18feb6","ts":"2026-09-15T14:36:45+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.7737,"target":6.87,"target_label":"premarket_high","reward_risk":3.28,"pos_in_5d_range_pct":58.2,"room_to_5d_high_atr":3.37},"price":6.03,"vwap":6.0099,"ext_from_open_pct":-4.74,"max_ext_allowed_pct":3.0,"volume_pace":0.119,"trend":"flat","recent_slope_pct":0.4027,"volatility":"high"},"price":6.03,"volume":{"bars":66,"last_bar_volume":13014.0,"baseline_avg":19285.35,"bar_rvol":0.674813,"raw_accel":-0.191878,"smooth_accel":0.712379,"accel_momentum":0.732588,"rvol_3bar":[0.500613,0.724334,0.674813],"trend_3bar":"MIXED","projected_rvol":0.772123},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":5823.0,"sell_vol":2286.0,"unclassified_vol":0.0,"imbalance":0.436182,"bid":5.95,"ask":6.05,"spread_pct":1.666667,"quote_size_imbalance":null,"quote_age_s":1.113206},"context":{"vwap":6.009752,"price_vs_vwap_pct":0.336926,"ema9":5.973967,"ema20":5.965984,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.865471,"dist_to_hod_atr":5.99684,"atr":0.110058,"spread_atr":0.908612,"own_change_pct":-0.497925,"rel_strength_pct":{"SPY":-0.524984,"IWM":-0.497925}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.294341},"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":"ca3d043555a5","ts":"2026-09-15T14:36:55+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.00 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7409,"target":6.87,"target_label":"premarket_high","reward_risk":3.41,"pos_in_5d_range_pct":57.8,"room_to_5d_high_atr":3.4},"price":5.9972,"vwap":6.0098,"ext_from_open_pct":-5.26,"max_ext_allowed_pct":3.0,"volume_pace":0.119,"trend":"flat","recent_slope_pct":0.293,"volatility":"high"},"price":5.9972,"volume":{"bars":66,"last_bar_volume":13014.0,"baseline_avg":19285.35,"bar_rvol":0.674813,"raw_accel":-0.191878,"smooth_accel":0.712379,"accel_momentum":0.732588,"rvol_3bar":[0.500613,0.724334,0.674813],"trend_3bar":"MIXED","projected_rvol":0.635923},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":4730.0,"sell_vol":2088.0,"unclassified_vol":0.0,"imbalance":0.387504,"bid":5.95,"ask":6.02,"spread_pct":1.169591,"quote_size_imbalance":null,"quote_age_s":4.410068},"context":{"vwap":6.009752,"price_vs_vwap_pct":-0.208854,"ema9":5.973967,"ema20":5.965984,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.355755,"dist_to_hod_atr":6.294865,"atr":0.110058,"spread_atr":0.636029,"own_change_pct":-0.497925,"rel_strength_pct":{"SPY":-0.524984,"IWM":-0.497925}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.261492},"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":"4c8d29f85258","ts":"2026-09-15T14:37:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8655,"target":10.015,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":22.0,"room_to_5d_high_atr":2.49},"price":9.9847,"vwap":9.9767,"ext_from_open_pct":1.57,"max_ext_allowed_pct":3.0,"volume_pace":1.109,"trend":"flat","recent_slope_pct":0.0106,"volatility":"medium"},"price":9.9847,"volume":{"bars":66,"last_bar_volume":240778.0,"baseline_avg":202393.7,"bar_rvol":1.189652,"raw_accel":-0.076867,"smooth_accel":0.185685,"accel_momentum":0.396581,"rvol_3bar":[0.277778,1.299201,1.189652],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":17705.0,"sell_vol":16605.0,"unclassified_vol":0.0,"imbalance":0.032061,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.004241},"context":{"vwap":9.976662,"price_vs_vwap_pct":0.080571,"ema9":9.975861,"ema20":9.979702,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.649751,"dist_to_hod_atr":2.551608,"atr":0.025592,"spread_atr":0.390752,"own_change_pct":-0.088221,"rel_strength_pct":{"SPY":-0.078981,"IWM":-0.043968}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.038141},"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":"68c58a91accd","ts":"2026-09-15T14:37:05+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.98","plan":{"state":"PASS","setup":"","stop":9.8333,"target":10.015,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":19.9,"room_to_5d_high_atr":2.55},"price":9.9525,"vwap":9.9767,"ext_from_open_pct":1.25,"max_ext_allowed_pct":4.0,"volume_pace":1.108,"trend":"flat","recent_slope_pct":-0.0306,"volatility":"medium"},"price":9.9525,"volume":{"bars":67,"last_bar_volume":63573.0,"baseline_avg":200579.4,"bar_rvol":0.316947,"raw_accel":-0.735968,"smooth_accel":0.275987,"accel_momentum":0.090302,"rvol_3bar":[1.299201,1.189652,0.316947],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":126,"trade_rate":4.2,"buy_vol":17449.0,"sell_vol":16350.0,"unclassified_vol":0.0,"imbalance":0.032516,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.038295},"context":{"vwap":9.976652,"price_vs_vwap_pct":-0.242089,"ema9":9.977629,"ema20":9.980178,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.970149,"dist_to_hod_atr":3.715375,"atr":0.026242,"spread_atr":0.381064,"own_change_pct":-0.053053,"rel_strength_pct":{"SPY":-0.043813,"IWM":-0.0088}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.010306},"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":"8b2d2ceeb6b6","ts":"2026-09-15T14:37:05+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.7737,"target":6.87,"target_label":"premarket_high","reward_risk":3.28,"pos_in_5d_range_pct":58.2,"room_to_5d_high_atr":3.37},"price":6.03,"vwap":6.0098,"ext_from_open_pct":-4.74,"max_ext_allowed_pct":3.0,"volume_pace":0.118,"trend":"flat","recent_slope_pct":0.5449,"volatility":"high"},"price":6.03,"volume":{"bars":67,"last_bar_volume":11622.0,"baseline_avg":17093.75,"bar_rvol":0.679898,"raw_accel":-0.106962,"smooth_accel":0.628948,"accel_momentum":-0.08343,"rvol_3bar":[0.724334,0.674813,0.679898],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":580.0,"sell_vol":542.0,"unclassified_vol":0.0,"imbalance":0.033868,"bid":6.01,"ask":6.05,"spread_pct":0.66335,"quote_size_imbalance":null,"quote_age_s":0.981399},"context":{"vwap":6.009768,"price_vs_vwap_pct":0.336656,"ema9":5.975174,"ema20":5.967319,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-9.865471,"dist_to_hod_atr":6.036243,"atr":0.10934,"spread_atr":0.365833,"own_change_pct":-0.829187,"rel_strength_pct":{"SPY":-0.819948,"IWM":-0.784935}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.023027},"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":"9fdae01e0a85","ts":"2026-09-15T14:37:10+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.96 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.6987,"target":6.87,"target_label":"premarket_high","reward_risk":3.57,"pos_in_5d_range_pct":57.3,"room_to_5d_high_atr":3.44},"price":5.955,"vwap":6.0096,"ext_from_open_pct":-5.92,"max_ext_allowed_pct":3.0,"volume_pace":0.119,"trend":"flat","recent_slope_pct":0.2942,"volatility":"high"},"price":5.955,"volume":{"bars":67,"last_bar_volume":11622.0,"baseline_avg":17093.75,"bar_rvol":0.679898,"raw_accel":-0.106962,"smooth_accel":0.628948,"accel_momentum":-0.08343,"rvol_3bar":[0.724334,0.674813,0.679898],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1380.0,"sell_vol":9221.0,"unclassified_vol":0.0,"imbalance":-0.739647,"bid":5.96,"ask":6.03,"spread_pct":1.16764,"quote_size_imbalance":null,"quote_age_s":4.175737},"context":{"vwap":6.009768,"price_vs_vwap_pct":-0.911312,"ema9":5.975174,"ema20":5.967319,"ema_stack":false,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.986547,"dist_to_hod_atr":6.72218,"atr":0.10934,"spread_atr":0.640208,"own_change_pct":-0.829187,"rel_strength_pct":{"SPY":-0.819948,"IWM":-0.784935}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.502884},"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":"0a40f8779cf6","ts":"2026-09-15T14:38:50+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.7631,"target":6.87,"target_label":"premarket_high","reward_risk":3.32,"pos_in_5d_range_pct":58.1,"room_to_5d_high_atr":3.38},"price":6.0194,"vwap":6.0093,"ext_from_open_pct":-4.91,"max_ext_allowed_pct":3.0,"volume_pace":0.116,"trend":"flat","recent_slope_pct":0.2243,"volatility":"high"},"price":6.0194,"volume":{"bars":68,"last_bar_volume":14449.0,"baseline_avg":16205.55,"bar_rvol":0.891608,"raw_accel":0.243246,"smooth_accel":0.089417,"accel_momentum":-0.539532,"rvol_3bar":[0.674813,0.679898,0.891608],"trend_3bar":"ACCELERATING","projected_rvol":0.92983},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":4687.0,"sell_vol":3078.0,"unclassified_vol":0.0,"imbalance":0.207212,"bid":5.94,"ask":6.02,"spread_pct":1.337793,"quote_size_imbalance":null,"quote_age_s":0.481812},"context":{"vwap":6.009472,"price_vs_vwap_pct":0.165207,"ema9":5.964139,"ema20":5.962812,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.023916,"dist_to_hod_atr":6.130544,"atr":0.109387,"spread_atr":0.73135,"own_change_pct":-0.629459,"rel_strength_pct":{"SPY":-0.621536,"IWM":-0.581047}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.184752},"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":"58ffea582f0c","ts":"2026-09-15T14:38:55+00:00","symbol":"FTFT","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.99 below VWAP $6.01","plan":{"state":"PASS","setup":"","stop":5.7337,"target":6.87,"target_label":"premarket_high","reward_risk":3.43,"pos_in_5d_range_pct":57.7,"room_to_5d_high_atr":3.4},"price":5.99,"vwap":6.0092,"ext_from_open_pct":-5.37,"max_ext_allowed_pct":3.0,"volume_pace":0.116,"trend":"flat","recent_slope_pct":0.1258,"volatility":"high"},"price":5.99,"volume":{"bars":68,"last_bar_volume":14449.0,"baseline_avg":16205.55,"bar_rvol":0.891608,"raw_accel":0.243246,"smooth_accel":0.089417,"accel_momentum":-0.539532,"rvol_3bar":[0.674813,0.679898,0.891608],"trend_3bar":"ACCELERATING","projected_rvol":0.878689},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":5121.0,"sell_vol":3095.0,"unclassified_vol":0.0,"imbalance":0.246592,"bid":5.94,"ask":6.02,"spread_pct":1.337793,"quote_size_imbalance":null,"quote_age_s":1.580424},"context":{"vwap":6.009472,"price_vs_vwap_pct":-0.324021,"ema9":5.964139,"ema20":5.962812,"ema_stack":true,"ema_warm":true,"hod":6.69,"dist_to_hod_pct":-10.463378,"dist_to_hod_atr":6.399315,"atr":0.109387,"spread_atr":0.73135,"own_change_pct":-0.629459,"rel_strength_pct":{"SPY":-0.621536,"IWM":-0.581047}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.219863},"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":"22693ff938a5","ts":"2026-09-15T14:39:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.45 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":6.1485,"target":7.07,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.45,"vwap":6.4517,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":4.633,"trend":"flat","recent_slope_pct":-0.0077,"volatility":"high"},"price":6.45,"volume":{"bars":68,"last_bar_volume":10125.0,"baseline_avg":81173.7,"bar_rvol":0.124733,"raw_accel":-0.50107,"smooth_accel":-0.66628,"accel_momentum":-0.119126,"rvol_3bar":[0.257794,0.131348,0.124733],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":2447.0,"sell_vol":11780.0,"unclassified_vol":0.0,"imbalance":-0.656006,"bid":6.45,"ask":6.47,"spread_pct":0.309598,"quote_size_imbalance":null,"quote_age_s":0.235201},"context":{"vwap":6.451546,"price_vs_vwap_pct":-0.023958,"ema9":6.519568,"ema20":6.516997,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.25,"dist_to_hod_atr":3.454918,"atr":0.12446,"spread_atr":0.160694,"own_change_pct":-0.911854,"rel_strength_pct":{"SPY":-0.882806,"IWM":-0.827676}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.081825},"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":"d78277062fdb","ts":"2026-09-15T14:39:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.1585,"target":7.07,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.46,"vwap":6.4517,"ext_from_open_pct":1.97,"max_ext_allowed_pct":4.0,"volume_pace":4.627,"trend":"flat","recent_slope_pct":-0.108,"volatility":"high"},"price":6.46,"volume":{"bars":69,"last_bar_volume":21693.0,"baseline_avg":73647.75,"bar_rvol":0.294551,"raw_accel":0.178203,"smooth_accel":-0.579011,"accel_momentum":0.087269,"rvol_3bar":[0.131348,0.124733,0.294551],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":2231.0,"sell_vol":10539.0,"unclassified_vol":0.0,"imbalance":-0.650587,"bid":6.45,"ask":6.47,"spread_pct":0.309598,"quote_size_imbalance":null,"quote_age_s":5.235201},"context":{"vwap":6.451661,"price_vs_vwap_pct":0.129255,"ema9":6.505655,"ema20":6.510616,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.104651,"dist_to_hod_atr":3.48324,"atr":0.120577,"spread_atr":0.165869,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.497669,"IWM":-1.44254}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.191631},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8b238225396f","ts":"2026-09-15T14:39:10+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.44 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":6.1385,"target":7.07,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.65},"price":6.44,"vwap":6.4517,"ext_from_open_pct":1.66,"max_ext_allowed_pct":4.0,"volume_pace":4.624,"trend":"flat","recent_slope_pct":-0.1698,"volatility":"high"},"price":6.44,"volume":{"bars":69,"last_bar_volume":21693.0,"baseline_avg":73647.75,"bar_rvol":0.294551,"raw_accel":0.178203,"smooth_accel":-0.579011,"accel_momentum":0.087269,"rvol_3bar":[0.131348,0.124733,0.294551],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":2082.0,"sell_vol":12462.0,"unclassified_vol":0.0,"imbalance":-0.713696,"bid":6.44,"ask":6.46,"spread_pct":0.310078,"quote_size_imbalance":null,"quote_age_s":1.248575},"context":{"vwap":6.451661,"price_vs_vwap_pct":-0.180743,"ema9":6.505655,"ema20":6.510616,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.395349,"dist_to_hod_atr":3.649109,"atr":0.120577,"spread_atr":0.165869,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.497669,"IWM":-1.44254}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.21022},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"546a2fe37239","ts":"2026-09-15T14:39:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.1584,"target":7.07,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.4599,"vwap":6.4517,"ext_from_open_pct":1.97,"max_ext_allowed_pct":4.0,"volume_pace":4.613,"trend":"flat","recent_slope_pct":-0.1083,"volatility":"high"},"price":6.4599,"volume":{"bars":69,"last_bar_volume":21693.0,"baseline_avg":73647.75,"bar_rvol":0.294551,"raw_accel":0.178203,"smooth_accel":-0.579011,"accel_momentum":0.087269,"rvol_3bar":[0.131348,0.124733,0.294551],"trend_3bar":"MIXED","projected_rvol":0.10758},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":1776.0,"sell_vol":11260.0,"unclassified_vol":0.0,"imbalance":-0.727524,"bid":6.44,"ask":6.46,"spread_pct":0.310078,"quote_size_imbalance":null,"quote_age_s":11.248575},"context":{"vwap":6.451661,"price_vs_vwap_pct":0.127705,"ema9":6.505655,"ema20":6.510616,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.106105,"dist_to_hod_atr":3.48407,"atr":0.120577,"spread_atr":0.165869,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.497669,"IWM":-1.44254}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.214293},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cedccd56d8fe","ts":"2026-09-15T14:39:25+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.45 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":6.1499,"target":7.07,"target_label":"premarket_high","reward_risk":2.05,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.4514,"vwap":6.4517,"ext_from_open_pct":1.84,"max_ext_allowed_pct":4.0,"volume_pace":4.609,"trend":"flat","recent_slope_pct":-0.1346,"volatility":"high"},"price":6.4514,"volume":{"bars":69,"last_bar_volume":21693.0,"baseline_avg":73647.75,"bar_rvol":0.294551,"raw_accel":0.178203,"smooth_accel":-0.579011,"accel_momentum":0.087269,"rvol_3bar":[0.131348,0.124733,0.294551],"trend_3bar":"MIXED","projected_rvol":0.110113},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":1826.0,"sell_vol":5281.0,"unclassified_vol":0.0,"imbalance":-0.48614,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":3.850662},"context":{"vwap":6.451661,"price_vs_vwap_pct":-0.004044,"ema9":6.505655,"ema20":6.510616,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.229651,"dist_to_hod_atr":3.554564,"atr":0.120577,"spread_atr":0.082934,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.497669,"IWM":-1.44254}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.143193},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"10a54a1a1b89","ts":"2026-09-15T14:39:30+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":6.1535,"target":7.07,"target_label":"premarket_high","reward_risk":2.04,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.455,"vwap":6.4517,"ext_from_open_pct":1.89,"max_ext_allowed_pct":4.0,"volume_pace":4.604,"trend":"flat","recent_slope_pct":-0.1235,"volatility":"high"},"price":6.455,"volume":{"bars":69,"last_bar_volume":21693.0,"baseline_avg":73647.75,"bar_rvol":0.294551,"raw_accel":0.178203,"smooth_accel":-0.579011,"accel_momentum":0.087269,"rvol_3bar":[0.131348,0.124733,0.294551],"trend_3bar":"MIXED","projected_rvol":0.101483},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":780.0,"sell_vol":2957.0,"unclassified_vol":0.0,"imbalance":-0.582553,"bid":6.45,"ask":6.46,"spread_pct":0.154919,"quote_size_imbalance":null,"quote_age_s":2.476522},"context":{"vwap":6.451661,"price_vs_vwap_pct":0.051756,"ema9":6.505655,"ema20":6.510616,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.177326,"dist_to_hod_atr":3.524708,"atr":0.120577,"spread_atr":0.082934,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.497669,"IWM":-1.44254}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.171591},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2cdee90b9774","ts":"2026-09-15T14:39:35+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.44 below VWAP $6.45","plan":{"state":"PASS","setup":"","stop":6.1371,"target":7.07,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.65},"price":6.4386,"vwap":6.4517,"ext_from_open_pct":1.64,"max_ext_allowed_pct":4.0,"volume_pace":4.601,"trend":"flat","recent_slope_pct":-0.1742,"volatility":"high"},"price":6.4386,"volume":{"bars":69,"last_bar_volume":21693.0,"baseline_avg":73647.75,"bar_rvol":0.294551,"raw_accel":0.178203,"smooth_accel":-0.579011,"accel_momentum":0.087269,"rvol_3bar":[0.131348,0.124733,0.294551],"trend_3bar":"MIXED","projected_rvol":0.150182},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":852.0,"sell_vol":5509.0,"unclassified_vol":0.0,"imbalance":-0.732118,"bid":6.43,"ask":6.44,"spread_pct":0.1554,"quote_size_imbalance":null,"quote_age_s":1.655198},"context":{"vwap":6.451661,"price_vs_vwap_pct":-0.202442,"ema9":6.505655,"ema20":6.510616,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.415698,"dist_to_hod_atr":3.66072,"atr":0.120577,"spread_atr":0.082934,"own_change_pct":-1.526718,"rel_strength_pct":{"SPY":-1.497669,"IWM":-1.44254}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.215646},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2d152da31aa6","ts":"2026-09-15T14:39:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.25% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.1386,"target":9.2318,"target_label":"clear air (typical 60-min move)","reward_risk":1.88,"pos_in_5d_range_pct":129.3,"room_to_5d_high_atr":-1.07},"price":8.5186,"vwap":8.0552,"ext_from_open_pct":11.21,"max_ext_allowed_pct":4.0,"volume_pace":0.613,"trend":"flat","recent_slope_pct":0.1157,"volatility":"high"},"price":8.5186,"volume":{"bars":69,"last_bar_volume":712.0,"baseline_avg":6187.3,"bar_rvol":0.115074,"raw_accel":-0.96341,"smooth_accel":0.934791,"accel_momentum":0.036724,"rvol_3bar":[0.933716,3.596259,0.115074],"trend_3bar":"MIXED","projected_rvol":0.661161},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":2402.0,"sell_vol":245.0,"unclassified_vol":0.0,"imbalance":0.814885,"bid":8.35,"ask":8.54,"spread_pct":2.249852,"quote_size_imbalance":null,"quote_age_s":2.087817},"context":{"vwap":8.052005,"price_vs_vwap_pct":5.794767,"ema9":8.380718,"ema20":8.358805,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.250585,"dist_to_hod_atr":0.151029,"atr":0.141694,"spread_atr":1.340914,"own_change_pct":-0.824287,"rel_strength_pct":{"SPY":-0.795238,"IWM":-0.740109}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.093772},"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":"458fb9bfdbb3","ts":"2026-09-15T14:39:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.78% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.1845,"target":8.54,"target_label":"ceiling","reward_risk":0.18,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-1.03},"price":8.4845,"vwap":8.0551,"ext_from_open_pct":10.76,"max_ext_allowed_pct":4.0,"volume_pace":0.612,"trend":"flat","recent_slope_pct":0.0345,"volatility":"high"},"price":8.4845,"volume":{"bars":69,"last_bar_volume":712.0,"baseline_avg":6187.3,"bar_rvol":0.115074,"raw_accel":-0.96341,"smooth_accel":0.934791,"accel_momentum":0.036724,"rvol_3bar":[0.933716,3.596259,0.115074],"trend_3bar":"MIXED","projected_rvol":0.605287},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":2402.0,"sell_vol":269.0,"unclassified_vol":0.0,"imbalance":0.798577,"bid":8.35,"ask":8.5,"spread_pct":1.780415,"quote_size_imbalance":null,"quote_age_s":0.357583},"context":{"vwap":8.052005,"price_vs_vwap_pct":5.37127,"ema9":8.380718,"ema20":8.358805,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.649883,"dist_to_hod_atr":0.391688,"atr":0.141694,"spread_atr":1.058616,"own_change_pct":-0.824287,"rel_strength_pct":{"SPY":-0.795238,"IWM":-0.740109}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.091896},"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":"0e0ea788bef8","ts":"2026-09-15T14:45:15+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1067,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":-0.0468,"volatility":"low"},"price":10.105,"volume":{"bars":75,"last_bar_volume":13435.0,"baseline_avg":66378.45,"bar_rvol":0.2024,"raw_accel":-0.953408,"smooth_accel":1.78592,"accel_momentum":0.412891,"rvol_3bar":[0.737272,5.442509,0.2024],"trend_3bar":"MIXED","projected_rvol":2.541729},"flow":{"window_s":30,"trades":207,"trade_rate":6.9,"buy_vol":15056.0,"sell_vol":35022.0,"unclassified_vol":0.0,"imbalance":-0.398698,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.820831},"context":{"vwap":10.1067,"price_vs_vwap_pct":-0.016818,"ema9":10.122266,"ema20":10.121612,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.329552,"atr":0.012878,"spread_atr":0.776517,"own_change_pct":-0.073086,"rel_strength_pct":{"SPY":-0.081011,"IWM":-0.020414}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.080696},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0aef888e8abd","ts":"2026-09-15T14:45:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1068,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":-0.037,"volatility":"low"},"price":10.11,"volume":{"bars":75,"last_bar_volume":13435.0,"baseline_avg":66378.45,"bar_rvol":0.2024,"raw_accel":-0.953408,"smooth_accel":1.78592,"accel_momentum":0.412891,"rvol_3bar":[0.737272,5.442509,0.2024],"trend_3bar":"MIXED","projected_rvol":1.922431},"flow":{"window_s":30,"trades":202,"trade_rate":6.733333,"buy_vol":15370.0,"sell_vol":34628.0,"unclassified_vol":0.0,"imbalance":-0.385175,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.367584},"context":{"vwap":10.1067,"price_vs_vwap_pct":0.032654,"ema9":10.122266,"ema20":10.121612,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.24667,"dist_to_hod_atr":1.941294,"atr":0.012878,"spread_atr":0.776517,"own_change_pct":-0.073086,"rel_strength_pct":{"SPY":-0.081011,"IWM":-0.020414}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.07796},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c394d6a10d77","ts":"2026-09-15T14:45:35+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1068,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":-0.0468,"volatility":"low"},"price":10.105,"volume":{"bars":75,"last_bar_volume":13435.0,"baseline_avg":66378.45,"bar_rvol":0.2024,"raw_accel":-0.953408,"smooth_accel":1.78592,"accel_momentum":0.412891,"rvol_3bar":[0.737272,5.442509,0.2024],"trend_3bar":"MIXED","projected_rvol":1.520683},"flow":{"window_s":30,"trades":191,"trade_rate":6.366667,"buy_vol":25709.0,"sell_vol":31602.0,"unclassified_vol":0.0,"imbalance":-0.102825,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.177253},"context":{"vwap":10.1067,"price_vs_vwap_pct":-0.016818,"ema9":10.122266,"ema20":10.121612,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.329552,"atr":0.012878,"spread_atr":0.776517,"own_change_pct":-0.073086,"rel_strength_pct":{"SPY":-0.081011,"IWM":-0.020414}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.020812},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0f0d10f8bcc5","ts":"2026-09-15T14:45:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.0735,"target":10.2,"target_label":"prev_day_high","reward_risk":1.76,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":4.06},"price":10.1194,"vwap":10.1068,"ext_from_open_pct":0.29,"max_ext_allowed_pct":4.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":-0.0184,"volatility":"low"},"price":10.1194,"volume":{"bars":75,"last_bar_volume":13435.0,"baseline_avg":66378.45,"bar_rvol":0.2024,"raw_accel":-0.953408,"smooth_accel":1.78592,"accel_momentum":0.412891,"rvol_3bar":[0.737272,5.442509,0.2024],"trend_3bar":"MIXED","projected_rvol":1.451925},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":18516.0,"sell_vol":5758.0,"unclassified_vol":0.0,"imbalance":0.525583,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.563478},"context":{"vwap":10.1067,"price_vs_vwap_pct":0.125661,"ema9":10.122266,"ema20":10.121612,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.153922,"dist_to_hod_atr":1.211367,"atr":0.012878,"spread_atr":0.776517,"own_change_pct":-0.073086,"rel_strength_pct":{"SPY":-0.081011,"IWM":-0.020414}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.106378},"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":"3e75bf981a04","ts":"2026-09-15T14:45:50+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0542,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1001,"vwap":10.1068,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.824,"trend":"flat","recent_slope_pct":-0.0565,"volatility":"low"},"price":10.1001,"volume":{"bars":75,"last_bar_volume":13435.0,"baseline_avg":66378.45,"bar_rvol":0.2024,"raw_accel":-0.953408,"smooth_accel":1.78592,"accel_momentum":0.412891,"rvol_3bar":[0.737272,5.442509,0.2024],"trend_3bar":"MIXED","projected_rvol":1.267857},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":21932.0,"sell_vol":5664.0,"unclassified_vol":0.0,"imbalance":0.589506,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.015519},"context":{"vwap":10.1067,"price_vs_vwap_pct":-0.065301,"ema9":10.122266,"ema20":10.121612,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.344351,"dist_to_hod_atr":2.710046,"atr":0.012878,"spread_atr":0.776517,"own_change_pct":-0.073086,"rel_strength_pct":{"SPY":-0.081011,"IWM":-0.020414}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.119316},"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":"2b8ce2735e48","ts":"2026-09-15T14:45:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0626,"target":10.2,"target_label":"prev_day_high","reward_risk":1.99,"pos_in_5d_range_pct":10.5,"room_to_5d_high_atr":4.12},"price":10.1085,"vwap":10.1068,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.824,"trend":"flat","recent_slope_pct":-0.0399,"volatility":"low"},"price":10.1085,"volume":{"bars":75,"last_bar_volume":13435.0,"baseline_avg":66378.45,"bar_rvol":0.2024,"raw_accel":-0.953408,"smooth_accel":1.78592,"accel_momentum":0.412891,"rvol_3bar":[0.737272,5.442509,0.2024],"trend_3bar":"MIXED","projected_rvol":1.170429},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":18535.0,"sell_vol":1875.0,"unclassified_vol":0.0,"imbalance":0.816267,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":3.315962},"context":{"vwap":10.1067,"price_vs_vwap_pct":0.017812,"ema9":10.122266,"ema20":10.121612,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.26147,"dist_to_hod_atr":2.057771,"atr":0.012878,"spread_atr":0.776517,"own_change_pct":-0.073086,"rel_strength_pct":{"SPY":-0.081011,"IWM":-0.020414}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.165212},"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":"8b4b7875eef5","ts":"2026-09-15T14:46:20+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1069,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":-0.041,"volatility":"low"},"price":10.105,"volume":{"bars":76,"last_bar_volume":76937.0,"baseline_avg":66171.9,"bar_rvol":1.162684,"raw_accel":3.650735,"smooth_accel":1.936141,"accel_momentum":0.150221,"rvol_3bar":[5.442509,0.2024,1.162684],"trend_3bar":"MIXED","projected_rvol":0.395243},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":7234.0,"sell_vol":8289.0,"unclassified_vol":0.0,"imbalance":-0.067964,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.191068},"context":{"vwap":10.106851,"price_vs_vwap_pct":-0.018315,"ema9":10.120973,"ema20":10.121059,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.127507,"atr":0.014101,"spread_atr":0.709169,"own_change_pct":-0.140178,"rel_strength_pct":{"SPY":-0.177167,"IWM":-0.109974}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.07902},"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":"4373f79ec4be","ts":"2026-09-15T14:46:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0628,"target":10.2,"target_label":"prev_day_high","reward_risk":1.99,"pos_in_5d_range_pct":10.5,"room_to_5d_high_atr":4.12},"price":10.1087,"vwap":10.1069,"ext_from_open_pct":0.19,"max_ext_allowed_pct":4.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"low"},"price":10.1087,"volume":{"bars":76,"last_bar_volume":76937.0,"baseline_avg":66171.9,"bar_rvol":1.162684,"raw_accel":3.650735,"smooth_accel":1.936141,"accel_momentum":0.150221,"rvol_3bar":[5.442509,0.2024,1.162684],"trend_3bar":"MIXED","projected_rvol":0.325334},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":6451.0,"sell_vol":8239.0,"unclassified_vol":0.0,"imbalance":-0.121715,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.839927},"context":{"vwap":10.106851,"price_vs_vwap_pct":0.018294,"ema9":10.120973,"ema20":10.121059,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.259497,"dist_to_hod_atr":1.865115,"atr":0.014101,"spread_atr":0.709169,"own_change_pct":-0.140178,"rel_strength_pct":{"SPY":-0.177167,"IWM":-0.109974}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.141517},"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":"7c85fa588451","ts":"2026-09-15T14:46:55+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1068,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.818,"trend":"flat","recent_slope_pct":-0.0509,"volatility":"low"},"price":10.1,"volume":{"bars":76,"last_bar_volume":76937.0,"baseline_avg":66171.9,"bar_rvol":1.162684,"raw_accel":3.650735,"smooth_accel":1.936141,"accel_momentum":0.150221,"rvol_3bar":[5.442509,0.2024,1.162684],"trend_3bar":"MIXED","projected_rvol":0.365362},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":1551.0,"sell_vol":11641.0,"unclassified_vol":0.0,"imbalance":-0.764857,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.961552},"context":{"vwap":10.106851,"price_vs_vwap_pct":-0.067786,"ema9":10.120973,"ema20":10.121059,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.482092,"atr":0.014101,"spread_atr":0.709169,"own_change_pct":-0.140178,"rel_strength_pct":{"SPY":-0.177167,"IWM":-0.109974}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.889287},"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":"516f6866cdb4","ts":"2026-09-15T14:47:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0718,"target":10.2,"target_label":"prev_day_high","reward_risk":1.79,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":4.07},"price":10.1177,"vwap":10.1069,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":-0.0166,"volatility":"low"},"price":10.1177,"volume":{"bars":77,"last_bar_volume":36078.0,"baseline_avg":66409.7,"bar_rvol":0.543264,"raw_accel":-0.531071,"smooth_accel":-0.686304,"accel_momentum":-2.622445,"rvol_3bar":[0.2024,1.162684,0.543264],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":1983.0,"sell_vol":32456.0,"unclassified_vol":0.0,"imbalance":-0.88484,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":2.132955},"context":{"vwap":10.106847,"price_vs_vwap_pct":0.107385,"ema9":10.116778,"ema20":10.119053,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.170696,"dist_to_hod_atr":1.197154,"atr":0.014451,"spread_atr":0.691997,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.266727,"IWM":-0.236374}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.480702},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"42750803828f","ts":"2026-09-15T14:47:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":1.98,"pos_in_5d_range_pct":397.3,"room_to_5d_high_atr":-4.28},"price":9.53,"vwap":9.5202,"ext_from_open_pct":0.85,"max_ext_allowed_pct":5.0,"volume_pace":5.299,"trend":"flat","recent_slope_pct":0.1117,"volatility":"low"},"price":9.53,"volume":{"bars":77,"last_bar_volume":8050.0,"baseline_avg":3329.8,"bar_rvol":2.417563,"raw_accel":1.662918,"smooth_accel":0.236302,"accel_momentum":-0.172472,"rvol_3bar":[1.227805,0.926377,2.417563],"trend_3bar":"MIXED","projected_rvol":1.655595},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":976.0,"sell_vol":1322.0,"unclassified_vol":0.0,"imbalance":-0.150566,"bid":9.48,"ask":9.53,"spread_pct":0.526039,"quote_size_imbalance":null,"quote_age_s":3.379188},"context":{"vwap":9.520263,"price_vs_vwap_pct":0.102281,"ema9":9.473917,"ema20":9.432681,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.755102,"dist_to_hod_atr":4.106214,"atr":0.065754,"spread_atr":0.76041,"own_change_pct":0.046386,"rel_strength_pct":{"SPY":0.026573,"IWM":0.056926}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.364002},"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":"30809da900b9","ts":"2026-09-15T14:47:25+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1068,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":-0.0516,"volatility":"low"},"price":10.1,"volume":{"bars":77,"last_bar_volume":36078.0,"baseline_avg":66409.7,"bar_rvol":0.543264,"raw_accel":-0.531071,"smooth_accel":-0.686304,"accel_momentum":-2.622445,"rvol_3bar":[0.2024,1.162684,0.543264],"trend_3bar":"MIXED","projected_rvol":0.576097},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":968.0,"sell_vol":28889.0,"unclassified_vol":0.0,"imbalance":-0.935158,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":5.278146},"context":{"vwap":10.106847,"price_vs_vwap_pct":-0.067744,"ema9":10.116778,"ema20":10.119053,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.421988,"atr":0.014451,"spread_atr":0.691997,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.266727,"IWM":-0.236374}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.508037},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8affdc4462ce","ts":"2026-09-15T14:47:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.51 below VWAP $9.52","plan":{"state":"PASS","setup":"","stop":9.4088,"target":9.7481,"target_label":"premarket_high","reward_risk":2.39,"pos_in_5d_range_pct":391.6,"room_to_5d_high_atr":-4.2},"price":9.5088,"vwap":9.5202,"ext_from_open_pct":0.62,"max_ext_allowed_pct":5.0,"volume_pace":5.295,"trend":"flat","recent_slope_pct":0.0671,"volatility":"low"},"price":9.5088,"volume":{"bars":77,"last_bar_volume":8050.0,"baseline_avg":3329.8,"bar_rvol":2.417563,"raw_accel":1.662918,"smooth_accel":0.236302,"accel_momentum":-0.172472,"rvol_3bar":[1.227805,0.926377,2.417563],"trend_3bar":"MIXED","projected_rvol":1.586882},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1320.0,"sell_vol":1322.0,"unclassified_vol":0.0,"imbalance":-0.000757,"bid":9.48,"ask":9.53,"spread_pct":0.526039,"quote_size_imbalance":null,"quote_age_s":0.536518},"context":{"vwap":9.520263,"price_vs_vwap_pct":-0.120402,"ema9":9.473917,"ema20":9.432681,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.971429,"dist_to_hod_atr":4.428628,"atr":0.065754,"spread_atr":0.76041,"own_change_pct":0.046386,"rel_strength_pct":{"SPY":0.026573,"IWM":0.056926}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.00183},"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":"017a182a5395","ts":"2026-09-15T14:47:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1069,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.818,"trend":"flat","recent_slope_pct":-0.0318,"volatility":"low"},"price":10.11,"volume":{"bars":77,"last_bar_volume":36078.0,"baseline_avg":66409.7,"bar_rvol":0.543264,"raw_accel":-0.531071,"smooth_accel":-0.686304,"accel_momentum":-2.622445,"rvol_3bar":[0.2024,1.162684,0.543264],"trend_3bar":"MIXED","projected_rvol":0.572416},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":730.0,"sell_vol":18277.0,"unclassified_vol":0.0,"imbalance":-0.923186,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":10.278146},"context":{"vwap":10.106847,"price_vs_vwap_pct":0.031199,"ema9":10.116778,"ema20":10.119053,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.24667,"dist_to_hod_atr":1.729992,"atr":0.014451,"spread_atr":0.691997,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.266727,"IWM":-0.236374}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.501534},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"18d4c238fd7b","ts":"2026-09-15T14:47:35+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0569,"target":10.2,"target_label":"prev_day_high","reward_risk":2.12,"pos_in_5d_range_pct":9.8,"room_to_5d_high_atr":4.15},"price":10.1028,"vwap":10.1068,"ext_from_open_pct":0.13,"max_ext_allowed_pct":3.0,"volume_pace":0.817,"trend":"flat","recent_slope_pct":-0.0461,"volatility":"low"},"price":10.1028,"volume":{"bars":77,"last_bar_volume":36078.0,"baseline_avg":66409.7,"bar_rvol":0.543264,"raw_accel":-0.531071,"smooth_accel":-0.686304,"accel_momentum":-2.622445,"rvol_3bar":[0.2024,1.162684,0.543264],"trend_3bar":"MIXED","projected_rvol":0.492191},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":629.0,"sell_vol":13834.0,"unclassified_vol":0.0,"imbalance":-0.913019,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.522166},"context":{"vwap":10.106847,"price_vs_vwap_pct":-0.04004,"ema9":10.116778,"ema20":10.119053,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.317711,"dist_to_hod_atr":2.228229,"atr":0.014451,"spread_atr":0.691997,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.266727,"IWM":-0.236374}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.496011},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dcf0c179e9ad","ts":"2026-09-15T14:47:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0612,"target":10.2,"target_label":"prev_day_high","reward_risk":2.02,"pos_in_5d_range_pct":10.3,"room_to_5d_high_atr":4.13},"price":10.1071,"vwap":10.1069,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.816,"trend":"flat","recent_slope_pct":-0.0376,"volatility":"low"},"price":10.1071,"volume":{"bars":77,"last_bar_volume":36078.0,"baseline_avg":66409.7,"bar_rvol":0.543264,"raw_accel":-0.531071,"smooth_accel":-0.686304,"accel_momentum":-2.622445,"rvol_3bar":[0.2024,1.162684,0.543264],"trend_3bar":"MIXED","projected_rvol":0.413915},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":469.0,"sell_vol":10497.0,"unclassified_vol":0.0,"imbalance":-0.914463,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":10.522166},"context":{"vwap":10.106847,"price_vs_vwap_pct":0.002505,"ema9":10.116778,"ema20":10.119053,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.275284,"dist_to_hod_atr":1.930671,"atr":0.014451,"spread_atr":0.691997,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.266727,"IWM":-0.236374}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.496795},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c2e3a1a5d2a8","ts":"2026-09-15T14:48:00+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1069,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.814,"trend":"flat","recent_slope_pct":-0.0417,"volatility":"low"},"price":10.105,"volume":{"bars":77,"last_bar_volume":36078.0,"baseline_avg":66409.7,"bar_rvol":0.543264,"raw_accel":-0.531071,"smooth_accel":-0.686304,"accel_momentum":-2.622445,"rvol_3bar":[0.2024,1.162684,0.543264],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1145.0,"sell_vol":2393.0,"unclassified_vol":0.0,"imbalance":-0.352742,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.077914},"context":{"vwap":10.106847,"price_vs_vwap_pct":-0.018273,"ema9":10.116778,"ema20":10.119053,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.07599,"atr":0.014451,"spread_atr":0.691997,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.273331,"IWM":-0.199489}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.191632},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bb05cf90ee07","ts":"2026-09-15T14:48:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1069,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.812,"trend":"flat","recent_slope_pct":-0.0257,"volatility":"low"},"price":10.11,"volume":{"bars":78,"last_bar_volume":22545.0,"baseline_avg":66260.15,"bar_rvol":0.34025,"raw_accel":-0.375104,"smooth_accel":-0.602651,"accel_momentum":0.083653,"rvol_3bar":[1.162684,0.543264,0.34025],"trend_3bar":"DECELERATING","projected_rvol":0.222698},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":2256.0,"sell_vol":3362.0,"unclassified_vol":0.0,"imbalance":-0.196867,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.57488},"context":{"vwap":10.10685,"price_vs_vwap_pct":0.031162,"ema9":10.114423,"ema20":10.117715,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.24667,"dist_to_hod_atr":1.702648,"atr":0.014683,"spread_atr":0.681059,"own_change_pct":-0.197531,"rel_strength_pct":{"SPY":-0.223948,"IWM":-0.150106}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.066984},"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":"d36ec5c256ad","ts":"2026-09-15T14:48:25+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1068,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":-0.0455,"volatility":"low"},"price":10.1,"volume":{"bars":78,"last_bar_volume":22545.0,"baseline_avg":66260.15,"bar_rvol":0.34025,"raw_accel":-0.375104,"smooth_accel":-0.602651,"accel_momentum":0.083653,"rvol_3bar":[1.162684,0.543264,0.34025],"trend_3bar":"DECELERATING","projected_rvol":0.213703},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":2494.0,"sell_vol":4658.0,"unclassified_vol":0.0,"imbalance":-0.302573,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.855826},"context":{"vwap":10.10685,"price_vs_vwap_pct":-0.067781,"ema9":10.114423,"ema20":10.117715,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.383707,"atr":0.014683,"spread_atr":0.681059,"own_change_pct":-0.197531,"rel_strength_pct":{"SPY":-0.223948,"IWM":-0.150106}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.10295},"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":"132176b24c41","ts":"2026-09-15T14:48:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1069,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0257,"volatility":"low"},"price":10.11,"volume":{"bars":78,"last_bar_volume":22545.0,"baseline_avg":66260.15,"bar_rvol":0.34025,"raw_accel":-0.375104,"smooth_accel":-0.602651,"accel_momentum":0.083653,"rvol_3bar":[1.162684,0.543264,0.34025],"trend_3bar":"DECELERATING","projected_rvol":0.219016},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":3696.0,"sell_vol":3499.0,"unclassified_vol":0.0,"imbalance":0.02738,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.177476},"context":{"vwap":10.10685,"price_vs_vwap_pct":0.031162,"ema9":10.114423,"ema20":10.117715,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.24667,"dist_to_hod_atr":1.702648,"atr":0.014683,"spread_atr":0.681059,"own_change_pct":-0.197531,"rel_strength_pct":{"SPY":-0.223948,"IWM":-0.150106}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.009316},"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":"0a2b4fd474a5","ts":"2026-09-15T14:48:50+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1069,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.0356,"volatility":"low"},"price":10.105,"volume":{"bars":78,"last_bar_volume":22545.0,"baseline_avg":66260.15,"bar_rvol":0.34025,"raw_accel":-0.375104,"smooth_accel":-0.602651,"accel_momentum":0.083653,"rvol_3bar":[1.162684,0.543264,0.34025],"trend_3bar":"DECELERATING","projected_rvol":0.208542},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":3840.0,"sell_vol":3329.0,"unclassified_vol":0.0,"imbalance":0.071279,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.091318},"context":{"vwap":10.10685,"price_vs_vwap_pct":-0.018309,"ema9":10.114423,"ema20":10.117715,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.043177,"atr":0.014683,"spread_atr":0.681059,"own_change_pct":-0.197531,"rel_strength_pct":{"SPY":-0.223948,"IWM":-0.150106}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.024253},"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":"421970c2e1c0","ts":"2026-09-15T14:49:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1069,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":-0.0257,"volatility":"low"},"price":10.11,"volume":{"bars":78,"last_bar_volume":22545.0,"baseline_avg":66260.15,"bar_rvol":0.34025,"raw_accel":-0.375104,"smooth_accel":-0.602651,"accel_momentum":0.083653,"rvol_3bar":[1.162684,0.543264,0.34025],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":6279.0,"sell_vol":1569.0,"unclassified_vol":0.0,"imbalance":0.600153,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.040776},"context":{"vwap":10.10685,"price_vs_vwap_pct":0.031162,"ema9":10.114423,"ema20":10.117715,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.24667,"dist_to_hod_atr":1.702648,"atr":0.014683,"spread_atr":0.681059,"own_change_pct":-0.197531,"rel_strength_pct":{"SPY":-0.201494,"IWM":-0.165906}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.204202},"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":"f9a5d0fcc842","ts":"2026-09-15T14:49:15+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0603,"target":10.2,"target_label":"prev_day_high","reward_risk":2.04,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":4.13},"price":10.1062,"vwap":10.1069,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"low"},"price":10.1062,"volume":{"bars":79,"last_bar_volume":14772.0,"baseline_avg":62807.5,"bar_rvol":0.235195,"raw_accel":-0.344777,"smooth_accel":-0.806205,"accel_momentum":-0.203554,"rvol_3bar":[0.543264,0.34025,0.235195],"trend_3bar":"DECELERATING","projected_rvol":0.211121},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":5780.0,"sell_vol":1423.0,"unclassified_vol":0.0,"imbalance":0.604887,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":11.664524},"context":{"vwap":10.106858,"price_vs_vwap_pct":-0.00651,"ema9":10.113538,"ema20":10.11698,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.284164,"dist_to_hod_atr":1.936793,"atr":0.01487,"spread_atr":0.672498,"own_change_pct":-0.072154,"rel_strength_pct":{"SPY":-0.076116,"IWM":-0.040529}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.142266},"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":"df16fec3b8a0","ts":"2026-09-15T14:49:20+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.2% above open $7.66 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.249,"target":8.54,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":126.5,"room_to_5d_high_atr":-0.97},"price":8.44,"vwap":8.0774,"ext_from_open_pct":10.18,"max_ext_allowed_pct":3.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":0.2971,"volatility":"high"},"price":8.44,"volume":{"bars":79,"last_bar_volume":7722.0,"baseline_avg":4768.35,"bar_rvol":1.619428,"raw_accel":5.477712,"smooth_accel":1.654669,"accel_momentum":1.826242,"rvol_3bar":[0.784058,0.240871,1.619428],"trend_3bar":"MIXED","projected_rvol":0.031457},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":20.0,"sell_vol":54.0,"unclassified_vol":0.0,"imbalance":-0.459459,"bid":8.41,"ask":8.47,"spread_pct":0.7109,"quote_size_imbalance":null,"quote_age_s":19.694313},"context":{"vwap":8.077348,"price_vs_vwap_pct":4.489743,"ema9":8.407187,"ema20":8.387782,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.17096,"dist_to_hod_atr":0.742441,"atr":0.134691,"spread_atr":0.445464,"own_change_pct":0.595948,"rel_strength_pct":{"SPY":0.591985,"IWM":0.627572}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.744062},"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":"26490782348c","ts":"2026-09-15T14:49:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0687,"target":10.2,"target_label":"prev_day_high","reward_risk":1.86,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":4.09},"price":10.1146,"vwap":10.1069,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":0.0075,"volatility":"low"},"price":10.1146,"volume":{"bars":79,"last_bar_volume":14772.0,"baseline_avg":62807.5,"bar_rvol":0.235195,"raw_accel":-0.344777,"smooth_accel":-0.806205,"accel_momentum":-0.203554,"rvol_3bar":[0.543264,0.34025,0.235195],"trend_3bar":"DECELERATING","projected_rvol":0.264618},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":7320.0,"sell_vol":1477.0,"unclassified_vol":0.0,"imbalance":0.664204,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":2.691841},"context":{"vwap":10.106858,"price_vs_vwap_pct":0.076602,"ema9":10.113538,"ema20":10.11698,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.201283,"dist_to_hod_atr":1.371895,"atr":0.01487,"spread_atr":0.672498,"own_change_pct":-0.072154,"rel_strength_pct":{"SPY":-0.076116,"IWM":-0.040529}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.156217},"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":"4aee2ce46f00","ts":"2026-09-15T14:49:25+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1069,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.0214,"volatility":"low"},"price":10.1,"volume":{"bars":79,"last_bar_volume":14772.0,"baseline_avg":62807.5,"bar_rvol":0.235195,"raw_accel":-0.344777,"smooth_accel":-0.806205,"accel_momentum":-0.203554,"rvol_3bar":[0.543264,0.34025,0.235195],"trend_3bar":"DECELERATING","projected_rvol":0.220483},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":4955.0,"sell_vol":1401.0,"unclassified_vol":0.0,"imbalance":0.559157,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.510608},"context":{"vwap":10.106858,"price_vs_vwap_pct":-0.067855,"ema9":10.113538,"ema20":10.11698,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.353742,"atr":0.01487,"spread_atr":0.672498,"own_change_pct":-0.072154,"rel_strength_pct":{"SPY":-0.076116,"IWM":-0.040529}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.131511},"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":"6c3cc11c6c76","ts":"2026-09-15T14:49:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":2.16,"pos_in_5d_range_pct":395.6,"room_to_5d_high_atr":-4.26},"price":9.5239,"vwap":9.5201,"ext_from_open_pct":0.78,"max_ext_allowed_pct":5.0,"volume_pace":5.201,"trend":"flat","recent_slope_pct":0.0642,"volatility":"low"},"price":9.5239,"volume":{"bars":79,"last_bar_volume":1992.0,"baseline_avg":3438.95,"bar_rvol":0.579247,"raw_accel":-0.430043,"smooth_accel":0.115258,"accel_momentum":0.043609,"rvol_3bar":[2.417563,0.987051,0.579247],"trend_3bar":"DECELERATING","projected_rvol":2.46238},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1233.0,"sell_vol":3001.0,"unclassified_vol":0.0,"imbalance":-0.417572,"bid":9.51,"ask":9.54,"spread_pct":0.314961,"quote_size_imbalance":null,"quote_age_s":1.621188},"context":{"vwap":9.520144,"price_vs_vwap_pct":0.039453,"ema9":9.481347,"ema20":9.44395,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.817347,"dist_to_hod_atr":4.345474,"atr":0.063537,"spread_atr":0.472163,"own_change_pct":0.116034,"rel_strength_pct":{"SPY":0.112071,"IWM":0.147658}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.241877},"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":"a864f7f81bfc","ts":"2026-09-15T14:49:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.49 below VWAP $9.52","plan":{"state":"PASS","setup":"","stop":9.41,"target":9.7481,"target_label":"premarket_high","reward_risk":3.23,"pos_in_5d_range_pct":386.5,"room_to_5d_high_atr":-4.13},"price":9.49,"vwap":9.52,"ext_from_open_pct":0.42,"max_ext_allowed_pct":5.0,"volume_pace":5.198,"trend":"flat","recent_slope_pct":-0.0072,"volatility":"low"},"price":9.49,"volume":{"bars":79,"last_bar_volume":1992.0,"baseline_avg":3438.95,"bar_rvol":0.579247,"raw_accel":-0.430043,"smooth_accel":0.115258,"accel_momentum":0.043609,"rvol_3bar":[2.417563,0.987051,0.579247],"trend_3bar":"DECELERATING","projected_rvol":2.398739},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1385.0,"sell_vol":925.0,"unclassified_vol":0.0,"imbalance":0.199134,"bid":9.49,"ask":9.53,"spread_pct":0.42061,"quote_size_imbalance":null,"quote_age_s":2.373854},"context":{"vwap":9.520144,"price_vs_vwap_pct":-0.316634,"ema9":9.481347,"ema20":9.44395,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-3.163265,"dist_to_hod_atr":4.879018,"atr":0.063537,"spread_atr":0.629551,"own_change_pct":0.116034,"rel_strength_pct":{"SPY":0.112071,"IWM":0.147658}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.115348},"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":"f69db774ba5a","ts":"2026-09-15T14:49:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0633,"target":10.2,"target_label":"prev_day_high","reward_risk":1.98,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":4.12},"price":10.1092,"vwap":10.1069,"ext_from_open_pct":0.19,"max_ext_allowed_pct":4.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.0032,"volatility":"low"},"price":10.1092,"volume":{"bars":79,"last_bar_volume":14772.0,"baseline_avg":62807.5,"bar_rvol":0.235195,"raw_accel":-0.344777,"smooth_accel":-0.806205,"accel_momentum":-0.203554,"rvol_3bar":[0.543264,0.34025,0.235195],"trend_3bar":"DECELERATING","projected_rvol":0.250834},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":5675.0,"sell_vol":381.0,"unclassified_vol":0.0,"imbalance":0.874174,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":2.812899},"context":{"vwap":10.106858,"price_vs_vwap_pct":0.023173,"ema9":10.113538,"ema20":10.11698,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.254563,"dist_to_hod_atr":1.735044,"atr":0.01487,"spread_atr":0.672498,"own_change_pct":-0.072154,"rel_strength_pct":{"SPY":-0.076116,"IWM":-0.040529}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.205601},"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":"33e56eba4260","ts":"2026-09-15T14:49:40+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1069,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.801,"trend":"flat","recent_slope_pct":-0.0115,"volatility":"low"},"price":10.105,"volume":{"bars":79,"last_bar_volume":14772.0,"baseline_avg":62807.5,"bar_rvol":0.235195,"raw_accel":-0.344777,"smooth_accel":-0.806205,"accel_momentum":-0.203554,"rvol_3bar":[0.543264,0.34025,0.235195],"trend_3bar":"DECELERATING","projected_rvol":0.247996},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":6705.0,"sell_vol":398.0,"unclassified_vol":0.0,"imbalance":0.887935,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.391695},"context":{"vwap":10.106858,"price_vs_vwap_pct":-0.018383,"ema9":10.113538,"ema20":10.11698,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.017493,"atr":0.01487,"spread_atr":0.672498,"own_change_pct":-0.072154,"rel_strength_pct":{"SPY":-0.076116,"IWM":-0.040529}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.208838},"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":"8b6c9dfff314","ts":"2026-09-15T14:49:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1069,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.0016,"volatility":"low"},"price":10.11,"volume":{"bars":79,"last_bar_volume":14772.0,"baseline_avg":62807.5,"bar_rvol":0.235195,"raw_accel":-0.344777,"smooth_accel":-0.806205,"accel_momentum":-0.203554,"rvol_3bar":[0.543264,0.34025,0.235195],"trend_3bar":"DECELERATING","projected_rvol":1.064013},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":44526.0,"sell_vol":2280.0,"unclassified_vol":0.0,"imbalance":0.902577,"bid":10.11,"ask":10.12,"spread_pct":0.098863,"quote_size_imbalance":null,"quote_age_s":0.032664},"context":{"vwap":10.106858,"price_vs_vwap_pct":0.031088,"ema9":10.113538,"ema20":10.11698,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.24667,"dist_to_hod_atr":1.681244,"atr":0.01487,"spread_atr":0.672498,"own_change_pct":-0.072154,"rel_strength_pct":{"SPY":-0.076116,"IWM":-0.040529}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.212281},"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":"3c29d30c9a7a","ts":"2026-09-15T14:49:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":1.98,"pos_in_5d_range_pct":397.3,"room_to_5d_high_atr":-4.28},"price":9.53,"vwap":9.5201,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":5.179,"trend":"flat","recent_slope_pct":0.077,"volatility":"low"},"price":9.53,"volume":{"bars":79,"last_bar_volume":1992.0,"baseline_avg":3438.95,"bar_rvol":0.579247,"raw_accel":-0.430043,"smooth_accel":0.115258,"accel_momentum":0.043609,"rvol_3bar":[2.417563,0.987051,0.579247],"trend_3bar":"DECELERATING","projected_rvol":1.659069},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1461.0,"sell_vol":539.0,"unclassified_vol":0.0,"imbalance":0.461,"bid":9.52,"ask":9.54,"spread_pct":0.209864,"quote_size_imbalance":null,"quote_age_s":3.317601},"context":{"vwap":9.520144,"price_vs_vwap_pct":0.103528,"ema9":9.481347,"ema20":9.44395,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.755102,"dist_to_hod_atr":4.249468,"atr":0.063537,"spread_atr":0.314775,"own_change_pct":0.116034,"rel_strength_pct":{"SPY":0.112071,"IWM":0.147658}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.267033},"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":"7efbfa7e6c34","ts":"2026-09-15T14:50:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":1.34,"pos_in_5d_range_pct":405.4,"room_to_5d_high_atr":-4.4},"price":9.56,"vwap":9.5202,"ext_from_open_pct":1.16,"max_ext_allowed_pct":5.0,"volume_pace":5.184,"trend":"flat","recent_slope_pct":0.1902,"volatility":"low"},"price":9.56,"volume":{"bars":80,"last_bar_volume":7971.0,"baseline_avg":3414.25,"bar_rvol":2.334627,"raw_accel":3.001506,"smooth_accel":-0.120277,"accel_momentum":-0.235535,"rvol_3bar":[0.987051,0.579247,2.334627],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2361.0,"sell_vol":967.0,"unclassified_vol":0.0,"imbalance":0.41887,"bid":9.54,"ask":9.56,"spread_pct":0.209424,"quote_size_imbalance":null,"quote_age_s":1.282252},"context":{"vwap":9.520198,"price_vs_vwap_pct":0.418076,"ema9":9.493077,"ema20":9.453097,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.44898,"dist_to_hod_atr":3.708667,"atr":0.064713,"spread_atr":0.309056,"own_change_pct":0.591529,"rel_strength_pct":{"SPY":0.629828,"IWM":0.662568}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.977906},"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":"82754fba3254","ts":"2026-09-15T14:51:30+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.198,"target":8.35,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.34},"price":8.2881,"vwap":8.2872,"ext_from_open_pct":-0.5,"max_ext_allowed_pct":3.0,"volume_pace":0.904,"trend":"flat","recent_slope_pct":0.0603,"volatility":"medium"},"price":8.2881,"volume":{"bars":81,"last_bar_volume":29.0,"baseline_avg":1154.85,"bar_rvol":0.025111,"raw_accel":-0.978146,"smooth_accel":-0.54506,"accel_momentum":-0.101021,"rvol_3bar":[0.099634,1.181025,0.025111],"trend_3bar":"MIXED","projected_rvol":1.579426},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":427.0,"sell_vol":485.0,"unclassified_vol":0.0,"imbalance":-0.063596,"bid":8.28,"ask":8.29,"spread_pct":0.1207,"quote_size_imbalance":null,"quote_age_s":5.070712},"context":{"vwap":8.287265,"price_vs_vwap_pct":0.010076,"ema9":8.271525,"ema20":8.269783,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.492941,"dist_to_hod_atr":13.868289,"atr":0.015279,"spread_atr":0.654473,"own_change_pct":-0.014502,"rel_strength_pct":{"SPY":0.055489,"IWM":0.101432}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001597},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ff6e03d00d56","ts":"2026-09-15T14:51:35+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.1949,"target":8.35,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":44.3,"room_to_5d_high_atr":1.35},"price":8.285,"vwap":8.2872,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0528,"volatility":"medium"},"price":8.285,"volume":{"bars":81,"last_bar_volume":29.0,"baseline_avg":1154.85,"bar_rvol":0.025111,"raw_accel":-0.978146,"smooth_accel":-0.54506,"accel_momentum":-0.101021,"rvol_3bar":[0.099634,1.181025,0.025111],"trend_3bar":"MIXED","projected_rvol":1.367153},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":426.0,"sell_vol":494.0,"unclassified_vol":0.0,"imbalance":-0.073913,"bid":8.28,"ask":8.29,"spread_pct":0.1207,"quote_size_imbalance":null,"quote_age_s":2.624875},"context":{"vwap":8.287265,"price_vs_vwap_pct":-0.027331,"ema9":8.271525,"ema20":8.269783,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.529412,"dist_to_hod_atr":14.071176,"atr":0.015279,"spread_atr":0.654473,"own_change_pct":-0.014502,"rel_strength_pct":{"SPY":0.055489,"IWM":0.101432}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001856},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c1d250b8fe78","ts":"2026-09-15T14:52:05+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.1999,"target":8.35,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.33},"price":8.29,"vwap":8.2872,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0481,"volatility":"medium"},"price":8.29,"volume":{"bars":82,"last_bar_volume":965.0,"baseline_avg":706.35,"bar_rvol":1.366178,"raw_accel":4.464713,"smooth_accel":-0.022737,"accel_momentum":0.522324,"rvol_3bar":[1.181025,0.025111,1.366178],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":7.0,"sell_vol":159.0,"unclassified_vol":0.0,"imbalance":-0.915663,"bid":8.28,"ask":8.29,"spread_pct":0.1207,"quote_size_imbalance":null,"quote_age_s":0.618753},"context":{"vwap":8.287228,"price_vs_vwap_pct":0.033452,"ema9":8.27422,"ema20":8.271232,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.470588,"dist_to_hod_atr":13.67232,"atr":0.01536,"spread_atr":0.651063,"own_change_pct":0.241984,"rel_strength_pct":{"SPY":0.359508,"IWM":0.428169}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.250958},"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":"e75d11b1c7b9","ts":"2026-09-15T14:52:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.1949,"target":8.35,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":44.3,"room_to_5d_high_atr":1.35},"price":8.285,"vwap":8.2872,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.036,"volatility":"medium"},"price":8.285,"volume":{"bars":82,"last_bar_volume":965.0,"baseline_avg":706.35,"bar_rvol":1.366178,"raw_accel":4.464713,"smooth_accel":-0.022737,"accel_momentum":0.522324,"rvol_3bar":[1.181025,0.025111,1.366178],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":7.0,"sell_vol":169.0,"unclassified_vol":0.0,"imbalance":-0.920455,"bid":8.28,"ask":8.29,"spread_pct":0.1207,"quote_size_imbalance":null,"quote_age_s":1.918436},"context":{"vwap":8.287228,"price_vs_vwap_pct":-0.026882,"ema9":8.27422,"ema20":8.271232,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.529412,"dist_to_hod_atr":13.997851,"atr":0.01536,"spread_atr":0.651063,"own_change_pct":0.241984,"rel_strength_pct":{"SPY":0.359508,"IWM":0.428169}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.257505},"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":"4bb21000e5d6","ts":"2026-09-15T14:52:50+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.2049,"target":8.35,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.32},"price":8.295,"vwap":8.2872,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":4.0,"volume_pace":0.896,"trend":"flat","recent_slope_pct":0.0601,"volatility":"medium"},"price":8.295,"volume":{"bars":82,"last_bar_volume":965.0,"baseline_avg":706.35,"bar_rvol":1.366178,"raw_accel":4.464713,"smooth_accel":-0.022737,"accel_momentum":0.522324,"rvol_3bar":[1.181025,0.025111,1.366178],"trend_3bar":"MIXED","projected_rvol":1.364196},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":622.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.965245,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":0.938752},"context":{"vwap":8.287228,"price_vs_vwap_pct":0.093785,"ema9":8.27422,"ema20":8.271232,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.411765,"dist_to_hod_atr":13.346788,"atr":0.01536,"spread_atr":0.651063,"own_change_pct":0.241984,"rel_strength_pct":{"SPY":0.359508,"IWM":0.428169}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.318697},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cefb9a3a1cf1","ts":"2026-09-15T14:53:05+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.28 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.1947,"target":8.35,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":44.2,"room_to_5d_high_atr":1.35},"price":8.2848,"vwap":8.2872,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":0.0251,"volatility":"medium"},"price":8.2848,"volume":{"bars":83,"last_bar_volume":924.0,"baseline_avg":697.3,"bar_rvol":1.325111,"raw_accel":-0.042487,"smooth_accel":0.049234,"accel_momentum":0.071971,"rvol_3bar":[0.025111,1.366178,1.325111],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":743.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.950131,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":2.094182},"context":{"vwap":8.287241,"price_vs_vwap_pct":-0.029458,"ema9":8.278376,"ema20":8.273496,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.531765,"dist_to_hod_atr":13.821863,"atr":0.01557,"spread_atr":0.64228,"own_change_pct":0.362976,"rel_strength_pct":{"SPY":0.471257,"IWM":0.443813}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.259029},"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":"7c75172c89b1","ts":"2026-09-15T14:53:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":8.2006,"target":8.35,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.33},"price":8.2907,"vwap":8.2872,"ext_from_open_pct":-0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":0.0393,"volatility":"medium"},"price":8.2907,"volume":{"bars":83,"last_bar_volume":924.0,"baseline_avg":697.3,"bar_rvol":1.325111,"raw_accel":-0.042487,"smooth_accel":0.049234,"accel_momentum":0.071971,"rvol_3bar":[0.025111,1.366178,1.325111],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":744.0,"sell_vol":27.0,"unclassified_vol":0.0,"imbalance":0.929961,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":0.202376},"context":{"vwap":8.287241,"price_vs_vwap_pct":0.041736,"ema9":8.278376,"ema20":8.273496,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.462353,"dist_to_hod_atr":13.442918,"atr":0.01557,"spread_atr":0.64228,"own_change_pct":0.362976,"rel_strength_pct":{"SPY":0.471257,"IWM":0.443813}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.232302},"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":"0512a6380aca","ts":"2026-09-15T14:53:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":395.9,"room_to_5d_high_atr":-4.26},"price":9.525,"vwap":9.5211,"ext_from_open_pct":0.79,"max_ext_allowed_pct":4.0,"volume_pace":5.088,"trend":"flat","recent_slope_pct":-0.021,"volatility":"low"},"price":9.525,"volume":{"bars":83,"last_bar_volume":2831.0,"baseline_avg":4439.55,"bar_rvol":0.637677,"raw_accel":-0.717324,"smooth_accel":0.646233,"accel_momentum":-0.370093,"rvol_3bar":[2.502049,2.531182,0.637677],"trend_3bar":"MIXED","projected_rvol":0.161278},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":221.0,"sell_vol":137.0,"unclassified_vol":0.0,"imbalance":0.234637,"bid":9.5,"ask":9.53,"spread_pct":0.315292,"quote_size_imbalance":null,"quote_age_s":0.302967},"context":{"vwap":9.521136,"price_vs_vwap_pct":0.040583,"ema9":9.521176,"ema20":9.478313,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.806122,"dist_to_hod_atr":4.366093,"atr":0.062985,"spread_atr":0.476301,"own_change_pct":0.536899,"rel_strength_pct":{"SPY":0.645179,"IWM":0.617735}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.149623},"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":"9611bd185d49","ts":"2026-09-15T14:53:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.52 below VWAP $9.52","plan":{"state":"PASS","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":2.28,"pos_in_5d_range_pct":394.6,"room_to_5d_high_atr":-4.24},"price":9.52,"vwap":9.5211,"ext_from_open_pct":0.74,"max_ext_allowed_pct":4.0,"volume_pace":5.083,"trend":"flat","recent_slope_pct":-0.0314,"volatility":"low"},"price":9.52,"volume":{"bars":83,"last_bar_volume":2831.0,"baseline_avg":4439.55,"bar_rvol":0.637677,"raw_accel":-0.717324,"smooth_accel":0.646233,"accel_momentum":-0.370093,"rvol_3bar":[2.502049,2.531182,0.637677],"trend_3bar":"MIXED","projected_rvol":0.142099},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":231.0,"sell_vol":89.0,"unclassified_vol":0.0,"imbalance":0.44375,"bid":9.5,"ask":9.53,"spread_pct":0.315292,"quote_size_imbalance":null,"quote_age_s":3.006636},"context":{"vwap":9.521136,"price_vs_vwap_pct":-0.011931,"ema9":9.521176,"ema20":9.478313,"ema_stack":false,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.857143,"dist_to_hod_atr":4.445477,"atr":0.062985,"spread_atr":0.476301,"own_change_pct":0.536899,"rel_strength_pct":{"SPY":0.645179,"IWM":0.617735}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.282969},"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":"c82ec5bc81d9","ts":"2026-09-15T14:54:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2049,"target":8.35,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.32},"price":8.295,"vwap":8.2873,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.887,"trend":"flat","recent_slope_pct":0.0627,"volatility":"medium"},"price":8.295,"volume":{"bars":84,"last_bar_volume":703.0,"baseline_avg":712.95,"bar_rvol":0.986044,"raw_accel":-0.239177,"smooth_accel":0.764466,"accel_momentum":0.715231,"rvol_3bar":[1.366178,1.325111,0.986044],"trend_3bar":"DECELERATING","projected_rvol":0.145873},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":26.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.368421,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":0.300481},"context":{"vwap":8.287251,"price_vs_vwap_pct":0.093499,"ema9":8.281621,"ema20":8.275506,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.411765,"dist_to_hod_atr":13.033371,"atr":0.015729,"spread_atr":0.635774,"own_change_pct":0.296248,"rel_strength_pct":{"SPY":0.392674,"IWM":0.378849}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.363279},"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":"f67ed5050871","ts":"2026-09-15T14:55:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":395.9,"room_to_5d_high_atr":-4.26},"price":9.525,"vwap":9.5211,"ext_from_open_pct":0.79,"max_ext_allowed_pct":5.0,"volume_pace":5.007,"trend":"flat","recent_slope_pct":-0.1049,"volatility":"low"},"price":9.525,"volume":{"bars":85,"last_bar_volume":1835.0,"baseline_avg":4446.15,"bar_rvol":0.412717,"raw_accel":0.650866,"smooth_accel":-0.794395,"accel_momentum":-0.510044,"rvol_3bar":[0.637677,0.209861,0.412717],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1463.0,"sell_vol":111.0,"unclassified_vol":0.0,"imbalance":0.858958,"bid":9.51,"ask":9.54,"spread_pct":0.314961,"quote_size_imbalance":null,"quote_age_s":4.994425},"context":{"vwap":9.521121,"price_vs_vwap_pct":0.040742,"ema9":9.517552,"ema20":9.484152,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.806122,"dist_to_hod_atr":4.594535,"atr":0.059854,"spread_atr":0.501222,"own_change_pct":-0.209644,"rel_strength_pct":{"SPY":-0.163403,"IWM":-0.178775}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.354506},"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":"1f2b2918aa80","ts":"2026-09-15T14:55:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.51 below VWAP $9.52","plan":{"state":"PASS","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":2.49,"pos_in_5d_range_pct":393.0,"room_to_5d_high_atr":-4.22},"price":9.514,"vwap":9.5211,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":5.002,"trend":"flat","recent_slope_pct":-0.128,"volatility":"low"},"price":9.514,"volume":{"bars":85,"last_bar_volume":1835.0,"baseline_avg":4446.15,"bar_rvol":0.412717,"raw_accel":0.650866,"smooth_accel":-0.794395,"accel_momentum":-0.510044,"rvol_3bar":[0.637677,0.209861,0.412717],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1463.0,"sell_vol":169.0,"unclassified_vol":0.0,"imbalance":0.792892,"bid":9.51,"ask":9.54,"spread_pct":0.314961,"quote_size_imbalance":null,"quote_age_s":0.010839},"context":{"vwap":9.521121,"price_vs_vwap_pct":-0.07479,"ema9":9.517552,"ema20":9.484152,"ema_stack":false,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.918367,"dist_to_hod_atr":4.778317,"atr":0.059854,"spread_atr":0.501222,"own_change_pct":-0.209644,"rel_strength_pct":{"SPY":-0.163403,"IWM":-0.178775}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.32724},"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":"c18363b7ec13","ts":"2026-09-15T14:55:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":1.73,"pos_in_5d_range_pct":400.0,"room_to_5d_high_atr":-4.32},"price":9.54,"vwap":9.5211,"ext_from_open_pct":0.95,"max_ext_allowed_pct":5.0,"volume_pace":4.994,"trend":"flat","recent_slope_pct":-0.0734,"volatility":"low"},"price":9.54,"volume":{"bars":85,"last_bar_volume":1835.0,"baseline_avg":4446.15,"bar_rvol":0.412717,"raw_accel":0.650866,"smooth_accel":-0.794395,"accel_momentum":-0.510044,"rvol_3bar":[0.637677,0.209861,0.412717],"trend_3bar":"MIXED","projected_rvol":0.448028},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":605.0,"sell_vol":59.0,"unclassified_vol":0.0,"imbalance":0.822289,"bid":9.51,"ask":9.54,"spread_pct":0.314961,"quote_size_imbalance":null,"quote_age_s":3.47536},"context":{"vwap":9.521121,"price_vs_vwap_pct":0.198287,"ema9":9.517552,"ema20":9.484152,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.653061,"dist_to_hod_atr":4.343924,"atr":0.059854,"spread_atr":0.501222,"own_change_pct":-0.209644,"rel_strength_pct":{"SPY":-0.163403,"IWM":-0.178775}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.339372},"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":"08dd0e9a7326","ts":"2026-09-15T14:55:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.52 below VWAP $9.52","plan":{"state":"PASS","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":2.28,"pos_in_5d_range_pct":394.6,"room_to_5d_high_atr":-4.24},"price":9.52,"vwap":9.5211,"ext_from_open_pct":0.74,"max_ext_allowed_pct":4.0,"volume_pace":4.991,"trend":"flat","recent_slope_pct":-0.1154,"volatility":"low"},"price":9.52,"volume":{"bars":85,"last_bar_volume":1835.0,"baseline_avg":4446.15,"bar_rvol":0.412717,"raw_accel":0.650866,"smooth_accel":-0.794395,"accel_momentum":-0.510044,"rvol_3bar":[0.637677,0.209861,0.412717],"trend_3bar":"MIXED","projected_rvol":0.553827},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":605.0,"sell_vol":421.0,"unclassified_vol":0.0,"imbalance":0.179337,"bid":9.51,"ask":9.54,"spread_pct":0.314961,"quote_size_imbalance":null,"quote_age_s":1.040821},"context":{"vwap":9.521121,"price_vs_vwap_pct":-0.011772,"ema9":9.517552,"ema20":9.484152,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.857143,"dist_to_hod_atr":4.678072,"atr":0.059854,"spread_atr":0.501222,"own_change_pct":-0.209644,"rel_strength_pct":{"SPY":-0.163403,"IWM":-0.178775}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.074015},"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":"364fb0c2e544","ts":"2026-09-15T14:55:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.42,"target":9.7481,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":395.9,"room_to_5d_high_atr":-4.26},"price":9.525,"vwap":9.5211,"ext_from_open_pct":0.79,"max_ext_allowed_pct":4.0,"volume_pace":4.987,"trend":"flat","recent_slope_pct":-0.1049,"volatility":"low"},"price":9.525,"volume":{"bars":85,"last_bar_volume":1835.0,"baseline_avg":4446.15,"bar_rvol":0.412717,"raw_accel":0.650866,"smooth_accel":-0.794395,"accel_momentum":-0.510044,"rvol_3bar":[0.637677,0.209861,0.412717],"trend_3bar":"MIXED","projected_rvol":0.506506},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":705.0,"sell_vol":421.0,"unclassified_vol":0.0,"imbalance":0.25222,"bid":9.51,"ask":9.54,"spread_pct":0.314961,"quote_size_imbalance":null,"quote_age_s":6.040821},"context":{"vwap":9.521121,"price_vs_vwap_pct":0.040742,"ema9":9.517552,"ema20":9.484152,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.806122,"dist_to_hod_atr":4.594535,"atr":0.059854,"spread_atr":0.501222,"own_change_pct":-0.209644,"rel_strength_pct":{"SPY":-0.163403,"IWM":-0.178775}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.104095},"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":"0395c80bb0e9","ts":"2026-09-15T14:55:30+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1072,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0239,"volatility":"low"},"price":10.105,"volume":{"bars":85,"last_bar_volume":91226.0,"baseline_avg":52729.95,"bar_rvol":1.73006,"raw_accel":1.292859,"smooth_accel":0.959506,"accel_momentum":0.807222,"rvol_3bar":[0.827164,0.747183,1.73006],"trend_3bar":"MIXED","projected_rvol":0.896834},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":3290.0,"sell_vol":20355.0,"unclassified_vol":0.0,"imbalance":-0.721717,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.047881},"context":{"vwap":10.107136,"price_vs_vwap_pct":-0.021136,"ema9":10.11254,"ema20":10.114755,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.036479,"atr":0.014731,"spread_atr":0.678826,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.046241,"IWM":0.030869}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.248614},"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":"0c887da5b701","ts":"2026-09-15T14:55:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.064,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":4.11},"price":10.1099,"vwap":10.1072,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.791,"trend":"flat","recent_slope_pct":-0.0142,"volatility":"low"},"price":10.1099,"volume":{"bars":85,"last_bar_volume":91226.0,"baseline_avg":52729.95,"bar_rvol":1.73006,"raw_accel":1.292859,"smooth_accel":0.959506,"accel_momentum":0.807222,"rvol_3bar":[0.827164,0.747183,1.73006],"trend_3bar":"MIXED","projected_rvol":0.711597},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":3496.0,"sell_vol":21260.0,"unclassified_vol":0.0,"imbalance":-0.717563,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":5.044502},"context":{"vwap":10.107136,"price_vs_vwap_pct":0.027344,"ema9":10.11254,"ema20":10.114755,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.247657,"dist_to_hod_atr":1.703854,"atr":0.014731,"spread_atr":0.678826,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.046241,"IWM":0.030869}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.241428},"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":"2a4a2b37b8ee","ts":"2026-09-15T14:56:00+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1071,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.789,"trend":"flat","recent_slope_pct":-0.0239,"volatility":"low"},"price":10.105,"volume":{"bars":85,"last_bar_volume":91226.0,"baseline_avg":52729.95,"bar_rvol":1.73006,"raw_accel":1.292859,"smooth_accel":0.959506,"accel_momentum":0.807222,"rvol_3bar":[0.827164,0.747183,1.73006],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":3896.0,"sell_vol":2159.0,"unclassified_vol":0.0,"imbalance":0.28687,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.043803},"context":{"vwap":10.107136,"price_vs_vwap_pct":-0.021136,"ema9":10.11254,"ema20":10.114755,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":2.036479,"atr":0.014731,"spread_atr":0.678826,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.03568,"IWM":0.049241}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.496303},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0c74d1b35d8d","ts":"2026-09-15T14:56:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0627,"target":10.2,"target_label":"prev_day_high","reward_risk":1.99,"pos_in_5d_range_pct":10.5,"room_to_5d_high_atr":4.12},"price":10.1086,"vwap":10.1071,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.789,"trend":"flat","recent_slope_pct":-0.021,"volatility":"low"},"price":10.1086,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":3960.0,"sell_vol":1319.0,"unclassified_vol":0.0,"imbalance":0.500284,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.496974},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.014408,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.260483,"dist_to_hod_atr":1.74746,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.262727},"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":"b48e2f525bb4","ts":"2026-09-15T14:56:15+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1071,"ext_from_open_pct":0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.787,"trend":"flat","recent_slope_pct":-0.0281,"volatility":"low"},"price":10.105,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.185095},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":3403.0,"sell_vol":1410.0,"unclassified_vol":0.0,"imbalance":0.414087,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":2.583576},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.021211,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":1.985749,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.21746},"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":"eb5a0b1949a5","ts":"2026-09-15T14:56:20+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.4658,"target":9.7481,"target_label":"premarket_high","reward_risk":3.4,"pos_in_5d_range_pct":397.3,"room_to_5d_high_atr":-4.28},"price":9.53,"vwap":9.5211,"ext_from_open_pct":0.85,"max_ext_allowed_pct":5.0,"volume_pace":4.94,"trend":"flat","recent_slope_pct":-0.0042,"volatility":"low"},"price":9.53,"volume":{"bars":86,"last_bar_volume":1249.0,"baseline_avg":4490.85,"bar_rvol":0.278121,"raw_accel":-0.319346,"smooth_accel":-0.8181,"accel_momentum":-0.023705,"rvol_3bar":[0.209861,0.412717,0.278121],"trend_3bar":"MIXED","projected_rvol":0.009352},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":123.0,"sell_vol":14.0,"unclassified_vol":0.0,"imbalance":0.79562,"bid":9.51,"ask":9.54,"spread_pct":0.314961,"quote_size_imbalance":null,"quote_age_s":2.617615},"context":{"vwap":9.52113,"price_vs_vwap_pct":0.093156,"ema9":9.521242,"ema20":9.48909,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.755102,"dist_to_hod_atr":4.677649,"atr":0.057721,"spread_atr":0.519739,"own_change_pct":-0.041929,"rel_strength_pct":{"SPY":-0.006248,"IWM":0.007312}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.221279},"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":"28ea8e157c30","ts":"2026-09-15T14:56:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0652,"target":10.2,"target_label":"prev_day_high","reward_risk":1.94,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":4.11},"price":10.1111,"vwap":10.1071,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.016,"volatility":"low"},"price":10.1111,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.177895},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1682.0,"sell_vol":2595.0,"unclassified_vol":0.0,"imbalance":-0.213467,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.056833},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.039143,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.235816,"dist_to_hod_atr":1.58198,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.112104},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fb4771f969c6","ts":"2026-09-15T14:56:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"BUY","setup":"pullback","stop":9.4758,"target":9.7481,"target_label":"premarket_high","reward_risk":3.24,"pos_in_5d_range_pct":400.0,"room_to_5d_high_atr":-4.32},"price":9.54,"vwap":9.5211,"ext_from_open_pct":0.95,"max_ext_allowed_pct":5.0,"volume_pace":4.931,"trend":"flat","recent_slope_pct":0.0168,"volatility":"low"},"price":9.54,"volume":{"bars":86,"last_bar_volume":1249.0,"baseline_avg":4490.85,"bar_rvol":0.278121,"raw_accel":-0.319346,"smooth_accel":-0.8181,"accel_momentum":-0.023705,"rvol_3bar":[0.209861,0.412717,0.278121],"trend_3bar":"MIXED","projected_rvol":0.119354},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":226.0,"sell_vol":42.0,"unclassified_vol":0.0,"imbalance":0.686567,"bid":9.52,"ask":9.55,"spread_pct":0.31463,"quote_size_imbalance":null,"quote_age_s":8.74784},"context":{"vwap":9.52113,"price_vs_vwap_pct":0.198186,"ema9":9.521242,"ema20":9.48909,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.653061,"dist_to_hod_atr":4.504403,"atr":0.057721,"spread_atr":0.519739,"own_change_pct":-0.041929,"rel_strength_pct":{"SPY":-0.006248,"IWM":0.007312}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.190949},"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":"81c0cbeeaa29","ts":"2026-09-15T14:56:30+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0607,"target":10.2,"target_label":"prev_day_high","reward_risk":2.04,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":4.13},"price":10.1066,"vwap":10.1071,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":-0.0249,"volatility":"low"},"price":10.1066,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.149095},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1632.0,"sell_vol":2584.0,"unclassified_vol":0.0,"imbalance":-0.225806,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.672442},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.00538,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.280217,"dist_to_hod_atr":1.879843,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.118584},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c1428bc73ada","ts":"2026-09-15T14:56:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0652,"target":10.2,"target_label":"prev_day_high","reward_risk":1.94,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":4.11},"price":10.1111,"vwap":10.1071,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":-0.016,"volatility":"low"},"price":10.1111,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.13019},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1288.0,"sell_vol":2419.0,"unclassified_vol":0.0,"imbalance":-0.305098,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":2.010337},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.039143,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.235816,"dist_to_hod_atr":1.58198,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.160224},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"759c8cb3c473","ts":"2026-09-15T14:56:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 9.49, target 9.75 (premarket_high), R:R 2.23; pullback: buy 9.50-9.56 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":9.49,"target":9.7481,"target_label":"premarket_high","reward_risk":2.23,"pos_in_5d_range_pct":408.1,"room_to_5d_high_atr":-4.44},"price":9.57,"vwap":9.5212,"ext_from_open_pct":1.27,"max_ext_allowed_pct":5.0,"volume_pace":4.927,"trend":"flat","recent_slope_pct":0.0797,"volatility":"low"},"price":9.57,"volume":{"bars":86,"last_bar_volume":1249.0,"baseline_avg":4490.85,"bar_rvol":0.278121,"raw_accel":-0.319346,"smooth_accel":-0.8181,"accel_momentum":-0.023705,"rvol_3bar":[0.209861,0.412717,0.278121],"trend_3bar":"MIXED","projected_rvol":0.407161},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1176.0,"sell_vol":43.0,"unclassified_vol":0.0,"imbalance":0.92945,"bid":9.54,"ask":9.57,"spread_pct":0.313972,"quote_size_imbalance":null,"quote_age_s":1.769983},"context":{"vwap":9.52113,"price_vs_vwap_pct":0.513275,"ema9":9.521242,"ema20":9.48909,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.346939,"dist_to_hod_atr":3.984664,"atr":0.057721,"spread_atr":0.519739,"own_change_pct":-0.041929,"rel_strength_pct":{"SPY":-0.006248,"IWM":0.007312}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.2585},"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":"5d165c263e62","ts":"2026-09-15T14:56:40+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.11 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0591,"target":10.2,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":4.14},"price":10.105,"vwap":10.1071,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":-0.0281,"volatility":"low"},"price":10.105,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.118982},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":311.0,"sell_vol":1762.0,"unclassified_vol":0.0,"imbalance":-0.699952,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.441176},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.021211,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.296004,"dist_to_hod_atr":1.985749,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.367584},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"db7c0fdf73dd","ts":"2026-09-15T14:56:45+00:00","symbol":"RLGT","event":"GATE_FAIL","bot":{"state":"GATE_FAIL","reason":"held 25.0s","plan":{"state":"BUY","setup":"pullback","stop":9.4858,"target":9.7481,"target_label":"premarket_high","reward_risk":3.09,"pos_in_5d_range_pct":402.7,"room_to_5d_high_atr":-4.36},"price":9.55,"vwap":9.5212,"ext_from_open_pct":1.06,"max_ext_allowed_pct":5.0,"volume_pace":4.922,"trend":"flat","recent_slope_pct":0.0378,"volatility":"low"},"price":9.55,"volume":{"bars":86,"last_bar_volume":1249.0,"baseline_avg":4490.85,"bar_rvol":0.278121,"raw_accel":-0.319346,"smooth_accel":-0.8181,"accel_momentum":-0.023705,"rvol_3bar":[0.209861,0.412717,0.278121],"trend_3bar":"MIXED","projected_rvol":0.364593},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1176.0,"sell_vol":52.0,"unclassified_vol":0.0,"imbalance":0.915309,"bid":9.53,"ask":9.55,"spread_pct":0.209644,"quote_size_imbalance":null,"quote_age_s":1.217669},"context":{"vwap":9.52113,"price_vs_vwap_pct":0.303216,"ema9":9.521242,"ema20":9.48909,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.55102,"dist_to_hod_atr":4.331156,"atr":0.057721,"spread_atr":0.346493,"own_change_pct":-0.041929,"rel_strength_pct":{"SPY":-0.006248,"IWM":0.007312}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.254567},"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":"fc905799fae8","ts":"2026-09-15T14:56:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0651,"target":10.2,"target_label":"prev_day_high","reward_risk":1.94,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":4.11},"price":10.111,"vwap":10.1071,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0162,"volatility":"low"},"price":10.111,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.114839},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":573.0,"sell_vol":1681.0,"unclassified_vol":0.0,"imbalance":-0.491571,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.59435},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.038153,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.236803,"dist_to_hod_atr":1.5886,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.258151},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2e99fd65ae2e","ts":"2026-09-15T14:56:50+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1071,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.038,"volatility":"low"},"price":10.1,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.135289},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":701.0,"sell_vol":1707.0,"unclassified_vol":0.0,"imbalance":-0.417774,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.552312},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.070681,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.316708,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.219397},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f679ff883fc7","ts":"2026-09-15T14:56:55+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.1956,"target":8.35,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":44.3,"room_to_5d_high_atr":1.34},"price":8.2857,"vwap":8.2872,"ext_from_open_pct":-0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.956,"trend":"flat","recent_slope_pct":-0.0269,"volatility":"medium"},"price":8.2857,"volume":{"bars":86,"last_bar_volume":228.0,"baseline_avg":662.3,"bar_rvol":0.344255,"raw_accel":0.377019,"smooth_accel":-0.478102,"accel_momentum":-0.209253,"rvol_3bar":[0.986044,0.093639,0.344255],"trend_3bar":"MIXED","projected_rvol":20.895776},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":7889.0,"sell_vol":4777.0,"unclassified_vol":0.0,"imbalance":0.245697,"bid":8.29,"ask":8.3,"spread_pct":0.120555,"quote_size_imbalance":null,"quote_age_s":6.638413},"context":{"vwap":8.287265,"price_vs_vwap_pct":-0.018879,"ema9":8.285553,"ema20":8.278617,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.521176,"dist_to_hod_atr":15.100901,"atr":0.014191,"spread_atr":0.704662,"own_change_pct":0.206676,"rel_strength_pct":{"SPY":0.242357,"IWM":0.255918}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.084582},"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":"8f9ada99a439","ts":"2026-09-15T14:56:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0641,"target":10.2,"target_label":"prev_day_high","reward_risk":1.96,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.11,"vwap":10.1071,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":-0.0182,"volatility":"low"},"price":10.11,"volume":{"bars":86,"last_bar_volume":29700.0,"baseline_avg":56554.6,"bar_rvol":0.525156,"raw_accel":-0.674435,"smooth_accel":1.08075,"accel_momentum":0.121245,"rvol_3bar":[0.747183,1.73006,0.525156],"trend_3bar":"MIXED","projected_rvol":0.132307},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":938.0,"sell_vol":1729.0,"unclassified_vol":0.0,"imbalance":-0.296588,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":1.880972},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.028259,"ema9":10.111032,"ema20":10.113826,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.24667,"dist_to_hod_atr":1.654791,"atr":0.015108,"spread_atr":0.661916,"own_change_pct":-0.020777,"rel_strength_pct":{"SPY":0.014903,"IWM":0.028464}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.155755},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8d65640309c4","ts":"2026-09-15T14:57:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2199,"target":8.41,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.28},"price":8.31,"vwap":8.2874,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.962,"trend":"flat","recent_slope_pct":0.0264,"volatility":"medium"},"price":8.31,"volume":{"bars":87,"last_bar_volume":12686.0,"baseline_avg":671.75,"bar_rvol":18.885002,"raw_accel":54.640351,"smooth_accel":4.009259,"accel_momentum":4.487361,"rvol_3bar":[0.093639,0.344255,18.885002],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":736.0,"sell_vol":537.0,"unclassified_vol":0.0,"imbalance":0.156324,"bid":8.3,"ask":8.31,"spread_pct":0.120409,"quote_size_imbalance":null,"quote_age_s":2.194498},"context":{"vwap":8.287229,"price_vs_vwap_pct":0.274777,"ema9":8.285583,"ema20":8.279292,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.235294,"dist_to_hod_atr":12.697765,"atr":0.014963,"spread_atr":0.668303,"own_change_pct":0.008449,"rel_strength_pct":{"SPY":-0.025915,"IWM":-0.024957}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":2.952172},"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":"da4e0a8c4488","ts":"2026-09-15T14:57:05+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1071,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.029,"volatility":"low"},"price":10.1,"volume":{"bars":87,"last_bar_volume":11988.0,"baseline_avg":55394.85,"bar_rvol":0.21641,"raw_accel":-0.596364,"smooth_accel":0.337419,"accel_momentum":-0.743332,"rvol_3bar":[1.73006,0.525156,0.21641],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1014.0,"sell_vol":6790.0,"unclassified_vol":0.0,"imbalance":-0.740133,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.386064},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.070685,"ema9":10.110965,"ema20":10.113528,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.359179,"atr":0.014836,"spread_atr":0.674051,"own_change_pct":-0.042511,"rel_strength_pct":{"SPY":-0.076875,"IWM":-0.075917}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.160172},"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":"95a20f84509b","ts":"2026-09-15T14:57:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says WATCH; stop 9.48, target 9.75 (premarket_high), R:R 3.16; pullback: buy 9.50-9.56 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":9.4808,"target":9.7481,"target_label":"premarket_high","reward_risk":3.16,"pos_in_5d_range_pct":401.4,"room_to_5d_high_atr":-4.34},"price":9.545,"vwap":9.5212,"ext_from_open_pct":1.01,"max_ext_allowed_pct":5.0,"volume_pace":4.912,"trend":"flat","recent_slope_pct":0.1259,"volatility":"low"},"price":9.545,"volume":{"bars":87,"last_bar_volume":3276.0,"baseline_avg":4276.1,"bar_rvol":0.766119,"raw_accel":1.622898,"smooth_accel":-0.538863,"accel_momentum":0.279237,"rvol_3bar":[0.412717,0.278121,0.766119],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1841.0,"sell_vol":854.0,"unclassified_vol":0.0,"imbalance":0.366234,"bid":9.54,"ask":9.57,"spread_pct":0.313972,"quote_size_imbalance":null,"quote_age_s":16.29161},"context":{"vwap":9.521226,"price_vs_vwap_pct":0.249691,"ema9":9.526994,"ema20":9.494891,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.602041,"dist_to_hod_atr":4.405357,"atr":0.057884,"spread_atr":0.518277,"own_change_pct":-0.104603,"rel_strength_pct":{"SPY":-0.138966,"IWM":-0.138009}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.280579},"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":"73519ee664a9","ts":"2026-09-15T14:57:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2149,"target":8.35,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.29},"price":8.305,"vwap":8.2874,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.0143,"volatility":"medium"},"price":8.305,"volume":{"bars":87,"last_bar_volume":12686.0,"baseline_avg":671.75,"bar_rvol":18.885002,"raw_accel":54.640351,"smooth_accel":4.009259,"accel_momentum":4.487361,"rvol_3bar":[0.093639,0.344255,18.885002],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":737.0,"sell_vol":371.0,"unclassified_vol":0.0,"imbalance":0.330325,"bid":8.3,"ask":8.31,"spread_pct":0.120409,"quote_size_imbalance":null,"quote_age_s":0.999119},"context":{"vwap":8.287229,"price_vs_vwap_pct":0.214443,"ema9":8.285583,"ema20":8.279292,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.294118,"dist_to_hod_atr":13.031917,"atr":0.014963,"spread_atr":0.668303,"own_change_pct":0.008449,"rel_strength_pct":{"SPY":-0.025915,"IWM":-0.024957}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":6.238187},"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":"46cd92be95fe","ts":"2026-09-15T14:57:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0645,"target":10.2,"target_label":"prev_day_high","reward_risk":1.95,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":4.11},"price":10.1104,"vwap":10.1071,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"low"},"price":10.1104,"volume":{"bars":87,"last_bar_volume":11988.0,"baseline_avg":55394.85,"bar_rvol":0.21641,"raw_accel":-0.596364,"smooth_accel":0.337419,"accel_momentum":-0.743332,"rvol_3bar":[1.73006,0.525156,0.21641],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1512.0,"sell_vol":7001.0,"unclassified_vol":0.0,"imbalance":-0.644779,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.40204},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.032212,"ema9":10.110965,"ema20":10.113528,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.242723,"dist_to_hod_atr":1.658166,"atr":0.014836,"spread_atr":0.674051,"own_change_pct":-0.042511,"rel_strength_pct":{"SPY":-0.076875,"IWM":-0.075917}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.139537},"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":"6205eee593aa","ts":"2026-09-15T14:57:15+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1071,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.78,"trend":"flat","recent_slope_pct":-0.029,"volatility":"low"},"price":10.1,"volume":{"bars":87,"last_bar_volume":11988.0,"baseline_avg":55394.85,"bar_rvol":0.21641,"raw_accel":-0.596364,"smooth_accel":0.337419,"accel_momentum":-0.743332,"rvol_3bar":[1.73006,0.525156,0.21641],"trend_3bar":"DECELERATING","projected_rvol":0.143046},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1273.0,"sell_vol":7825.0,"unclassified_vol":0.0,"imbalance":-0.720158,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.576674},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.070685,"ema9":10.110965,"ema20":10.113528,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.359179,"atr":0.014836,"spread_atr":0.674051,"own_change_pct":-0.042511,"rel_strength_pct":{"SPY":-0.076875,"IWM":-0.075917}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.155849},"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":"34f6b65b60f7","ts":"2026-09-15T14:57:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0617,"target":10.2,"target_label":"prev_day_high","reward_risk":2.01,"pos_in_5d_range_pct":10.4,"room_to_5d_high_atr":4.13},"price":10.1076,"vwap":10.1071,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.0139,"volatility":"low"},"price":10.1076,"volume":{"bars":87,"last_bar_volume":11988.0,"baseline_avg":55394.85,"bar_rvol":0.21641,"raw_accel":-0.596364,"smooth_accel":0.337419,"accel_momentum":-0.743332,"rvol_3bar":[1.73006,0.525156,0.21641],"trend_3bar":"DECELERATING","projected_rvol":0.121614},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":861.0,"sell_vol":7075.0,"unclassified_vol":0.0,"imbalance":-0.783014,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.481601},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.004509,"ema9":10.110965,"ema20":10.113528,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.27035,"dist_to_hod_atr":1.8469,"atr":0.014836,"spread_atr":0.674051,"own_change_pct":-0.042511,"rel_strength_pct":{"SPY":-0.076875,"IWM":-0.075917}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.169452},"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":"b32e8ca79dc4","ts":"2026-09-15T14:57:30+00:00","symbol":"RLGT","event":"GATE_FAIL","bot":{"state":"GATE_FAIL","reason":"held 70.0s","plan":{"state":"BUY","setup":"pullback","stop":9.488,"target":9.7481,"target_label":"premarket_high","reward_risk":3.05,"pos_in_5d_range_pct":403.3,"room_to_5d_high_atr":-4.37},"price":9.5522,"vwap":9.5213,"ext_from_open_pct":1.08,"max_ext_allowed_pct":5.0,"volume_pace":4.898,"trend":"flat","recent_slope_pct":0.141,"volatility":"low"},"price":9.5522,"volume":{"bars":87,"last_bar_volume":3276.0,"baseline_avg":4276.1,"bar_rvol":0.766119,"raw_accel":1.622898,"smooth_accel":-0.538863,"accel_momentum":0.279237,"rvol_3bar":[0.412717,0.278121,0.766119],"trend_3bar":"MIXED","projected_rvol":0.726363},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1207.0,"sell_vol":346.0,"unclassified_vol":0.0,"imbalance":0.554411,"bid":9.53,"ask":9.56,"spread_pct":0.314301,"quote_size_imbalance":null,"quote_age_s":1.63139},"context":{"vwap":9.521226,"price_vs_vwap_pct":0.325311,"ema9":9.526994,"ema20":9.494891,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.528571,"dist_to_hod_atr":4.280971,"atr":0.057884,"spread_atr":0.518277,"own_change_pct":-0.104603,"rel_strength_pct":{"SPY":-0.138966,"IWM":-0.138009}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.424744},"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":"1d90a3d95b74","ts":"2026-09-15T14:57:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says PASS; stop 8.22, target 8.41 (prev_day_high), R:R 1.11; target 0.10 away > ~0.08 reachable in 298 min","plan":{"state":"PASS","setup":"","stop":8.2199,"target":8.41,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.28},"price":8.31,"vwap":8.2874,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.957,"trend":"flat","recent_slope_pct":0.0264,"volatility":"medium"},"price":8.31,"volume":{"bars":87,"last_bar_volume":12686.0,"baseline_avg":671.75,"bar_rvol":18.885002,"raw_accel":54.640351,"smooth_accel":4.009259,"accel_momentum":4.487361,"rvol_3bar":[0.093639,0.344255,18.885002],"trend_3bar":"ACCELERATING","projected_rvol":3.111277},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":727.0,"sell_vol":318.0,"unclassified_vol":0.0,"imbalance":0.391388,"bid":8.3,"ask":8.31,"spread_pct":0.120409,"quote_size_imbalance":null,"quote_age_s":3.179651},"context":{"vwap":8.287229,"price_vs_vwap_pct":0.274777,"ema9":8.285583,"ema20":8.279292,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.235294,"dist_to_hod_atr":12.697765,"atr":0.014963,"spread_atr":0.668303,"own_change_pct":0.008449,"rel_strength_pct":{"SPY":-0.025915,"IWM":-0.024957}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":7.391355},"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":"a289d20b6f33","ts":"2026-09-15T14:57:30+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1071,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.029,"volatility":"low"},"price":10.1,"volume":{"bars":87,"last_bar_volume":11988.0,"baseline_avg":55394.85,"bar_rvol":0.21641,"raw_accel":-0.596364,"smooth_accel":0.337419,"accel_momentum":-0.743332,"rvol_3bar":[1.73006,0.525156,0.21641],"trend_3bar":"DECELERATING","projected_rvol":0.200091},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":748.0,"sell_vol":4794.0,"unclassified_vol":0.0,"imbalance":-0.730061,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.001171},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.070685,"ema9":10.110965,"ema20":10.113528,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.359179,"atr":0.014836,"spread_atr":0.674051,"own_change_pct":-0.042511,"rel_strength_pct":{"SPY":-0.076875,"IWM":-0.075917}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.157993},"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":"4299b5d89e85","ts":"2026-09-15T14:57:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 75.0s, plan says WATCH; stop 9.47, target 9.75 (premarket_high), R:R 3.32; pullback: buy 9.50-9.56 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":9.4708,"target":9.7481,"target_label":"premarket_high","reward_risk":3.32,"pos_in_5d_range_pct":398.6,"room_to_5d_high_atr":-4.3},"price":9.535,"vwap":9.5213,"ext_from_open_pct":0.9,"max_ext_allowed_pct":5.0,"volume_pace":4.897,"trend":"flat","recent_slope_pct":0.105,"volatility":"low"},"price":9.535,"volume":{"bars":87,"last_bar_volume":3276.0,"baseline_avg":4276.1,"bar_rvol":0.766119,"raw_accel":1.622898,"smooth_accel":-0.538863,"accel_momentum":0.279237,"rvol_3bar":[0.412717,0.278121,0.766119],"trend_3bar":"MIXED","projected_rvol":0.938104},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1569.0,"sell_vol":765.0,"unclassified_vol":0.0,"imbalance":0.344473,"bid":9.52,"ask":9.55,"spread_pct":0.31463,"quote_size_imbalance":null,"quote_age_s":0.301004},"context":{"vwap":9.521226,"price_vs_vwap_pct":0.144662,"ema9":9.526994,"ema20":9.494891,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.704082,"dist_to_hod_atr":4.578116,"atr":0.057884,"spread_atr":0.518277,"own_change_pct":-0.104603,"rel_strength_pct":{"SPY":-0.138966,"IWM":-0.138009}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.263907},"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":"89543715f0ae","ts":"2026-09-15T14:57:45+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.29 below VWAP $8.29","plan":{"state":"PASS","setup":"","stop":8.1967,"target":8.35,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":44.5,"room_to_5d_high_atr":1.34},"price":8.2868,"vwap":8.2873,"ext_from_open_pct":-0.52,"max_ext_allowed_pct":4.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":-0.0296,"volatility":"medium"},"price":8.2868,"volume":{"bars":87,"last_bar_volume":12686.0,"baseline_avg":671.75,"bar_rvol":18.885002,"raw_accel":54.640351,"smooth_accel":4.009259,"accel_momentum":4.487361,"rvol_3bar":[0.093639,0.344255,18.885002],"trend_3bar":"ACCELERATING","projected_rvol":2.084109},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":27.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.35,"bid":8.3,"ask":8.31,"spread_pct":0.120409,"quote_size_imbalance":null,"quote_age_s":1.115957},"context":{"vwap":8.287229,"price_vs_vwap_pct":-0.005172,"ema9":8.285583,"ema20":8.279292,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.508235,"dist_to_hod_atr":14.248229,"atr":0.014963,"spread_atr":0.668303,"own_change_pct":0.008449,"rel_strength_pct":{"SPY":-0.025915,"IWM":-0.024957}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":6.609751},"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":"fb006fe4de4b","ts":"2026-09-15T14:57:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0637,"target":10.2,"target_label":"prev_day_high","reward_risk":1.97,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":4.11},"price":10.1096,"vwap":10.1071,"ext_from_open_pct":0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.01,"volatility":"low"},"price":10.1096,"volume":{"bars":87,"last_bar_volume":11988.0,"baseline_avg":55394.85,"bar_rvol":0.21641,"raw_accel":-0.596364,"smooth_accel":0.337419,"accel_momentum":-0.743332,"rvol_3bar":[1.73006,0.525156,0.21641],"trend_3bar":"DECELERATING","projected_rvol":0.159052},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":536.0,"sell_vol":4091.0,"unclassified_vol":0.0,"imbalance":-0.768316,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.032957},"context":{"vwap":10.107144,"price_vs_vwap_pct":0.024297,"ema9":10.110965,"ema20":10.113528,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.250617,"dist_to_hod_atr":1.71209,"atr":0.014836,"spread_atr":0.674051,"own_change_pct":-0.042511,"rel_strength_pct":{"SPY":-0.076875,"IWM":-0.075917}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.166271},"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":"a45ca8b5f902","ts":"2026-09-15T14:57:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.2199,"target":8.41,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.28},"price":8.31,"vwap":8.2874,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":0.0264,"volatility":"medium"},"price":8.31,"volume":{"bars":87,"last_bar_volume":12686.0,"baseline_avg":671.75,"bar_rvol":18.885002,"raw_accel":54.640351,"smooth_accel":4.009259,"accel_momentum":4.487361,"rvol_3bar":[0.093639,0.344255,18.885002],"trend_3bar":"ACCELERATING","projected_rvol":2.241905},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":232.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.957806,"bid":8.3,"ask":8.32,"spread_pct":0.240674,"quote_size_imbalance":null,"quote_age_s":2.953368},"context":{"vwap":8.287229,"price_vs_vwap_pct":0.274777,"ema9":8.285583,"ema20":8.279292,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.235294,"dist_to_hod_atr":12.697765,"atr":0.014963,"spread_atr":1.336607,"own_change_pct":0.008449,"rel_strength_pct":{"SPY":-0.025915,"IWM":-0.024957}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":18.088166},"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":"897161e3c636","ts":"2026-09-15T14:57:50+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.10 below VWAP $10.11","plan":{"state":"PASS","setup":"","stop":10.0541,"target":10.2,"target_label":"prev_day_high","reward_risk":2.18,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.1071,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.029,"volatility":"low"},"price":10.1,"volume":{"bars":87,"last_bar_volume":11988.0,"baseline_avg":55394.85,"bar_rvol":0.21641,"raw_accel":-0.596364,"smooth_accel":0.337419,"accel_momentum":-0.743332,"rvol_3bar":[1.73006,0.525156,0.21641],"trend_3bar":"DECELERATING","projected_rvol":0.182205},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":584.0,"sell_vol":5137.0,"unclassified_vol":0.0,"imbalance":-0.79584,"bid":10.1,"ask":10.11,"spread_pct":0.098961,"quote_size_imbalance":null,"quote_age_s":0.415856},"context":{"vwap":10.107144,"price_vs_vwap_pct":-0.070685,"ema9":10.110965,"ema20":10.113528,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.359179,"atr":0.014836,"spread_atr":0.674051,"own_change_pct":-0.042511,"rel_strength_pct":{"SPY":-0.076875,"IWM":-0.075917}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.172228},"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":"1805cd504fc4","ts":"2026-09-15T14:58:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 8.21, target 8.35 (ceiling), R:R 0.50; R:R 0.50 < 2.0 at 8.30; pullback: buy 8.26-8.28 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.2149,"target":8.35,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.29},"price":8.305,"vwap":8.2874,"ext_from_open_pct":-0.3,"max_ext_allowed_pct":3.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":0.0481,"volatility":"medium"},"price":8.305,"volume":{"bars":88,"last_bar_volume":1368.0,"baseline_avg":1227.3,"bar_rvol":1.114642,"raw_accel":-0.892165,"smooth_accel":7.416028,"accel_momentum":3.406769,"rvol_3bar":[0.344255,18.885002,1.114642],"trend_3bar":"MIXED","projected_rvol":0.433472},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":306.0,"sell_vol":145.0,"unclassified_vol":0.0,"imbalance":0.356984,"bid":8.3,"ask":8.31,"spread_pct":0.120409,"quote_size_imbalance":null,"quote_age_s":3.373272},"context":{"vwap":8.287387,"price_vs_vwap_pct":0.212531,"ema9":8.290466,"ema20":8.282216,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.294118,"dist_to_hod_atr":12.47587,"atr":0.01563,"spread_atr":0.639788,"own_change_pct":0.180832,"rel_strength_pct":{"SPY":0.130599,"IWM":0.177314}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.39791},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1c7f62c3f50a","ts":"2026-09-15T14:59:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.52 below VWAP $9.52","plan":{"state":"PASS","setup":"","stop":9.4558,"target":9.7481,"target_label":"premarket_high","reward_risk":3.55,"pos_in_5d_range_pct":394.6,"room_to_5d_high_atr":-4.24},"price":9.52,"vwap":9.5213,"ext_from_open_pct":0.74,"max_ext_allowed_pct":5.0,"volume_pace":4.815,"trend":"flat","recent_slope_pct":-0.0545,"volatility":"low"},"price":9.52,"volume":{"bars":89,"last_bar_volume":539.0,"baseline_avg":3871.35,"bar_rvol":0.139228,"raw_accel":-0.783099,"smooth_accel":0.563275,"accel_momentum":0.314166,"rvol_3bar":[0.766119,0.563052,0.139228],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":253.0,"sell_vol":78.0,"unclassified_vol":0.0,"imbalance":0.528701,"bid":9.5,"ask":9.53,"spread_pct":0.315292,"quote_size_imbalance":null,"quote_age_s":3.914742},"context":{"vwap":9.521294,"price_vs_vwap_pct":-0.013596,"ema9":9.529676,"ema20":9.502121,"ema_stack":false,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.857143,"dist_to_hod_atr":5.284032,"atr":0.05299,"spread_atr":0.566146,"own_change_pct":0.315789,"rel_strength_pct":{"SPY":0.261594,"IWM":0.324584}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.07361},"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":"c723c059a45c","ts":"2026-09-15T14:59:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.4708,"target":9.7481,"target_label":"premarket_high","reward_risk":3.32,"pos_in_5d_range_pct":398.6,"room_to_5d_high_atr":-4.3},"price":9.535,"vwap":9.5213,"ext_from_open_pct":0.9,"max_ext_allowed_pct":5.0,"volume_pace":4.808,"trend":"flat","recent_slope_pct":-0.0231,"volatility":"low"},"price":9.535,"volume":{"bars":89,"last_bar_volume":539.0,"baseline_avg":3871.35,"bar_rvol":0.139228,"raw_accel":-0.783099,"smooth_accel":0.563275,"accel_momentum":0.314166,"rvol_3bar":[0.766119,0.563052,0.139228],"trend_3bar":"DECELERATING","projected_rvol":1.105971},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1167.0,"sell_vol":629.0,"unclassified_vol":0.0,"imbalance":0.299555,"bid":9.53,"ask":9.54,"spread_pct":0.104877,"quote_size_imbalance":null,"quote_age_s":3.804871},"context":{"vwap":9.521294,"price_vs_vwap_pct":0.143946,"ema9":9.529676,"ema20":9.502121,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.704082,"dist_to_hod_atr":5.000959,"atr":0.05299,"spread_atr":0.188715,"own_change_pct":0.315789,"rel_strength_pct":{"SPY":0.261594,"IWM":0.324584}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.041706},"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":"b8b8849ab4b4","ts":"2026-09-15T14:59:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says PASS; stop 8.22, target 8.41 (prev_day_high), R:R 1.11; target 0.10 away > ~0.08 reachable in 296 min","plan":{"state":"PASS","setup":"","stop":8.2199,"target":8.41,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.28},"price":8.31,"vwap":8.2875,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.947,"trend":"flat","recent_slope_pct":0.0693,"volatility":"medium"},"price":8.31,"volume":{"bars":89,"last_bar_volume":907.0,"baseline_avg":1266.45,"bar_rvol":0.716175,"raw_accel":-0.336988,"smooth_accel":13.946054,"accel_momentum":6.530026,"rvol_3bar":[18.885002,1.114642,0.716175],"trend_3bar":"DECELERATING","projected_rvol":0.369537},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":200.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.960784,"bid":8.3,"ask":8.31,"spread_pct":0.120409,"quote_size_imbalance":null,"quote_age_s":2.203864},"context":{"vwap":8.28748,"price_vs_vwap_pct":0.27174,"ema9":8.293373,"ema20":8.284386,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.235294,"dist_to_hod_atr":11.780741,"atr":0.016128,"spread_atr":0.620039,"own_change_pct":0.125383,"rel_strength_pct":{"SPY":0.071187,"IWM":0.134177}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.68809},"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":"34475b7ad92d","ts":"2026-09-15T15:00:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 135.0s, plan says WATCH; stop 8.20, target 8.35 (ceiling), R:R 0.67; selling not fading: red-bar volume 0.79x the advance (max 0.7); no reclaim yet (needs a close > 8.31); R:R 0.67 < 2.0 at 8.29;","plan":{"state":"WATCH","setup":"","stop":8.1996,"target":8.35,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.33},"price":8.2897,"vwap":8.2876,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.0045,"volatility":"medium"},"price":8.2897,"volume":{"bars":90,"last_bar_volume":215.0,"baseline_avg":1272.6,"bar_rvol":0.168945,"raw_accel":-0.762955,"smooth_accel":-0.808226,"accel_momentum":-14.754279,"rvol_3bar":[1.114642,0.716175,0.168945],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":681.0,"sell_vol":149.0,"unclassified_vol":0.0,"imbalance":0.640964,"bid":8.31,"ask":8.32,"spread_pct":0.120265,"quote_size_imbalance":null,"quote_age_s":1.595672},"context":{"vwap":8.287509,"price_vs_vwap_pct":0.02644,"ema9":8.295838,"ema20":8.286416,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.474118,"dist_to_hod_atr":13.415398,"atr":0.015676,"spread_atr":0.637917,"own_change_pct":0.133822,"rel_strength_pct":{"SPY":0.149683,"IWM":0.161957}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.108288},"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":"ae839322a949","ts":"2026-09-15T15:00:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says PASS; stop 8.23, target 8.41 (prev_day_high), R:R 1.00; target 0.09 away > ~0.08 reachable in 295 min","plan":{"state":"PASS","setup":"","stop":8.2299,"target":8.41,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":1.25},"price":8.32,"vwap":8.2877,"ext_from_open_pct":-0.12,"max_ext_allowed_pct":4.0,"volume_pace":0.944,"trend":"flat","recent_slope_pct":0.0774,"volatility":"medium"},"price":8.32,"volume":{"bars":90,"last_bar_volume":215.0,"baseline_avg":1272.6,"bar_rvol":0.168945,"raw_accel":-0.762955,"smooth_accel":-0.808226,"accel_momentum":-14.754279,"rvol_3bar":[1.114642,0.716175,0.168945],"trend_3bar":"DECELERATING","projected_rvol":2.178218},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":779.0,"sell_vol":145.0,"unclassified_vol":0.0,"imbalance":0.686147,"bid":8.31,"ask":8.32,"spread_pct":0.120265,"quote_size_imbalance":null,"quote_age_s":0.247493},"context":{"vwap":8.287509,"price_vs_vwap_pct":0.392051,"ema9":8.295838,"ema20":8.286416,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.117647,"dist_to_hod_atr":11.482509,"atr":0.015676,"spread_atr":0.637917,"own_change_pct":0.133822,"rel_strength_pct":{"SPY":0.149683,"IWM":0.161957}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.115921},"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":"f569713c49c3","ts":"2026-09-15T15:00:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 165.0s, plan says WATCH; stop 8.20, target 8.35 (ceiling), R:R 0.67; selling not fading: red-bar volume 0.79x the advance (max 0.7); imbalance -60% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":8.1997,"target":8.35,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.33},"price":8.2898,"vwap":8.2876,"ext_from_open_pct":-0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.942,"trend":"flat","recent_slope_pct":0.0047,"volatility":"medium"},"price":8.2898,"volume":{"bars":90,"last_bar_volume":215.0,"baseline_avg":1272.6,"bar_rvol":0.168945,"raw_accel":-0.762955,"smooth_accel":-0.808226,"accel_momentum":-14.754279,"rvol_3bar":[1.114642,0.716175,0.168945],"trend_3bar":"DECELERATING","projected_rvol":1.285108},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":123.0,"sell_vol":21.0,"unclassified_vol":0.0,"imbalance":0.708333,"bid":8.31,"ask":8.32,"spread_pct":0.120265,"quote_size_imbalance":null,"quote_age_s":4.74185},"context":{"vwap":8.287509,"price_vs_vwap_pct":0.027647,"ema9":8.295838,"ema20":8.286416,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.472941,"dist_to_hod_atr":13.409019,"atr":0.015676,"spread_atr":0.637917,"own_change_pct":0.133822,"rel_strength_pct":{"SPY":0.149683,"IWM":0.161957}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.11967},"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":"9b06dbd80f54","ts":"2026-09-15T15:00:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 175.0s, plan says PASS; stop 8.22, target 8.41 (prev_day_high), R:R 1.05; target 0.10 away > ~0.08 reachable in 294 min","plan":{"state":"PASS","setup":"","stop":8.2249,"target":8.41,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.26},"price":8.315,"vwap":8.2877,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":0.0654,"volatility":"medium"},"price":8.315,"volume":{"bars":90,"last_bar_volume":215.0,"baseline_avg":1272.6,"bar_rvol":0.168945,"raw_accel":-0.762955,"smooth_accel":-0.808226,"accel_momentum":-14.754279,"rvol_3bar":[1.114642,0.716175,0.168945],"trend_3bar":"DECELERATING","projected_rvol":1.057153},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":123.0,"sell_vol":76.0,"unclassified_vol":0.0,"imbalance":0.236181,"bid":8.31,"ask":8.32,"spread_pct":0.120265,"quote_size_imbalance":null,"quote_age_s":4.179676},"context":{"vwap":8.287509,"price_vs_vwap_pct":0.331719,"ema9":8.295838,"ema20":8.286416,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.176471,"dist_to_hod_atr":11.801468,"atr":0.015676,"spread_atr":0.637917,"own_change_pct":0.133822,"rel_strength_pct":{"SPY":0.149683,"IWM":0.161957}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.039902},"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":"d1947ae2acf1","ts":"2026-09-15T15:01:10+00:00","symbol":"RLGT","event":"GATE_FAIL","bot":{"state":"GATE_FAIL","reason":"held 105.0s","plan":{"state":"BUY","setup":"pullback","stop":9.4858,"target":9.7481,"target_label":"premarket_high","reward_risk":3.09,"pos_in_5d_range_pct":402.7,"room_to_5d_high_atr":-4.36},"price":9.55,"vwap":9.5213,"ext_from_open_pct":1.06,"max_ext_allowed_pct":5.0,"volume_pace":4.723,"trend":"flat","recent_slope_pct":0.0419,"volatility":"low"},"price":9.55,"volume":{"bars":91,"last_bar_volume":296.0,"baseline_avg":3881.4,"bar_rvol":0.076261,"raw_accel":-0.897258,"smooth_accel":-0.4699,"accel_momentum":-0.398359,"rvol_3bar":[0.139228,0.76604,0.076261],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":152.0,"sell_vol":31.0,"unclassified_vol":0.0,"imbalance":0.661202,"bid":9.53,"ask":9.56,"spread_pct":0.314301,"quote_size_imbalance":null,"quote_age_s":4.824009},"context":{"vwap":9.521318,"price_vs_vwap_pct":0.301244,"ema9":9.533793,"ema20":9.509084,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.55102,"dist_to_hod_atr":5.018496,"atr":0.049816,"spread_atr":0.602219,"own_change_pct":0.146812,"rel_strength_pct":{"SPY":0.101865,"IWM":0.050041}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.050424},"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":"ff9a927e6bb0","ts":"2026-09-15T15:01:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 110.0s, plan says WATCH; stop 9.47, target 9.75 (premarket_high), R:R 3.40; pullback: buy 9.50-9.56 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":9.4658,"target":9.7481,"target_label":"premarket_high","reward_risk":3.4,"pos_in_5d_range_pct":397.3,"room_to_5d_high_atr":-4.28},"price":9.53,"vwap":9.5213,"ext_from_open_pct":0.85,"max_ext_allowed_pct":5.0,"volume_pace":4.719,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":9.53,"volume":{"bars":91,"last_bar_volume":296.0,"baseline_avg":3881.4,"bar_rvol":0.076261,"raw_accel":-0.897258,"smooth_accel":-0.4699,"accel_momentum":-0.398359,"rvol_3bar":[0.139228,0.76604,0.076261],"trend_3bar":"MIXED","projected_rvol":0.181378},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":152.0,"sell_vol":45.0,"unclassified_vol":0.0,"imbalance":0.543147,"bid":9.53,"ask":9.56,"spread_pct":0.314301,"quote_size_imbalance":null,"quote_age_s":4.535247},"context":{"vwap":9.521318,"price_vs_vwap_pct":0.091189,"ema9":9.533793,"ema20":9.509084,"ema_stack":false,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":-2.755102,"dist_to_hod_atr":5.419975,"atr":0.049816,"spread_atr":0.602219,"own_change_pct":0.146812,"rel_strength_pct":{"SPY":0.101865,"IWM":0.050041}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.041421},"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":"e7cb434ce73a","ts":"2026-09-15T15:04:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 375.0s, plan says WATCH; stop 8.25, target 8.41 (prev_day_high), R:R 0.78; R:R 0.78 < 2.0 at 8.34; pullback: buy 8.28-8.31 holding + reclaim/fading selling/support; breakout: 1-min close > 8.36 o","plan":{"state":"WATCH","setup":"","stop":8.2499,"target":8.41,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":50.6,"room_to_5d_high_atr":1.19},"price":8.34,"vwap":8.2883,"ext_from_open_pct":0.12,"max_ext_allowed_pct":3.0,"volume_pace":0.93,"trend":"flat","recent_slope_pct":0.0855,"volatility":"medium"},"price":8.34,"volume":{"bars":94,"last_bar_volume":1455.0,"baseline_avg":1315.7,"bar_rvol":1.105875,"raw_accel":2.169935,"smooth_accel":0.507736,"accel_momentum":0.394483,"rvol_3bar":[0.989512,0.354769,1.105875],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":108.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.8,"bid":8.33,"ask":8.34,"spread_pct":0.119976,"quote_size_imbalance":null,"quote_age_s":0.998859},"context":{"vwap":8.288296,"price_vs_vwap_pct":0.623819,"ema9":8.306597,"ema20":8.295349,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.882353,"dist_to_hod_atr":9.331522,"atr":0.017146,"spread_atr":0.58322,"own_change_pct":0.196267,"rel_strength_pct":{"SPY":0.155157,"IWM":0.104795}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.8847},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e7e2506d8aa6","ts":"2026-09-15T15:04:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.1% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.239,"target":8.54,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":126.2,"room_to_5d_high_atr":-0.96},"price":8.43,"vwap":8.1005,"ext_from_open_pct":10.05,"max_ext_allowed_pct":4.0,"volume_pace":0.518,"trend":"flat","recent_slope_pct":-0.0059,"volatility":"high"},"price":8.43,"volume":{"bars":94,"last_bar_volume":344.0,"baseline_avg":2354.05,"bar_rvol":0.146131,"raw_accel":-0.559539,"smooth_accel":3.457395,"accel_momentum":0.50468,"rvol_3bar":[1.3941,0.326744,0.146131],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":5.0,"sell_vol":300.0,"unclassified_vol":0.0,"imbalance":-0.967213,"bid":8.36,"ask":8.43,"spread_pct":0.83383,"quote_size_imbalance":null,"quote_age_s":3.305076},"context":{"vwap":8.100469,"price_vs_vwap_pct":4.068051,"ema9":8.408554,"ema20":8.408615,"ema_stack":false,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.288056,"dist_to_hod_atr":1.239973,"atr":0.088712,"spread_atr":0.789074,"own_change_pct":-0.076269,"rel_strength_pct":{"SPY":-0.117379,"IWM":-0.167741}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.14134},"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":"945f253688cc","ts":"2026-09-15T15:04:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 385.0s, plan says PASS; stop 8.23, target 8.41 (prev_day_high), R:R 0.96; target 0.09 away > ~0.08 reachable in 291 min","plan":{"state":"PASS","setup":"","stop":8.233,"target":8.41,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":1.24},"price":8.3231,"vwap":8.2883,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.0449,"volatility":"medium"},"price":8.3231,"volume":{"bars":94,"last_bar_volume":1455.0,"baseline_avg":1315.7,"bar_rvol":1.105875,"raw_accel":2.169935,"smooth_accel":0.507736,"accel_momentum":0.394483,"rvol_3bar":[0.989512,0.354769,1.105875],"trend_3bar":"MIXED","projected_rvol":0.422589},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":136.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.875862,"bid":8.33,"ask":8.35,"spread_pct":0.239808,"quote_size_imbalance":null,"quote_age_s":3.993413},"context":{"vwap":8.288296,"price_vs_vwap_pct":0.419917,"ema9":8.306597,"ema20":8.295349,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.081176,"dist_to_hod_atr":10.317164,"atr":0.017146,"spread_atr":1.16644,"own_change_pct":0.196267,"rel_strength_pct":{"SPY":0.155157,"IWM":0.104795}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.968594},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f1d4f0378182","ts":"2026-09-15T15:04:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 405.0s, plan says WATCH; stop 8.20, target 8.35 (ceiling), R:R 0.62; selling not fading: red-bar volume 0.74x the advance (max 0.7); imbalance -100% still heavy selling; R:R 0.62 < 2.0 at 8.29; p","plan":{"state":"WATCH","setup":"","stop":8.2044,"target":8.35,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":1.32},"price":8.2945,"vwap":8.2883,"ext_from_open_pct":-0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":-0.0239,"volatility":"medium"},"price":8.2945,"volume":{"bars":94,"last_bar_volume":1455.0,"baseline_avg":1315.7,"bar_rvol":1.105875,"raw_accel":2.169935,"smooth_accel":0.507736,"accel_momentum":0.394483,"rvol_3bar":[0.989512,0.354769,1.105875],"trend_3bar":"MIXED","projected_rvol":0.20326},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":28.0,"sell_vol":18.0,"unclassified_vol":0.0,"imbalance":0.217391,"bid":8.33,"ask":8.35,"spread_pct":0.239808,"quote_size_imbalance":null,"quote_age_s":10.224194},"context":{"vwap":8.288296,"price_vs_vwap_pct":0.074852,"ema9":8.306597,"ema20":8.295349,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.417647,"dist_to_hod_atr":11.985174,"atr":0.017146,"spread_atr":1.16644,"own_change_pct":0.196267,"rel_strength_pct":{"SPY":0.155157,"IWM":0.104795}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.240408},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c2ae4aa70565","ts":"2026-09-15T15:06:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 505.0s, plan says PASS; stop 8.23, target 8.41 (prev_day_high), R:R 0.96; target 0.09 away > ~0.08 reachable in 289 min","plan":{"state":"PASS","setup":"","stop":8.2337,"target":8.41,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":48.7,"room_to_5d_high_atr":1.24},"price":8.3238,"vwap":8.2885,"ext_from_open_pct":-0.07,"max_ext_allowed_pct":4.0,"volume_pace":0.914,"trend":"flat","recent_slope_pct":0.0513,"volatility":"medium"},"price":8.3238,"volume":{"bars":96,"last_bar_volume":220.0,"baseline_avg":1375.15,"bar_rvol":0.159983,"raw_accel":-0.570312,"smooth_accel":-0.211039,"accel_momentum":-0.170691,"rvol_3bar":[1.105875,0.373205,0.159983],"trend_3bar":"DECELERATING","projected_rvol":0.293786},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":106.0,"sell_vol":14.0,"unclassified_vol":0.0,"imbalance":0.766667,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":1.58071},"context":{"vwap":8.288492,"price_vs_vwap_pct":0.425994,"ema9":8.317814,"ema20":8.303041,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.072941,"dist_to_hod_atr":8.25489,"atr":0.021345,"spread_atr":0.468495,"own_change_pct":0.334537,"rel_strength_pct":{"SPY":0.294896,"IWM":0.285319}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.122653},"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":"975e95982b77","ts":"2026-09-15T15:06:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 520.0s, plan says WATCH; stop 8.26, target 8.41 (prev_day_high), R:R 0.67; R:R 0.67 < 2.0 at 8.35; pullback: buy 8.28-8.31 holding + reclaim/fading selling/support; breakout: 1-min close > 8.36 o","plan":{"state":"WATCH","setup":"","stop":8.2599,"target":8.41,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":51.7,"room_to_5d_high_atr":1.17},"price":8.35,"vwap":8.2885,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.1141,"volatility":"medium"},"price":8.35,"volume":{"bars":96,"last_bar_volume":220.0,"baseline_avg":1375.15,"bar_rvol":0.159983,"raw_accel":-0.570312,"smooth_accel":-0.211039,"accel_momentum":-0.170691,"rvol_3bar":[1.105875,0.373205,0.159983],"trend_3bar":"DECELERATING","projected_rvol":0.155619},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":97.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.813084,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":0.903588},"context":{"vwap":8.288492,"price_vs_vwap_pct":0.742095,"ema9":8.317814,"ema20":8.303041,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.764706,"dist_to_hod_atr":7.027432,"atr":0.021345,"spread_atr":0.468495,"own_change_pct":0.334537,"rel_strength_pct":{"SPY":0.294896,"IWM":0.285319}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.130079},"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":"46e443b78d26","ts":"2026-09-15T15:07:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 580.0s, plan says PASS; stop 8.23, target 8.41 (prev_day_high), R:R 1.02; target 0.09 away > ~0.08 reachable in 288 min","plan":{"state":"PASS","setup":"","stop":8.228,"target":8.41,"target_label":"prev_day_high","reward_risk":1.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":1.25},"price":8.3181,"vwap":8.2886,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":0.0011,"volatility":"medium"},"price":8.3181,"volume":{"bars":97,"last_bar_volume":327.0,"baseline_avg":1337.8,"bar_rvol":0.244431,"raw_accel":-0.022275,"smooth_accel":-0.670709,"accel_momentum":-0.45967,"rvol_3bar":[0.373205,0.159983,0.244431],"trend_3bar":"MIXED","projected_rvol":0.185379},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":1.0,"sell_vol":123.0,"unclassified_vol":0.0,"imbalance":-0.983871,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":22.961876},"context":{"vwap":8.288607,"price_vs_vwap_pct":0.355828,"ema9":8.323251,"ema20":8.307037,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.14,"dist_to_hod_atr":8.14693,"atr":0.022327,"spread_atr":0.44788,"own_change_pct":0.418762,"rel_strength_pct":{"SPY":0.394256,"IWM":0.336159}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.240489},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"44c778f63516","ts":"2026-09-15T15:07:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 585.0s, plan says WATCH; stop 8.25, target 8.41 (prev_day_high), R:R 0.79; R:R 0.79 < 2.0 at 8.34; pullback: buy 8.29-8.32 holding + reclaim/fading selling/support; breakout: 1-min close > 8.36 o","plan":{"state":"WATCH","setup":"","stop":8.2488,"target":8.41,"target_label":"prev_day_high","reward_risk":0.79,"pos_in_5d_range_pct":50.4,"room_to_5d_high_atr":1.2},"price":8.3389,"vwap":8.2887,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":0.051,"volatility":"medium"},"price":8.3389,"volume":{"bars":97,"last_bar_volume":327.0,"baseline_avg":1337.8,"bar_rvol":0.244431,"raw_accel":-0.022275,"smooth_accel":-0.670709,"accel_momentum":-0.45967,"rvol_3bar":[0.373205,0.159983,0.244431],"trend_3bar":"MIXED","projected_rvol":0.287038},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":1.0,"sell_vol":223.0,"unclassified_vol":0.0,"imbalance":-0.991071,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":4.364983},"context":{"vwap":8.288607,"price_vs_vwap_pct":0.606774,"ema9":8.323251,"ema20":8.307037,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.895294,"dist_to_hod_atr":7.21534,"atr":0.022327,"spread_atr":0.44788,"own_change_pct":0.418762,"rel_strength_pct":{"SPY":0.394256,"IWM":0.336159}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.242249},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa2da2886093","ts":"2026-09-15T15:07:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 595.0s, plan says PASS; stop 8.23, target 8.41 (prev_day_high), R:R 1.02; target 0.09 away > ~0.08 reachable in 287 min","plan":{"state":"PASS","setup":"","stop":8.228,"target":8.41,"target_label":"prev_day_high","reward_risk":1.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":1.25},"price":8.3181,"vwap":8.2887,"ext_from_open_pct":-0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0011,"volatility":"medium"},"price":8.3181,"volume":{"bars":97,"last_bar_volume":327.0,"baseline_avg":1337.8,"bar_rvol":0.244431,"raw_accel":-0.022275,"smooth_accel":-0.670709,"accel_momentum":-0.45967,"rvol_3bar":[0.373205,0.159983,0.244431],"trend_3bar":"MIXED","projected_rvol":0.237205},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":1.0,"sell_vol":237.0,"unclassified_vol":0.0,"imbalance":-0.991597,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":1.611275},"context":{"vwap":8.288607,"price_vs_vwap_pct":0.355828,"ema9":8.323251,"ema20":8.307037,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.14,"dist_to_hod_atr":8.14693,"atr":0.022327,"spread_atr":0.44788,"own_change_pct":0.418762,"rel_strength_pct":{"SPY":0.394256,"IWM":0.336159}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.242377},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a4f090487311","ts":"2026-09-15T15:07:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 600.0s, plan says WATCH; stop 8.25, target 8.41 (prev_day_high), R:R 0.72; R:R 0.72 < 2.0 at 8.35; pullback: buy 8.29-8.32 holding + reclaim/fading selling/support; breakout: 1-min close > 8.36 o","plan":{"state":"WATCH","setup":"","stop":8.2549,"target":8.41,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":51.1,"room_to_5d_high_atr":1.18},"price":8.345,"vwap":8.2887,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0656,"volatility":"medium"},"price":8.345,"volume":{"bars":97,"last_bar_volume":327.0,"baseline_avg":1337.8,"bar_rvol":0.244431,"raw_accel":-0.022275,"smooth_accel":-0.670709,"accel_momentum":-0.45967,"rvol_3bar":[0.373205,0.159983,0.244431],"trend_3bar":"MIXED","projected_rvol":0.248468},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":40.0,"sell_vol":237.0,"unclassified_vol":0.0,"imbalance":-0.711191,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":6.611275},"context":{"vwap":8.288607,"price_vs_vwap_pct":0.680369,"ema9":8.323251,"ema20":8.307037,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.823529,"dist_to_hod_atr":6.942134,"atr":0.022327,"spread_atr":0.44788,"own_change_pct":0.418762,"rel_strength_pct":{"SPY":0.394256,"IWM":0.336159}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.173837},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bb641b4d2577","ts":"2026-09-15T15:07:55+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 605.0s, plan says PASS; stop 8.23, target 8.41 (prev_day_high), R:R 0.98; target 0.09 away > ~0.08 reachable in 287 min","plan":{"state":"PASS","setup":"","stop":8.2315,"target":8.41,"target_label":"prev_day_high","reward_risk":0.98,"pos_in_5d_range_pct":48.5,"room_to_5d_high_atr":1.24},"price":8.3216,"vwap":8.2889,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":0.0095,"volatility":"medium"},"price":8.3216,"volume":{"bars":97,"last_bar_volume":327.0,"baseline_avg":1337.8,"bar_rvol":0.244431,"raw_accel":-0.022275,"smooth_accel":-0.670709,"accel_momentum":-0.45967,"rvol_3bar":[0.373205,0.159983,0.244431],"trend_3bar":"MIXED","projected_rvol":0.771416},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":608.0,"sell_vol":314.0,"unclassified_vol":0.0,"imbalance":0.318872,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":2.169915},"context":{"vwap":8.288607,"price_vs_vwap_pct":0.398054,"ema9":8.323251,"ema20":8.307037,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.098824,"dist_to_hod_atr":7.990172,"atr":0.022327,"spread_atr":0.44788,"own_change_pct":0.418762,"rel_strength_pct":{"SPY":0.394256,"IWM":0.336159}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.077942},"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":"1521e1586456","ts":"2026-09-15T15:08:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.0% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.309,"target":9.1989,"target_label":"clear air (typical 60-min move)","reward_risk":3.66,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1123,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.515,"trend":"flat","recent_slope_pct":0.3266,"volatility":"high"},"price":8.5,"volume":{"bars":98,"last_bar_volume":6770.0,"baseline_avg":2424.0,"bar_rvol":2.792904,"raw_accel":10.171617,"smooth_accel":2.541497,"accel_momentum":1.356483,"rvol_3bar":[2.960696,0.160495,2.792904],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":5170.0,"sell_vol":31.0,"unclassified_vol":0.0,"imbalance":0.988079,"bid":8.45,"ask":8.5,"spread_pct":0.589971,"quote_size_imbalance":null,"quote_age_s":1.746342},"context":{"vwap":8.112209,"price_vs_vwap_pct":4.780342,"ema9":8.420961,"ema20":8.414367,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.49029,"atr":0.081584,"spread_atr":0.612862,"own_change_pct":0.595238,"rel_strength_pct":{"SPY":0.549644,"IWM":0.489734}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.759611},"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":"8c764af1f5da","ts":"2026-09-15T15:08:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 620.0s, plan says WATCH; stop 8.25, target 8.41 (prev_day_high), R:R 0.72; R:R 0.72 < 2.0 at 8.35; pullback: buy 8.29-8.32 holding + reclaim/fading selling/support; breakout: 1-min close > 8.36 o","plan":{"state":"WATCH","setup":"","stop":8.2549,"target":8.41,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":51.1,"room_to_5d_high_atr":1.18},"price":8.345,"vwap":8.2889,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.904,"trend":"flat","recent_slope_pct":-0.0019,"volatility":"medium"},"price":8.345,"volume":{"bars":98,"last_bar_volume":946.0,"baseline_avg":1260.45,"bar_rvol":0.750526,"raw_accel":1.892966,"smooth_accel":-0.384584,"accel_momentum":0.286125,"rvol_3bar":[0.159983,0.244431,0.750526],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":633.0,"sell_vol":114.0,"unclassified_vol":0.0,"imbalance":0.694779,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":7.177694},"context":{"vwap":8.288891,"price_vs_vwap_pct":0.676918,"ema9":8.322921,"ema20":8.308424,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.823529,"dist_to_hod_atr":6.735855,"atr":0.023011,"spread_atr":0.434571,"own_change_pct":0.131156,"rel_strength_pct":{"SPY":0.085563,"IWM":0.025652}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.52145},"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":"f6d42d7b9042","ts":"2026-09-15T15:08:35+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.5% above open $7.66 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.2713,"target":8.54,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":127.3,"room_to_5d_high_atr":-1.0},"price":8.4623,"vwap":8.1125,"ext_from_open_pct":10.47,"max_ext_allowed_pct":3.0,"volume_pace":0.513,"trend":"flat","recent_slope_pct":0.2375,"volatility":"high"},"price":8.4623,"volume":{"bars":98,"last_bar_volume":6770.0,"baseline_avg":2424.0,"bar_rvol":2.792904,"raw_accel":10.171617,"smooth_accel":2.541497,"accel_momentum":1.356483,"rvol_3bar":[2.960696,0.160495,2.792904],"trend_3bar":"MIXED","projected_rvol":0.268034},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":179.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.283154,"bid":8.46,"ask":8.5,"spread_pct":0.471698,"quote_size_imbalance":null,"quote_age_s":20.890788},"context":{"vwap":8.112209,"price_vs_vwap_pct":4.315611,"ema9":8.420961,"ema20":8.414367,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.909836,"dist_to_hod_atr":0.952388,"atr":0.081584,"spread_atr":0.49029,"own_change_pct":0.595238,"rel_strength_pct":{"SPY":0.549644,"IWM":0.489734}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.790822},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"22ba57027dea","ts":"2026-09-15T15:09:00+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.0% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.309,"target":9.1989,"target_label":"clear air (typical 60-min move)","reward_risk":3.66,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1126,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.511,"trend":"flat","recent_slope_pct":0.3266,"volatility":"high"},"price":8.5,"volume":{"bars":98,"last_bar_volume":6770.0,"baseline_avg":2424.0,"bar_rvol":2.792904,"raw_accel":10.171617,"smooth_accel":2.541497,"accel_momentum":1.356483,"rvol_3bar":[2.960696,0.160495,2.792904],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":102.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.009901,"bid":8.46,"ask":8.5,"spread_pct":0.471698,"quote_size_imbalance":null,"quote_age_s":45.890788},"context":{"vwap":8.112209,"price_vs_vwap_pct":4.780342,"ema9":8.420961,"ema20":8.414367,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.49029,"atr":0.081584,"spread_atr":0.49029,"own_change_pct":0.595238,"rel_strength_pct":{"SPY":0.623109,"IWM":0.588173}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.027653},"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":"b1e5ce8a2995","ts":"2026-09-15T15:09:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 680.0s, plan says PASS; stop 8.24, target 8.41 (prev_day_high), R:R 0.92; target 0.08 away > ~0.08 reachable in 286 min","plan":{"state":"PASS","setup":"","stop":8.2366,"target":8.41,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":49.0,"room_to_5d_high_atr":1.23},"price":8.3267,"vwap":8.2891,"ext_from_open_pct":-0.04,"max_ext_allowed_pct":3.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":-0.0226,"volatility":"medium"},"price":8.3267,"volume":{"bars":99,"last_bar_volume":235.0,"baseline_avg":1288.35,"bar_rvol":0.182404,"raw_accel":-0.751586,"smooth_accel":-0.310471,"accel_momentum":0.074113,"rvol_3bar":[0.244431,0.750526,0.182404],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":332.0,"sell_vol":119.0,"unclassified_vol":0.0,"imbalance":0.472284,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":1.980966},"context":{"vwap":8.288991,"price_vs_vwap_pct":0.45493,"ema9":8.328017,"ema20":8.312231,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-2.038824,"dist_to_hod_atr":7.434454,"atr":0.02331,"spread_atr":0.428993,"own_change_pct":0.32567,"rel_strength_pct":{"SPY":0.353542,"IWM":0.318605}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.086146},"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":"4e1f6ed9790e","ts":"2026-09-15T15:09:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.7% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.289,"target":8.54,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":128.0,"room_to_5d_high_atr":-1.02},"price":8.48,"vwap":8.1126,"ext_from_open_pct":10.7,"max_ext_allowed_pct":4.0,"volume_pace":0.51,"trend":"flat","recent_slope_pct":0.2246,"volatility":"high"},"price":8.48,"volume":{"bars":99,"last_bar_volume":481.0,"baseline_avg":2704.6,"bar_rvol":0.177845,"raw_accel":-0.928951,"smooth_accel":-0.222999,"accel_momentum":-2.764496,"rvol_3bar":[0.160495,2.792904,0.177845],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":102.0,"sell_vol":51.0,"unclassified_vol":0.0,"imbalance":0.333333,"bid":8.46,"ask":8.5,"spread_pct":0.471698,"quote_size_imbalance":null,"quote_age_s":55.890788},"context":{"vwap":8.112584,"price_vs_vwap_pct":4.528969,"ema9":8.436769,"ema20":8.422523,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.702576,"dist_to_hod_atr":0.75635,"atr":0.079328,"spread_atr":0.504233,"own_change_pct":1.371497,"rel_strength_pct":{"SPY":1.399368,"IWM":1.364432}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.059282},"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":"077c91593782","ts":"2026-09-15T15:09:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 685.0s, plan says WATCH; stop 8.26, target 8.41 (prev_day_high), R:R 0.69; R:R 0.69 < 2.0 at 8.35; pullback: buy 8.29-8.32 holding + reclaim/fading selling/support; breakout: 1-min close > 8.36 o","plan":{"state":"WATCH","setup":"","stop":8.2575,"target":8.41,"target_label":"prev_day_high","reward_risk":0.69,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":1.17},"price":8.3476,"vwap":8.2892,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0276,"volatility":"medium"},"price":8.3476,"volume":{"bars":99,"last_bar_volume":235.0,"baseline_avg":1288.35,"bar_rvol":0.182404,"raw_accel":-0.751586,"smooth_accel":-0.310471,"accel_momentum":0.074113,"rvol_3bar":[0.244431,0.750526,0.182404],"trend_3bar":"MIXED","projected_rvol":1.403345},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":335.0,"sell_vol":119.0,"unclassified_vol":0.0,"imbalance":0.475771,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":6.980966},"context":{"vwap":8.288991,"price_vs_vwap_pct":0.707072,"ema9":8.328017,"ema20":8.312231,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.792941,"dist_to_hod_atr":6.537858,"atr":0.02331,"spread_atr":0.428993,"own_change_pct":0.32567,"rel_strength_pct":{"SPY":0.353542,"IWM":0.318605}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.086782},"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":"82efba27e128","ts":"2026-09-15T15:09:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.0% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.309,"target":9.1944,"target_label":"clear air (typical 60-min move)","reward_risk":3.64,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1126,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.509,"trend":"flat","recent_slope_pct":0.2718,"volatility":"high"},"price":8.5,"volume":{"bars":99,"last_bar_volume":481.0,"baseline_avg":2704.6,"bar_rvol":0.177845,"raw_accel":-0.928951,"smooth_accel":-0.222999,"accel_momentum":-2.764496,"rvol_3bar":[0.160495,2.792904,0.177845],"trend_3bar":"MIXED","projected_rvol":0.060342},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":79.0,"sell_vol":51.0,"unclassified_vol":0.0,"imbalance":0.215385,"bid":8.46,"ask":8.5,"spread_pct":0.471698,"quote_size_imbalance":null,"quote_age_s":70.890788},"context":{"vwap":8.112584,"price_vs_vwap_pct":4.7755,"ema9":8.436769,"ema20":8.422523,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.504233,"atr":0.079328,"spread_atr":0.504233,"own_change_pct":1.371497,"rel_strength_pct":{"SPY":1.399368,"IWM":1.364432}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.038305},"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":"0255b01923fe","ts":"2026-09-15T15:09:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.7% above open $7.66 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.289,"target":8.54,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":128.0,"room_to_5d_high_atr":-1.02},"price":8.48,"vwap":8.1126,"ext_from_open_pct":10.7,"max_ext_allowed_pct":3.0,"volume_pace":0.507,"trend":"flat","recent_slope_pct":0.2246,"volatility":"high"},"price":8.48,"volume":{"bars":99,"last_bar_volume":481.0,"baseline_avg":2704.6,"bar_rvol":0.177845,"raw_accel":-0.928951,"smooth_accel":-0.222999,"accel_momentum":-2.764496,"rvol_3bar":[0.160495,2.792904,0.177845],"trend_3bar":"MIXED","projected_rvol":0.034608},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":17.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.259259,"bid":8.46,"ask":8.5,"spread_pct":0.471698,"quote_size_imbalance":null,"quote_age_s":95.890788},"context":{"vwap":8.112584,"price_vs_vwap_pct":4.528969,"ema9":8.436769,"ema20":8.422523,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.702576,"dist_to_hod_atr":0.75635,"atr":0.079328,"spread_atr":0.504233,"own_change_pct":1.371497,"rel_strength_pct":{"SPY":1.399368,"IWM":1.364432}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.046108},"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":"8ac4f002b746","ts":"2026-09-15T15:09:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.0% above open $7.66 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.309,"target":9.1944,"target_label":"clear air (typical 60-min move)","reward_risk":3.64,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1136,"ext_from_open_pct":10.97,"max_ext_allowed_pct":3.0,"volume_pace":0.507,"trend":"flat","recent_slope_pct":0.2718,"volatility":"high"},"price":8.5,"volume":{"bars":99,"last_bar_volume":481.0,"baseline_avg":2704.6,"bar_rvol":0.177845,"raw_accel":-0.928951,"smooth_accel":-0.222999,"accel_momentum":-2.764496,"rvol_3bar":[0.160495,2.792904,0.177845],"trend_3bar":"MIXED","projected_rvol":0.492494},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":728.0,"sell_vol":425.0,"unclassified_vol":0.0,"imbalance":0.262793,"bid":8.48,"ask":8.54,"spread_pct":0.705053,"quote_size_imbalance":null,"quote_age_s":0.809948},"context":{"vwap":8.112584,"price_vs_vwap_pct":4.7755,"ema9":8.436769,"ema20":8.422523,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.504233,"atr":0.079328,"spread_atr":0.75635,"own_change_pct":1.371497,"rel_strength_pct":{"SPY":1.399368,"IWM":1.364432}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.046736},"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":"07f82abc3b90","ts":"2026-09-15T15:10:00+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.30% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.26,"target":8.54,"target_label":"ceiling","reward_risk":0.27,"pos_in_5d_range_pct":128.0,"room_to_5d_high_atr":-1.02},"price":8.48,"vwap":8.1136,"ext_from_open_pct":10.7,"max_ext_allowed_pct":3.0,"volume_pace":0.507,"trend":"flat","recent_slope_pct":0.2246,"volatility":"high"},"price":8.48,"volume":{"bars":99,"last_bar_volume":481.0,"baseline_avg":2704.6,"bar_rvol":0.177845,"raw_accel":-0.928951,"smooth_accel":-0.222999,"accel_momentum":-2.764496,"rvol_3bar":[0.160495,2.792904,0.177845],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":748.0,"sell_vol":527.0,"unclassified_vol":0.0,"imbalance":0.173333,"bid":8.41,"ask":8.52,"spread_pct":1.299468,"quote_size_imbalance":null,"quote_age_s":3.058313},"context":{"vwap":8.112584,"price_vs_vwap_pct":4.528969,"ema9":8.436769,"ema20":8.422523,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.702576,"dist_to_hod_atr":0.75635,"atr":0.079328,"spread_atr":1.386641,"own_change_pct":1.371497,"rel_strength_pct":{"SPY":1.413758,"IWM":1.406634}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.030826},"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":"0f7165e2189b","ts":"2026-09-15T15:11:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.18% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.2984,"target":9.1884,"target_label":"clear air (typical 60-min move)","reward_risk":3.45,"pos_in_5d_range_pct":128.6,"room_to_5d_high_atr":-1.05},"price":8.4984,"vwap":8.115,"ext_from_open_pct":10.95,"max_ext_allowed_pct":4.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0705,"volatility":"high"},"price":8.4984,"volume":{"bars":101,"last_bar_volume":113.0,"baseline_avg":2346.0,"bar_rvol":0.048167,"raw_accel":-0.91586,"smooth_accel":-0.860758,"accel_momentum":-0.724997,"rvol_3bar":[0.177845,0.573307,0.048167],"trend_3bar":"MIXED","projected_rvol":0.889003},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":735.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":0.295154,"bid":8.4,"ask":8.5,"spread_pct":1.183432,"quote_size_imbalance":null,"quote_age_s":28.290115},"context":{"vwap":8.113717,"price_vs_vwap_pct":4.741142,"ema9":8.448932,"ema20":8.43133,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.487119,"dist_to_hod_atr":0.561152,"atr":0.074133,"spread_atr":1.348924,"own_change_pct":0.630202,"rel_strength_pct":{"SPY":0.669828,"IWM":0.689937}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.014217},"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":"9c359dfa0ed7","ts":"2026-09-15T15:12:00+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.18% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.54,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.98},"price":8.45,"vwap":8.1152,"ext_from_open_pct":10.31,"max_ext_allowed_pct":4.0,"volume_pace":0.499,"trend":"flat","recent_slope_pct":-0.0437,"volatility":"high"},"price":8.45,"volume":{"bars":101,"last_bar_volume":113.0,"baseline_avg":2346.0,"bar_rvol":0.048167,"raw_accel":-0.91586,"smooth_accel":-0.860758,"accel_momentum":-0.724997,"rvol_3bar":[0.177845,0.573307,0.048167],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":594.0,"sell_vol":252.0,"unclassified_vol":0.0,"imbalance":0.404255,"bid":8.4,"ask":8.5,"spread_pct":1.183432,"quote_size_imbalance":null,"quote_age_s":3.419348},"context":{"vwap":8.113717,"price_vs_vwap_pct":4.144621,"ema9":8.448932,"ema20":8.43133,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.053864,"dist_to_hod_atr":1.214032,"atr":0.074133,"spread_atr":1.348924,"own_change_pct":0.630202,"rel_strength_pct":{"SPY":0.650674,"IWM":0.723274}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.019472},"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":"3ad5f1e83034","ts":"2026-09-15T15:12:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6154,"target":5.79,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":78.7,"room_to_5d_high_atr":0.29},"price":5.715,"vwap":5.7127,"ext_from_open_pct":0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.662,"trend":"flat","recent_slope_pct":0.0874,"volatility":"high"},"price":5.715,"volume":{"bars":102,"last_bar_volume":2498.0,"baseline_avg":2623.05,"bar_rvol":0.952326,"raw_accel":1.374525,"smooth_accel":1.07574,"accel_momentum":0.340856,"rvol_3bar":[0.60843,0.403916,0.952326],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":320.0,"sell_vol":189.0,"unclassified_vol":0.0,"imbalance":0.257367,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":1.41823},"context":{"vwap":5.712673,"price_vs_vwap_pct":0.040728,"ema9":5.704958,"ema20":5.695207,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.295337,"dist_to_hod_atr":4.34276,"atr":0.01727,"spread_atr":0.579035,"own_change_pct":-0.006999,"rel_strength_pct":{"SPY":0.013473,"IWM":0.086073}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.245098},"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":"8e38dcf95c48","ts":"2026-09-15T15:12:45+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3029,"target":9.1839,"target_label":"clear air (typical 60-min move)","reward_risk":3.61,"pos_in_5d_range_pct":128.5,"room_to_5d_high_atr":-1.04},"price":8.4939,"vwap":8.1154,"ext_from_open_pct":10.89,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0498,"volatility":"high"},"price":8.4939,"volume":{"bars":102,"last_bar_volume":1990.0,"baseline_avg":2336.7,"bar_rvol":0.851628,"raw_accel":2.406513,"smooth_accel":-0.550658,"accel_momentum":0.310099,"rvol_3bar":[0.573307,0.048167,0.851628],"trend_3bar":"MIXED","projected_rvol":0.184876},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":6.0,"sell_vol":221.0,"unclassified_vol":0.0,"imbalance":-0.947137,"bid":8.45,"ask":8.5,"spread_pct":0.589971,"quote_size_imbalance":null,"quote_age_s":2.672615},"context":{"vwap":8.115166,"price_vs_vwap_pct":4.666992,"ema9":8.449146,"ema20":8.433108,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.539813,"dist_to_hod_atr":0.624401,"atr":0.073831,"spread_atr":0.677224,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.020472,"IWM":0.093072}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.806608},"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":"1b6d85af225d","ts":"2026-09-15T15:13:05+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6129,"target":5.79,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":78.2,"room_to_5d_high_atr":0.29},"price":5.7125,"vwap":5.7127,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.0383,"volatility":"high"},"price":5.7125,"volume":{"bars":103,"last_bar_volume":928.0,"baseline_avg":2691.9,"bar_rvol":0.344738,"raw_accel":-0.628503,"smooth_accel":0.525204,"accel_momentum":-0.550535,"rvol_3bar":[0.403916,0.952326,0.344738],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":126.0,"sell_vol":175.0,"unclassified_vol":0.0,"imbalance":-0.162791,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":1.22293},"context":{"vwap":5.712674,"price_vs_vwap_pct":-0.003044,"ema9":5.706966,"ema20":5.697092,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.338515,"dist_to_hod_atr":4.564355,"atr":0.016979,"spread_atr":0.588949,"own_change_pct":0.321239,"rel_strength_pct":{"SPY":0.345016,"IWM":0.408433}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.05612},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ce5242a80548","ts":"2026-09-15T15:13:15+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.614,"target":5.79,"target_label":"ceiling","reward_risk":0.77,"pos_in_5d_range_pct":78.4,"room_to_5d_high_atr":0.29},"price":5.7136,"vwap":5.7127,"ext_from_open_pct":0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.0422,"volatility":"high"},"price":5.7136,"volume":{"bars":103,"last_bar_volume":928.0,"baseline_avg":2691.9,"bar_rvol":0.344738,"raw_accel":-0.628503,"smooth_accel":0.525204,"accel_momentum":-0.550535,"rvol_3bar":[0.403916,0.952326,0.344738],"trend_3bar":"MIXED","projected_rvol":0.631524},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":197.0,"sell_vol":382.0,"unclassified_vol":0.0,"imbalance":-0.319516,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":1.963488},"context":{"vwap":5.712674,"price_vs_vwap_pct":0.016212,"ema9":5.706966,"ema20":5.697092,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.319516,"dist_to_hod_atr":4.49957,"atr":0.016979,"spread_atr":0.588949,"own_change_pct":0.321239,"rel_strength_pct":{"SPY":0.345016,"IWM":0.408433}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.110149},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"20bda17bdddd","ts":"2026-09-15T15:13:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.18% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.54,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.98},"price":8.45,"vwap":8.1154,"ext_from_open_pct":10.31,"max_ext_allowed_pct":3.0,"volume_pace":0.493,"trend":"flat","recent_slope_pct":-0.0344,"volatility":"high"},"price":8.45,"volume":{"bars":103,"last_bar_volume":324.0,"baseline_avg":2398.95,"bar_rvol":0.135059,"raw_accel":-0.837186,"smooth_accel":-0.717594,"accel_momentum":-0.166935,"rvol_3bar":[0.048167,0.851628,0.135059],"trend_3bar":"MIXED","projected_rvol":0.001},"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":8.4,"ask":8.5,"spread_pct":1.183432,"quote_size_imbalance":null,"quote_age_s":2.168803},"context":{"vwap":8.115411,"price_vs_vwap_pct":4.122878,"ema9":8.458097,"ema20":8.438898,"ema_stack":false,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.053864,"dist_to_hod_atr":1.247772,"atr":0.072129,"spread_atr":1.386413,"own_change_pct":0.519527,"rel_strength_pct":{"SPY":0.543304,"IWM":0.606721}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.135059},"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":"86a553cf1bd4","ts":"2026-09-15T15:13:35+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.18% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.3,"target":9.1858,"target_label":"clear air (typical 60-min move)","reward_risk":3.43,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1154,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.492,"trend":"flat","recent_slope_pct":0.0836,"volatility":"high"},"price":8.5,"volume":{"bars":103,"last_bar_volume":324.0,"baseline_avg":2398.95,"bar_rvol":0.135059,"raw_accel":-0.837186,"smooth_accel":-0.717594,"accel_momentum":-0.166935,"rvol_3bar":[0.048167,0.851628,0.135059],"trend_3bar":"MIXED","projected_rvol":0.005002},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":6.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.714286,"bid":8.4,"ask":8.5,"spread_pct":1.183432,"quote_size_imbalance":null,"quote_age_s":12.168803},"context":{"vwap":8.115411,"price_vs_vwap_pct":4.73899,"ema9":8.458097,"ema20":8.438898,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.554565,"atr":0.072129,"spread_atr":1.386413,"own_change_pct":0.519527,"rel_strength_pct":{"SPY":0.543304,"IWM":0.606721}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.096471},"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":"2a1caeaaac26","ts":"2026-09-15T15:13:45+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.18% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.25,"target":8.54,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":126.9,"room_to_5d_high_atr":-0.98},"price":8.45,"vwap":8.1155,"ext_from_open_pct":10.31,"max_ext_allowed_pct":4.0,"volume_pace":0.491,"trend":"flat","recent_slope_pct":-0.0344,"volatility":"high"},"price":8.45,"volume":{"bars":103,"last_bar_volume":324.0,"baseline_avg":2398.95,"bar_rvol":0.135059,"raw_accel":-0.837186,"smooth_accel":-0.717594,"accel_momentum":-0.166935,"rvol_3bar":[0.048167,0.851628,0.135059],"trend_3bar":"MIXED","projected_rvol":0.073921},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":6.0,"sell_vol":127.0,"unclassified_vol":0.0,"imbalance":-0.909774,"bid":8.4,"ask":8.5,"spread_pct":1.183432,"quote_size_imbalance":null,"quote_age_s":22.168803},"context":{"vwap":8.115411,"price_vs_vwap_pct":4.122878,"ema9":8.458097,"ema20":8.438898,"ema_stack":false,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.053864,"dist_to_hod_atr":1.247772,"atr":0.072129,"spread_atr":1.386413,"own_change_pct":0.519527,"rel_strength_pct":{"SPY":0.543304,"IWM":0.606721}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.122873},"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":"eb0a7efe048b","ts":"2026-09-15T15:13:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.18% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.3,"target":9.1858,"target_label":"clear air (typical 60-min move)","reward_risk":3.43,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1156,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.491,"trend":"flat","recent_slope_pct":0.0836,"volatility":"high"},"price":8.5,"volume":{"bars":103,"last_bar_volume":324.0,"baseline_avg":2398.95,"bar_rvol":0.135059,"raw_accel":-0.837186,"smooth_accel":-0.717594,"accel_momentum":-0.166935,"rvol_3bar":[0.048167,0.851628,0.135059],"trend_3bar":"MIXED","projected_rvol":0.09777},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":88.0,"sell_vol":126.0,"unclassified_vol":0.0,"imbalance":-0.17757,"bid":8.4,"ask":8.5,"spread_pct":1.183432,"quote_size_imbalance":null,"quote_age_s":32.168803},"context":{"vwap":8.115411,"price_vs_vwap_pct":4.73899,"ema9":8.458097,"ema20":8.438898,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.554565,"atr":0.072129,"spread_atr":1.386413,"own_change_pct":0.519527,"rel_strength_pct":{"SPY":0.543304,"IWM":0.606721}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.023982},"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":"44ea398b486f","ts":"2026-09-15T15:17:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.43% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.18,"target":8.54,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":125.8,"room_to_5d_high_atr":-0.94},"price":8.42,"vwap":8.1196,"ext_from_open_pct":9.92,"max_ext_allowed_pct":3.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":-0.211,"volatility":"high"},"price":8.42,"volume":{"bars":107,"last_bar_volume":2477.0,"baseline_avg":1516.9,"bar_rvol":1.632936,"raw_accel":0.016831,"smooth_accel":1.089759,"accel_momentum":0.844188,"rvol_3bar":[0.214156,1.670725,1.632936],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1081.0,"sell_vol":1528.0,"unclassified_vol":0.0,"imbalance":-0.17133,"bid":8.36,"ask":8.48,"spread_pct":1.425178,"quote_size_imbalance":null,"quote_age_s":1.993915},"context":{"vwap":8.119374,"price_vs_vwap_pct":3.702577,"ema9":8.46891,"ema20":8.451862,"ema_stack":false,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-1.405152,"dist_to_hod_atr":1.745159,"atr":0.068762,"spread_atr":1.745159,"own_change_pct":0.118343,"rel_strength_pct":{"SPY":0.103812,"IWM":0.104281}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.279771},"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":"5a5d20e8945d","ts":"2026-09-15T15:17:35+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6154,"target":5.79,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":78.7,"room_to_5d_high_atr":0.29},"price":5.715,"vwap":5.7129,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.648,"trend":"flat","recent_slope_pct":-0.0138,"volatility":"high"},"price":5.715,"volume":{"bars":107,"last_bar_volume":541.0,"baseline_avg":3052.3,"bar_rvol":0.177243,"raw_accel":-0.871252,"smooth_accel":-0.406386,"accel_momentum":-2.120544,"rvol_3bar":[0.43482,1.451167,0.177243],"trend_3bar":"MIXED","projected_rvol":0.418981},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":738.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":0.981208,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":2.188336},"context":{"vwap":5.712878,"price_vs_vwap_pct":0.037146,"ema9":5.714164,"ema20":5.704365,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.295337,"dist_to_hod_atr":4.790496,"atr":0.015656,"spread_atr":0.638733,"own_change_pct":0.083995,"rel_strength_pct":{"SPY":0.069464,"IWM":0.069934}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.173913},"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":"2d0967e15b1e","ts":"2026-09-15T15:18:00+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.0936,"target":7.2991,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":23.4,"room_to_5d_high_atr":1.63},"price":7.198,"vwap":7.1884,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":0.629,"trend":"flat","recent_slope_pct":0.0802,"volatility":"medium"},"price":7.198,"volume":{"bars":107,"last_bar_volume":37922.0,"baseline_avg":133421.8,"bar_rvol":0.284226,"raw_accel":-0.259148,"smooth_accel":0.737606,"accel_momentum":0.824456,"rvol_3bar":[0.969618,0.381096,0.284226],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":179,"trade_rate":5.966667,"buy_vol":78172.0,"sell_vol":76469.0,"unclassified_vol":0.0,"imbalance":0.011013,"bid":7.19,"ask":7.2,"spread_pct":0.138985,"quote_size_imbalance":null,"quote_age_s":2.446922},"context":{"vwap":7.188335,"price_vs_vwap_pct":0.134448,"ema9":7.175047,"ema20":7.167342,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.800819,"dist_to_hod_atr":6.600213,"atr":0.019999,"spread_atr":0.500016,"own_change_pct":0.209205,"rel_strength_pct":{"SPY":0.161639,"IWM":0.16237}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.00313},"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":"6c9a36c09419","ts":"2026-09-15T15:18:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6145,"target":5.79,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":78.5,"room_to_5d_high_atr":0.29},"price":5.7141,"vwap":5.7129,"ext_from_open_pct":0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.645,"trend":"flat","recent_slope_pct":-0.0283,"volatility":"high"},"price":5.7141,"volume":{"bars":108,"last_bar_volume":1230.0,"baseline_avg":3021.1,"bar_rvol":0.407136,"raw_accel":0.628546,"smooth_accel":-0.327365,"accel_momentum":0.079021,"rvol_3bar":[1.451167,0.177243,0.407136],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":103.0,"sell_vol":395.0,"unclassified_vol":0.0,"imbalance":-0.586345,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":1.790242},"context":{"vwap":5.712879,"price_vs_vwap_pct":0.02137,"ema9":5.713331,"ema20":5.704901,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.310881,"dist_to_hod_atr":4.974068,"atr":0.015259,"spread_atr":0.655345,"own_change_pct":-0.087489,"rel_strength_pct":{"SPY":-0.135055,"IWM":-0.134324}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.238723},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1c5c718b7537","ts":"2026-09-15T15:18:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.2449,"target":8.41,"target_label":"prev_day_high","reward_risk":0.83,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":1.21},"price":8.335,"vwap":8.2951,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.919,"trend":"flat","recent_slope_pct":-0.019,"volatility":"medium"},"price":8.335,"volume":{"bars":108,"last_bar_volume":7521.0,"baseline_avg":847.2,"bar_rvol":8.877479,"raw_accel":18.040506,"smooth_accel":7.02443,"accel_momentum":7.422783,"rvol_3bar":[1.408174,0.270224,8.877479],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":144.0,"sell_vol":659.0,"unclassified_vol":0.0,"imbalance":-0.641345,"bid":8.33,"ask":8.34,"spread_pct":0.119976,"quote_size_imbalance":null,"quote_age_s":5.696464},"context":{"vwap":8.294881,"price_vs_vwap_pct":0.483658,"ema9":8.345099,"ema20":8.332556,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.941176,"dist_to_hod_atr":9.481971,"atr":0.017401,"spread_atr":0.574665,"own_change_pct":0.143914,"rel_strength_pct":{"SPY":0.096349,"IWM":0.097079}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-5.693526},"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":"6db1a2ae8865","ts":"2026-09-15T15:18:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2499,"target":8.41,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":50.6,"room_to_5d_high_atr":1.19},"price":8.34,"vwap":8.2951,"ext_from_open_pct":0.12,"max_ext_allowed_pct":3.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":-0.0071,"volatility":"medium"},"price":8.34,"volume":{"bars":108,"last_bar_volume":7521.0,"baseline_avg":847.2,"bar_rvol":8.877479,"raw_accel":18.040506,"smooth_accel":7.02443,"accel_momentum":7.422783,"rvol_3bar":[1.408174,0.270224,8.877479],"trend_3bar":"MIXED","projected_rvol":3.048867},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":128.0,"sell_vol":739.0,"unclassified_vol":0.0,"imbalance":-0.704729,"bid":8.33,"ask":8.34,"spread_pct":0.119976,"quote_size_imbalance":null,"quote_age_s":15.696464},"context":{"vwap":8.294881,"price_vs_vwap_pct":0.543936,"ema9":8.345099,"ema20":8.332556,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.882353,"dist_to_hod_atr":9.194639,"atr":0.017401,"spread_atr":0.574665,"own_change_pct":0.143914,"rel_strength_pct":{"SPY":0.096349,"IWM":0.097079}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-6.256216},"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":"4e57699f2601","ts":"2026-09-15T15:18:35+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.2449,"target":8.41,"target_label":"prev_day_high","reward_risk":0.83,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":1.21},"price":8.335,"vwap":8.2951,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.916,"trend":"flat","recent_slope_pct":-0.019,"volatility":"medium"},"price":8.335,"volume":{"bars":108,"last_bar_volume":7521.0,"baseline_avg":847.2,"bar_rvol":8.877479,"raw_accel":18.040506,"smooth_accel":7.02443,"accel_momentum":7.422783,"rvol_3bar":[1.408174,0.270224,8.877479],"trend_3bar":"MIXED","projected_rvol":1.766491},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":11.0,"sell_vol":196.0,"unclassified_vol":0.0,"imbalance":-0.89372,"bid":8.33,"ask":8.34,"spread_pct":0.119976,"quote_size_imbalance":null,"quote_age_s":2.662794},"context":{"vwap":8.294881,"price_vs_vwap_pct":0.483658,"ema9":8.345099,"ema20":8.332556,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.941176,"dist_to_hod_atr":9.481971,"atr":0.017401,"spread_atr":0.574665,"own_change_pct":0.143914,"rel_strength_pct":{"SPY":0.096349,"IWM":0.097079}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-7.933979},"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":"b952970099cc","ts":"2026-09-15T15:19:00+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6119,"target":5.79,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":78.1,"room_to_5d_high_atr":0.3},"price":5.7115,"vwap":5.7129,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.0374,"volatility":"high"},"price":5.7115,"volume":{"bars":108,"last_bar_volume":1230.0,"baseline_avg":3021.1,"bar_rvol":0.407136,"raw_accel":0.628546,"smooth_accel":-0.327365,"accel_momentum":0.079021,"rvol_3bar":[1.451167,0.177243,0.407136],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":228.0,"sell_vol":84.0,"unclassified_vol":0.0,"imbalance":0.461538,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.002028},"context":{"vwap":5.712879,"price_vs_vwap_pct":-0.024141,"ema9":5.713331,"ema20":5.704901,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.355786,"dist_to_hod_atr":5.144457,"atr":0.015259,"spread_atr":0.655345,"own_change_pct":-0.087489,"rel_strength_pct":{"SPY":-0.156199,"IWM":-0.185959}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.187909},"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":"5958ff75eb72","ts":"2026-09-15T15:19:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.19 below VWAP $7.19","plan":{"state":"PASS","setup":"","stop":7.0822,"target":7.2991,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":22.1,"room_to_5d_high_atr":1.66},"price":7.1866,"vwap":7.1884,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.627,"trend":"flat","recent_slope_pct":0.0509,"volatility":"medium"},"price":7.1866,"volume":{"bars":108,"last_bar_volume":294275.0,"baseline_avg":128650.9,"bar_rvol":2.287392,"raw_accel":6.760007,"smooth_accel":0.704573,"accel_momentum":-0.033033,"rvol_3bar":[0.381096,0.284226,2.287392],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":33498.0,"sell_vol":43812.0,"unclassified_vol":0.0,"imbalance":-0.133411,"bid":7.19,"ask":7.2,"spread_pct":0.138985,"quote_size_imbalance":null,"quote_age_s":0.432722},"context":{"vwap":7.188396,"price_vs_vwap_pct":-0.024987,"ema9":7.179637,"ema20":7.170262,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.956344,"dist_to_hod_atr":7.071713,"atr":0.020278,"spread_atr":0.493146,"own_change_pct":0.390516,"rel_strength_pct":{"SPY":0.321807,"IWM":0.292046}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.305163},"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":"85b6b3518ce9","ts":"2026-09-15T15:19:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2599,"target":8.41,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":51.7,"room_to_5d_high_atr":1.17},"price":8.35,"vwap":8.2956,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":-0.0359,"volatility":"medium"},"price":8.35,"volume":{"bars":109,"last_bar_volume":890.0,"baseline_avg":1154.85,"bar_rvol":0.770663,"raw_accel":-0.881665,"smooth_accel":1.826059,"accel_momentum":-5.198371,"rvol_3bar":[0.270224,8.877479,0.770663],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1395.0,"sell_vol":66.0,"unclassified_vol":0.0,"imbalance":0.909651,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":1.73848},"context":{"vwap":8.295135,"price_vs_vwap_pct":0.661415,"ema9":8.343079,"ema20":8.332789,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.764706,"dist_to_hod_atr":8.588297,"atr":0.017466,"spread_atr":0.572553,"own_change_pct":-0.059952,"rel_strength_pct":{"SPY":-0.128661,"IWM":-0.158422}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.701034},"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":"386c7c308bdc","ts":"2026-09-15T15:19:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6142,"target":5.79,"target_label":"ceiling","reward_risk":0.77,"pos_in_5d_range_pct":78.5,"room_to_5d_high_atr":0.29},"price":5.7138,"vwap":5.7129,"ext_from_open_pct":0.24,"max_ext_allowed_pct":4.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.0348,"volatility":"high"},"price":5.7138,"volume":{"bars":109,"last_bar_volume":347.0,"baseline_avg":2683.45,"bar_rvol":0.129311,"raw_accel":-0.717886,"smooth_accel":-0.825736,"accel_momentum":-0.498372,"rvol_3bar":[0.177243,0.407136,0.129311],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":222.0,"sell_vol":39.0,"unclassified_vol":0.0,"imbalance":0.701149,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":5.002028},"context":{"vwap":5.71288,"price_vs_vwap_pct":0.016109,"ema9":5.712965,"ema20":5.70553,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.316062,"dist_to_hod_atr":5.129615,"atr":0.014855,"spread_atr":0.673178,"own_change_pct":-0.148601,"rel_strength_pct":{"SPY":-0.217311,"IWM":-0.247072}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.090666},"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":"bb72bddf44d8","ts":"2026-09-15T15:19:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.0% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.309,"target":9.0738,"target_label":"clear air (typical 60-min move)","reward_risk":3.0,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.121,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.475,"trend":"flat","recent_slope_pct":0.0354,"volatility":"high"},"price":8.5,"volume":{"bars":109,"last_bar_volume":943.0,"baseline_avg":1669.7,"bar_rvol":0.564772,"raw_accel":-0.305085,"smooth_accel":0.580218,"accel_momentum":-5.302328,"rvol_3bar":[1.632936,0.835977,0.564772],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":812.0,"sell_vol":42.0,"unclassified_vol":0.0,"imbalance":0.901639,"bid":8.45,"ask":8.5,"spread_pct":0.589971,"quote_size_imbalance":null,"quote_age_s":3.396091},"context":{"vwap":8.120958,"price_vs_vwap_pct":4.667457,"ema9":8.462102,"ema20":8.451525,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.59256,"atr":0.067504,"spread_atr":0.7407,"own_change_pct":-0.588235,"rel_strength_pct":{"SPY":-0.656945,"IWM":-0.686705}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.509221},"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":"b6f7b651487e","ts":"2026-09-15T15:19:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.0956,"target":7.2991,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":23.6,"room_to_5d_high_atr":1.63},"price":7.2,"vwap":7.1884,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.627,"trend":"flat","recent_slope_pct":0.0439,"volatility":"medium"},"price":7.2,"volume":{"bars":109,"last_bar_volume":92431.0,"baseline_avg":136761.75,"bar_rvol":0.675854,"raw_accel":-0.685903,"smooth_accel":0.942027,"accel_momentum":0.237454,"rvol_3bar":[0.284226,2.287392,0.675854],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":33988.0,"sell_vol":43782.0,"unclassified_vol":0.0,"imbalance":-0.125935,"bid":7.19,"ask":7.2,"spread_pct":0.138985,"quote_size_imbalance":null,"quote_age_s":1.726106},"context":{"vwap":7.1884,"price_vs_vwap_pct":0.161374,"ema9":7.18103,"ema20":7.171818,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.773533,"dist_to_hod_atr":6.423976,"atr":0.020237,"spread_atr":0.494152,"own_change_pct":0.171445,"rel_strength_pct":{"SPY":0.102736,"IWM":0.072975}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.085114},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9a564fa627d7","ts":"2026-09-15T15:19:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0831,"target":11.44,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":23.9,"room_to_5d_high_atr":1.25},"price":11.2999,"vwap":11.2372,"ext_from_open_pct":0.35,"max_ext_allowed_pct":4.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":0.2532,"volatility":"high"},"price":11.2999,"volume":{"bars":109,"last_bar_volume":140349.0,"baseline_avg":94523.25,"bar_rvol":1.484809,"raw_accel":0.232407,"smooth_accel":0.090953,"accel_momentum":-0.507065,"rvol_3bar":[0.857763,1.201224,1.484809],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":203,"trade_rate":6.766667,"buy_vol":74178.0,"sell_vol":16569.0,"unclassified_vol":0.0,"imbalance":0.634831,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.080457},"context":{"vwap":11.237101,"price_vs_vwap_pct":0.558857,"ema9":11.213992,"ema20":11.189835,"ema_stack":true,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-1.482999,"dist_to_hod_atr":3.548606,"atr":0.047934,"spread_atr":0.208619,"own_change_pct":1.074306,"rel_strength_pct":{"SPY":1.005597,"IWM":0.975836}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.942603},"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":"15c2d0c5016d","ts":"2026-09-15T15:19:20+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6104,"target":5.79,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":77.8,"room_to_5d_high_atr":0.3},"price":5.71,"vwap":5.7129,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.646,"trend":"flat","recent_slope_pct":-0.0481,"volatility":"high"},"price":5.71,"volume":{"bars":109,"last_bar_volume":347.0,"baseline_avg":2683.45,"bar_rvol":0.129311,"raw_accel":-0.717886,"smooth_accel":-0.825736,"accel_momentum":-0.498372,"rvol_3bar":[0.177243,0.407136,0.129311],"trend_3bar":"MIXED","projected_rvol":6.199109},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":1822.0,"sell_vol":3828.0,"unclassified_vol":0.0,"imbalance":-0.355044,"bid":5.7,"ask":5.71,"spread_pct":0.175285,"quote_size_imbalance":null,"quote_age_s":0.068586},"context":{"vwap":5.71288,"price_vs_vwap_pct":-0.050408,"ema9":5.712965,"ema20":5.70553,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.381693,"dist_to_hod_atr":5.385422,"atr":0.014855,"spread_atr":0.673178,"own_change_pct":-0.148601,"rel_strength_pct":{"SPY":-0.217311,"IWM":-0.247072}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.045911},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0c82abfc478b","ts":"2026-09-15T15:19:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.7% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.289,"target":8.54,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":128.0,"room_to_5d_high_atr":-1.02},"price":8.48,"vwap":8.1217,"ext_from_open_pct":10.7,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0118,"volatility":"high"},"price":8.48,"volume":{"bars":109,"last_bar_volume":943.0,"baseline_avg":1669.7,"bar_rvol":0.564772,"raw_accel":-0.305085,"smooth_accel":0.580218,"accel_momentum":-5.302328,"rvol_3bar":[1.632936,0.835977,0.564772],"trend_3bar":"DECELERATING","projected_rvol":1.451758},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":1012.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.951784,"bid":8.45,"ask":8.49,"spread_pct":0.472255,"quote_size_imbalance":null,"quote_age_s":2.863336},"context":{"vwap":8.120958,"price_vs_vwap_pct":4.421181,"ema9":8.462102,"ema20":8.451525,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.702576,"dist_to_hod_atr":0.88884,"atr":0.067504,"spread_atr":0.59256,"own_change_pct":-0.588235,"rel_strength_pct":{"SPY":-0.656945,"IWM":-0.686705}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.537541},"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":"30b236e8719b","ts":"2026-09-15T15:19:50+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6381,"target":13.13,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":22.5,"room_to_5d_high_atr":1.26},"price":12.8679,"vwap":12.8675,"ext_from_open_pct":-1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":0.2883,"volatility":"high"},"price":12.8679,"volume":{"bars":109,"last_bar_volume":25491.0,"baseline_avg":24850.15,"bar_rvol":1.025789,"raw_accel":0.381327,"smooth_accel":0.73301,"accel_momentum":0.623678,"rvol_3bar":[0.437731,0.74061,1.025789],"trend_3bar":"ACCELERATING","projected_rvol":2.223488},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":10548.0,"sell_vol":9595.0,"unclassified_vol":0.0,"imbalance":0.047312,"bid":12.86,"ask":12.87,"spread_pct":0.07773,"quote_size_imbalance":null,"quote_age_s":0.042445},"context":{"vwap":12.867899,"price_vs_vwap_pct":1.1e-05,"ema9":12.759369,"ema20":12.736088,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.29385,"dist_to_hod_atr":5.584701,"atr":0.054094,"spread_atr":0.184863,"own_change_pct":1.056175,"rel_strength_pct":{"SPY":0.987465,"IWM":0.957704}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.048532},"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":"857a024449c8","ts":"2026-09-15T15:19:55+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.86 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6333,"target":13.13,"target_label":"ceiling","reward_risk":1.16,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":1.27},"price":12.8631,"vwap":12.8675,"ext_from_open_pct":-1.43,"max_ext_allowed_pct":3.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":0.2808,"volatility":"high"},"price":12.8631,"volume":{"bars":109,"last_bar_volume":25491.0,"baseline_avg":24850.15,"bar_rvol":1.025789,"raw_accel":0.381327,"smooth_accel":0.73301,"accel_momentum":0.623678,"rvol_3bar":[0.437731,0.74061,1.025789],"trend_3bar":"ACCELERATING","projected_rvol":2.186722},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":11132.0,"sell_vol":5964.0,"unclassified_vol":0.0,"imbalance":0.302293,"bid":12.86,"ask":12.87,"spread_pct":0.07773,"quote_size_imbalance":null,"quote_age_s":0.071988},"context":{"vwap":12.867899,"price_vs_vwap_pct":-0.037291,"ema9":12.759369,"ema20":12.736088,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.330296,"dist_to_hod_atr":5.673435,"atr":0.054094,"spread_atr":0.184863,"own_change_pct":1.056175,"rel_strength_pct":{"SPY":0.987465,"IWM":0.957704}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.310089},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"04f67e25b973","ts":"2026-09-15T15:20:10+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9545,"ext_from_open_pct":1.27,"max_ext_allowed_pct":4.0,"volume_pace":1.037,"trend":"flat","recent_slope_pct":0.0622,"volatility":"medium"},"price":9.955,"volume":{"bars":110,"last_bar_volume":1221762.0,"baseline_avg":271079.2,"bar_rvol":4.50703,"raw_accel":1.913897,"smooth_accel":0.545781,"accel_momentum":0.562354,"rvol_3bar":[0.683158,1.545071,4.50703],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":370,"trade_rate":12.333333,"buy_vol":286601.0,"sell_vol":133308.0,"unclassified_vol":0.0,"imbalance":0.365062,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.063299},"context":{"vwap":9.954513,"price_vs_vwap_pct":0.004888,"ema9":9.926802,"ema20":9.919553,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.133831,"atr":0.022981,"spread_atr":0.43514,"own_change_pct":0.100756,"rel_strength_pct":{"SPY":0.065088,"IWM":0.106027}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.645347},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"06e5ef08ec34","ts":"2026-09-15T15:20:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.0% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.309,"target":9.0,"target_label":"clear air (typical 60-min move)","reward_risk":2.62,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1235,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":0.1417,"volatility":"high"},"price":8.5,"volume":{"bars":110,"last_bar_volume":3013.0,"baseline_avg":1681.95,"bar_rvol":1.791373,"raw_accel":2.195122,"smooth_accel":0.005298,"accel_momentum":-0.57492,"rvol_3bar":[0.835977,0.564772,1.791373],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":338.0,"sell_vol":147.0,"unclassified_vol":0.0,"imbalance":0.393814,"bid":8.44,"ask":8.52,"spread_pct":0.943396,"quote_size_imbalance":null,"quote_age_s":3.954432},"context":{"vwap":8.12318,"price_vs_vwap_pct":4.638828,"ema9":8.467682,"ema20":8.455189,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.603742,"atr":0.066253,"spread_atr":1.207485,"own_change_pct":0.133275,"rel_strength_pct":{"SPY":0.097607,"IWM":0.138547}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.705469},"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":"af33ff3a0150","ts":"2026-09-15T15:20:10+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6471,"target":13.13,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.25},"price":12.8769,"vwap":12.8675,"ext_from_open_pct":-1.33,"max_ext_allowed_pct":3.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":0.228,"volatility":"high"},"price":12.8769,"volume":{"bars":110,"last_bar_volume":49931.0,"baseline_avg":25128.9,"bar_rvol":1.986995,"raw_accel":0.95877,"smooth_accel":1.418986,"accel_momentum":0.685976,"rvol_3bar":[0.74061,1.025789,1.986995],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":7219.0,"sell_vol":4944.0,"unclassified_vol":0.0,"imbalance":0.187043,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":1.33828},"context":{"vwap":12.867511,"price_vs_vwap_pct":0.072969,"ema9":12.780495,"ema20":12.748365,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.225513,"dist_to_hod_atr":4.95505,"atr":0.059152,"spread_atr":0.169057,"own_change_pct":1.217919,"rel_strength_pct":{"SPY":1.182251,"IWM":1.223191}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.371653},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"63d9269d30ba","ts":"2026-09-15T15:20:15+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.86 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6302,"target":13.13,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":22.0,"room_to_5d_high_atr":1.27},"price":12.86,"vwap":12.8675,"ext_from_open_pct":-1.46,"max_ext_allowed_pct":3.0,"volume_pace":0.931,"trend":"flat","recent_slope_pct":0.2017,"volatility":"high"},"price":12.86,"volume":{"bars":110,"last_bar_volume":49931.0,"baseline_avg":25128.9,"bar_rvol":1.986995,"raw_accel":0.95877,"smooth_accel":1.418986,"accel_momentum":0.685976,"rvol_3bar":[0.74061,1.025789,1.986995],"trend_3bar":"ACCELERATING","projected_rvol":0.450318},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":7314.0,"sell_vol":4726.0,"unclassified_vol":0.0,"imbalance":0.21495,"bid":12.86,"ask":12.87,"spread_pct":0.07773,"quote_size_imbalance":null,"quote_age_s":0.412754},"context":{"vwap":12.867511,"price_vs_vwap_pct":-0.058369,"ema9":12.780495,"ema20":12.748365,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.353834,"dist_to_hod_atr":5.240756,"atr":0.059152,"spread_atr":0.169057,"own_change_pct":1.217919,"rel_strength_pct":{"SPY":1.182251,"IWM":1.223191}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.427105},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7a90dcf450cd","ts":"2026-09-15T15:20:20+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.94 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8159,"target":10.015,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":2.59},"price":9.9351,"vwap":9.9545,"ext_from_open_pct":1.07,"max_ext_allowed_pct":4.0,"volume_pace":1.036,"trend":"flat","recent_slope_pct":0.0222,"volatility":"medium"},"price":9.9351,"volume":{"bars":110,"last_bar_volume":1221762.0,"baseline_avg":271079.2,"bar_rvol":4.50703,"raw_accel":1.913897,"smooth_accel":0.545781,"accel_momentum":0.562354,"rvol_3bar":[0.683158,1.545071,4.50703],"trend_3bar":"ACCELERATING","projected_rvol":2.215677},"flow":{"window_s":30,"trades":224,"trade_rate":7.466667,"buy_vol":253211.0,"sell_vol":23166.0,"unclassified_vol":0.0,"imbalance":0.832359,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.704207},"context":{"vwap":9.954513,"price_vs_vwap_pct":-0.195022,"ema9":9.926802,"ema20":9.919553,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-1.143284,"dist_to_hod_atr":4.99976,"atr":0.022981,"spread_atr":0.43514,"own_change_pct":0.100756,"rel_strength_pct":{"SPY":0.065088,"IWM":0.106027}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.751469},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bc6afbfdf0b6","ts":"2026-09-15T15:20:20+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6452,"target":13.13,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":1.26},"price":12.875,"vwap":12.8675,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":4.0,"volume_pace":0.931,"trend":"flat","recent_slope_pct":0.225,"volatility":"high"},"price":12.875,"volume":{"bars":110,"last_bar_volume":49931.0,"baseline_avg":25128.9,"bar_rvol":1.986995,"raw_accel":0.95877,"smooth_accel":1.418986,"accel_momentum":0.685976,"rvol_3bar":[0.74061,1.025789,1.986995],"trend_3bar":"ACCELERATING","projected_rvol":0.427516},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":4719.0,"sell_vol":2748.0,"unclassified_vol":0.0,"imbalance":0.263961,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":0.181378},"context":{"vwap":12.867511,"price_vs_vwap_pct":0.058203,"ema9":12.780495,"ema20":12.748365,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.239939,"dist_to_hod_atr":4.987171,"atr":0.059152,"spread_atr":0.169057,"own_change_pct":1.217919,"rel_strength_pct":{"SPY":1.182251,"IWM":1.223191}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.52449},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3a6e605c554e","ts":"2026-09-15T15:20:25+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8394,"target":10.015,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.54},"price":9.9586,"vwap":9.9545,"ext_from_open_pct":1.31,"max_ext_allowed_pct":3.0,"volume_pace":1.039,"trend":"flat","recent_slope_pct":0.0694,"volatility":"medium"},"price":9.9586,"volume":{"bars":110,"last_bar_volume":1221762.0,"baseline_avg":271079.2,"bar_rvol":4.50703,"raw_accel":1.913897,"smooth_accel":0.545781,"accel_momentum":0.562354,"rvol_3bar":[0.683158,1.545071,4.50703],"trend_3bar":"ACCELERATING","projected_rvol":3.229828},"flow":{"window_s":30,"trades":294,"trade_rate":9.8,"buy_vol":315289.0,"sell_vol":114357.0,"unclassified_vol":0.0,"imbalance":0.467669,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.702582},"context":{"vwap":9.954513,"price_vs_vwap_pct":0.041052,"ema9":9.926802,"ema20":9.919553,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.909453,"dist_to_hod_atr":3.977181,"atr":0.022981,"spread_atr":0.43514,"own_change_pct":0.100756,"rel_strength_pct":{"SPY":0.065088,"IWM":0.106027}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.107797},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2edd4b7093f7","ts":"2026-09-15T15:20:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +10.8% above open $7.66 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.299,"target":8.54,"target_label":"ceiling","reward_risk":0.26,"pos_in_5d_range_pct":128.3,"room_to_5d_high_atr":-1.03},"price":8.49,"vwap":8.1268,"ext_from_open_pct":10.84,"max_ext_allowed_pct":3.0,"volume_pace":0.477,"trend":"flat","recent_slope_pct":0.1181,"volatility":"high"},"price":8.49,"volume":{"bars":110,"last_bar_volume":3013.0,"baseline_avg":1681.95,"bar_rvol":1.791373,"raw_accel":2.195122,"smooth_accel":0.005298,"accel_momentum":-0.57492,"rvol_3bar":[0.835977,0.564772,1.791373],"trend_3bar":"MIXED","projected_rvol":7.130295},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":394.0,"sell_vol":4603.0,"unclassified_vol":0.0,"imbalance":-0.842305,"bid":8.46,"ask":8.52,"spread_pct":0.706714,"quote_size_imbalance":null,"quote_age_s":5.82876},"context":{"vwap":8.12318,"price_vs_vwap_pct":4.515724,"ema9":8.467682,"ema20":8.455189,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.58548,"dist_to_hod_atr":0.754678,"atr":0.066253,"spread_atr":0.905614,"own_change_pct":0.133275,"rel_strength_pct":{"SPY":0.097607,"IWM":0.138547}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.508883},"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":"474e8b19854a","ts":"2026-09-15T15:20:25+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.22 below VWAP $11.24","plan":{"state":"PASS","setup":"","stop":11.0067,"target":11.44,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":18.5,"room_to_5d_high_atr":1.34},"price":11.2235,"vwap":11.2376,"ext_from_open_pct":-0.32,"max_ext_allowed_pct":4.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.0682,"volatility":"high"},"price":11.2235,"volume":{"bars":110,"last_bar_volume":196794.0,"baseline_avg":95787.25,"bar_rvol":2.054491,"raw_accel":0.402176,"smooth_accel":0.370305,"accel_momentum":0.279353,"rvol_3bar":[1.201224,1.484809,2.054491],"trend_3bar":"ACCELERATING","projected_rvol":1.165733},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":21429.0,"sell_vol":29965.0,"unclassified_vol":0.0,"imbalance":-0.166089,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.005335},"context":{"vwap":11.237546,"price_vs_vwap_pct":-0.124996,"ema9":11.231194,"ema20":11.200327,"ema_stack":false,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-2.149085,"dist_to_hod_atr":4.813472,"atr":0.05121,"spread_atr":0.195273,"own_change_pct":1.074249,"rel_strength_pct":{"SPY":1.038581,"IWM":1.079521}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.341229},"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":"23191e43a0cf","ts":"2026-09-15T15:20:25+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":7.5778,"target":7.93,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":46.3,"room_to_5d_high_atr":1.2},"price":7.7675,"vwap":7.7484,"ext_from_open_pct":0.88,"max_ext_allowed_pct":4.0,"volume_pace":0.322,"trend":"flat","recent_slope_pct":0.0534,"volatility":"high"},"price":7.7675,"volume":{"bars":110,"last_bar_volume":12762.0,"baseline_avg":10270.75,"bar_rvol":1.242558,"raw_accel":3.970231,"smooth_accel":0.805566,"accel_momentum":0.276073,"rvol_3bar":[1.339543,0.226197,1.242558],"trend_3bar":"MIXED","projected_rvol":8.380225},"flow":{"window_s":30,"trades":271,"trade_rate":9.033333,"buy_vol":28620.0,"sell_vol":7244.0,"unclassified_vol":0.0,"imbalance":0.596029,"bid":7.81,"ask":7.82,"spread_pct":0.127959,"quote_size_imbalance":null,"quote_age_s":0.859679},"context":{"vwap":7.748043,"price_vs_vwap_pct":0.25112,"ema9":7.739607,"ema20":7.727408,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-2.418342,"dist_to_hod_atr":4.787734,"atr":0.040207,"spread_atr":0.248713,"own_change_pct":-0.193548,"rel_strength_pct":{"SPY":-0.229216,"IWM":-0.188277}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.740601},"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":"543451354130","ts":"2026-09-15T15:20:30+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8321,"target":10.015,"target_label":"premarket_high","reward_risk":0.53,"pos_in_5d_range_pct":19.8,"room_to_5d_high_atr":2.56},"price":9.9513,"vwap":9.9545,"ext_from_open_pct":1.23,"max_ext_allowed_pct":3.0,"volume_pace":1.039,"trend":"flat","recent_slope_pct":0.0548,"volatility":"medium"},"price":9.9513,"volume":{"bars":110,"last_bar_volume":1221762.0,"baseline_avg":271079.2,"bar_rvol":4.50703,"raw_accel":1.913897,"smooth_accel":0.545781,"accel_momentum":0.562354,"rvol_3bar":[0.683158,1.545071,4.50703],"trend_3bar":"ACCELERATING","projected_rvol":2.737325},"flow":{"window_s":30,"trades":244,"trade_rate":8.133333,"buy_vol":251687.0,"sell_vol":119329.0,"unclassified_vol":0.0,"imbalance":0.356745,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.00203},"context":{"vwap":9.954513,"price_vs_vwap_pct":-0.032281,"ema9":9.926802,"ema20":9.919553,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.98209,"dist_to_hod_atr":4.294833,"atr":0.022981,"spread_atr":0.43514,"own_change_pct":0.100756,"rel_strength_pct":{"SPY":0.065088,"IWM":0.106027}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.607859},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7145243e6d6b","ts":"2026-09-15T15:20:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.37% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.1,"target":9.0,"target_label":"clear air (typical 60-min move)","reward_risk":1.25,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.1311,"ext_from_open_pct":10.97,"max_ext_allowed_pct":3.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":0.1417,"volatility":"high"},"price":8.5,"volume":{"bars":110,"last_bar_volume":3013.0,"baseline_avg":1681.95,"bar_rvol":1.791373,"raw_accel":2.195122,"smooth_accel":0.005298,"accel_momentum":-0.57492,"rvol_3bar":[0.835977,0.564772,1.791373],"trend_3bar":"MIXED","projected_rvol":12.418919},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":3750.0,"sell_vol":6694.0,"unclassified_vol":0.0,"imbalance":-0.281884,"bid":8.35,"ask":8.55,"spread_pct":2.366864,"quote_size_imbalance":null,"quote_age_s":2.575006},"context":{"vwap":8.12318,"price_vs_vwap_pct":4.638828,"ema9":8.467682,"ema20":8.455189,"ema_stack":true,"ema_warm":true,"hod":8.54,"dist_to_hod_pct":-0.468384,"dist_to_hod_atr":0.603742,"atr":0.066253,"spread_atr":3.018712,"own_change_pct":0.133275,"rel_strength_pct":{"SPY":0.097607,"IWM":0.138547}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.50496},"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":"e5b9fa324f30","ts":"2026-09-15T15:20:30+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0245,"target":11.44,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":1.32},"price":11.2413,"vwap":11.2376,"ext_from_open_pct":-0.17,"max_ext_allowed_pct":4.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.0998,"volatility":"high"},"price":11.2413,"volume":{"bars":110,"last_bar_volume":196794.0,"baseline_avg":95787.25,"bar_rvol":2.054491,"raw_accel":0.402176,"smooth_accel":0.370305,"accel_momentum":0.279353,"rvol_3bar":[1.201224,1.484809,2.054491],"trend_3bar":"ACCELERATING","projected_rvol":1.034981},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":19469.0,"sell_vol":30100.0,"unclassified_vol":0.0,"imbalance":-0.214469,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.020105},"context":{"vwap":11.237546,"price_vs_vwap_pct":0.033402,"ema9":11.231194,"ema20":11.200327,"ema_stack":true,"ema_warm":true,"hod":11.47,"dist_to_hod_pct":-1.993897,"dist_to_hod_atr":4.465886,"atr":0.05121,"spread_atr":0.195273,"own_change_pct":1.074249,"rel_strength_pct":{"SPY":1.038581,"IWM":1.079521}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.440624},"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":"0cf351945286","ts":"2026-09-15T15:20:40+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9545,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":1.037,"trend":"flat","recent_slope_pct":0.0622,"volatility":"medium"},"price":9.955,"volume":{"bars":110,"last_bar_volume":1221762.0,"baseline_avg":271079.2,"bar_rvol":4.50703,"raw_accel":1.913897,"smooth_accel":0.545781,"accel_momentum":0.562354,"rvol_3bar":[0.683158,1.545071,4.50703],"trend_3bar":"ACCELERATING","projected_rvol":2.069949},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":72053.0,"sell_vol":116825.0,"unclassified_vol":0.0,"imbalance":-0.237042,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":1.285736},"context":{"vwap":9.954513,"price_vs_vwap_pct":0.004888,"ema9":9.926802,"ema20":9.919553,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.133831,"atr":0.022981,"spread_atr":0.43514,"own_change_pct":0.100756,"rel_strength_pct":{"SPY":0.065088,"IWM":0.106027}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.068355},"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":"e0cb1470ee85","ts":"2026-09-15T15:20:45+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.78 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.5526,"target":13.13,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":16.8,"room_to_5d_high_atr":1.36},"price":12.7824,"vwap":12.8674,"ext_from_open_pct":-2.05,"max_ext_allowed_pct":3.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.0808,"volatility":"high"},"price":12.7824,"volume":{"bars":110,"last_bar_volume":49931.0,"baseline_avg":25128.9,"bar_rvol":1.986995,"raw_accel":0.95877,"smooth_accel":1.418986,"accel_momentum":0.685976,"rvol_3bar":[0.74061,1.025789,1.986995],"trend_3bar":"ACCELERATING","projected_rvol":0.728298},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":4347.0,"sell_vol":6550.0,"unclassified_vol":0.0,"imbalance":-0.202166,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":0.067539},"context":{"vwap":12.867511,"price_vs_vwap_pct":-0.661439,"ema9":12.780495,"ema20":12.748365,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.943052,"dist_to_hod_atr":6.552635,"atr":0.059152,"spread_atr":0.169057,"own_change_pct":1.217919,"rel_strength_pct":{"SPY":1.182251,"IWM":1.223191}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.401702},"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":"bf2652b3dda7","ts":"2026-09-15T15:20:50+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8329,"target":10.015,"target_label":"premarket_high","reward_risk":0.53,"pos_in_5d_range_pct":19.9,"room_to_5d_high_atr":2.55},"price":9.9521,"vwap":9.9544,"ext_from_open_pct":1.24,"max_ext_allowed_pct":3.0,"volume_pace":1.036,"trend":"flat","recent_slope_pct":0.0564,"volatility":"medium"},"price":9.9521,"volume":{"bars":110,"last_bar_volume":1221762.0,"baseline_avg":271079.2,"bar_rvol":4.50703,"raw_accel":1.913897,"smooth_accel":0.545781,"accel_momentum":0.562354,"rvol_3bar":[0.683158,1.545071,4.50703],"trend_3bar":"ACCELERATING","projected_rvol":1.707097},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":72080.0,"sell_vol":113344.0,"unclassified_vol":0.0,"imbalance":-0.222539,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.306169},"context":{"vwap":9.954513,"price_vs_vwap_pct":-0.024245,"ema9":9.926802,"ema20":9.919553,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.974129,"dist_to_hod_atr":4.260022,"atr":0.022981,"spread_atr":0.43514,"own_change_pct":0.100756,"rel_strength_pct":{"SPY":0.065088,"IWM":0.106027}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.002988},"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":"6395816217d0","ts":"2026-09-15T15:20:50+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6402,"target":13.13,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":1.26},"price":12.87,"vwap":12.8674,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.2173,"volatility":"high"},"price":12.87,"volume":{"bars":110,"last_bar_volume":49931.0,"baseline_avg":25128.9,"bar_rvol":1.986995,"raw_accel":0.95877,"smooth_accel":1.418986,"accel_momentum":0.685976,"rvol_3bar":[0.74061,1.025789,1.986995],"trend_3bar":"ACCELERATING","projected_rvol":0.740709},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":4699.0,"sell_vol":7231.0,"unclassified_vol":0.0,"imbalance":-0.212238,"bid":12.86,"ask":12.87,"spread_pct":0.07773,"quote_size_imbalance":null,"quote_age_s":0.10944},"context":{"vwap":12.867511,"price_vs_vwap_pct":0.019346,"ema9":12.780495,"ema20":12.748365,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.277904,"dist_to_hod_atr":5.071699,"atr":0.059152,"spread_atr":0.169057,"own_change_pct":1.217919,"rel_strength_pct":{"SPY":1.182251,"IWM":1.223191}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.421716},"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":"abeed6a12dc6","ts":"2026-09-15T15:20:55+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8407,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.9599,"vwap":9.9545,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":1.035,"trend":"flat","recent_slope_pct":0.0721,"volatility":"medium"},"price":9.9599,"volume":{"bars":110,"last_bar_volume":1221762.0,"baseline_avg":271079.2,"bar_rvol":4.50703,"raw_accel":1.913897,"smooth_accel":0.545781,"accel_momentum":0.562354,"rvol_3bar":[0.683158,1.545071,4.50703],"trend_3bar":"ACCELERATING","projected_rvol":1.552679},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3734.0,"sell_vol":17282.0,"unclassified_vol":0.0,"imbalance":-0.644652,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.613763},"context":{"vwap":9.954513,"price_vs_vwap_pct":0.054112,"ema9":9.926802,"ema20":9.919553,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.896517,"dist_to_hod_atr":3.920613,"atr":0.022981,"spread_atr":0.43514,"own_change_pct":0.100756,"rel_strength_pct":{"SPY":0.065088,"IWM":0.106027}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.905464},"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":"110b9a848b15","ts":"2026-09-15T15:20:55+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.86 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6261,"target":13.13,"target_label":"ceiling","reward_risk":1.19,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":1.28},"price":12.8559,"vwap":12.8673,"ext_from_open_pct":-1.49,"max_ext_allowed_pct":3.0,"volume_pace":0.93,"trend":"flat","recent_slope_pct":0.1953,"volatility":"high"},"price":12.8559,"volume":{"bars":110,"last_bar_volume":49931.0,"baseline_avg":25128.9,"bar_rvol":1.986995,"raw_accel":0.95877,"smooth_accel":1.418986,"accel_momentum":0.685976,"rvol_3bar":[0.74061,1.025789,1.986995],"trend_3bar":"ACCELERATING","projected_rvol":1.135194},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":11214.0,"sell_vol":7380.0,"unclassified_vol":0.0,"imbalance":0.206196,"bid":12.86,"ask":12.87,"spread_pct":0.07773,"quote_size_imbalance":null,"quote_age_s":0.596935},"context":{"vwap":12.867511,"price_vs_vwap_pct":-0.090233,"ema9":12.780495,"ema20":12.748365,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.384966,"dist_to_hod_atr":5.310069,"atr":0.059152,"spread_atr":0.169057,"own_change_pct":1.217919,"rel_strength_pct":{"SPY":1.182251,"IWM":1.223191}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.40971},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4841c39523f7","ts":"2026-09-15T15:21:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.09,"target_label":"clear air (typical 60-min move)","reward_risk":1.09,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.87,"vwap":9.5575,"ext_from_open_pct":4.44,"max_ext_allowed_pct":4.0,"volume_pace":4.772,"trend":"flat","recent_slope_pct":0.3821,"volatility":"low"},"price":9.87,"volume":{"bars":110,"last_bar_volume":5941.0,"baseline_avg":9096.25,"bar_rvol":0.653126,"raw_accel":0.456484,"smooth_accel":-0.139628,"accel_momentum":-0.296573,"rvol_3bar":[1.049018,0.457325,0.653126],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":353,"trade_rate":11.766667,"buy_vol":23224.0,"sell_vol":6682.0,"unclassified_vol":0.0,"imbalance":0.553133,"bid":9.85,"ask":9.88,"spread_pct":0.304105,"quote_size_imbalance":null,"quote_age_s":1.377829},"context":{"vwap":9.543878,"price_vs_vwap_pct":3.41708,"ema9":9.695673,"ema20":9.654976,"ema_stack":true,"ema_warm":true,"hod":9.8,"dist_to_hod_pct":0.714286,"dist_to_hod_atr":-1.19088,"atr":0.05878,"spread_atr":0.510377,"own_change_pct":-0.162288,"rel_strength_pct":{"SPY":-0.191577,"IWM":-0.204471}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.361266},"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":"da94df769001","ts":"2026-09-15T15:21:00+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6702,"target":13.13,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":24.7,"room_to_5d_high_atr":1.23},"price":12.9,"vwap":12.8674,"ext_from_open_pct":-1.15,"max_ext_allowed_pct":3.0,"volume_pace":0.93,"trend":"flat","recent_slope_pct":0.2639,"volatility":"high"},"price":12.9,"volume":{"bars":110,"last_bar_volume":49931.0,"baseline_avg":25128.9,"bar_rvol":1.986995,"raw_accel":0.95877,"smooth_accel":1.418986,"accel_momentum":0.685976,"rvol_3bar":[0.74061,1.025789,1.986995],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":14010.0,"sell_vol":6796.0,"unclassified_vol":0.0,"imbalance":0.346727,"bid":12.89,"ask":12.9,"spread_pct":0.077549,"quote_size_imbalance":null,"quote_age_s":0.011179},"context":{"vwap":12.867511,"price_vs_vwap_pct":0.252491,"ema9":12.780495,"ema20":12.748365,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.050114,"dist_to_hod_atr":4.564529,"atr":0.059152,"spread_atr":0.169057,"own_change_pct":1.217919,"rel_strength_pct":{"SPY":1.18863,"IWM":1.175736}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.688945},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3611ad5e960b","ts":"2026-09-15T15:21:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1301,"target_label":"clear air (typical 60-min move)","reward_risk":0.91,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.5611,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":4.803,"trend":"flat","recent_slope_pct":0.5415,"volatility":"low"},"price":9.91,"volume":{"bars":111,"last_bar_volume":43678.0,"baseline_avg":9249.25,"bar_rvol":4.722329,"raw_accel":6.351961,"smooth_accel":0.822433,"accel_momentum":0.962062,"rvol_3bar":[0.457325,0.653126,4.722329],"trend_3bar":"ACCELERATING","projected_rvol":2.697114},"flow":{"window_s":30,"trades":161,"trade_rate":5.366667,"buy_vol":10485.0,"sell_vol":3253.0,"unclassified_vol":0.0,"imbalance":0.526423,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":0.116362},"context":{"vwap":9.557456,"price_vs_vwap_pct":3.688686,"ema9":9.730538,"ema20":9.675454,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":3.211668,"atr":0.090296,"spread_atr":0.442989,"own_change_pct":1.857585,"rel_strength_pct":{"SPY":1.828296,"IWM":1.815401}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.485943},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f9d1716cc187","ts":"2026-09-15T15:21:35+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.84 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6077,"target":13.13,"target_label":"ceiling","reward_risk":1.27,"pos_in_5d_range_pct":20.5,"room_to_5d_high_atr":1.3},"price":12.8375,"vwap":12.8674,"ext_from_open_pct":-1.63,"max_ext_allowed_pct":3.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":0.1186,"volatility":"high"},"price":12.8375,"volume":{"bars":111,"last_bar_volume":31907.0,"baseline_avg":26045.85,"bar_rvol":1.225032,"raw_accel":-0.360978,"smooth_accel":1.431724,"accel_momentum":0.012738,"rvol_3bar":[1.025789,1.986995,1.225032],"trend_3bar":"MIXED","projected_rvol":0.842734},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":2343.0,"sell_vol":8872.0,"unclassified_vol":0.0,"imbalance":-0.582167,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.309385},"context":{"vwap":12.867448,"price_vs_vwap_pct":-0.232744,"ema9":12.804396,"ema20":12.762806,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.524677,"dist_to_hod_atr":5.199531,"atr":0.063948,"spread_atr":0.156377,"own_change_pct":1.387994,"rel_strength_pct":{"SPY":1.358705,"IWM":1.34581}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.713173},"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":"c4ef56ca9ac1","ts":"2026-09-15T15:21:40+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6423,"target":13.13,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":22.8,"room_to_5d_high_atr":1.26},"price":12.8721,"vwap":12.8674,"ext_from_open_pct":-1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":0.1724,"volatility":"high"},"price":12.8721,"volume":{"bars":111,"last_bar_volume":31907.0,"baseline_avg":26045.85,"bar_rvol":1.225032,"raw_accel":-0.360978,"smooth_accel":1.431724,"accel_momentum":0.012738,"rvol_3bar":[1.025789,1.986995,1.225032],"trend_3bar":"MIXED","projected_rvol":0.739811},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":2343.0,"sell_vol":8772.0,"unclassified_vol":0.0,"imbalance":-0.578408,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.142279},"context":{"vwap":12.867448,"price_vs_vwap_pct":0.036152,"ema9":12.804396,"ema20":12.762806,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.261959,"dist_to_hod_atr":4.658467,"atr":0.063948,"spread_atr":0.156377,"own_change_pct":1.387994,"rel_strength_pct":{"SPY":1.358705,"IWM":1.34581}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.708568},"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":"704abb248b9d","ts":"2026-09-15T15:21:45+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8309,"target":10.015,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.56},"price":9.9501,"vwap":9.9544,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":1.029,"trend":"flat","recent_slope_pct":0.0722,"volatility":"medium"},"price":9.9501,"volume":{"bars":111,"last_bar_volume":395061.0,"baseline_avg":307366.25,"bar_rvol":1.28531,"raw_accel":-0.676647,"smooth_accel":1.264132,"accel_momentum":0.718351,"rvol_3bar":[1.545071,4.50703,1.28531],"trend_3bar":"MIXED","projected_rvol":0.182896},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":21712.0,"sell_vol":8358.0,"unclassified_vol":0.0,"imbalance":0.444097,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":2.692986},"context":{"vwap":9.954451,"price_vs_vwap_pct":-0.043709,"ema9":9.932441,"ema20":9.922929,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.99403,"dist_to_hod_atr":4.267221,"atr":0.023411,"spread_atr":0.427149,"own_change_pct":0.201309,"rel_strength_pct":{"SPY":0.172019,"IWM":0.159125}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.570803},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc553eca7a11","ts":"2026-09-15T15:21:45+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.80 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.5712,"target":13.13,"target_label":"ceiling","reward_risk":1.43,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":1.34},"price":12.801,"vwap":12.8673,"ext_from_open_pct":-1.91,"max_ext_allowed_pct":3.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":0.0618,"volatility":"high"},"price":12.801,"volume":{"bars":111,"last_bar_volume":31907.0,"baseline_avg":26045.85,"bar_rvol":1.225032,"raw_accel":-0.360978,"smooth_accel":1.431724,"accel_momentum":0.012738,"rvol_3bar":[1.025789,1.986995,1.225032],"trend_3bar":"MIXED","projected_rvol":0.70747},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2814.0,"sell_vol":8403.0,"unclassified_vol":0.0,"imbalance":-0.498262,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.22644},"context":{"vwap":12.867448,"price_vs_vwap_pct":-0.516405,"ema9":12.804396,"ema20":12.762806,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.801822,"dist_to_hod_atr":5.770307,"atr":0.063948,"spread_atr":0.156377,"own_change_pct":1.387994,"rel_strength_pct":{"SPY":1.358705,"IWM":1.34581}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.610386},"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":"d439f33eea96","ts":"2026-09-15T15:21:50+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6552,"target":13.13,"target_label":"ceiling","reward_risk":1.07,"pos_in_5d_range_pct":23.7,"room_to_5d_high_atr":1.25},"price":12.885,"vwap":12.8674,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":0.1924,"volatility":"high"},"price":12.885,"volume":{"bars":111,"last_bar_volume":31907.0,"baseline_avg":26045.85,"bar_rvol":1.225032,"raw_accel":-0.360978,"smooth_accel":1.431724,"accel_momentum":0.012738,"rvol_3bar":[1.025789,1.986995,1.225032],"trend_3bar":"MIXED","projected_rvol":0.659391},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1159.0,"sell_vol":4770.0,"unclassified_vol":0.0,"imbalance":-0.60904,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.259343},"context":{"vwap":12.867448,"price_vs_vwap_pct":0.136405,"ema9":12.804396,"ema20":12.762806,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.164009,"dist_to_hod_atr":4.456741,"atr":0.063948,"spread_atr":0.156377,"own_change_pct":1.387994,"rel_strength_pct":{"SPY":1.358705,"IWM":1.34581}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.746094},"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":"daba0c395c88","ts":"2026-09-15T15:22:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1201,"target_label":"clear air (typical 60-min move)","reward_risk":0.95,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.5641,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":4.833,"trend":"flat","recent_slope_pct":0.5212,"volatility":"low"},"price":9.9,"volume":{"bars":111,"last_bar_volume":43678.0,"baseline_avg":9249.25,"bar_rvol":4.722329,"raw_accel":6.351961,"smooth_accel":0.822433,"accel_momentum":0.962062,"rvol_3bar":[0.457325,0.653126,4.722329],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":3871.0,"sell_vol":9230.0,"unclassified_vol":0.0,"imbalance":-0.409053,"bid":9.88,"ask":9.9,"spread_pct":0.202224,"quote_size_imbalance":null,"quote_age_s":0.360434},"context":{"vwap":9.557456,"price_vs_vwap_pct":3.584055,"ema9":9.730538,"ema20":9.675454,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":3.322415,"atr":0.090296,"spread_atr":0.221494,"own_change_pct":1.857585,"rel_strength_pct":{"SPY":1.860227,"IWM":1.86813}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.931682},"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":"acdcf232fd94","ts":"2026-09-15T15:22:10+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8408,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.96,"vwap":9.9544,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":1.026,"trend":"flat","recent_slope_pct":0.0647,"volatility":"medium"},"price":9.96,"volume":{"bars":112,"last_bar_volume":67857.0,"baseline_avg":321736.55,"bar_rvol":0.210909,"raw_accel":-0.828237,"smooth_accel":0.700726,"accel_momentum":-0.563405,"rvol_3bar":[4.50703,1.28531,0.210909],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":2420.0,"sell_vol":30677.0,"unclassified_vol":0.0,"imbalance":-0.853763,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.230506},"context":{"vwap":9.954438,"price_vs_vwap_pct":0.055874,"ema9":9.936153,"ema20":9.925603,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.895522,"dist_to_hod_atr":3.781021,"atr":0.023803,"spread_atr":0.420113,"own_change_pct":0.214508,"rel_strength_pct":{"SPY":0.21715,"IWM":0.225053}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.180066},"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":"ed37f60d60ed","ts":"2026-09-15T15:22:15+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8309,"target":10.015,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.56},"price":9.9501,"vwap":9.9544,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":1.025,"trend":"flat","recent_slope_pct":0.0448,"volatility":"medium"},"price":9.9501,"volume":{"bars":112,"last_bar_volume":67857.0,"baseline_avg":321736.55,"bar_rvol":0.210909,"raw_accel":-0.828237,"smooth_accel":0.700726,"accel_momentum":-0.563405,"rvol_3bar":[4.50703,1.28531,0.210909],"trend_3bar":"DECELERATING","projected_rvol":0.121416},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":2770.0,"sell_vol":32691.0,"unclassified_vol":0.0,"imbalance":-0.843772,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.408798},"context":{"vwap":9.954438,"price_vs_vwap_pct":-0.043579,"ema9":9.936153,"ema20":9.925603,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.99403,"dist_to_hod_atr":4.196934,"atr":0.023803,"spread_atr":0.420113,"own_change_pct":0.214508,"rel_strength_pct":{"SPY":0.21715,"IWM":0.225053}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.177959},"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":"a746f30f39a5","ts":"2026-09-15T15:22:15+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.01% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.15,"target":8.5558,"target_label":"ceiling","reward_risk":0.19,"pos_in_5d_range_pct":128.3,"room_to_5d_high_atr":-1.03},"price":8.49,"vwap":8.1371,"ext_from_open_pct":10.84,"max_ext_allowed_pct":3.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":0.1295,"volatility":"high"},"price":8.49,"volume":{"bars":112,"last_bar_volume":2224.0,"baseline_avg":2619.7,"bar_rvol":0.848952,"raw_accel":-0.861562,"smooth_accel":3.459284,"accel_momentum":1.266142,"rvol_3bar":[1.791373,8.770062,0.848952],"trend_3bar":"MIXED","projected_rvol":0.345078},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":101.0,"sell_vol":140.0,"unclassified_vol":0.0,"imbalance":-0.161826,"bid":8.36,"ask":8.53,"spread_pct":2.013025,"quote_size_imbalance":null,"quote_age_s":0.23227},"context":{"vwap":8.136964,"price_vs_vwap_pct":4.338667,"ema9":8.486516,"ema20":8.466946,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.769069,"dist_to_hod_atr":0.981027,"atr":0.067073,"spread_atr":2.534568,"own_change_pct":0.70922,"rel_strength_pct":{"SPY":0.711862,"IWM":0.719765}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.137382},"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":"7e9833a0ce3a","ts":"2026-09-15T15:22:20+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9544,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":1.025,"trend":"flat","recent_slope_pct":0.0547,"volatility":"medium"},"price":9.955,"volume":{"bars":112,"last_bar_volume":67857.0,"baseline_avg":321736.55,"bar_rvol":0.210909,"raw_accel":-0.828237,"smooth_accel":0.700726,"accel_momentum":-0.563405,"rvol_3bar":[4.50703,1.28531,0.210909],"trend_3bar":"DECELERATING","projected_rvol":0.099631},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":2664.0,"sell_vol":27987.0,"unclassified_vol":0.0,"imbalance":-0.826172,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":2.204771},"context":{"vwap":9.954438,"price_vs_vwap_pct":0.005645,"ema9":9.936153,"ema20":9.925603,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":3.991078,"atr":0.023803,"spread_atr":0.420113,"own_change_pct":0.214508,"rel_strength_pct":{"SPY":0.21715,"IWM":0.225053}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.174247},"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":"fec89350cd6c","ts":"2026-09-15T15:22:25+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.81 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.584,"target":13.13,"target_label":"ceiling","reward_risk":1.38,"pos_in_5d_range_pct":18.9,"room_to_5d_high_atr":1.32},"price":12.8138,"vwap":12.8674,"ext_from_open_pct":-1.81,"max_ext_allowed_pct":3.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":-0.0446,"volatility":"high"},"price":12.8138,"volume":{"bars":112,"last_bar_volume":30295.0,"baseline_avg":23671.4,"bar_rvol":1.279814,"raw_accel":-0.050522,"smooth_accel":0.973651,"accel_momentum":-0.458073,"rvol_3bar":[1.986995,1.225032,1.279814],"trend_3bar":"MIXED","projected_rvol":0.478451},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":12920.0,"sell_vol":7662.0,"unclassified_vol":0.0,"imbalance":0.255466,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":0.543075},"context":{"vwap":12.867384,"price_vs_vwap_pct":-0.41643,"ema9":12.819517,"ema20":12.773968,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.704632,"dist_to_hod_atr":5.302145,"atr":0.06718,"spread_atr":0.148853,"own_change_pct":0.861394,"rel_strength_pct":{"SPY":0.864036,"IWM":0.871939}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.326949},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"264a92881e82","ts":"2026-09-15T15:22:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.42% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.2783,"target":8.9983,"target_label":"clear air (typical 60-min move)","reward_risk":2.0,"pos_in_5d_range_pct":129.3,"room_to_5d_high_atr":-1.07},"price":8.5183,"vwap":8.1374,"ext_from_open_pct":11.2,"max_ext_allowed_pct":4.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":0.196,"volatility":"high"},"price":8.5183,"volume":{"bars":112,"last_bar_volume":2224.0,"baseline_avg":2619.7,"bar_rvol":0.848952,"raw_accel":-0.861562,"smooth_accel":3.459284,"accel_momentum":1.266142,"rvol_3bar":[1.791373,8.770062,0.848952],"trend_3bar":"MIXED","projected_rvol":0.351567},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":124.0,"sell_vol":490.0,"unclassified_vol":0.0,"imbalance":-0.596091,"bid":8.4,"ask":8.52,"spread_pct":1.41844,"quote_size_imbalance":null,"quote_age_s":9.16699},"context":{"vwap":8.136964,"price_vs_vwap_pct":4.686462,"ema9":8.486516,"ema20":8.466946,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.438299,"dist_to_hod_atr":0.559096,"atr":0.067073,"spread_atr":1.789107,"own_change_pct":0.70922,"rel_strength_pct":{"SPY":0.711862,"IWM":0.719765}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.506053},"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":"4144cee09331","ts":"2026-09-15T15:22:45+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.42% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.1735,"target":8.5558,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":125.6,"room_to_5d_high_atr":-0.93},"price":8.4135,"vwap":8.1373,"ext_from_open_pct":9.84,"max_ext_allowed_pct":4.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":-0.0507,"volatility":"high"},"price":8.4135,"volume":{"bars":112,"last_bar_volume":2224.0,"baseline_avg":2619.7,"bar_rvol":0.848952,"raw_accel":-0.861562,"smooth_accel":3.459284,"accel_momentum":1.266142,"rvol_3bar":[1.791373,8.770062,0.848952],"trend_3bar":"MIXED","projected_rvol":0.313013},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":23.0,"sell_vol":366.0,"unclassified_vol":0.0,"imbalance":-0.881748,"bid":8.4,"ask":8.52,"spread_pct":1.41844,"quote_size_imbalance":null,"quote_age_s":14.16699},"context":{"vwap":8.136964,"price_vs_vwap_pct":3.398513,"ema9":8.486516,"ema20":8.466946,"ema_stack":false,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-1.663199,"dist_to_hod_atr":2.121582,"atr":0.067073,"spread_atr":1.789107,"own_change_pct":0.70922,"rel_strength_pct":{"SPY":0.711862,"IWM":0.719765}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.748562},"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":"ad8ad457d250","ts":"2026-09-15T15:22:50+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6454,"target":13.13,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":1.26},"price":12.8752,"vwap":12.8673,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":0.0508,"volatility":"high"},"price":12.8752,"volume":{"bars":112,"last_bar_volume":30295.0,"baseline_avg":23671.4,"bar_rvol":1.279814,"raw_accel":-0.050522,"smooth_accel":0.973651,"accel_momentum":-0.458073,"rvol_3bar":[1.986995,1.225032,1.279814],"trend_3bar":"MIXED","projected_rvol":0.779117},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":3115.0,"sell_vol":7738.0,"unclassified_vol":0.0,"imbalance":-0.425965,"bid":12.85,"ask":12.86,"spread_pct":0.077791,"quote_size_imbalance":null,"quote_age_s":0.102391},"context":{"vwap":12.867384,"price_vs_vwap_pct":0.060746,"ema9":12.819517,"ema20":12.773968,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.238421,"dist_to_hod_atr":4.388188,"atr":0.06718,"spread_atr":0.148853,"own_change_pct":0.861394,"rel_strength_pct":{"SPY":0.864036,"IWM":0.871939}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.545156},"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":"ab3b314b8048","ts":"2026-09-15T15:22:55+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.85 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6213,"target":13.13,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":1.28},"price":12.8511,"vwap":12.8673,"ext_from_open_pct":-1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":0.0134,"volatility":"high"},"price":12.8511,"volume":{"bars":112,"last_bar_volume":30295.0,"baseline_avg":23671.4,"bar_rvol":1.279814,"raw_accel":-0.050522,"smooth_accel":0.973651,"accel_momentum":-0.458073,"rvol_3bar":[1.986995,1.225032,1.279814],"trend_3bar":"MIXED","projected_rvol":0.792118},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":3017.0,"sell_vol":9452.0,"unclassified_vol":0.0,"imbalance":-0.51608,"bid":12.85,"ask":12.86,"spread_pct":0.077791,"quote_size_imbalance":null,"quote_age_s":0.313581},"context":{"vwap":12.867384,"price_vs_vwap_pct":-0.12655,"ema9":12.819517,"ema20":12.773968,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.421412,"dist_to_hod_atr":4.746923,"atr":0.06718,"spread_atr":0.148853,"own_change_pct":0.861394,"rel_strength_pct":{"SPY":0.864036,"IWM":0.871939}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.660486},"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":"afb2edfdd40c","ts":"2026-09-15T15:23:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6254,"target":5.79,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":80.6,"room_to_5d_high_atr":0.26},"price":5.725,"vwap":5.713,"ext_from_open_pct":0.44,"max_ext_allowed_pct":4.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.0735,"volatility":"high"},"price":5.725,"volume":{"bars":113,"last_bar_volume":4350.0,"baseline_avg":3000.8,"bar_rvol":1.449613,"raw_accel":-0.557927,"smooth_accel":1.435217,"accel_momentum":-7.109165,"rvol_3bar":[1.565108,3.85837,1.449613],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":8796.0,"sell_vol":1127.0,"unclassified_vol":0.0,"imbalance":0.772851,"bid":5.72,"ask":5.73,"spread_pct":0.174672,"quote_size_imbalance":null,"quote_age_s":1.051172},"context":{"vwap":5.712799,"price_vs_vwap_pct":0.21358,"ema9":5.71107,"ema20":5.706825,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.122625,"dist_to_hod_atr":4.589067,"atr":0.014164,"spread_atr":0.70601,"own_change_pct":0.035026,"rel_strength_pct":{"SPY":0.056156,"IWM":0.075443}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.120335},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d347dc3c66bb","ts":"2026-09-15T15:23:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":7.6014,"target":7.93,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.16},"price":7.7911,"vwap":7.749,"ext_from_open_pct":1.18,"max_ext_allowed_pct":3.0,"volume_pace":0.319,"trend":"flat","recent_slope_pct":0.2081,"volatility":"high"},"price":7.7911,"volume":{"bars":113,"last_bar_volume":14548.0,"baseline_avg":12809.05,"bar_rvol":1.135759,"raw_accel":0.103124,"smooth_accel":1.260368,"accel_momentum":-0.93437,"rvol_3bar":[3.4905,1.060401,1.135759],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":2016.0,"sell_vol":1158.0,"unclassified_vol":0.0,"imbalance":0.270321,"bid":7.81,"ask":7.82,"spread_pct":0.127959,"quote_size_imbalance":null,"quote_age_s":1.048261},"context":{"vwap":7.74899,"price_vs_vwap_pct":0.543428,"ema9":7.766141,"ema20":7.744164,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-2.121859,"dist_to_hod_atr":3.686318,"atr":0.045818,"spread_atr":0.218254,"own_change_pct":0.945883,"rel_strength_pct":{"SPY":0.967013,"IWM":0.9863}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.30702},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4f3b27581e38","ts":"2026-09-15T15:23:10+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8575,"target":10.015,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":21.5,"room_to_5d_high_atr":2.5},"price":9.9767,"vwap":9.9545,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":0.0888,"volatility":"medium"},"price":9.9767,"volume":{"bars":113,"last_bar_volume":76226.0,"baseline_avg":319586.0,"bar_rvol":0.238515,"raw_accel":-0.045941,"smooth_accel":-0.706142,"accel_momentum":-1.406868,"rvol_3bar":[1.28531,0.210909,0.238515],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":218,"trade_rate":7.266667,"buy_vol":79403.0,"sell_vol":81595.0,"unclassified_vol":0.0,"imbalance":-0.013615,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.621324},"context":{"vwap":9.954435,"price_vs_vwap_pct":0.223672,"ema9":9.940922,"ema20":9.928879,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.729353,"dist_to_hod_atr":3.099926,"atr":0.023646,"spread_atr":0.422909,"own_change_pct":0.36478,"rel_strength_pct":{"SPY":0.38591,"IWM":0.405196}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.003247},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4ef0c08dd757","ts":"2026-09-15T15:23:10+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6552,"target":13.13,"target_label":"ceiling","reward_risk":1.07,"pos_in_5d_range_pct":23.7,"room_to_5d_high_atr":1.25},"price":12.885,"vwap":12.8673,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":-0.003,"volatility":"high"},"price":12.885,"volume":{"bars":113,"last_bar_volume":17404.0,"baseline_avg":22627.5,"bar_rvol":0.769153,"raw_accel":-0.425516,"smooth_accel":-0.152009,"accel_momentum":-1.12566,"rvol_3bar":[1.225032,1.279814,0.769153],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":5928.0,"sell_vol":3416.0,"unclassified_vol":0.0,"imbalance":0.268836,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.29866},"context":{"vwap":12.867322,"price_vs_vwap_pct":0.137388,"ema9":12.826854,"ema20":12.781799,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.164009,"dist_to_hod_atr":4.235918,"atr":0.067282,"spread_atr":0.148629,"own_change_pct":0.546679,"rel_strength_pct":{"SPY":0.567809,"IWM":0.587096}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.206776},"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":"2ce97e4bad69","ts":"2026-09-15T15:23:20+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.87 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6352,"target":13.13,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":22.3,"room_to_5d_high_atr":1.27},"price":12.865,"vwap":12.8673,"ext_from_open_pct":-1.42,"max_ext_allowed_pct":4.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":-0.034,"volatility":"high"},"price":12.865,"volume":{"bars":113,"last_bar_volume":17404.0,"baseline_avg":22627.5,"bar_rvol":0.769153,"raw_accel":-0.425516,"smooth_accel":-0.152009,"accel_momentum":-1.12566,"rvol_3bar":[1.225032,1.279814,0.769153],"trend_3bar":"MIXED","projected_rvol":0.812065},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":5363.0,"sell_vol":2797.0,"unclassified_vol":0.0,"imbalance":0.314461,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":2.330975},"context":{"vwap":12.867322,"price_vs_vwap_pct":-0.018044,"ema9":12.826854,"ema20":12.781799,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.315869,"dist_to_hod_atr":4.533175,"atr":0.067282,"spread_atr":0.148629,"own_change_pct":0.546679,"rel_strength_pct":{"SPY":0.567809,"IWM":0.587096}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.241868},"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":"fb18764df8a6","ts":"2026-09-15T15:23:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1281,"target_label":"clear air (typical 60-min move)","reward_risk":0.94,"pos_in_5d_range_pct":498.6,"room_to_5d_high_atr":-5.74},"price":9.905,"vwap":9.5688,"ext_from_open_pct":4.81,"max_ext_allowed_pct":5.0,"volume_pace":4.846,"trend":"flat","recent_slope_pct":0.3856,"volatility":"low"},"price":9.905,"volume":{"bars":113,"last_bar_volume":8560.0,"baseline_avg":12752.5,"bar_rvol":0.671241,"raw_accel":-0.682657,"smooth_accel":3.161606,"accel_momentum":0.738149,"rvol_3bar":[4.722329,2.362338,0.671241],"trend_3bar":"DECELERATING","projected_rvol":1.977589},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":9739.0,"sell_vol":1948.0,"unclassified_vol":0.0,"imbalance":0.666638,"bid":9.89,"ask":9.92,"spread_pct":0.302877,"quote_size_imbalance":null,"quote_age_s":0.219501},"context":{"vwap":9.566138,"price_vs_vwap_pct":3.542312,"ema9":9.787545,"ema20":9.714283,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.892157,"dist_to_hod_atr":3.112018,"atr":0.094794,"spread_atr":0.316476,"own_change_pct":1.59383,"rel_strength_pct":{"SPY":1.614961,"IWM":1.634247}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.447475},"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":"3b8dde3f2e7c","ts":"2026-09-15T15:23:25+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6552,"target":13.13,"target_label":"ceiling","reward_risk":1.07,"pos_in_5d_range_pct":23.7,"room_to_5d_high_atr":1.25},"price":12.885,"vwap":12.8673,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":-0.003,"volatility":"high"},"price":12.885,"volume":{"bars":113,"last_bar_volume":17404.0,"baseline_avg":22627.5,"bar_rvol":0.769153,"raw_accel":-0.425516,"smooth_accel":-0.152009,"accel_momentum":-1.12566,"rvol_3bar":[1.225032,1.279814,0.769153],"trend_3bar":"MIXED","projected_rvol":0.653682},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":5365.0,"sell_vol":1014.0,"unclassified_vol":0.0,"imbalance":0.682082,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.540749},"context":{"vwap":12.867322,"price_vs_vwap_pct":0.137388,"ema9":12.826854,"ema20":12.781799,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.164009,"dist_to_hod_atr":4.235918,"atr":0.067282,"spread_atr":0.148629,"own_change_pct":0.546679,"rel_strength_pct":{"SPY":0.567809,"IWM":0.587096}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.524625},"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":"dfe901efa58e","ts":"2026-09-15T15:23:35+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.94 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8238,"target":10.015,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":19.3,"room_to_5d_high_atr":2.57},"price":9.943,"vwap":9.9544,"ext_from_open_pct":1.15,"max_ext_allowed_pct":3.0,"volume_pace":1.021,"trend":"flat","recent_slope_pct":0.0211,"volatility":"medium"},"price":9.943,"volume":{"bars":113,"last_bar_volume":76226.0,"baseline_avg":319586.0,"bar_rvol":0.238515,"raw_accel":-0.045941,"smooth_accel":-0.706142,"accel_momentum":-1.406868,"rvol_3bar":[1.28531,0.210909,0.238515],"trend_3bar":"MIXED","projected_rvol":1.088174},"flow":{"window_s":30,"trades":219,"trade_rate":7.3,"buy_vol":69727.0,"sell_vol":117590.0,"unclassified_vol":0.0,"imbalance":-0.255519,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":1.42606},"context":{"vwap":9.954435,"price_vs_vwap_pct":-0.114871,"ema9":9.940922,"ema20":9.928879,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-1.064677,"dist_to_hod_atr":4.52513,"atr":0.023646,"spread_atr":0.422909,"own_change_pct":0.36478,"rel_strength_pct":{"SPY":0.38591,"IWM":0.405196}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.060945},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b0ebafb7c35a","ts":"2026-09-15T15:23:35+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.86 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6311,"target":13.13,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":22.1,"room_to_5d_high_atr":1.27},"price":12.8609,"vwap":12.8673,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":-0.0404,"volatility":"high"},"price":12.8609,"volume":{"bars":113,"last_bar_volume":17404.0,"baseline_avg":22627.5,"bar_rvol":0.769153,"raw_accel":-0.425516,"smooth_accel":-0.152009,"accel_momentum":-1.12566,"rvol_3bar":[1.225032,1.279814,0.769153],"trend_3bar":"MIXED","projected_rvol":0.63253},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":4581.0,"sell_vol":2279.0,"unclassified_vol":0.0,"imbalance":0.335569,"bid":12.89,"ask":12.9,"spread_pct":0.077549,"quote_size_imbalance":null,"quote_age_s":0.343613},"context":{"vwap":12.867322,"price_vs_vwap_pct":-0.049908,"ema9":12.826854,"ema20":12.781799,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.347001,"dist_to_hod_atr":4.594113,"atr":0.067282,"spread_atr":0.148629,"own_change_pct":0.546679,"rel_strength_pct":{"SPY":0.567809,"IWM":0.587096}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.258103},"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":"603941b095b7","ts":"2026-09-15T15:23:40+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8458,"target":10.015,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":2.53},"price":9.965,"vwap":9.9545,"ext_from_open_pct":1.37,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":0.0653,"volatility":"medium"},"price":9.965,"volume":{"bars":113,"last_bar_volume":76226.0,"baseline_avg":319586.0,"bar_rvol":0.238515,"raw_accel":-0.045941,"smooth_accel":-0.706142,"accel_momentum":-1.406868,"rvol_3bar":[1.28531,0.210909,0.238515],"trend_3bar":"MIXED","projected_rvol":0.984899},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":15932.0,"sell_vol":88328.0,"unclassified_vol":0.0,"imbalance":-0.694379,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.537869},"context":{"vwap":9.954435,"price_vs_vwap_pct":0.106136,"ema9":9.940922,"ema20":9.928879,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.845771,"dist_to_hod_atr":3.59473,"atr":0.023646,"spread_atr":0.422909,"own_change_pct":0.36478,"rel_strength_pct":{"SPY":0.38591,"IWM":0.405196}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.16562},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dcbccc19f29e","ts":"2026-09-15T15:23:40+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6702,"target":13.13,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":24.7,"room_to_5d_high_atr":1.23},"price":12.9,"vwap":12.8673,"ext_from_open_pct":-1.15,"max_ext_allowed_pct":4.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":0.0203,"volatility":"high"},"price":12.9,"volume":{"bars":113,"last_bar_volume":17404.0,"baseline_avg":22627.5,"bar_rvol":0.769153,"raw_accel":-0.425516,"smooth_accel":-0.152009,"accel_momentum":-1.12566,"rvol_3bar":[1.225032,1.279814,0.769153],"trend_3bar":"MIXED","projected_rvol":0.828638},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":4417.0,"sell_vol":3012.0,"unclassified_vol":0.0,"imbalance":0.189124,"bid":12.9,"ask":12.91,"spread_pct":0.077489,"quote_size_imbalance":null,"quote_age_s":0.358134},"context":{"vwap":12.867322,"price_vs_vwap_pct":0.253962,"ema9":12.826854,"ema20":12.781799,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.050114,"dist_to_hod_atr":4.012975,"atr":0.067282,"spread_atr":0.148629,"own_change_pct":0.546679,"rel_strength_pct":{"SPY":0.567809,"IWM":0.587096}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.145465},"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":"01b0a83fb255","ts":"2026-09-15T15:23:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.162,"target_label":"clear air (typical 60-min move)","reward_risk":0.82,"pos_in_5d_range_pct":507.8,"room_to_5d_high_atr":-5.88},"price":9.9388,"vwap":9.5703,"ext_from_open_pct":5.17,"max_ext_allowed_pct":5.0,"volume_pace":4.85,"trend":"flat","recent_slope_pct":0.4539,"volatility":"low"},"price":9.9388,"volume":{"bars":113,"last_bar_volume":8560.0,"baseline_avg":12752.5,"bar_rvol":0.671241,"raw_accel":-0.682657,"smooth_accel":3.161606,"accel_momentum":0.738149,"rvol_3bar":[4.722329,2.362338,0.671241],"trend_3bar":"DECELERATING","projected_rvol":1.608678},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":11865.0,"sell_vol":1606.0,"unclassified_vol":0.0,"imbalance":0.761562,"bid":9.91,"ask":9.94,"spread_pct":0.302267,"quote_size_imbalance":null,"quote_age_s":1.402647},"context":{"vwap":9.566138,"price_vs_vwap_pct":3.895641,"ema9":9.787545,"ema20":9.714283,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.560784,"dist_to_hod_atr":2.755454,"atr":0.094794,"spread_atr":0.316476,"own_change_pct":1.59383,"rel_strength_pct":{"SPY":1.614961,"IWM":1.634247}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.511192},"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":"6a20ab82a82c","ts":"2026-09-15T15:23:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1431,"target_label":"clear air (typical 60-min move)","reward_risk":0.88,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.5704,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":4.85,"trend":"flat","recent_slope_pct":0.4159,"volatility":"low"},"price":9.92,"volume":{"bars":113,"last_bar_volume":8560.0,"baseline_avg":12752.5,"bar_rvol":0.671241,"raw_accel":-0.682657,"smooth_accel":3.161606,"accel_momentum":0.738149,"rvol_3bar":[4.722329,2.362338,0.671241],"trend_3bar":"DECELERATING","projected_rvol":1.519608},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":12071.0,"sell_vol":2138.0,"unclassified_vol":0.0,"imbalance":0.699064,"bid":9.91,"ask":9.94,"spread_pct":0.302267,"quote_size_imbalance":null,"quote_age_s":0.595556},"context":{"vwap":9.566138,"price_vs_vwap_pct":3.699115,"ema9":9.787545,"ema20":9.714283,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":2.95378,"atr":0.094794,"spread_atr":0.316476,"own_change_pct":1.59383,"rel_strength_pct":{"SPY":1.614961,"IWM":1.634247}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.46924},"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":"b72245a9f93c","ts":"2026-09-15T15:23:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1482,"target_label":"clear air (typical 60-min move)","reward_risk":0.87,"pos_in_5d_range_pct":504.1,"room_to_5d_high_atr":-5.82},"price":9.925,"vwap":9.5704,"ext_from_open_pct":5.03,"max_ext_allowed_pct":5.0,"volume_pace":4.846,"trend":"flat","recent_slope_pct":0.426,"volatility":"low"},"price":9.925,"volume":{"bars":113,"last_bar_volume":8560.0,"baseline_avg":12752.5,"bar_rvol":0.671241,"raw_accel":-0.682657,"smooth_accel":3.161606,"accel_momentum":0.738149,"rvol_3bar":[4.722329,2.362338,0.671241],"trend_3bar":"DECELERATING","projected_rvol":1.382317},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4013.0,"sell_vol":1638.0,"unclassified_vol":0.0,"imbalance":0.42028,"bid":9.91,"ask":9.94,"spread_pct":0.302267,"quote_size_imbalance":null,"quote_age_s":5.595556},"context":{"vwap":9.566138,"price_vs_vwap_pct":3.751382,"ema9":9.787545,"ema20":9.714283,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.696078,"dist_to_hod_atr":2.901034,"atr":0.094794,"spread_atr":0.316476,"own_change_pct":1.59383,"rel_strength_pct":{"SPY":1.614961,"IWM":1.634247}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.282109},"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":"98778dd1a4a6","ts":"2026-09-15T15:24:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8261,"target":10.015,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":2.57},"price":9.9453,"vwap":9.9544,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":0.0257,"volatility":"medium"},"price":9.9453,"volume":{"bars":113,"last_bar_volume":76226.0,"baseline_avg":319586.0,"bar_rvol":0.238515,"raw_accel":-0.045941,"smooth_accel":-0.706142,"accel_momentum":-1.406868,"rvol_3bar":[1.28531,0.210909,0.238515],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":25866.0,"sell_vol":69900.0,"unclassified_vol":0.0,"imbalance":-0.459808,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.001807},"context":{"vwap":9.954435,"price_vs_vwap_pct":-0.091765,"ema9":9.940922,"ema20":9.928879,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-1.041791,"dist_to_hod_atr":4.427861,"atr":0.023646,"spread_atr":0.422909,"own_change_pct":0.36478,"rel_strength_pct":{"SPY":0.35452,"IWM":0.345456}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.109671},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fe7fe2004615","ts":"2026-09-15T15:24:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8509,"target":10.015,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":21.1,"room_to_5d_high_atr":2.52},"price":9.9701,"vwap":9.9545,"ext_from_open_pct":1.43,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":0.0246,"volatility":"medium"},"price":9.9701,"volume":{"bars":114,"last_bar_volume":297003.0,"baseline_avg":318727.8,"bar_rvol":0.931839,"raw_accel":2.727356,"smooth_accel":-0.783368,"accel_momentum":-0.077226,"rvol_3bar":[0.210909,0.238515,0.931839],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":26904.0,"sell_vol":187086.0,"unclassified_vol":0.0,"imbalance":-0.748549,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.042261},"context":{"vwap":9.95443,"price_vs_vwap_pct":0.157418,"ema9":9.941798,"ema20":9.930443,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.795025,"dist_to_hod_atr":3.18513,"atr":0.025085,"spread_atr":0.39864,"own_change_pct":0.095614,"rel_strength_pct":{"SPY":0.085354,"IWM":0.076291}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.697527},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"29755cb7f458","ts":"2026-09-15T15:24:05+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.83 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6025,"target":13.13,"target_label":"ceiling","reward_risk":1.3,"pos_in_5d_range_pct":20.2,"room_to_5d_high_atr":1.3},"price":12.8323,"vwap":12.8674,"ext_from_open_pct":-1.67,"max_ext_allowed_pct":3.0,"volume_pace":0.917,"trend":"flat","recent_slope_pct":-0.0975,"volatility":"high"},"price":12.8323,"volume":{"bars":114,"last_bar_volume":18966.0,"baseline_avg":22829.0,"bar_rvol":0.830785,"raw_accel":0.089749,"smooth_accel":-0.378872,"accel_momentum":-0.226863,"rvol_3bar":[1.279814,0.769153,0.830785],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":4181.0,"sell_vol":6619.0,"unclassified_vol":0.0,"imbalance":-0.225741,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":1.005566},"context":{"vwap":12.86735,"price_vs_vwap_pct":-0.272399,"ema9":12.839463,"ema20":12.792095,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.564161,"dist_to_hod_atr":4.924469,"atr":0.068576,"spread_atr":0.145824,"own_change_pct":0.310506,"rel_strength_pct":{"SPY":0.300246,"IWM":0.291183}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.187542},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2f200d228e1b","ts":"2026-09-15T15:24:10+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.94 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8195,"target":10.015,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":19.0,"room_to_5d_high_atr":2.58},"price":9.9387,"vwap":9.9544,"ext_from_open_pct":1.11,"max_ext_allowed_pct":3.0,"volume_pace":1.021,"trend":"flat","recent_slope_pct":-0.0385,"volatility":"medium"},"price":9.9387,"volume":{"bars":114,"last_bar_volume":297003.0,"baseline_avg":318727.8,"bar_rvol":0.931839,"raw_accel":2.727356,"smooth_accel":-0.783368,"accel_momentum":-0.077226,"rvol_3bar":[0.210909,0.238515,0.931839],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":145,"trade_rate":4.833333,"buy_vol":20927.0,"sell_vol":188652.0,"unclassified_vol":0.0,"imbalance":-0.800295,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.273643},"context":{"vwap":9.95443,"price_vs_vwap_pct":-0.15802,"ema9":9.941798,"ema20":9.930443,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-1.107463,"dist_to_hod_atr":4.436858,"atr":0.025085,"spread_atr":0.39864,"own_change_pct":0.095614,"rel_strength_pct":{"SPY":0.085354,"IWM":0.076291}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.745746},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"94cd2608839a","ts":"2026-09-15T15:24:10+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6552,"target":13.13,"target_label":"ceiling","reward_risk":1.07,"pos_in_5d_range_pct":23.7,"room_to_5d_high_atr":1.25},"price":12.885,"vwap":12.8674,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.917,"trend":"flat","recent_slope_pct":-0.0156,"volatility":"high"},"price":12.885,"volume":{"bars":114,"last_bar_volume":18966.0,"baseline_avg":22829.0,"bar_rvol":0.830785,"raw_accel":0.089749,"smooth_accel":-0.378872,"accel_momentum":-0.226863,"rvol_3bar":[1.279814,0.769153,0.830785],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1425.0,"sell_vol":5694.0,"unclassified_vol":0.0,"imbalance":-0.599663,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.229586},"context":{"vwap":12.86735,"price_vs_vwap_pct":0.137165,"ema9":12.839463,"ema20":12.792095,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.164009,"dist_to_hod_atr":4.155978,"atr":0.068576,"spread_atr":0.145824,"own_change_pct":0.310506,"rel_strength_pct":{"SPY":0.300246,"IWM":0.291183}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.498191},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8e2309b15998","ts":"2026-09-15T15:24:15+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.858,"target":10.015,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":21.5,"room_to_5d_high_atr":2.5},"price":9.9772,"vwap":9.9545,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":1.021,"trend":"flat","recent_slope_pct":0.0389,"volatility":"medium"},"price":9.9772,"volume":{"bars":114,"last_bar_volume":297003.0,"baseline_avg":318727.8,"bar_rvol":0.931839,"raw_accel":2.727356,"smooth_accel":-0.783368,"accel_momentum":-0.077226,"rvol_3bar":[0.210909,0.238515,0.931839],"trend_3bar":"ACCELERATING","projected_rvol":1.646508},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":12389.0,"sell_vol":190997.0,"unclassified_vol":0.0,"imbalance":-0.878173,"bid":9.97,"ask":9.98,"spread_pct":0.100251,"quote_size_imbalance":null,"quote_age_s":0.110779},"context":{"vwap":9.95443,"price_vs_vwap_pct":0.228743,"ema9":9.941798,"ema20":9.930443,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.724378,"dist_to_hod_atr":2.902096,"atr":0.025085,"spread_atr":0.39864,"own_change_pct":0.095614,"rel_strength_pct":{"SPY":0.085354,"IWM":0.076291}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.818315},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ceb7bdb13ea7","ts":"2026-09-15T15:24:45+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.6802,"target":13.13,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":25.3,"room_to_5d_high_atr":1.22},"price":12.91,"vwap":12.8674,"ext_from_open_pct":-1.07,"max_ext_allowed_pct":3.0,"volume_pace":0.914,"trend":"flat","recent_slope_pct":0.0232,"volatility":"high"},"price":12.91,"volume":{"bars":114,"last_bar_volume":18966.0,"baseline_avg":22829.0,"bar_rvol":0.830785,"raw_accel":0.089749,"smooth_accel":-0.378872,"accel_momentum":-0.226863,"rvol_3bar":[1.279814,0.769153,0.830785],"trend_3bar":"MIXED","projected_rvol":0.721538},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":4231.0,"sell_vol":6387.0,"unclassified_vol":0.0,"imbalance":-0.203051,"bid":12.9,"ask":12.91,"spread_pct":0.077489,"quote_size_imbalance":null,"quote_age_s":0.019549},"context":{"vwap":12.86735,"price_vs_vwap_pct":0.331455,"ema9":12.839463,"ema20":12.792095,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-1.974184,"dist_to_hod_atr":3.791418,"atr":0.068576,"spread_atr":0.145824,"own_change_pct":0.310506,"rel_strength_pct":{"SPY":0.300246,"IWM":0.291183}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.168692},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"41c9a296cfa1","ts":"2026-09-15T15:25:15+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6104,"target":5.79,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":77.8,"room_to_5d_high_atr":0.3},"price":5.71,"vwap":5.7129,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.652,"trend":"flat","recent_slope_pct":0.0046,"volatility":"high"},"price":5.71,"volume":{"bars":115,"last_bar_volume":541.0,"baseline_avg":3144.95,"bar_rvol":0.172022,"raw_accel":-0.926052,"smooth_accel":-0.396141,"accel_momentum":-1.401924,"rvol_3bar":[1.449613,2.522063,0.172022],"trend_3bar":"MIXED","projected_rvol":5.984197},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1113.0,"sell_vol":3693.0,"unclassified_vol":0.0,"imbalance":-0.536829,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.662023},"context":{"vwap":5.712921,"price_vs_vwap_pct":-0.051133,"ema9":5.713125,"ema20":5.708663,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.381693,"dist_to_hod_atr":5.476902,"atr":0.014607,"spread_atr":0.684613,"own_change_pct":0.161262,"rel_strength_pct":{"SPY":0.134983,"IWM":0.112058}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.092346},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7c0a0a75f091","ts":"2026-09-15T15:25:25+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6162,"target":5.79,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":78.9,"room_to_5d_high_atr":0.29},"price":5.7158,"vwap":5.713,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.651,"trend":"flat","recent_slope_pct":0.0248,"volatility":"high"},"price":5.7158,"volume":{"bars":115,"last_bar_volume":541.0,"baseline_avg":3144.95,"bar_rvol":0.172022,"raw_accel":-0.926052,"smooth_accel":-0.396141,"accel_momentum":-1.401924,"rvol_3bar":[1.449613,2.522063,0.172022],"trend_3bar":"MIXED","projected_rvol":3.753828},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1226.0,"sell_vol":3693.0,"unclassified_vol":0.0,"imbalance":-0.501525,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.560108},"context":{"vwap":5.712921,"price_vs_vwap_pct":0.050391,"ema9":5.713125,"ema20":5.708663,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.28152,"dist_to_hod_atr":5.079826,"atr":0.014607,"spread_atr":0.684613,"own_change_pct":0.161262,"rel_strength_pct":{"SPY":0.134983,"IWM":0.112058}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.086273},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3e5f53f9e759","ts":"2026-09-15T15:25:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.138,"target_label":"clear air (typical 60-min move)","reward_risk":0.94,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.5792,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":4.903,"trend":"flat","recent_slope_pct":0.0656,"volatility":"low"},"price":9.91,"volume":{"bars":115,"last_bar_volume":5110.0,"baseline_avg":13939.05,"bar_rvol":0.366596,"raw_accel":-0.687939,"smooth_accel":-0.607732,"accel_momentum":-0.574416,"rvol_3bar":[0.671241,1.242865,0.366596],"trend_3bar":"MIXED","projected_rvol":3.500751},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":24325.0,"sell_vol":3038.0,"unclassified_vol":0.0,"imbalance":0.777948,"bid":9.89,"ask":9.93,"spread_pct":0.403633,"quote_size_imbalance":null,"quote_age_s":0.520565},"context":{"vwap":9.571811,"price_vs_vwap_pct":3.533175,"ema9":9.837828,"ema20":9.752939,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":3.016641,"atr":0.096133,"spread_atr":0.416088,"own_change_pct":2.109053,"rel_strength_pct":{"SPY":2.082774,"IWM":2.05985}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.285193},"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":"1de5887ae5bd","ts":"2026-09-15T15:25:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1539,"target_label":"clear air (typical 60-min move)","reward_risk":0.88,"pos_in_5d_range_pct":504.3,"room_to_5d_high_atr":-5.83},"price":9.9259,"vwap":9.5798,"ext_from_open_pct":5.04,"max_ext_allowed_pct":5.0,"volume_pace":4.907,"trend":"flat","recent_slope_pct":0.0977,"volatility":"low"},"price":9.9259,"volume":{"bars":115,"last_bar_volume":5110.0,"baseline_avg":13939.05,"bar_rvol":0.366596,"raw_accel":-0.687939,"smooth_accel":-0.607732,"accel_momentum":-0.574416,"rvol_3bar":[0.671241,1.242865,0.366596],"trend_3bar":"MIXED","projected_rvol":3.285159},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":14639.0,"sell_vol":5044.0,"unclassified_vol":0.0,"imbalance":0.487477,"bid":9.87,"ask":9.91,"spread_pct":0.404449,"quote_size_imbalance":null,"quote_age_s":0.051991},"context":{"vwap":9.571811,"price_vs_vwap_pct":3.699287,"ema9":9.837828,"ema20":9.752939,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.687255,"dist_to_hod_atr":2.851245,"atr":0.096133,"spread_atr":0.416088,"own_change_pct":2.109053,"rel_strength_pct":{"SPY":2.082774,"IWM":2.05985}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.178707},"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":"75891f745760","ts":"2026-09-15T15:26:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.0499,"target_label":"clear air (typical 60-min move)","reward_risk":1.51,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.5794,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":4.901,"trend":"flat","recent_slope_pct":-0.2187,"volatility":"low"},"price":9.82,"volume":{"bars":116,"last_bar_volume":33211.0,"baseline_avg":13463.95,"bar_rvol":2.466661,"raw_accel":5.499217,"smooth_accel":-0.309499,"accel_momentum":0.298233,"rvol_3bar":[1.242865,0.366596,2.466661],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":455.0,"sell_vol":4647.0,"unclassified_vol":0.0,"imbalance":-0.821639,"bid":9.82,"ask":9.86,"spread_pct":0.406504,"quote_size_imbalance":null,"quote_age_s":2.161381},"context":{"vwap":9.579349,"price_vs_vwap_pct":2.512189,"ema9":9.837063,"ema20":9.760659,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":3.924072,"atr":0.096838,"spread_atr":0.41306,"own_change_pct":-0.364742,"rel_strength_pct":{"SPY":-0.392477,"IWM":-0.357714}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.026704},"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":"97d5ecdd4d1a","ts":"2026-09-15T15:26:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.0673,"target_label":"clear air (typical 60-min move)","reward_risk":1.35,"pos_in_5d_range_pct":480.4,"room_to_5d_high_atr":-5.48},"price":9.8374,"vwap":9.5804,"ext_from_open_pct":4.1,"max_ext_allowed_pct":4.0,"volume_pace":4.916,"trend":"flat","recent_slope_pct":-0.1834,"volatility":"low"},"price":9.8374,"volume":{"bars":116,"last_bar_volume":33211.0,"baseline_avg":13463.95,"bar_rvol":2.466661,"raw_accel":5.499217,"smooth_accel":-0.309499,"accel_momentum":0.298233,"rvol_3bar":[1.242865,0.366596,2.466661],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":5124.0,"sell_vol":2711.0,"unclassified_vol":0.0,"imbalance":0.307977,"bid":9.82,"ask":9.86,"spread_pct":0.406504,"quote_size_imbalance":null,"quote_age_s":0.053079},"context":{"vwap":9.579349,"price_vs_vwap_pct":2.69383,"ema9":9.837063,"ema20":9.760659,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.554902,"dist_to_hod_atr":3.744391,"atr":0.096838,"spread_atr":0.41306,"own_change_pct":-0.364742,"rel_strength_pct":{"SPY":-0.392477,"IWM":-0.357714}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.759675},"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":"09cef11792ed","ts":"2026-09-15T15:26:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1249,"target_label":"clear air (typical 60-min move)","reward_risk":1.01,"pos_in_5d_range_pct":495.9,"room_to_5d_high_atr":-5.7},"price":9.895,"vwap":9.5812,"ext_from_open_pct":4.71,"max_ext_allowed_pct":5.0,"volume_pace":4.912,"trend":"flat","recent_slope_pct":-0.0667,"volatility":"low"},"price":9.895,"volume":{"bars":116,"last_bar_volume":33211.0,"baseline_avg":13463.95,"bar_rvol":2.466661,"raw_accel":5.499217,"smooth_accel":-0.309499,"accel_momentum":0.298233,"rvol_3bar":[1.242865,0.366596,2.466661],"trend_3bar":"MIXED","projected_rvol":1.20143},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":6664.0,"sell_vol":1424.0,"unclassified_vol":0.0,"imbalance":0.647873,"bid":9.87,"ask":9.92,"spread_pct":0.505306,"quote_size_imbalance":null,"quote_age_s":1.411538},"context":{"vwap":9.579349,"price_vs_vwap_pct":3.295123,"ema9":9.837063,"ema20":9.760659,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.990196,"dist_to_hod_atr":3.149584,"atr":0.096838,"spread_atr":0.516325,"own_change_pct":-0.364742,"rel_strength_pct":{"SPY":-0.392477,"IWM":-0.357714}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.598084},"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":"229f690d0b42","ts":"2026-09-15T15:26:40+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6104,"target":5.79,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":77.8,"room_to_5d_high_atr":0.3},"price":5.71,"vwap":5.713,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.646,"trend":"flat","recent_slope_pct":-0.0079,"volatility":"high"},"price":5.71,"volume":{"bars":116,"last_bar_volume":5665.0,"baseline_avg":2800.0,"bar_rvol":2.023214,"raw_accel":7.092857,"smooth_accel":-0.270343,"accel_momentum":0.125798,"rvol_3bar":[2.522063,0.172022,2.023214],"trend_3bar":"MIXED","projected_rvol":0.426964},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":347.0,"sell_vol":231.0,"unclassified_vol":0.0,"imbalance":0.200692,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.56181},"context":{"vwap":5.712978,"price_vs_vwap_pct":-0.052128,"ema9":5.7144,"ema20":5.709695,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.381693,"dist_to_hod_atr":5.466391,"atr":0.014635,"spread_atr":0.683299,"own_change_pct":0.166375,"rel_strength_pct":{"SPY":0.13864,"IWM":0.173402}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.406043},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"74b41d65bd84","ts":"2026-09-15T15:26:45+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.619,"target":5.79,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":79.4,"room_to_5d_high_atr":0.28},"price":5.7186,"vwap":5.713,"ext_from_open_pct":0.33,"max_ext_allowed_pct":3.0,"volume_pace":0.646,"trend":"flat","recent_slope_pct":0.0222,"volatility":"high"},"price":5.7186,"volume":{"bars":116,"last_bar_volume":5665.0,"baseline_avg":2800.0,"bar_rvol":2.023214,"raw_accel":7.092857,"smooth_accel":-0.270343,"accel_momentum":0.125798,"rvol_3bar":[2.522063,0.172022,2.023214],"trend_3bar":"MIXED","projected_rvol":0.384286},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":357.0,"sell_vol":231.0,"unclassified_vol":0.0,"imbalance":0.214286,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.273375},"context":{"vwap":5.712978,"price_vs_vwap_pct":0.098407,"ema9":5.7144,"ema20":5.709695,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.233161,"dist_to_hod_atr":4.878754,"atr":0.014635,"spread_atr":0.683299,"own_change_pct":0.166375,"rel_strength_pct":{"SPY":0.13864,"IWM":0.173402}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.433546},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"907a55a70e01","ts":"2026-09-15T15:26:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1149,"target_label":"clear air (typical 60-min move)","reward_risk":1.06,"pos_in_5d_range_pct":493.2,"room_to_5d_high_atr":-5.67},"price":9.885,"vwap":9.5827,"ext_from_open_pct":4.6,"max_ext_allowed_pct":4.0,"volume_pace":4.92,"trend":"flat","recent_slope_pct":-0.0869,"volatility":"low"},"price":9.885,"volume":{"bars":116,"last_bar_volume":33211.0,"baseline_avg":13463.95,"bar_rvol":2.466661,"raw_accel":5.499217,"smooth_accel":-0.309499,"accel_momentum":0.298233,"rvol_3bar":[1.242865,0.366596,2.466661],"trend_3bar":"MIXED","projected_rvol":1.199891},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1713.0,"sell_vol":5830.0,"unclassified_vol":0.0,"imbalance":-0.545804,"bid":9.86,"ask":9.92,"spread_pct":0.606673,"quote_size_imbalance":null,"quote_age_s":8.836805},"context":{"vwap":9.579349,"price_vs_vwap_pct":3.190732,"ema9":9.837063,"ema20":9.760659,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.088235,"dist_to_hod_atr":3.252849,"atr":0.096838,"spread_atr":0.61959,"own_change_pct":-0.364742,"rel_strength_pct":{"SPY":-0.392477,"IWM":-0.357714}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.346314},"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":"406a3333f7cd","ts":"2026-09-15T15:27:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.2% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":8.329,"target":8.9294,"target_label":"clear air (typical 60-min move)","reward_risk":2.14,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-1.07},"price":8.52,"vwap":8.1387,"ext_from_open_pct":11.23,"max_ext_allowed_pct":4.0,"volume_pace":0.463,"trend":"flat","recent_slope_pct":0.13,"volatility":"high"},"price":8.52,"volume":{"bars":117,"last_bar_volume":30.0,"baseline_avg":2127.35,"bar_rvol":0.014102,"raw_accel":-0.943592,"smooth_accel":-0.871523,"accel_momentum":0.072051,"rvol_3bar":[0.157309,0.01991,0.014102],"trend_3bar":"DECELERATING","projected_rvol":0.819047},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":726.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.948993,"bid":8.5,"ask":8.52,"spread_pct":0.235018,"quote_size_imbalance":null,"quote_age_s":2.117015},"context":{"vwap":8.138231,"price_vs_vwap_pct":4.691062,"ema9":8.458689,"ema20":8.45895,"ema_stack":false,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.41843,"dist_to_hod_atr":0.525295,"atr":0.068152,"spread_atr":0.293461,"own_change_pct":-0.821596,"rel_strength_pct":{"SPY":-0.87047,"IWM":-0.849719}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.013383},"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":"0dbc76ee8fab","ts":"2026-09-15T15:27:30+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6104,"target":5.79,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":77.8,"room_to_5d_high_atr":0.3},"price":5.71,"vwap":5.713,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.642,"trend":"flat","recent_slope_pct":-0.0248,"volatility":"high"},"price":5.71,"volume":{"bars":117,"last_bar_volume":1147.0,"baseline_avg":3054.2,"bar_rvol":0.375548,"raw_accel":-0.797529,"smooth_accel":-0.658095,"accel_momentum":-0.387752,"rvol_3bar":[0.172022,2.023214,0.375548],"trend_3bar":"MIXED","projected_rvol":0.174186},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":246.0,"sell_vol":20.0,"unclassified_vol":0.0,"imbalance":0.849624,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.001585},"context":{"vwap":5.712986,"price_vs_vwap_pct":-0.052269,"ema9":5.71552,"ema20":5.710676,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.381693,"dist_to_hod_atr":5.592911,"atr":0.014304,"spread_atr":0.699114,"own_change_pct":0.17864,"rel_strength_pct":{"SPY":0.129767,"IWM":0.150518}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.319075},"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":"9d4f08698afb","ts":"2026-09-15T15:27:35+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6146,"target":5.79,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":78.6,"room_to_5d_high_atr":0.29},"price":5.7142,"vwap":5.713,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.642,"trend":"flat","recent_slope_pct":-0.0101,"volatility":"high"},"price":5.7142,"volume":{"bars":117,"last_bar_volume":1147.0,"baseline_avg":3054.2,"bar_rvol":0.375548,"raw_accel":-0.797529,"smooth_accel":-0.658095,"accel_momentum":-0.387752,"rvol_3bar":[0.172022,2.023214,0.375548],"trend_3bar":"MIXED","projected_rvol":0.157161},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":239.0,"sell_vol":33.0,"unclassified_vol":0.0,"imbalance":0.757353,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.292573},"context":{"vwap":5.712986,"price_vs_vwap_pct":0.021248,"ema9":5.71552,"ema20":5.710676,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.309154,"dist_to_hod_atr":5.299283,"atr":0.014304,"spread_atr":0.699114,"own_change_pct":0.17864,"rel_strength_pct":{"SPY":0.129767,"IWM":0.150518}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.284423},"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":"59fa6d70b346","ts":"2026-09-15T15:27:40+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6104,"target":5.79,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":77.8,"room_to_5d_high_atr":0.3},"price":5.71,"vwap":5.713,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.642,"trend":"flat","recent_slope_pct":-0.0248,"volatility":"high"},"price":5.71,"volume":{"bars":117,"last_bar_volume":1147.0,"baseline_avg":3054.2,"bar_rvol":0.375548,"raw_accel":-0.797529,"smooth_accel":-0.658095,"accel_momentum":-0.387752,"rvol_3bar":[0.172022,2.023214,0.375548],"trend_3bar":"MIXED","projected_rvol":0.251457},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":136.0,"sell_vol":264.0,"unclassified_vol":0.0,"imbalance":-0.32,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.226402},"context":{"vwap":5.712986,"price_vs_vwap_pct":-0.052269,"ema9":5.71552,"ema20":5.710676,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.381693,"dist_to_hod_atr":5.592911,"atr":0.014304,"spread_atr":0.699114,"own_change_pct":0.17864,"rel_strength_pct":{"SPY":0.129767,"IWM":0.150518}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.120175},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ac63f8c9699a","ts":"2026-09-15T15:27:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.284,"target":8.5558,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":127.8,"room_to_5d_high_atr":-1.01},"price":8.475,"vwap":8.1399,"ext_from_open_pct":10.64,"max_ext_allowed_pct":4.0,"volume_pace":0.463,"trend":"flat","recent_slope_pct":0.0237,"volatility":"high"},"price":8.475,"volume":{"bars":117,"last_bar_volume":30.0,"baseline_avg":2127.35,"bar_rvol":0.014102,"raw_accel":-0.943592,"smooth_accel":-0.871523,"accel_momentum":0.072051,"rvol_3bar":[0.157309,0.01991,0.014102],"trend_3bar":"DECELERATING","projected_rvol":1.697887},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":818.0,"sell_vol":1582.0,"unclassified_vol":0.0,"imbalance":-0.318333,"bid":8.43,"ask":8.52,"spread_pct":1.061947,"quote_size_imbalance":null,"quote_age_s":3.148912},"context":{"vwap":8.138231,"price_vs_vwap_pct":4.138116,"ema9":8.458689,"ema20":8.45895,"ema_stack":false,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.944389,"dist_to_hod_atr":1.185583,"atr":0.068152,"spread_atr":1.320575,"own_change_pct":-0.821596,"rel_strength_pct":{"SPY":-0.87047,"IWM":-0.849719}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.004489},"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":"659c1eafed12","ts":"2026-09-15T15:27:50+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6197,"target":5.79,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":79.5,"room_to_5d_high_atr":0.28},"price":5.7193,"vwap":5.713,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.641,"trend":"flat","recent_slope_pct":0.0077,"volatility":"high"},"price":5.7193,"volume":{"bars":117,"last_bar_volume":1147.0,"baseline_avg":3054.2,"bar_rvol":0.375548,"raw_accel":-0.797529,"smooth_accel":-0.658095,"accel_momentum":-0.387752,"rvol_3bar":[0.172022,2.023214,0.375548],"trend_3bar":"MIXED","projected_rvol":0.240456},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":114.0,"sell_vol":255.0,"unclassified_vol":0.0,"imbalance":-0.382114,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.190103},"context":{"vwap":5.712986,"price_vs_vwap_pct":0.110518,"ema9":5.71552,"ema20":5.710676,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.221071,"dist_to_hod_atr":4.942735,"atr":0.014304,"spread_atr":0.699114,"own_change_pct":0.17864,"rel_strength_pct":{"SPY":0.129767,"IWM":0.150518}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.143502},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"55cc0231f49d","ts":"2026-09-15T15:28:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.0994,"target_label":"clear air (typical 60-min move)","reward_risk":1.24,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.5838,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":4.887,"trend":"flat","recent_slope_pct":-0.1053,"volatility":"low"},"price":9.86,"volume":{"bars":118,"last_bar_volume":4824.0,"baseline_avg":15050.3,"bar_rvol":0.320525,"raw_accel":-0.675042,"smooth_accel":0.760027,"accel_momentum":0.735811,"rvol_3bar":[2.466661,1.004768,0.320525],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":305.0,"sell_vol":1000.0,"unclassified_vol":0.0,"imbalance":-0.532567,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":9.000612},"context":{"vwap":9.58371,"price_vs_vwap_pct":2.882909,"ema9":9.85012,"ema20":9.781265,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":3.594535,"atr":0.094588,"spread_atr":0.422887,"own_change_pct":-0.202429,"rel_strength_pct":{"SPY":-0.257908,"IWM":-0.255168}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.170701},"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":"e766c039556e","ts":"2026-09-15T15:28:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 5.62, target 5.79 (ceiling), R:R 0.75; selling not fading: red-bar volume 1.06x the advance (max 0.7); no reclaim yet (needs a close > 5.72); R:R 0.75 < 2.0 at 5.71; ","plan":{"state":"WATCH","setup":"","stop":5.6154,"target":5.79,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":78.7,"room_to_5d_high_atr":0.29},"price":5.715,"vwap":5.713,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":0.0028,"volatility":"high"},"price":5.715,"volume":{"bars":118,"last_bar_volume":722.0,"baseline_avg":3046.0,"bar_rvol":0.237032,"raw_accel":-0.370532,"smooth_accel":-0.382813,"accel_momentum":0.275282,"rvol_3bar":[2.023214,0.375548,0.237032],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":210.0,"sell_vol":23.0,"unclassified_vol":0.0,"imbalance":0.802575,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.156548},"context":{"vwap":5.712991,"price_vs_vwap_pct":0.035166,"ema9":5.716316,"ema20":5.711517,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.295337,"dist_to_hod_atr":5.358519,"atr":0.013996,"spread_atr":0.714469,"own_change_pct":0.131303,"rel_strength_pct":{"SPY":0.075824,"IWM":0.078564}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.190236},"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":"0f65fe48ace0","ts":"2026-09-15T15:28:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.0825,"target_label":"clear air (typical 60-min move)","reward_risk":1.36,"pos_in_5d_range_pct":481.9,"room_to_5d_high_atr":-5.5},"price":9.8431,"vwap":9.584,"ext_from_open_pct":4.16,"max_ext_allowed_pct":4.0,"volume_pace":4.887,"trend":"flat","recent_slope_pct":-0.1396,"volatility":"low"},"price":9.8431,"volume":{"bars":118,"last_bar_volume":4824.0,"baseline_avg":15050.3,"bar_rvol":0.320525,"raw_accel":-0.675042,"smooth_accel":0.760027,"accel_momentum":0.735811,"rvol_3bar":[2.466661,1.004768,0.320525],"trend_3bar":"DECELERATING","projected_rvol":0.35986},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":305.0,"sell_vol":1872.0,"unclassified_vol":0.0,"imbalance":-0.719798,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":14.000612},"context":{"vwap":9.58371,"price_vs_vwap_pct":2.706568,"ema9":9.85012,"ema20":9.781265,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.49902,"dist_to_hod_atr":3.773205,"atr":0.094588,"spread_atr":0.422887,"own_change_pct":-0.202429,"rel_strength_pct":{"SPY":-0.257908,"IWM":-0.255168}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.230713},"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":"74343b8a79ac","ts":"2026-09-15T15:28:25+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.2499,"target":8.41,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":50.6,"room_to_5d_high_atr":1.19},"price":8.34,"vwap":8.3005,"ext_from_open_pct":0.12,"max_ext_allowed_pct":4.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"medium"},"price":8.34,"volume":{"bars":118,"last_bar_volume":2712.0,"baseline_avg":1588.9,"bar_rvol":1.706841,"raw_accel":5.827365,"smooth_accel":2.374314,"accel_momentum":1.6967,"rvol_3bar":[4.9816,0.049961,1.706841],"trend_3bar":"MIXED","projected_rvol":0.25225},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":152.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.809524,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":2.401439},"context":{"vwap":8.300496,"price_vs_vwap_pct":0.475918,"ema9":8.349549,"ema20":8.342682,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.882353,"dist_to_hod_atr":10.723701,"atr":0.01492,"spread_atr":0.670231,"own_change_pct":0.103108,"rel_strength_pct":{"SPY":0.047629,"IWM":0.050369}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.381729},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"415cc0b74f1e","ts":"2026-09-15T15:28:30+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.71 below VWAP $5.71","plan":{"state":"PASS","setup":"","stop":5.6104,"target":5.79,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":77.8,"room_to_5d_high_atr":0.3},"price":5.71,"vwap":5.713,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.638,"trend":"flat","recent_slope_pct":-0.0147,"volatility":"high"},"price":5.71,"volume":{"bars":118,"last_bar_volume":722.0,"baseline_avg":3046.0,"bar_rvol":0.237032,"raw_accel":-0.370532,"smooth_accel":-0.382813,"accel_momentum":0.275282,"rvol_3bar":[2.023214,0.375548,0.237032],"trend_3bar":"DECELERATING","projected_rvol":0.390676},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":2.0,"sell_vol":593.0,"unclassified_vol":0.0,"imbalance":-0.993277,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":0.001525},"context":{"vwap":5.712991,"price_vs_vwap_pct":-0.052354,"ema9":5.716316,"ema20":5.711517,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.381693,"dist_to_hod_atr":5.715753,"atr":0.013996,"spread_atr":0.714469,"own_change_pct":0.131303,"rel_strength_pct":{"SPY":0.075824,"IWM":0.078564}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.235439},"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":"6224514efb13","ts":"2026-09-15T15:28:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.06% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.3261,"target":8.9259,"target_label":"clear air (typical 60-min move)","reward_risk":2.14,"pos_in_5d_range_pct":129.3,"room_to_5d_high_atr":-1.07},"price":8.5171,"vwap":8.1414,"ext_from_open_pct":11.19,"max_ext_allowed_pct":4.0,"volume_pace":0.462,"trend":"flat","recent_slope_pct":0.2118,"volatility":"high"},"price":8.5171,"volume":{"bars":118,"last_bar_volume":3473.0,"baseline_avg":2107.95,"bar_rvol":1.647572,"raw_accel":5.590289,"smooth_accel":0.815023,"accel_momentum":1.686546,"rvol_3bar":[0.01991,0.014102,1.647572],"trend_3bar":"MIXED","projected_rvol":1.167011},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":1192.0,"sell_vol":38.0,"unclassified_vol":0.0,"imbalance":0.938211,"bid":8.43,"ask":8.52,"spread_pct":1.061947,"quote_size_imbalance":null,"quote_age_s":53.148912},"context":{"vwap":8.140581,"price_vs_vwap_pct":4.625207,"ema9":8.461951,"ema20":8.460479,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.452325,"dist_to_hod_atr":0.56675,"atr":0.068284,"spread_atr":1.318023,"own_change_pct":0.177305,"rel_strength_pct":{"SPY":0.121826,"IWM":0.124566}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.545771},"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":"34b8e262e75d","ts":"2026-09-15T15:28:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1346,"target_label":"clear air (typical 60-min move)","reward_risk":1.05,"pos_in_5d_range_pct":496.0,"room_to_5d_high_atr":-5.71},"price":9.8952,"vwap":9.5846,"ext_from_open_pct":4.71,"max_ext_allowed_pct":5.0,"volume_pace":4.883,"trend":"flat","recent_slope_pct":-0.034,"volatility":"low"},"price":9.8952,"volume":{"bars":118,"last_bar_volume":4824.0,"baseline_avg":15050.3,"bar_rvol":0.320525,"raw_accel":-0.675042,"smooth_accel":0.760027,"accel_momentum":0.735811,"rvol_3bar":[2.466661,1.004768,0.320525],"trend_3bar":"DECELERATING","projected_rvol":0.440352},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2475.0,"sell_vol":1380.0,"unclassified_vol":0.0,"imbalance":0.284047,"bid":9.82,"ask":9.87,"spread_pct":0.507872,"quote_size_imbalance":null,"quote_age_s":4.99298},"context":{"vwap":9.58371,"price_vs_vwap_pct":3.250199,"ema9":9.85012,"ema20":9.781265,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.988235,"dist_to_hod_atr":3.222395,"atr":0.094588,"spread_atr":0.528608,"own_change_pct":-0.202429,"rel_strength_pct":{"SPY":-0.257908,"IWM":-0.255168}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.091044},"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":"5fb44d197279","ts":"2026-09-15T15:28:35+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.95","plan":{"state":"PASS","setup":"","stop":9.8344,"target":10.015,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":20.0,"room_to_5d_high_atr":2.55},"price":9.9536,"vwap":9.9547,"ext_from_open_pct":1.26,"max_ext_allowed_pct":3.0,"volume_pace":1.025,"trend":"flat","recent_slope_pct":-0.0369,"volatility":"medium"},"price":9.9536,"volume":{"bars":118,"last_bar_volume":435818.0,"baseline_avg":337914.3,"bar_rvol":1.289729,"raw_accel":0.239486,"smooth_accel":1.156196,"accel_momentum":-0.427837,"rvol_3bar":[1.672554,1.081824,1.289729],"trend_3bar":"MIXED","projected_rvol":0.775277},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":61635.0,"sell_vol":85855.0,"unclassified_vol":0.0,"imbalance":-0.164215,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":1.160549},"context":{"vwap":9.954721,"price_vs_vwap_pct":-0.011259,"ema9":9.954157,"ema20":9.941254,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.959204,"dist_to_hod_atr":3.700017,"atr":0.026054,"spread_atr":0.383819,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.055479,"IWM":-0.052739}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.211792},"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":"7d3e388b5fe4","ts":"2026-09-15T15:28:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.0694,"target_label":"clear air (typical 60-min move)","reward_risk":1.47,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.5848,"ext_from_open_pct":4.02,"max_ext_allowed_pct":5.0,"volume_pace":4.885,"trend":"flat","recent_slope_pct":-0.1662,"volatility":"low"},"price":9.83,"volume":{"bars":118,"last_bar_volume":4824.0,"baseline_avg":15050.3,"bar_rvol":0.320525,"raw_accel":-0.675042,"smooth_accel":0.760027,"accel_momentum":0.735811,"rvol_3bar":[2.466661,1.004768,0.320525],"trend_3bar":"DECELERATING","projected_rvol":0.538694},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":3138.0,"sell_vol":1785.0,"unclassified_vol":0.0,"imbalance":0.274832,"bid":9.8,"ask":9.84,"spread_pct":0.407332,"quote_size_imbalance":null,"quote_age_s":1.25965},"context":{"vwap":9.58371,"price_vs_vwap_pct":2.569878,"ema9":9.85012,"ema20":9.781265,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":3.9117,"atr":0.094588,"spread_atr":0.422887,"own_change_pct":-0.202429,"rel_strength_pct":{"SPY":-0.257908,"IWM":-0.255168}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.088091},"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":"d8096e9e4072","ts":"2026-09-15T15:28:40+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8488,"target":10.015,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":20.9,"room_to_5d_high_atr":2.52},"price":9.968,"vwap":9.9548,"ext_from_open_pct":1.4,"max_ext_allowed_pct":4.0,"volume_pace":1.025,"trend":"flat","recent_slope_pct":-0.008,"volatility":"medium"},"price":9.968,"volume":{"bars":118,"last_bar_volume":435818.0,"baseline_avg":337914.3,"bar_rvol":1.289729,"raw_accel":0.239486,"smooth_accel":1.156196,"accel_momentum":-0.427837,"rvol_3bar":[1.672554,1.081824,1.289729],"trend_3bar":"MIXED","projected_rvol":0.684582},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":43657.0,"sell_vol":75123.0,"unclassified_vol":0.0,"imbalance":-0.26491,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.227635},"context":{"vwap":9.954721,"price_vs_vwap_pct":0.133396,"ema9":9.954157,"ema20":9.941254,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.81592,"dist_to_hod_atr":3.147317,"atr":0.026054,"spread_atr":0.383819,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.055479,"IWM":-0.052739}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.341662},"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":"14916b61dad7","ts":"2026-09-15T15:28:40+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.6154,"target":5.79,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":78.7,"room_to_5d_high_atr":0.29},"price":5.715,"vwap":5.713,"ext_from_open_pct":0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.638,"trend":"flat","recent_slope_pct":0.0028,"volatility":"high"},"price":5.715,"volume":{"bars":118,"last_bar_volume":722.0,"baseline_avg":3046.0,"bar_rvol":0.237032,"raw_accel":-0.370532,"smooth_accel":-0.382813,"accel_momentum":0.275282,"rvol_3bar":[2.023214,0.375548,0.237032],"trend_3bar":"DECELERATING","projected_rvol":0.600295},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":526.0,"sell_vol":670.0,"unclassified_vol":0.0,"imbalance":-0.120401,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":3.814764},"context":{"vwap":5.712991,"price_vs_vwap_pct":0.035166,"ema9":5.716316,"ema20":5.711517,"ema_stack":false,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.295337,"dist_to_hod_atr":5.358519,"atr":0.013996,"spread_atr":0.714469,"own_change_pct":0.131303,"rel_strength_pct":{"SPY":0.075824,"IWM":0.078564}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.028539},"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":"26ffb9f4fee0","ts":"2026-09-15T15:28:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"extended +11.0% above open $7.66 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":8.314,"target":8.5558,"target_label":"ceiling","reward_risk":0.27,"pos_in_5d_range_pct":128.9,"room_to_5d_high_atr":-1.05},"price":8.505,"vwap":8.1426,"ext_from_open_pct":11.03,"max_ext_allowed_pct":4.0,"volume_pace":0.463,"trend":"flat","recent_slope_pct":0.1832,"volatility":"high"},"price":8.505,"volume":{"bars":118,"last_bar_volume":3473.0,"baseline_avg":2107.95,"bar_rvol":1.647572,"raw_accel":5.590289,"smooth_accel":0.815023,"accel_momentum":1.686546,"rvol_3bar":[0.01991,0.014102,1.647572],"trend_3bar":"MIXED","projected_rvol":2.104177},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2915.0,"sell_vol":40.0,"unclassified_vol":0.0,"imbalance":0.972927,"bid":8.48,"ask":8.53,"spread_pct":0.587889,"quote_size_imbalance":null,"quote_age_s":7.453565},"context":{"vwap":8.140581,"price_vs_vwap_pct":4.476569,"ema9":8.461951,"ema20":8.460479,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.593749,"dist_to_hod_atr":0.743951,"atr":0.068284,"spread_atr":0.732235,"own_change_pct":0.177305,"rel_strength_pct":{"SPY":0.121826,"IWM":0.124566}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.602968},"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":"5419f3278571","ts":"2026-09-15T15:28:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.77% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.23,"target":8.9388,"target_label":"clear air (typical 60-min move)","reward_risk":1.36,"pos_in_5d_range_pct":129.7,"room_to_5d_high_atr":-1.09},"price":8.53,"vwap":8.1431,"ext_from_open_pct":11.36,"max_ext_allowed_pct":4.0,"volume_pace":0.463,"trend":"flat","recent_slope_pct":0.2422,"volatility":"high"},"price":8.53,"volume":{"bars":118,"last_bar_volume":3473.0,"baseline_avg":2107.95,"bar_rvol":1.647572,"raw_accel":5.590289,"smooth_accel":0.815023,"accel_momentum":1.686546,"rvol_3bar":[0.01991,0.014102,1.647572],"trend_3bar":"MIXED","projected_rvol":1.971963},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3352.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":0.989908,"bid":8.41,"ask":8.56,"spread_pct":1.767826,"quote_size_imbalance":null,"quote_age_s":0.606608},"context":{"vwap":8.140581,"price_vs_vwap_pct":4.783673,"ema9":8.461951,"ema20":8.460479,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.30155,"dist_to_hod_atr":0.377833,"atr":0.068284,"spread_atr":2.196704,"own_change_pct":0.177305,"rel_strength_pct":{"SPY":0.121826,"IWM":0.124566}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.630945},"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":"63a0fec5942b","ts":"2026-09-15T15:29:00+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.54% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.175,"target":8.5558,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":126.3,"room_to_5d_high_atr":-0.96},"price":8.435,"vwap":8.1462,"ext_from_open_pct":10.12,"max_ext_allowed_pct":4.0,"volume_pace":0.467,"trend":"flat","recent_slope_pct":0.0178,"volatility":"high"},"price":8.435,"volume":{"bars":118,"last_bar_volume":3473.0,"baseline_avg":2107.95,"bar_rvol":1.647572,"raw_accel":5.590289,"smooth_accel":0.815023,"accel_momentum":1.686546,"rvol_3bar":[0.01991,0.014102,1.647572],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":7426.0,"sell_vol":283.0,"unclassified_vol":0.0,"imbalance":0.926579,"bid":8.37,"ask":8.5,"spread_pct":1.541197,"quote_size_imbalance":null,"quote_age_s":0.312666},"context":{"vwap":8.140581,"price_vs_vwap_pct":3.61668,"ema9":8.461951,"ema20":8.460479,"ema_stack":false,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-1.411908,"dist_to_hod_atr":1.769079,"atr":0.068284,"spread_atr":1.90381,"own_change_pct":0.177305,"rel_strength_pct":{"SPY":0.175681,"IWM":0.205406}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.526606},"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":"b93e08432d7c","ts":"2026-09-15T15:29:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.0697,"target_label":"clear air (typical 60-min move)","reward_risk":1.82,"pos_in_5d_range_pct":473.0,"room_to_5d_high_atr":-5.37},"price":9.81,"vwap":9.5852,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":4.877,"trend":"flat","recent_slope_pct":-0.1301,"volatility":"low"},"price":9.81,"volume":{"bars":119,"last_bar_volume":7665.0,"baseline_avg":11525.1,"bar_rvol":0.66507,"raw_accel":0.58893,"smooth_accel":-0.500256,"accel_momentum":-1.260283,"rvol_3bar":[1.004768,0.320525,0.66507],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":2034.0,"sell_vol":2016.0,"unclassified_vol":0.0,"imbalance":0.004444,"bid":9.8,"ask":9.82,"spread_pct":0.203874,"quote_size_imbalance":null,"quote_age_s":4.992966},"context":{"vwap":9.58515,"price_vs_vwap_pct":2.345816,"ema9":9.842096,"ema20":9.784002,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.823529,"dist_to_hod_atr":4.121239,"atr":0.094632,"spread_atr":0.211346,"own_change_pct":-1.208459,"rel_strength_pct":{"SPY":-1.210083,"IWM":-1.180358}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.002956},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f38b5f785ee1","ts":"2026-09-15T15:29:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1197,"target_label":"clear air (typical 60-min move)","reward_risk":1.35,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.5861,"ext_from_open_pct":4.34,"max_ext_allowed_pct":4.0,"volume_pace":4.881,"trend":"flat","recent_slope_pct":-0.0284,"volatility":"low"},"price":9.86,"volume":{"bars":119,"last_bar_volume":7665.0,"baseline_avg":11525.1,"bar_rvol":0.66507,"raw_accel":0.58893,"smooth_accel":-0.500256,"accel_momentum":-1.260283,"rvol_3bar":[1.004768,0.320525,0.66507],"trend_3bar":"MIXED","projected_rvol":1.086394},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2668.0,"sell_vol":2684.0,"unclassified_vol":0.0,"imbalance":-0.00299,"bid":9.82,"ask":9.87,"spread_pct":0.507872,"quote_size_imbalance":null,"quote_age_s":2.05534},"context":{"vwap":9.58515,"price_vs_vwap_pct":2.867456,"ema9":9.842096,"ema20":9.784002,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":3.592875,"atr":0.094632,"spread_atr":0.528364,"own_change_pct":-1.208459,"rel_strength_pct":{"SPY":-1.210083,"IWM":-1.180358}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001988},"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":"eb80240014f5","ts":"2026-09-15T15:29:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1047,"target_label":"clear air (typical 60-min move)","reward_risk":1.46,"pos_in_5d_range_pct":482.4,"room_to_5d_high_atr":-5.51},"price":9.845,"vwap":9.5866,"ext_from_open_pct":4.18,"max_ext_allowed_pct":5.0,"volume_pace":4.88,"trend":"flat","recent_slope_pct":-0.0589,"volatility":"low"},"price":9.845,"volume":{"bars":119,"last_bar_volume":7665.0,"baseline_avg":11525.1,"bar_rvol":0.66507,"raw_accel":0.58893,"smooth_accel":-0.500256,"accel_momentum":-1.260283,"rvol_3bar":[1.004768,0.320525,0.66507],"trend_3bar":"MIXED","projected_rvol":1.000078},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":3445.0,"sell_vol":2388.0,"unclassified_vol":0.0,"imbalance":0.18121,"bid":9.82,"ask":9.87,"spread_pct":0.507872,"quote_size_imbalance":null,"quote_age_s":7.464198},"context":{"vwap":9.58515,"price_vs_vwap_pct":2.710964,"ema9":9.842096,"ema20":9.784002,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.480392,"dist_to_hod_atr":3.751384,"atr":0.094632,"spread_atr":0.528364,"own_change_pct":-1.208459,"rel_strength_pct":{"SPY":-1.210083,"IWM":-1.180358}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.120518},"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":"2dc1f9c86137","ts":"2026-09-15T15:30:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1499,"target_label":"clear air (typical 60-min move)","reward_risk":1.38,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.8699,"vwap":9.587,"ext_from_open_pct":4.44,"max_ext_allowed_pct":4.0,"volume_pace":4.87,"trend":"flat","recent_slope_pct":-0.0509,"volatility":"low"},"price":9.8699,"volume":{"bars":120,"last_bar_volume":8758.0,"baseline_avg":11856.15,"bar_rvol":0.738688,"raw_accel":0.142596,"smooth_accel":-0.600365,"accel_momentum":-0.100109,"rvol_3bar":[0.320525,0.66507,0.738688],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":3306.0,"sell_vol":858.0,"unclassified_vol":0.0,"imbalance":0.587896,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":2.030647},"context":{"vwap":9.586821,"price_vs_vwap_pct":2.952792,"ema9":9.843677,"ema20":9.790288,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.236275,"dist_to_hod_atr":3.558447,"atr":0.092765,"spread_atr":0.323397,"own_change_pct":-0.755668,"rel_strength_pct":{"SPY":-0.75976,"IWM":-0.757424}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.434272},"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":"5d6dcbe1700d","ts":"2026-09-15T15:30:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.2545,"target":8.41,"target_label":"prev_day_high","reward_risk":0.73,"pos_in_5d_range_pct":51.1,"room_to_5d_high_atr":1.18},"price":8.3446,"vwap":8.3006,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":-0.0302,"volatility":"medium"},"price":8.3446,"volume":{"bars":120,"last_bar_volume":271.0,"baseline_avg":1676.05,"bar_rvol":0.16169,"raw_accel":-0.353241,"smooth_accel":-0.540089,"accel_momentum":0.062871,"rvol_3bar":[1.706841,0.126401,0.16169],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":215.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":0.853448,"bid":8.34,"ask":8.35,"spread_pct":0.119832,"quote_size_imbalance":null,"quote_age_s":4.090587},"context":{"vwap":8.300621,"price_vs_vwap_pct":0.529822,"ema9":8.347912,"ema20":8.343103,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.828235,"dist_to_hod_atr":10.941627,"atr":0.014203,"spread_atr":0.704094,"own_change_pct":-0.119689,"rel_strength_pct":{"SPY":-0.123781,"IWM":-0.121445}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.137994},"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":"a1a7612bc1c5","ts":"2026-09-15T15:30:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1237,"target_label":"clear air (typical 60-min move)","reward_risk":1.59,"pos_in_5d_range_pct":482.1,"room_to_5d_high_atr":-5.51},"price":9.8437,"vwap":9.5871,"ext_from_open_pct":4.17,"max_ext_allowed_pct":5.0,"volume_pace":4.868,"trend":"flat","recent_slope_pct":-0.1042,"volatility":"low"},"price":9.8437,"volume":{"bars":120,"last_bar_volume":8758.0,"baseline_avg":11856.15,"bar_rvol":0.738688,"raw_accel":0.142596,"smooth_accel":-0.600365,"accel_momentum":-0.100109,"rvol_3bar":[0.320525,0.66507,0.738688],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1545.0,"sell_vol":815.0,"unclassified_vol":0.0,"imbalance":0.309322,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":7.030647},"context":{"vwap":9.586821,"price_vs_vwap_pct":2.679501,"ema9":9.843677,"ema20":9.790288,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.493137,"dist_to_hod_atr":3.840881,"atr":0.092765,"spread_atr":0.323397,"own_change_pct":-0.755668,"rel_strength_pct":{"SPY":-0.75976,"IWM":-0.757424}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.228493},"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":"dbc549fb4901","ts":"2026-09-15T15:30:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.1499,"target_label":"clear air (typical 60-min move)","reward_risk":1.38,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.8699,"vwap":9.5872,"ext_from_open_pct":4.44,"max_ext_allowed_pct":4.0,"volume_pace":4.86,"trend":"flat","recent_slope_pct":-0.0509,"volatility":"low"},"price":9.8699,"volume":{"bars":120,"last_bar_volume":8758.0,"baseline_avg":11856.15,"bar_rvol":0.738688,"raw_accel":0.142596,"smooth_accel":-0.600365,"accel_momentum":-0.100109,"rvol_3bar":[0.320525,0.66507,0.738688],"trend_3bar":"ACCELERATING","projected_rvol":0.358902},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1652.0,"sell_vol":521.0,"unclassified_vol":0.0,"imbalance":0.520479,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":0.828411},"context":{"vwap":9.586821,"price_vs_vwap_pct":2.952792,"ema9":9.843677,"ema20":9.790288,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.236275,"dist_to_hod_atr":3.558447,"atr":0.092765,"spread_atr":0.323397,"own_change_pct":-0.755668,"rel_strength_pct":{"SPY":-0.75976,"IWM":-0.757424}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.384471},"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":"df5828a23aa9","ts":"2026-09-15T15:30:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.13,"target_label":"clear air (typical 60-min move)","reward_risk":1.54,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.5874,"ext_from_open_pct":4.23,"max_ext_allowed_pct":5.0,"volume_pace":4.851,"trend":"flat","recent_slope_pct":-0.0914,"volatility":"low"},"price":9.85,"volume":{"bars":120,"last_bar_volume":8758.0,"baseline_avg":11856.15,"bar_rvol":0.738688,"raw_accel":0.142596,"smooth_accel":-0.600365,"accel_momentum":-0.100109,"rvol_3bar":[0.320525,0.66507,0.738688],"trend_3bar":"ACCELERATING","projected_rvol":0.326244},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":914.0,"sell_vol":562.0,"unclassified_vol":0.0,"imbalance":0.238482,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":1.144574},"context":{"vwap":9.586821,"price_vs_vwap_pct":2.745216,"ema9":9.843677,"ema20":9.790288,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":3.772967,"atr":0.092765,"spread_atr":0.431196,"own_change_pct":-0.755668,"rel_strength_pct":{"SPY":-0.75976,"IWM":-0.757424}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.176164},"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":"b03ab9ffd616","ts":"2026-09-15T15:31:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.77,"target":10.15,"target_label":"clear air (typical 60-min move)","reward_risk":3.75,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.5875,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":4.839,"trend":"flat","recent_slope_pct":0.0305,"volatility":"low"},"price":9.85,"volume":{"bars":121,"last_bar_volume":3094.0,"baseline_avg":11485.3,"bar_rvol":0.269388,"raw_accel":-0.646723,"smooth_accel":-0.630919,"accel_momentum":-0.030554,"rvol_3bar":[0.66507,0.738688,0.269388],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":656.0,"sell_vol":390.0,"unclassified_vol":0.0,"imbalance":0.254302,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":4.992873},"context":{"vwap":9.587442,"price_vs_vwap_pct":2.73856,"ema9":9.846942,"ema20":9.796927,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":3.976474,"atr":0.088018,"spread_atr":0.454454,"own_change_pct":0.264389,"rel_strength_pct":{"SPY":0.26835,"IWM":0.201136}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.068506},"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":"ec592dcc439f","ts":"2026-09-15T15:31:05+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.0982,"target":11.44,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":24.9,"room_to_5d_high_atr":1.23},"price":11.315,"vwap":11.2506,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.94,"trend":"flat","recent_slope_pct":-0.266,"volatility":"high"},"price":11.315,"volume":{"bars":121,"last_bar_volume":161560.0,"baseline_avg":119133.45,"bar_rvol":1.356126,"raw_accel":0.736103,"smooth_accel":-0.339375,"accel_momentum":0.231073,"rvol_3bar":[0.816624,0.792262,1.356126],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":234,"trade_rate":7.8,"buy_vol":55866.0,"sell_vol":72300.0,"unclassified_vol":0.0,"imbalance":-0.128224,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.242185},"context":{"vwap":11.250402,"price_vs_vwap_pct":0.574181,"ema9":11.380377,"ema20":11.325812,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.437282,"dist_to_hod_atr":2.006004,"atr":0.082253,"spread_atr":0.121576,"own_change_pct":-0.872981,"rel_strength_pct":{"SPY":-0.86902,"IWM":-0.936235}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.173888},"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":"42b8ea6238d8","ts":"2026-09-15T15:31:05+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6502,"target":13.13,"target_label":"ceiling","reward_risk":1.09,"pos_in_5d_range_pct":23.3,"room_to_5d_high_atr":1.25},"price":12.88,"vwap":12.8738,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":-0.1473,"volatility":"high"},"price":12.88,"volume":{"bars":121,"last_bar_volume":76204.0,"baseline_avg":28351.0,"bar_rvol":2.687877,"raw_accel":1.297446,"smooth_accel":-0.167844,"accel_momentum":0.180053,"rvol_3bar":[1.396258,1.202891,2.687877],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":206,"trade_rate":6.866667,"buy_vol":24940.0,"sell_vol":18949.0,"unclassified_vol":0.0,"imbalance":0.136503,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":0.099196},"context":{"vwap":12.87367,"price_vs_vwap_pct":0.049173,"ema9":12.93818,"ema20":12.880843,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.201974,"dist_to_hod_atr":3.38609,"atr":0.085645,"spread_atr":0.116762,"own_change_pct":-0.84453,"rel_strength_pct":{"SPY":-0.840569,"IWM":-0.907783}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.366904},"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":"0b35f130eecc","ts":"2026-09-15T15:31:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says PASS; stop 5.62, target 5.79 (ceiling), R:R 0.72; R:R 0.72 < 2.0 at 5.72; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6187,"target":5.79,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":79.3,"room_to_5d_high_atr":0.28},"price":5.7183,"vwap":5.7131,"ext_from_open_pct":0.32,"max_ext_allowed_pct":4.0,"volume_pace":0.636,"trend":"flat","recent_slope_pct":-0.0065,"volatility":"high"},"price":5.7183,"volume":{"bars":121,"last_bar_volume":8222.0,"baseline_avg":3055.5,"bar_rvol":2.690885,"raw_accel":6.045416,"smooth_accel":0.410406,"accel_momentum":0.985274,"rvol_3bar":[0.403037,0.378558,2.690885],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":368.0,"sell_vol":288.0,"unclassified_vol":0.0,"imbalance":0.121951,"bid":5.71,"ask":5.72,"spread_pct":0.174978,"quote_size_imbalance":null,"quote_age_s":1.438505},"context":{"vwap":5.713065,"price_vs_vwap_pct":0.091629,"ema9":5.716189,"ema20":5.712704,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-1.238342,"dist_to_hod_atr":5.562288,"atr":0.01289,"spread_atr":0.775772,"own_change_pct":-0.050704,"rel_strength_pct":{"SPY":-0.046743,"IWM":-0.113957}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.328157},"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":"8404ef49587c","ts":"2026-09-15T15:31:20+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7764,"target":13.84,"target_label":"range_20d_high","reward_risk":7.61,"pos_in_5d_range_pct":60.5,"room_to_5d_high_atr":1.24},"price":12.9,"vwap":12.8613,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.998,"trend":"flat","recent_slope_pct":0.1539,"volatility":"medium"},"price":12.9,"volume":{"bars":121,"last_bar_volume":3471.0,"baseline_avg":905.95,"bar_rvol":3.831337,"raw_accel":14.325349,"smooth_accel":-0.206731,"accel_momentum":-1.309431,"rvol_3bar":[0.473987,0.192633,3.831337],"trend_3bar":"MIXED","projected_rvol":4.470445},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":911.0,"sell_vol":439.0,"unclassified_vol":0.0,"imbalance":0.34963,"bid":12.88,"ask":12.9,"spread_pct":0.155159,"quote_size_imbalance":null,"quote_age_s":2.91896},"context":{"vwap":12.861235,"price_vs_vwap_pct":0.301412,"ema9":12.833466,"ema20":12.823266,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.079663,"dist_to_hod_atr":14.130373,"atr":0.029008,"spread_atr":0.689455,"own_change_pct":0.336979,"rel_strength_pct":{"SPY":0.34094,"IWM":0.273725}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.339549},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"60d7cd544305","ts":"2026-09-15T15:31:25+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.87 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6402,"target":13.13,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":1.26},"price":12.87,"vwap":12.8738,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":-0.1628,"volatility":"high"},"price":12.87,"volume":{"bars":121,"last_bar_volume":76204.0,"baseline_avg":28351.0,"bar_rvol":2.687877,"raw_accel":1.297446,"smooth_accel":-0.167844,"accel_momentum":0.180053,"rvol_3bar":[1.396258,1.202891,2.687877],"trend_3bar":"MIXED","projected_rvol":2.228408},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":21126.0,"sell_vol":15050.0,"unclassified_vol":0.0,"imbalance":0.167957,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":2.87116},"context":{"vwap":12.87367,"price_vs_vwap_pct":-0.028505,"ema9":12.93818,"ema20":12.880843,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.277904,"dist_to_hod_atr":3.502852,"atr":0.085645,"spread_atr":0.116762,"own_change_pct":-0.84453,"rel_strength_pct":{"SPY":-0.840569,"IWM":-0.907783}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.451447},"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":"38a51a41bc4b","ts":"2026-09-15T15:31:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.7301,"target":10.1101,"target_label":"clear air (typical 60-min move)","reward_risk":3.75,"pos_in_5d_range_pct":473.0,"room_to_5d_high_atr":-5.37},"price":9.8101,"vwap":9.5879,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":4.83,"trend":"flat","recent_slope_pct":-0.0506,"volatility":"low"},"price":9.8101,"volume":{"bars":121,"last_bar_volume":3094.0,"baseline_avg":11485.3,"bar_rvol":0.269388,"raw_accel":-0.646723,"smooth_accel":-0.630919,"accel_momentum":-0.030554,"rvol_3bar":[0.66507,0.738688,0.269388],"trend_3bar":"MIXED","projected_rvol":0.404517},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":737.0,"sell_vol":1586.0,"unclassified_vol":0.0,"imbalance":-0.365476,"bid":9.8,"ask":9.84,"spread_pct":0.407332,"quote_size_imbalance":null,"quote_age_s":1.288267},"context":{"vwap":9.587442,"price_vs_vwap_pct":2.322391,"ema9":9.846942,"ema20":9.796927,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.822549,"dist_to_hod_atr":4.429792,"atr":0.088018,"spread_atr":0.454454,"own_change_pct":0.264389,"rel_strength_pct":{"SPY":0.26835,"IWM":0.201136}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.098455},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bf71f866297f","ts":"2026-09-15T15:31:30+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":12.7516,"target":13.84,"target_label":"range_20d_high","reward_risk":7.81,"pos_in_5d_range_pct":58.9,"room_to_5d_high_atr":1.29},"price":12.8752,"vwap":12.8613,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.996,"trend":"flat","recent_slope_pct":0.1154,"volatility":"medium"},"price":12.8752,"volume":{"bars":121,"last_bar_volume":3471.0,"baseline_avg":905.95,"bar_rvol":3.831337,"raw_accel":14.325349,"smooth_accel":-0.206731,"accel_momentum":-1.309431,"rvol_3bar":[0.473987,0.192633,3.831337],"trend_3bar":"MIXED","projected_rvol":2.984712},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":911.0,"sell_vol":441.0,"unclassified_vol":0.0,"imbalance":0.347633,"bid":12.88,"ask":12.9,"spread_pct":0.155159,"quote_size_imbalance":null,"quote_age_s":3.304108},"context":{"vwap":12.861235,"price_vs_vwap_pct":0.108585,"ema9":12.833466,"ema20":12.823266,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.26599,"dist_to_hod_atr":14.985297,"atr":0.029008,"spread_atr":0.689455,"own_change_pct":0.336979,"rel_strength_pct":{"SPY":0.34094,"IWM":0.273725}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.3319},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1cbebb062344","ts":"2026-09-15T15:31:30+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6452,"target":13.13,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":1.26},"price":12.875,"vwap":12.8739,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":4.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":-0.155,"volatility":"high"},"price":12.875,"volume":{"bars":121,"last_bar_volume":76204.0,"baseline_avg":28351.0,"bar_rvol":2.687877,"raw_accel":1.297446,"smooth_accel":-0.167844,"accel_momentum":0.180053,"rvol_3bar":[1.396258,1.202891,2.687877],"trend_3bar":"MIXED","projected_rvol":2.168177},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":15752.0,"sell_vol":14983.0,"unclassified_vol":0.0,"imbalance":0.02502,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":0.003882},"context":{"vwap":12.87367,"price_vs_vwap_pct":0.010334,"ema9":12.93818,"ema20":12.880843,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.239939,"dist_to_hod_atr":3.444471,"atr":0.085645,"spread_atr":0.116762,"own_change_pct":-0.84453,"rel_strength_pct":{"SPY":-0.840569,"IWM":-0.907783}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.067252},"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":"92e307b31f82","ts":"2026-09-15T15:31:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.75,"target":10.13,"target_label":"clear air (typical 60-min move)","reward_risk":3.75,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.5879,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":4.827,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"low"},"price":9.83,"volume":{"bars":121,"last_bar_volume":3094.0,"baseline_avg":11485.3,"bar_rvol":0.269388,"raw_accel":-0.646723,"smooth_accel":-0.630919,"accel_momentum":-0.030554,"rvol_3bar":[0.66507,0.738688,0.269388],"trend_3bar":"MIXED","projected_rvol":0.378073},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":647.0,"sell_vol":1646.0,"unclassified_vol":0.0,"imbalance":-0.435674,"bid":9.81,"ask":9.85,"spread_pct":0.406918,"quote_size_imbalance":null,"quote_age_s":1.618052},"context":{"vwap":9.587442,"price_vs_vwap_pct":2.529954,"ema9":9.846942,"ema20":9.796927,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":4.203701,"atr":0.088018,"spread_atr":0.454454,"own_change_pct":0.264389,"rel_strength_pct":{"SPY":0.26835,"IWM":0.201136}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.117365},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2d59fa53e275","ts":"2026-09-15T15:31:40+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7464,"target":13.84,"target_label":"range_20d_high","reward_risk":7.85,"pos_in_5d_range_pct":58.5,"room_to_5d_high_atr":1.31},"price":12.87,"vwap":12.8613,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.998,"trend":"flat","recent_slope_pct":0.1073,"volatility":"medium"},"price":12.87,"volume":{"bars":121,"last_bar_volume":3471.0,"baseline_avg":905.95,"bar_rvol":3.831337,"raw_accel":14.325349,"smooth_accel":-0.206731,"accel_momentum":-1.309431,"rvol_3bar":[0.473987,0.192633,3.831337],"trend_3bar":"MIXED","projected_rvol":4.043269},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1481.0,"sell_vol":524.0,"unclassified_vol":0.0,"imbalance":0.477307,"bid":12.87,"ask":12.89,"spread_pct":0.15528,"quote_size_imbalance":null,"quote_age_s":0.655544},"context":{"vwap":12.861235,"price_vs_vwap_pct":0.068153,"ema9":12.833466,"ema20":12.823266,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.305059,"dist_to_hod_atr":15.164555,"atr":0.029008,"spread_atr":0.689455,"own_change_pct":0.336979,"rel_strength_pct":{"SPY":0.34094,"IWM":0.273725}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.828723},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1b73896ffd8d","ts":"2026-09-15T15:31:50+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.87 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6402,"target":13.13,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":1.26},"price":12.87,"vwap":12.8739,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":-0.1628,"volatility":"high"},"price":12.87,"volume":{"bars":121,"last_bar_volume":76204.0,"baseline_avg":28351.0,"bar_rvol":2.687877,"raw_accel":1.297446,"smooth_accel":-0.167844,"accel_momentum":0.180053,"rvol_3bar":[1.396258,1.202891,2.687877],"trend_3bar":"MIXED","projected_rvol":1.560749},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":2939.0,"sell_vol":7657.0,"unclassified_vol":0.0,"imbalance":-0.445262,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":1.108289},"context":{"vwap":12.87367,"price_vs_vwap_pct":-0.028505,"ema9":12.93818,"ema20":12.880843,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.277904,"dist_to_hod_atr":3.502852,"atr":0.085645,"spread_atr":0.116762,"own_change_pct":-0.84453,"rel_strength_pct":{"SPY":-0.840569,"IWM":-0.907783}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.19681},"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":"cdc57886c87a","ts":"2026-09-15T15:31:55+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6452,"target":13.13,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":1.26},"price":12.875,"vwap":12.8739,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":-0.155,"volatility":"high"},"price":12.875,"volume":{"bars":121,"last_bar_volume":76204.0,"baseline_avg":28351.0,"bar_rvol":2.687877,"raw_accel":1.297446,"smooth_accel":-0.167844,"accel_momentum":0.180053,"rvol_3bar":[1.396258,1.202891,2.687877],"trend_3bar":"MIXED","projected_rvol":1.444066},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":2944.0,"sell_vol":8261.0,"unclassified_vol":0.0,"imbalance":-0.47452,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":0.086819},"context":{"vwap":12.87367,"price_vs_vwap_pct":0.010334,"ema9":12.93818,"ema20":12.880843,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.239939,"dist_to_hod_atr":3.444471,"atr":0.085645,"spread_atr":0.116762,"own_change_pct":-0.84453,"rel_strength_pct":{"SPY":-0.840569,"IWM":-0.907783}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.275452},"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":"f4257059bd20","ts":"2026-09-15T15:32:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.74,"target":10.12,"target_label":"clear air (typical 60-min move)","reward_risk":3.75,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.588,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":4.813,"trend":"flat","recent_slope_pct":-0.0305,"volatility":"low"},"price":9.82,"volume":{"bars":121,"last_bar_volume":3094.0,"baseline_avg":11485.3,"bar_rvol":0.269388,"raw_accel":-0.646723,"smooth_accel":-0.630919,"accel_momentum":-0.030554,"rvol_3bar":[0.66507,0.738688,0.269388],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":243.0,"sell_vol":529.0,"unclassified_vol":0.0,"imbalance":-0.370466,"bid":9.8,"ask":9.84,"spread_pct":0.407332,"quote_size_imbalance":null,"quote_age_s":1.742128},"context":{"vwap":9.587442,"price_vs_vwap_pct":2.425651,"ema9":9.846942,"ema20":9.796927,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":4.317315,"atr":0.088018,"spread_atr":0.454454,"own_change_pct":0.264389,"rel_strength_pct":{"SPY":0.289474,"IWM":0.194102}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.099799},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b011f6f19e64","ts":"2026-09-15T15:32:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.7523,"target":10.1523,"target_label":"clear air (typical 60-min move)","reward_risk":4.0,"pos_in_5d_range_pct":479.0,"room_to_5d_high_atr":-5.46},"price":9.8323,"vwap":9.588,"ext_from_open_pct":4.05,"max_ext_allowed_pct":4.0,"volume_pace":4.809,"trend":"flat","recent_slope_pct":0.0148,"volatility":"low"},"price":9.8323,"volume":{"bars":122,"last_bar_volume":3095.0,"baseline_avg":11302.55,"bar_rvol":0.273832,"raw_accel":0.000323,"smooth_accel":-0.453172,"accel_momentum":0.177747,"rvol_3bar":[0.738688,0.269388,0.273832],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":143.0,"sell_vol":459.0,"unclassified_vol":0.0,"imbalance":-0.524917,"bid":9.8,"ask":9.84,"spread_pct":0.407332,"quote_size_imbalance":null,"quote_age_s":4.992819},"context":{"vwap":9.588017,"price_vs_vwap_pct":2.547796,"ema9":9.841553,"ema20":9.799124,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.604902,"dist_to_hod_atr":4.218714,"atr":0.087159,"spread_atr":0.45893,"own_change_pct":-0.707786,"rel_strength_pct":{"SPY":-0.682701,"IWM":-0.778072}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.143739},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"10837f9e3a74","ts":"2026-09-15T15:32:05+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.87 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6402,"target":13.13,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":22.7,"room_to_5d_high_atr":1.26},"price":12.87,"vwap":12.874,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":-0.2721,"volatility":"high"},"price":12.87,"volume":{"bars":122,"last_bar_volume":39767.0,"baseline_avg":31477.75,"bar_rvol":1.263337,"raw_accel":-0.478151,"smooth_accel":0.409494,"accel_momentum":0.577338,"rvol_3bar":[1.202891,2.687877,1.263337],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":2101.0,"sell_vol":6702.0,"unclassified_vol":0.0,"imbalance":-0.522663,"bid":12.86,"ask":12.87,"spread_pct":0.07773,"quote_size_imbalance":null,"quote_age_s":0.555135},"context":{"vwap":12.873982,"price_vs_vwap_pct":-0.030931,"ema9":12.929164,"ema20":12.882011,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.277904,"dist_to_hod_atr":3.42137,"atr":0.087684,"spread_atr":0.114046,"own_change_pct":-0.974654,"rel_strength_pct":{"SPY":-0.94957,"IWM":-1.044941}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.660299},"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":"6ef666ac8fbe","ts":"2026-09-15T15:32:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.74,"target":10.14,"target_label":"clear air (typical 60-min move)","reward_risk":4.0,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.588,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":4.806,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"low"},"price":9.82,"volume":{"bars":122,"last_bar_volume":3095.0,"baseline_avg":11302.55,"bar_rvol":0.273832,"raw_accel":0.000323,"smooth_accel":-0.453172,"accel_momentum":0.177747,"rvol_3bar":[0.738688,0.269388,0.273832],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":143.0,"sell_vol":375.0,"unclassified_vol":0.0,"imbalance":-0.447876,"bid":9.8,"ask":9.84,"spread_pct":0.407332,"quote_size_imbalance":null,"quote_age_s":9.992819},"context":{"vwap":9.588017,"price_vs_vwap_pct":2.419511,"ema9":9.841553,"ema20":9.799124,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":4.359835,"atr":0.087159,"spread_atr":0.45893,"own_change_pct":-0.707786,"rel_strength_pct":{"SPY":-0.682701,"IWM":-0.778072}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.122643},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7315b6150337","ts":"2026-09-15T15:32:10+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6994,"target":13.13,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":28.6,"room_to_5d_high_atr":1.16},"price":12.9593,"vwap":12.874,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":-0.1338,"volatility":"high"},"price":12.9593,"volume":{"bars":122,"last_bar_volume":39767.0,"baseline_avg":31477.75,"bar_rvol":1.263337,"raw_accel":-0.478151,"smooth_accel":0.409494,"accel_momentum":0.577338,"rvol_3bar":[1.202891,2.687877,1.263337],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":2396.0,"sell_vol":5052.0,"unclassified_vol":0.0,"imbalance":-0.356606,"bid":12.85,"ask":12.86,"spread_pct":0.077791,"quote_size_imbalance":null,"quote_age_s":1.081271},"context":{"vwap":12.873982,"price_vs_vwap_pct":0.662717,"ema9":12.929164,"ema20":12.882011,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-1.599848,"dist_to_hod_atr":2.402942,"atr":0.087684,"spread_atr":0.114046,"own_change_pct":-0.974654,"rel_strength_pct":{"SPY":-0.94957,"IWM":-1.044941}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.450513},"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":"3fd60d5d0c8d","ts":"2026-09-15T15:32:15+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.85 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6228,"target":13.13,"target_label":"ceiling","reward_risk":1.21,"pos_in_5d_range_pct":21.5,"room_to_5d_high_atr":1.28},"price":12.8526,"vwap":12.874,"ext_from_open_pct":-1.51,"max_ext_allowed_pct":3.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":-0.2991,"volatility":"high"},"price":12.8526,"volume":{"bars":122,"last_bar_volume":39767.0,"baseline_avg":31477.75,"bar_rvol":1.263337,"raw_accel":-0.478151,"smooth_accel":0.409494,"accel_momentum":0.577338,"rvol_3bar":[1.202891,2.687877,1.263337],"trend_3bar":"MIXED","projected_rvol":0.638165},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":2119.0,"sell_vol":6232.0,"unclassified_vol":0.0,"imbalance":-0.492516,"bid":12.85,"ask":12.86,"spread_pct":0.077791,"quote_size_imbalance":null,"quote_age_s":0.634926},"context":{"vwap":12.873982,"price_vs_vwap_pct":-0.166087,"ema9":12.929164,"ema20":12.882011,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.410023,"dist_to_hod_atr":3.619809,"atr":0.087684,"spread_atr":0.114046,"own_change_pct":-0.974654,"rel_strength_pct":{"SPY":-0.94957,"IWM":-1.044941}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.622213},"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":"76420d56c236","ts":"2026-09-15T15:32:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.79,"target":10.2047,"target_label":"clear air (typical 60-min move)","reward_risk":3.38,"pos_in_5d_range_pct":493.2,"room_to_5d_high_atr":-5.66},"price":9.8847,"vwap":9.5881,"ext_from_open_pct":4.6,"max_ext_allowed_pct":4.0,"volume_pace":4.8,"trend":"flat","recent_slope_pct":0.1213,"volatility":"low"},"price":9.8847,"volume":{"bars":122,"last_bar_volume":3095.0,"baseline_avg":11302.55,"bar_rvol":0.273832,"raw_accel":0.000323,"smooth_accel":-0.453172,"accel_momentum":0.177747,"rvol_3bar":[0.738688,0.269388,0.273832],"trend_3bar":"MIXED","projected_rvol":0.057067},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":125.0,"sell_vol":400.0,"unclassified_vol":0.0,"imbalance":-0.52381,"bid":9.8,"ask":9.84,"spread_pct":0.407332,"quote_size_imbalance":null,"quote_age_s":0.186461},"context":{"vwap":9.588017,"price_vs_vwap_pct":3.094311,"ema9":9.841553,"ema20":9.799124,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.091176,"dist_to_hod_atr":3.617515,"atr":0.087159,"spread_atr":0.45893,"own_change_pct":-0.707786,"rel_strength_pct":{"SPY":-0.682701,"IWM":-0.778072}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.143436},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1a60c0ee0c37","ts":"2026-09-15T15:32:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.74,"target":10.14,"target_label":"clear air (typical 60-min move)","reward_risk":4.0,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.5881,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":4.797,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"low"},"price":9.82,"volume":{"bars":122,"last_bar_volume":3095.0,"baseline_avg":11302.55,"bar_rvol":0.273832,"raw_accel":0.000323,"smooth_accel":-0.453172,"accel_momentum":0.177747,"rvol_3bar":[0.738688,0.269388,0.273832],"trend_3bar":"MIXED","projected_rvol":0.066888},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":25.0,"sell_vol":500.0,"unclassified_vol":0.0,"imbalance":-0.904762,"bid":9.8,"ask":9.84,"spread_pct":0.407332,"quote_size_imbalance":null,"quote_age_s":5.186461},"context":{"vwap":9.588017,"price_vs_vwap_pct":2.419511,"ema9":9.841553,"ema20":9.799124,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":4.359835,"atr":0.087159,"spread_atr":0.45893,"own_change_pct":-0.707786,"rel_strength_pct":{"SPY":-0.682701,"IWM":-0.778072}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.247753},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"806eba0f5653","ts":"2026-09-15T15:32:25+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6737,"target":13.13,"target_label":"ceiling","reward_risk":0.99,"pos_in_5d_range_pct":24.9,"room_to_5d_high_atr":1.23},"price":12.9035,"vwap":12.874,"ext_from_open_pct":-1.12,"max_ext_allowed_pct":3.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":-0.2202,"volatility":"high"},"price":12.9035,"volume":{"bars":122,"last_bar_volume":39767.0,"baseline_avg":31477.75,"bar_rvol":1.263337,"raw_accel":-0.478151,"smooth_accel":0.409494,"accel_momentum":0.577338,"rvol_3bar":[1.202891,2.687877,1.263337],"trend_3bar":"MIXED","projected_rvol":0.546824},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2295.0,"sell_vol":7115.0,"unclassified_vol":0.0,"imbalance":-0.512221,"bid":12.85,"ask":12.86,"spread_pct":0.077791,"quote_size_imbalance":null,"quote_age_s":0.107501},"context":{"vwap":12.873982,"price_vs_vwap_pct":0.229284,"ema9":12.929164,"ema20":12.882011,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.023538,"dist_to_hod_atr":3.039317,"atr":0.087684,"spread_atr":0.114046,"own_change_pct":-0.974654,"rel_strength_pct":{"SPY":-0.94957,"IWM":-1.044941}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.647108},"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":"649bc4ec23e2","ts":"2026-09-15T15:32:30+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.85 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6152,"target":13.13,"target_label":"ceiling","reward_risk":1.24,"pos_in_5d_range_pct":21.0,"room_to_5d_high_atr":1.29},"price":12.845,"vwap":12.874,"ext_from_open_pct":-1.57,"max_ext_allowed_pct":3.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":-0.3109,"volatility":"high"},"price":12.845,"volume":{"bars":122,"last_bar_volume":39767.0,"baseline_avg":31477.75,"bar_rvol":1.263337,"raw_accel":-0.478151,"smooth_accel":0.409494,"accel_momentum":0.577338,"rvol_3bar":[1.202891,2.687877,1.263337],"trend_3bar":"MIXED","projected_rvol":0.589496},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1596.0,"sell_vol":7682.0,"unclassified_vol":0.0,"imbalance":-0.65596,"bid":12.84,"ask":12.85,"spread_pct":0.077851,"quote_size_imbalance":null,"quote_age_s":0.142388},"context":{"vwap":12.873982,"price_vs_vwap_pct":-0.225121,"ema9":12.929164,"ema20":12.882011,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.46773,"dist_to_hod_atr":3.706484,"atr":0.087684,"spread_atr":0.114046,"own_change_pct":-0.974654,"rel_strength_pct":{"SPY":-0.94957,"IWM":-1.044941}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.828699},"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":"8ab94228fa51","ts":"2026-09-15T15:32:45+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6994,"target":13.13,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":27.1,"room_to_5d_high_atr":1.19},"price":12.9363,"vwap":12.8741,"ext_from_open_pct":-0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":-0.1694,"volatility":"high"},"price":12.9363,"volume":{"bars":122,"last_bar_volume":39767.0,"baseline_avg":31477.75,"bar_rvol":1.263337,"raw_accel":-0.478151,"smooth_accel":0.409494,"accel_momentum":0.577338,"rvol_3bar":[1.202891,2.687877,1.263337],"trend_3bar":"MIXED","projected_rvol":0.813781},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":5059.0,"sell_vol":9131.0,"unclassified_vol":0.0,"imbalance":-0.286963,"bid":12.83,"ask":12.84,"spread_pct":0.077912,"quote_size_imbalance":null,"quote_age_s":0.094014},"context":{"vwap":12.873982,"price_vs_vwap_pct":0.484062,"ema9":12.929164,"ema20":12.882011,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-1.774487,"dist_to_hod_atr":2.665247,"atr":0.087684,"spread_atr":0.114046,"own_change_pct":-0.974654,"rel_strength_pct":{"SPY":-0.94957,"IWM":-1.044941}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.36253},"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":"6bfe1a7af8e4","ts":"2026-09-15T15:33:00+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.84 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6102,"target":13.13,"target_label":"ceiling","reward_risk":1.26,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":1.29},"price":12.84,"vwap":12.874,"ext_from_open_pct":-1.61,"max_ext_allowed_pct":3.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":-0.3187,"volatility":"high"},"price":12.84,"volume":{"bars":122,"last_bar_volume":39767.0,"baseline_avg":31477.75,"bar_rvol":1.263337,"raw_accel":-0.478151,"smooth_accel":0.409494,"accel_momentum":0.577338,"rvol_3bar":[1.202891,2.687877,1.263337],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4936.0,"sell_vol":6153.0,"unclassified_vol":0.0,"imbalance":-0.109748,"bid":12.84,"ask":12.85,"spread_pct":0.077851,"quote_size_imbalance":null,"quote_age_s":1.994656},"context":{"vwap":12.873982,"price_vs_vwap_pct":-0.263959,"ema9":12.929164,"ema20":12.882011,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.505695,"dist_to_hod_atr":3.763506,"atr":0.087684,"spread_atr":0.114046,"own_change_pct":-0.974654,"rel_strength_pct":{"SPY":-0.923378,"IWM":-1.027365}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.138649},"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":"8bc6c88fdb67","ts":"2026-09-15T15:33:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.11,"target_label":"clear air (typical 60-min move)","reward_risk":2.61,"pos_in_5d_range_pct":467.6,"room_to_5d_high_atr":-5.3},"price":9.79,"vwap":9.5888,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":4.787,"trend":"flat","recent_slope_pct":-0.1986,"volatility":"low"},"price":9.79,"volume":{"bars":123,"last_bar_volume":4801.0,"baseline_avg":11228.5,"bar_rvol":0.427573,"raw_accel":0.551212,"smooth_accel":-0.482751,"accel_momentum":-0.029579,"rvol_3bar":[0.269388,0.273832,0.427573],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1176.0,"sell_vol":2325.0,"unclassified_vol":0.0,"imbalance":-0.328192,"bid":9.76,"ask":9.82,"spread_pct":0.61287,"quote_size_imbalance":null,"quote_age_s":3.647349},"context":{"vwap":9.588796,"price_vs_vwap_pct":2.098324,"ema9":9.830243,"ema20":9.797779,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.019608,"dist_to_hod_atr":4.547361,"atr":0.090162,"spread_atr":0.665468,"own_change_pct":-0.760649,"rel_strength_pct":{"SPY":-0.709373,"IWM":-0.81336}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.140326},"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":"9f3f9be52ad1","ts":"2026-09-15T15:33:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1123,"target":7.2991,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":25.5,"room_to_5d_high_atr":1.59},"price":7.2167,"vwap":7.194,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.664,"trend":"flat","recent_slope_pct":-0.0783,"volatility":"medium"},"price":7.2167,"volume":{"bars":123,"last_bar_volume":206631.0,"baseline_avg":168304.4,"bar_rvol":1.227722,"raw_accel":0.038013,"smooth_accel":0.779003,"accel_momentum":-0.354323,"rvol_3bar":[1.788188,1.23861,1.227722],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":178,"trade_rate":5.933333,"buy_vol":40484.0,"sell_vol":75992.0,"unclassified_vol":0.0,"imbalance":-0.304853,"bid":7.21,"ask":7.22,"spread_pct":0.1386,"quote_size_imbalance":null,"quote_age_s":0.0409},"context":{"vwap":7.193991,"price_vs_vwap_pct":0.315665,"ema9":7.2234,"ema20":7.212277,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.545703,"dist_to_hod_atr":5.042994,"atr":0.022467,"spread_atr":0.445101,"own_change_pct":-0.276434,"rel_strength_pct":{"SPY":-0.225158,"IWM":-0.329145}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.374274},"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":"db88b2211d32","ts":"2026-09-15T15:33:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.30x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":7.6158,"target":8.07,"target_label":"premarket_high","reward_risk":1.39,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":1.15},"price":7.8055,"vwap":7.7501,"ext_from_open_pct":1.37,"max_ext_allowed_pct":4.0,"volume_pace":0.299,"trend":"flat","recent_slope_pct":0.0174,"volatility":"high"},"price":7.8055,"volume":{"bars":123,"last_bar_volume":9598.0,"baseline_avg":8354.45,"bar_rvol":1.148849,"raw_accel":2.429082,"smooth_accel":0.447838,"accel_momentum":0.621841,"rvol_3bar":[0.45874,0.329356,1.148849],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2146.0,"sell_vol":3019.0,"unclassified_vol":0.0,"imbalance":-0.169022,"bid":7.79,"ask":7.81,"spread_pct":0.25641,"quote_size_imbalance":null,"quote_age_s":3.566184},"context":{"vwap":7.750058,"price_vs_vwap_pct":0.715378,"ema9":7.797428,"ema20":7.779564,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-1.940955,"dist_to_hod_atr":4.176017,"atr":0.036997,"spread_atr":0.540585,"own_change_pct":0.091109,"rel_strength_pct":{"SPY":0.142385,"IWM":0.038397}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.194181},"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":"9acfebae5818","ts":"2026-09-15T15:33:10+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6994,"target":13.13,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":27.5,"room_to_5d_high_atr":1.18},"price":12.9419,"vwap":12.874,"ext_from_open_pct":-0.83,"max_ext_allowed_pct":3.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":-0.1093,"volatility":"high"},"price":12.9419,"volume":{"bars":123,"last_bar_volume":20367.0,"baseline_avg":32296.05,"bar_rvol":0.630634,"raw_accel":-0.487842,"smooth_accel":0.269749,"accel_momentum":-0.139746,"rvol_3bar":[2.687877,1.263337,0.630634],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1317.0,"sell_vol":743.0,"unclassified_vol":0.0,"imbalance":0.278641,"bid":12.84,"ask":12.85,"spread_pct":0.077851,"quote_size_imbalance":null,"quote_age_s":0.4934},"context":{"vwap":12.873996,"price_vs_vwap_pct":0.527448,"ema9":12.911331,"ema20":12.87801,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-1.731967,"dist_to_hod_atr":2.508179,"atr":0.090942,"spread_atr":0.10996,"own_change_pct":-0.69836,"rel_strength_pct":{"SPY":-0.647084,"IWM":-0.751071}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.17572},"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":"35df0ce31fb3","ts":"2026-09-15T15:33:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.0907,"target_label":"clear air (typical 60-min move)","reward_risk":3.1,"pos_in_5d_range_pct":462.4,"room_to_5d_high_atr":-5.22},"price":9.7707,"vwap":9.5889,"ext_from_open_pct":3.39,"max_ext_allowed_pct":4.0,"volume_pace":4.784,"trend":"flat","recent_slope_pct":-0.238,"volatility":"low"},"price":9.7707,"volume":{"bars":123,"last_bar_volume":4801.0,"baseline_avg":11228.5,"bar_rvol":0.427573,"raw_accel":0.551212,"smooth_accel":-0.482751,"accel_momentum":-0.029579,"rvol_3bar":[0.269388,0.273832,0.427573],"trend_3bar":"ACCELERATING","projected_rvol":0.38331},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1404.0,"sell_vol":3104.0,"unclassified_vol":0.0,"imbalance":-0.377107,"bid":9.74,"ask":9.79,"spread_pct":0.512033,"quote_size_imbalance":null,"quote_age_s":0.049852},"context":{"vwap":9.588796,"price_vs_vwap_pct":1.897047,"ema9":9.830243,"ema20":9.797779,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.208824,"dist_to_hod_atr":4.76142,"atr":0.090162,"spread_atr":0.554556,"own_change_pct":-0.760649,"rel_strength_pct":{"SPY":-0.709373,"IWM":-0.81336}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.161241},"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":"246b16eb381f","ts":"2026-09-15T15:33:20+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.87 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6352,"target":13.13,"target_label":"ceiling","reward_risk":1.15,"pos_in_5d_range_pct":22.3,"room_to_5d_high_atr":1.27},"price":12.865,"vwap":12.874,"ext_from_open_pct":-1.42,"max_ext_allowed_pct":3.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":-0.2287,"volatility":"high"},"price":12.865,"volume":{"bars":123,"last_bar_volume":20367.0,"baseline_avg":32296.05,"bar_rvol":0.630634,"raw_accel":-0.487842,"smooth_accel":0.269749,"accel_momentum":-0.139746,"rvol_3bar":[2.687877,1.263337,0.630634],"trend_3bar":"DECELERATING","projected_rvol":1.039725},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":7917.0,"sell_vol":3639.0,"unclassified_vol":0.0,"imbalance":0.370197,"bid":12.86,"ask":12.87,"spread_pct":0.07773,"quote_size_imbalance":null,"quote_age_s":0.643838},"context":{"vwap":12.873996,"price_vs_vwap_pct":-0.06988,"ema9":12.911331,"ema20":12.87801,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.315869,"dist_to_hod_atr":3.353769,"atr":0.090942,"spread_atr":0.10996,"own_change_pct":-0.69836,"rel_strength_pct":{"SPY":-0.647084,"IWM":-0.751071}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.233459},"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":"ed117c62a7de","ts":"2026-09-15T15:33:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.65,"target":10.11,"target_label":"clear air (typical 60-min move)","reward_risk":2.29,"pos_in_5d_range_pct":467.6,"room_to_5d_high_atr":-5.3},"price":9.79,"vwap":9.5898,"ext_from_open_pct":3.6,"max_ext_allowed_pct":5.0,"volume_pace":4.793,"trend":"flat","recent_slope_pct":-0.1986,"volatility":"low"},"price":9.79,"volume":{"bars":123,"last_bar_volume":4801.0,"baseline_avg":11228.5,"bar_rvol":0.427573,"raw_accel":0.551212,"smooth_accel":-0.482751,"accel_momentum":-0.029579,"rvol_3bar":[0.269388,0.273832,0.427573],"trend_3bar":"ACCELERATING","projected_rvol":1.102297},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":5201.0,"sell_vol":2004.0,"unclassified_vol":0.0,"imbalance":0.44372,"bid":9.76,"ask":9.83,"spread_pct":0.71465,"quote_size_imbalance":null,"quote_age_s":0.272037},"context":{"vwap":9.588796,"price_vs_vwap_pct":2.098324,"ema9":9.830243,"ema20":9.797779,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.019608,"dist_to_hod_atr":4.547361,"atr":0.090162,"spread_atr":0.776379,"own_change_pct":-0.760649,"rel_strength_pct":{"SPY":-0.709373,"IWM":-0.81336}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.189722},"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":"c8d8ed635634","ts":"2026-09-15T15:33:40+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.6502,"target":13.13,"target_label":"ceiling","reward_risk":1.09,"pos_in_5d_range_pct":23.3,"room_to_5d_high_atr":1.25},"price":12.88,"vwap":12.8741,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":4.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":-0.2054,"volatility":"high"},"price":12.88,"volume":{"bars":123,"last_bar_volume":20367.0,"baseline_avg":32296.05,"bar_rvol":0.630634,"raw_accel":-0.487842,"smooth_accel":0.269749,"accel_momentum":-0.139746,"rvol_3bar":[2.687877,1.263337,0.630634],"trend_3bar":"DECELERATING","projected_rvol":1.037588},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":17256.0,"sell_vol":4640.0,"unclassified_vol":0.0,"imbalance":0.576178,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.811879},"context":{"vwap":12.873996,"price_vs_vwap_pct":0.046634,"ema9":12.911331,"ema20":12.87801,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.201974,"dist_to_hod_atr":3.18883,"atr":0.090942,"spread_atr":0.10996,"own_change_pct":-0.69836,"rel_strength_pct":{"SPY":-0.647084,"IWM":-0.751071}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.363358},"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":"327aaf4d7349","ts":"2026-09-15T15:34:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.1256,"target":7.2991,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":27.0,"room_to_5d_high_atr":1.56},"price":7.23,"vwap":7.1944,"ext_from_open_pct":1.12,"max_ext_allowed_pct":4.0,"volume_pace":0.667,"trend":"flat","recent_slope_pct":-0.0032,"volatility":"medium"},"price":7.23,"volume":{"bars":124,"last_bar_volume":240925.0,"baseline_avg":175763.45,"bar_rvol":1.370734,"raw_accel":0.165967,"smooth_accel":0.029089,"accel_momentum":-0.749914,"rvol_3bar":[1.23861,1.227722,1.370734],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":30013.0,"sell_vol":43269.0,"unclassified_vol":0.0,"imbalance":-0.18089,"bid":7.22,"ask":7.23,"spread_pct":0.138408,"quote_size_imbalance":null,"quote_age_s":0.044448},"context":{"vwap":7.194376,"price_vs_vwap_pct":0.495164,"ema9":7.22426,"ema20":7.213746,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.364256,"dist_to_hod_atr":4.486194,"atr":0.022291,"spread_atr":0.448619,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.051491,"IWM":-0.010541}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.247952},"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":"a9c52b507720","ts":"2026-09-15T15:34:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1231,"target":11.44,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":26.7,"room_to_5d_high_atr":1.21},"price":11.3399,"vwap":11.2524,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":0.938,"trend":"flat","recent_slope_pct":-0.0042,"volatility":"high"},"price":11.3399,"volume":{"bars":124,"last_bar_volume":117582.0,"baseline_avg":132550.7,"bar_rvol":0.887072,"raw_accel":0.080012,"smooth_accel":0.067144,"accel_momentum":-0.516792,"rvol_3bar":[1.15976,0.836181,0.887072],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":13136.0,"sell_vol":13649.0,"unclassified_vol":0.0,"imbalance":-0.019153,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.403741},"context":{"vwap":11.252403,"price_vs_vwap_pct":0.777589,"ema9":11.349382,"ema20":11.323199,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.220383,"dist_to_hod_atr":1.575392,"atr":0.08893,"spread_atr":0.112448,"own_change_pct":-0.900507,"rel_strength_pct":{"SPY":-0.849016,"IWM":-0.911048}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.01699},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f01e5311f144","ts":"2026-09-15T15:34:05+00:00","symbol":"CLSK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.6502,"target":13.13,"target_label":"ceiling","reward_risk":1.09,"pos_in_5d_range_pct":23.3,"room_to_5d_high_atr":1.25},"price":12.88,"vwap":12.8741,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":4.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":-0.0494,"volatility":"high"},"price":12.88,"volume":{"bars":124,"last_bar_volume":28642.0,"baseline_avg":32323.6,"bar_rvol":0.886102,"raw_accel":0.406294,"smooth_accel":-0.398202,"accel_momentum":-0.667951,"rvol_3bar":[1.263337,0.630634,0.886102],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":9070.0,"sell_vol":3120.0,"unclassified_vol":0.0,"imbalance":0.488105,"bid":12.88,"ask":12.89,"spread_pct":0.07761,"quote_size_imbalance":null,"quote_age_s":0.966201},"context":{"vwap":12.874134,"price_vs_vwap_pct":0.045567,"ema9":12.908965,"ema20":12.880056,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.201974,"dist_to_hod_atr":3.103141,"atr":0.093454,"spread_atr":0.107005,"own_change_pct":-0.811226,"rel_strength_pct":{"SPY":-0.759736,"IWM":-0.821767}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.432511},"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":"8e89aee776ba","ts":"2026-09-15T15:34:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.7408,"target":10.125,"target_label":"clear air (typical 60-min move)","reward_risk":4.98,"pos_in_5d_range_pct":471.6,"room_to_5d_high_atr":-5.35},"price":9.805,"vwap":9.5904,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":4.785,"trend":"flat","recent_slope_pct":-0.1427,"volatility":"low"},"price":9.805,"volume":{"bars":124,"last_bar_volume":11285.0,"baseline_avg":11432.1,"bar_rvol":0.987133,"raw_accel":1.350552,"smooth_accel":-0.017216,"accel_momentum":0.465535,"rvol_3bar":[0.273832,0.427573,0.987133],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":3517.0,"sell_vol":569.0,"unclassified_vol":0.0,"imbalance":0.721488,"bid":9.8,"ask":9.81,"spread_pct":0.101989,"quote_size_imbalance":null,"quote_age_s":0.48957},"context":{"vwap":9.590427,"price_vs_vwap_pct":2.237369,"ema9":9.822194,"ema20":9.797038,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.872549,"dist_to_hod_atr":4.452108,"atr":0.088722,"spread_atr":0.112712,"own_change_pct":-0.203874,"rel_strength_pct":{"SPY":-0.152383,"IWM":-0.214415}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.712204},"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":"3a674742c01f","ts":"2026-09-15T15:34:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.12,"target_label":"clear air (typical 60-min move)","reward_risk":2.42,"pos_in_5d_range_pct":470.3,"room_to_5d_high_atr":-5.34},"price":9.8,"vwap":9.5905,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":4.777,"trend":"flat","recent_slope_pct":-0.1529,"volatility":"low"},"price":9.8,"volume":{"bars":124,"last_bar_volume":11285.0,"baseline_avg":11432.1,"bar_rvol":0.987133,"raw_accel":1.350552,"smooth_accel":-0.017216,"accel_momentum":0.465535,"rvol_3bar":[0.273832,0.427573,0.987133],"trend_3bar":"ACCELERATING","projected_rvol":0.104968},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":540.0,"sell_vol":198.0,"unclassified_vol":0.0,"imbalance":0.463415,"bid":9.8,"ask":9.81,"spread_pct":0.101989,"quote_size_imbalance":null,"quote_age_s":8.402719},"context":{"vwap":9.590427,"price_vs_vwap_pct":2.185233,"ema9":9.822194,"ema20":9.797038,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.921569,"dist_to_hod_atr":4.508464,"atr":0.088722,"spread_atr":0.112712,"own_change_pct":-0.203874,"rel_strength_pct":{"SPY":-0.152383,"IWM":-0.214415}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.457452},"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":"8e4999279ab8","ts":"2026-09-15T15:34:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.7408,"target":10.125,"target_label":"clear air (typical 60-min move)","reward_risk":4.98,"pos_in_5d_range_pct":471.6,"room_to_5d_high_atr":-5.35},"price":9.805,"vwap":9.5905,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":4.774,"trend":"flat","recent_slope_pct":-0.1427,"volatility":"low"},"price":9.805,"volume":{"bars":124,"last_bar_volume":11285.0,"baseline_avg":11432.1,"bar_rvol":0.987133,"raw_accel":1.350552,"smooth_accel":-0.017216,"accel_momentum":0.465535,"rvol_3bar":[0.273832,0.427573,0.987133],"trend_3bar":"ACCELERATING","projected_rvol":0.087998},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":329.0,"sell_vol":174.0,"unclassified_vol":0.0,"imbalance":0.308151,"bid":9.8,"ask":9.81,"spread_pct":0.101989,"quote_size_imbalance":null,"quote_age_s":13.402719},"context":{"vwap":9.590427,"price_vs_vwap_pct":2.237369,"ema9":9.822194,"ema20":9.797038,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.872549,"dist_to_hod_atr":4.452108,"atr":0.088722,"spread_atr":0.112712,"own_change_pct":-0.203874,"rel_strength_pct":{"SPY":-0.152383,"IWM":-0.214415}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.304186},"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":"708dff5f1229","ts":"2026-09-15T15:34:30+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.85 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7272,"target":13.84,"target_label":"range_20d_high","reward_risk":8.01,"pos_in_5d_range_pct":57.3,"room_to_5d_high_atr":1.34},"price":12.8508,"vwap":12.8614,"ext_from_open_pct":-1.0,"max_ext_allowed_pct":4.0,"volume_pace":0.985,"trend":"flat","recent_slope_pct":-0.0253,"volatility":"medium"},"price":12.8508,"volume":{"bars":124,"last_bar_volume":610.0,"baseline_avg":1119.75,"bar_rvol":0.544764,"raw_accel":-0.57193,"smooth_accel":0.094303,"accel_momentum":-0.596823,"rvol_3bar":[2.339893,1.213747,0.544764],"trend_3bar":"DECELERATING","projected_rvol":1.430676},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":522.0,"sell_vol":279.0,"unclassified_vol":0.0,"imbalance":0.303371,"bid":12.87,"ask":12.9,"spread_pct":0.232829,"quote_size_imbalance":null,"quote_age_s":0.800418},"context":{"vwap":12.861424,"price_vs_vwap_pct":-0.082602,"ema9":12.8567,"ema20":12.838343,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.449312,"dist_to_hod_atr":14.056105,"atr":0.032662,"spread_atr":0.9185,"own_change_pct":0.299065,"rel_strength_pct":{"SPY":0.350556,"IWM":0.288524}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.165266},"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":"720eeec185c3","ts":"2026-09-15T15:34:35+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7701,"target":13.84,"target_label":"range_20d_high","reward_risk":7.66,"pos_in_5d_range_pct":60.0,"room_to_5d_high_atr":1.26},"price":12.8937,"vwap":12.8615,"ext_from_open_pct":-0.66,"max_ext_allowed_pct":4.0,"volume_pace":0.984,"trend":"flat","recent_slope_pct":0.0413,"volatility":"medium"},"price":12.8937,"volume":{"bars":124,"last_bar_volume":610.0,"baseline_avg":1119.75,"bar_rvol":0.544764,"raw_accel":-0.57193,"smooth_accel":0.094303,"accel_momentum":-0.596823,"rvol_3bar":[2.339893,1.213747,0.544764],"trend_3bar":"DECELERATING","projected_rvol":1.249258},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":403.0,"sell_vol":279.0,"unclassified_vol":0.0,"imbalance":0.181818,"bid":12.87,"ask":12.9,"spread_pct":0.232829,"quote_size_imbalance":null,"quote_age_s":5.800418},"context":{"vwap":12.861424,"price_vs_vwap_pct":0.250954,"ema9":12.8567,"ema20":12.838343,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.126996,"dist_to_hod_atr":12.742651,"atr":0.032662,"spread_atr":0.9185,"own_change_pct":0.299065,"rel_strength_pct":{"SPY":0.350556,"IWM":0.288524}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.099048},"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":"d562e859043a","ts":"2026-09-15T15:35:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.115,"target_label":"clear air (typical 60-min move)","reward_risk":2.51,"pos_in_5d_range_pct":468.9,"room_to_5d_high_atr":-5.32},"price":9.795,"vwap":9.5917,"ext_from_open_pct":3.65,"max_ext_allowed_pct":4.0,"volume_pace":4.781,"trend":"flat","recent_slope_pct":-0.1631,"volatility":"low"},"price":9.795,"volume":{"bars":124,"last_bar_volume":11285.0,"baseline_avg":11432.1,"bar_rvol":0.987133,"raw_accel":1.350552,"smooth_accel":-0.017216,"accel_momentum":0.465535,"rvol_3bar":[0.273832,0.427573,0.987133],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":683.0,"sell_vol":6860.0,"unclassified_vol":0.0,"imbalance":-0.818905,"bid":9.78,"ask":9.82,"spread_pct":0.408163,"quote_size_imbalance":null,"quote_age_s":2.844978},"context":{"vwap":9.590427,"price_vs_vwap_pct":2.133098,"ema9":9.822194,"ema20":9.797038,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.970588,"dist_to_hod_atr":4.564819,"atr":0.088722,"spread_atr":0.450846,"own_change_pct":-0.203874,"rel_strength_pct":{"SPY":-0.181431,"IWM":-0.258322}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.808368},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"60ff0a407969","ts":"2026-09-15T15:35:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":10.105,"target_label":"clear air (typical 60-min move)","reward_risk":2.73,"pos_in_5d_range_pct":466.2,"room_to_5d_high_atr":-5.28},"price":9.785,"vwap":9.5918,"ext_from_open_pct":3.54,"max_ext_allowed_pct":4.0,"volume_pace":4.779,"trend":"flat","recent_slope_pct":-0.0613,"volatility":"low"},"price":9.785,"volume":{"bars":125,"last_bar_volume":8046.0,"baseline_avg":11671.6,"bar_rvol":0.689366,"raw_accel":-0.287018,"smooth_accel":0.614505,"accel_momentum":0.63172,"rvol_3bar":[0.427573,0.987133,0.689366],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":943.0,"sell_vol":6887.0,"unclassified_vol":0.0,"imbalance":-0.759132,"bid":9.76,"ask":9.8,"spread_pct":0.408998,"quote_size_imbalance":null,"quote_age_s":1.332924},"context":{"vwap":9.591748,"price_vs_vwap_pct":2.014769,"ema9":9.816755,"ema20":9.796844,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.068627,"dist_to_hod_atr":4.729783,"atr":0.087742,"spread_atr":0.455883,"own_change_pct":-0.558376,"rel_strength_pct":{"SPY":-0.535933,"IWM":-0.612824}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.523319},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9aad1ef4c355","ts":"2026-09-15T15:35:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says WATCH; stop 7.14, target 7.30 (premarket_high), R:R 0.57; R:R 0.57 < 2.0 at 7.24; pullback: buy 7.21-7.23 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":7.1356,"target":7.2991,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":28.1,"room_to_5d_high_atr":1.53},"price":7.24,"vwap":7.1953,"ext_from_open_pct":1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":0.1037,"volatility":"medium"},"price":7.24,"volume":{"bars":125,"last_bar_volume":364015.0,"baseline_avg":186447.55,"bar_rvol":1.952372,"raw_accel":0.510906,"smooth_accel":0.300661,"accel_momentum":0.271572,"rvol_3bar":[1.227722,1.370734,1.952372],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":215,"trade_rate":7.166667,"buy_vol":158127.0,"sell_vol":62638.0,"unclassified_vol":0.0,"imbalance":0.432537,"bid":7.24,"ask":7.25,"spread_pct":0.138026,"quote_size_imbalance":null,"quote_age_s":0.408152},"context":{"vwap":7.195281,"price_vs_vwap_pct":0.621498,"ema9":7.229408,"ema20":7.217198,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.227831,"dist_to_hod_atr":3.931628,"atr":0.022891,"spread_atr":0.436848,"own_change_pct":0.207326,"rel_strength_pct":{"SPY":0.229768,"IWM":0.152877}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.844473},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a28be4fb6dc6","ts":"2026-09-15T15:35:30+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.86 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7364,"target":13.84,"target_label":"range_20d_high","reward_risk":7.93,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":1.33},"price":12.86,"vwap":12.8616,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.991,"trend":"flat","recent_slope_pct":-0.0464,"volatility":"medium"},"price":12.86,"volume":{"bars":125,"last_bar_volume":4883.0,"baseline_avg":1101.4,"bar_rvol":4.433448,"raw_accel":7.004918,"smooth_accel":0.127077,"accel_momentum":0.032774,"rvol_3bar":[1.213747,0.544764,4.433448],"trend_3bar":"MIXED","projected_rvol":1.074995},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":443.0,"sell_vol":149.0,"unclassified_vol":0.0,"imbalance":0.496622,"bid":12.86,"ask":12.9,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":1.135405},"context":{"vwap":12.861619,"price_vs_vwap_pct":-0.012585,"ema9":12.86006,"ema20":12.841691,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.380191,"dist_to_hod_atr":13.254475,"atr":0.033943,"spread_atr":1.178437,"own_change_pct":0.269493,"rel_strength_pct":{"SPY":0.291936,"IWM":0.215045}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.201746},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"acd4a74f0a47","ts":"2026-09-15T15:35:35+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7457,"target":13.84,"target_label":"range_20d_high","reward_risk":7.86,"pos_in_5d_range_pct":58.5,"room_to_5d_high_atr":1.31},"price":12.8693,"vwap":12.8616,"ext_from_open_pct":-0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.991,"trend":"flat","recent_slope_pct":-0.0319,"volatility":"medium"},"price":12.8693,"volume":{"bars":125,"last_bar_volume":4883.0,"baseline_avg":1101.4,"bar_rvol":4.433448,"raw_accel":7.004918,"smooth_accel":0.127077,"accel_momentum":0.032774,"rvol_3bar":[1.213747,0.544764,4.433448],"trend_3bar":"MIXED","projected_rvol":0.966562},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":443.0,"sell_vol":178.0,"unclassified_vol":0.0,"imbalance":0.426731,"bid":12.86,"ask":12.9,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":3.800957},"context":{"vwap":12.861619,"price_vs_vwap_pct":0.059723,"ema9":12.86006,"ema20":12.841691,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.310318,"dist_to_hod_atr":12.980489,"atr":0.033943,"spread_atr":1.178437,"own_change_pct":0.269493,"rel_strength_pct":{"SPY":0.291936,"IWM":0.215045}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.89189},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ffa1896ddc0f","ts":"2026-09-15T15:36:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":9.94,"target_label":"ceiling","reward_risk":1.95,"pos_in_5d_range_pct":459.4,"room_to_5d_high_atr":-5.18},"price":9.7599,"vwap":9.5934,"ext_from_open_pct":3.28,"max_ext_allowed_pct":5.0,"volume_pace":4.786,"trend":"flat","recent_slope_pct":-0.1126,"volatility":"low"},"price":9.7599,"volume":{"bars":125,"last_bar_volume":8046.0,"baseline_avg":11671.6,"bar_rvol":0.689366,"raw_accel":-0.287018,"smooth_accel":0.614505,"accel_momentum":0.63172,"rvol_3bar":[0.427573,0.987133,0.689366],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1634.0,"sell_vol":4796.0,"unclassified_vol":0.0,"imbalance":-0.491757,"bid":9.72,"ask":9.76,"spread_pct":0.410678,"quote_size_imbalance":null,"quote_age_s":1.310567},"context":{"vwap":9.591748,"price_vs_vwap_pct":1.753086,"ema9":9.816755,"ema20":9.796844,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.314706,"dist_to_hod_atr":5.015849,"atr":0.087742,"spread_atr":0.455883,"own_change_pct":-0.558376,"rel_strength_pct":{"SPY":-0.544181,"IWM":-0.554864}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.339001},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"897906fb7311","ts":"2026-09-15T15:36:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.66,"target":9.94,"target_label":"ceiling","reward_risk":1.8,"pos_in_5d_range_pct":459.5,"room_to_5d_high_atr":-5.18},"price":9.76,"vwap":9.5936,"ext_from_open_pct":3.28,"max_ext_allowed_pct":5.0,"volume_pace":4.79,"trend":"flat","recent_slope_pct":-0.0819,"volatility":"low"},"price":9.76,"volume":{"bars":126,"last_bar_volume":12426.0,"baseline_avg":11990.3,"bar_rvol":1.036338,"raw_accel":0.54437,"smooth_accel":1.889627,"accel_momentum":1.275122,"rvol_3bar":[0.987133,0.689366,1.036338],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":3160.0,"sell_vol":390.0,"unclassified_vol":0.0,"imbalance":0.780282,"bid":9.72,"ask":9.77,"spread_pct":0.513084,"quote_size_imbalance":null,"quote_age_s":2.884734},"context":{"vwap":9.593353,"price_vs_vwap_pct":1.73711,"ema9":9.805384,"ema20":9.793326,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.313725,"dist_to_hod_atr":4.990503,"atr":0.088167,"spread_atr":0.567103,"own_change_pct":-1.015213,"rel_strength_pct":{"SPY":-1.001019,"IWM":-1.011701}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.808635},"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":"7e94760758c2","ts":"2026-09-15T15:36:10+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7539,"target":13.84,"target_label":"range_20d_high","reward_risk":7.79,"pos_in_5d_range_pct":59.0,"room_to_5d_high_atr":1.29},"price":12.8775,"vwap":12.8616,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":3.0,"volume_pace":0.986,"trend":"flat","recent_slope_pct":-0.0083,"volatility":"medium"},"price":12.8775,"volume":{"bars":126,"last_bar_volume":735.0,"baseline_avg":1322.75,"bar_rvol":0.555661,"raw_accel":-0.849478,"smooth_accel":-0.155525,"accel_momentum":-0.282603,"rvol_3bar":[0.544764,4.433448,0.555661],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":114.0,"sell_vol":37.0,"unclassified_vol":0.0,"imbalance":0.509934,"bid":12.86,"ask":12.9,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":1.252589},"context":{"vwap":12.861647,"price_vs_vwap_pct":0.123256,"ema9":12.862588,"ema20":12.844644,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.24871,"dist_to_hod_atr":12.845501,"atr":0.033662,"spread_atr":1.188298,"own_change_pct":0.07541,"rel_strength_pct":{"SPY":0.089605,"IWM":0.078922}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.28335},"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":"4a7a3dea304e","ts":"2026-09-15T15:36:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.621,"target":9.7481,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":448.9,"room_to_5d_high_atr":-5.03},"price":9.721,"vwap":9.5939,"ext_from_open_pct":2.87,"max_ext_allowed_pct":5.0,"volume_pace":4.778,"trend":"flat","recent_slope_pct":-0.1618,"volatility":"low"},"price":9.721,"volume":{"bars":126,"last_bar_volume":12426.0,"baseline_avg":11990.3,"bar_rvol":1.036338,"raw_accel":0.54437,"smooth_accel":1.889627,"accel_momentum":1.275122,"rvol_3bar":[0.987133,0.689366,1.036338],"trend_3bar":"MIXED","projected_rvol":0.629384},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":1013.0,"sell_vol":1490.0,"unclassified_vol":0.0,"imbalance":-0.190571,"bid":9.72,"ask":9.77,"spread_pct":0.513084,"quote_size_imbalance":null,"quote_age_s":0.545918},"context":{"vwap":9.593353,"price_vs_vwap_pct":1.330578,"ema9":9.805384,"ema20":9.793326,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.696078,"dist_to_hod_atr":5.432844,"atr":0.088167,"spread_atr":0.567103,"own_change_pct":-1.015213,"rel_strength_pct":{"SPY":-1.001019,"IWM":-1.011701}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.197496},"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":"6f4fc246e807","ts":"2026-09-15T15:36:45+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.87 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6438,"target":13.2,"target_label":"premarket_high","reward_risk":1.42,"pos_in_5d_range_pct":22.9,"room_to_5d_high_atr":1.26},"price":12.8736,"vwap":12.8744,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.907,"trend":"flat","recent_slope_pct":0.037,"volatility":"high"},"price":12.8736,"volume":{"bars":126,"last_bar_volume":21691.0,"baseline_avg":33909.15,"bar_rvol":0.63968,"raw_accel":-0.05855,"smooth_accel":-0.46183,"accel_momentum":0.055073,"rvol_3bar":[0.886102,0.689544,0.63968],"trend_3bar":"DECELERATING","projected_rvol":0.36993},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1872.0,"sell_vol":4722.0,"unclassified_vol":0.0,"imbalance":-0.432211,"bid":12.87,"ask":12.88,"spread_pct":0.07767,"quote_size_imbalance":null,"quote_age_s":0.260071},"context":{"vwap":12.874381,"price_vs_vwap_pct":-0.006065,"ema9":12.901274,"ema20":12.88152,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.250569,"dist_to_hod_atr":3.193074,"atr":0.092826,"spread_atr":0.107729,"own_change_pct":-0.271003,"rel_strength_pct":{"SPY":-0.256808,"IWM":-0.267491}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.276477},"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":"c0f531592349","ts":"2026-09-15T15:36:50+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7764,"target":13.84,"target_label":"range_20d_high","reward_risk":7.61,"pos_in_5d_range_pct":60.5,"room_to_5d_high_atr":1.24},"price":12.9,"vwap":12.8617,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.983,"trend":"flat","recent_slope_pct":0.0266,"volatility":"medium"},"price":12.9,"volume":{"bars":126,"last_bar_volume":735.0,"baseline_avg":1322.75,"bar_rvol":0.555661,"raw_accel":-0.849478,"smooth_accel":-0.155525,"accel_momentum":-0.282603,"rvol_3bar":[0.544764,4.433448,0.555661],"trend_3bar":"MIXED","projected_rvol":0.451786},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":9.0,"sell_vol":48.0,"unclassified_vol":0.0,"imbalance":-0.684211,"bid":12.86,"ask":12.89,"spread_pct":0.23301,"quote_size_imbalance":null,"quote_age_s":2.89835},"context":{"vwap":12.861647,"price_vs_vwap_pct":0.298194,"ema9":12.862588,"ema20":12.844644,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.079663,"dist_to_hod_atr":12.177083,"atr":0.033662,"spread_atr":0.891223,"own_change_pct":0.07541,"rel_strength_pct":{"SPY":0.089605,"IWM":0.078922}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.380189},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6af1a89a9260","ts":"2026-09-15T15:38:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.6676,"target":9.94,"target_label":"ceiling","reward_risk":2.31,"pos_in_5d_range_pct":456.8,"room_to_5d_high_atr":-5.14},"price":9.75,"vwap":9.5947,"ext_from_open_pct":3.17,"max_ext_allowed_pct":4.0,"volume_pace":4.747,"trend":"flat","recent_slope_pct":-0.1024,"volatility":"low"},"price":9.75,"volume":{"bars":128,"last_bar_volume":6114.0,"baseline_avg":11855.65,"bar_rvol":0.515703,"raw_accel":0.146662,"smooth_accel":-0.010774,"accel_momentum":-0.356064,"rvol_3bar":[1.036338,0.442378,0.515703],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":3468.0,"sell_vol":1428.0,"unclassified_vol":0.0,"imbalance":0.416667,"bid":9.73,"ask":9.77,"spread_pct":0.410256,"quote_size_imbalance":null,"quote_age_s":4.992012},"context":{"vwap":9.594641,"price_vs_vwap_pct":1.619226,"ema9":9.784662,"ema20":9.785044,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.411765,"dist_to_hod_atr":5.288055,"atr":0.085097,"spread_atr":0.470049,"own_change_pct":-0.35769,"rel_strength_pct":{"SPY":-0.379273,"IWM":-0.350666}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.214876},"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":"9b4a180f6c17","ts":"2026-09-15T15:38:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"held 565.0s, plan says PASS; stop 9.85, target 10.02 (premarket_high), R:R 0.38; R:R 0.38 < 2.0 at 9.97; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.8507,"target":10.015,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":21.0,"room_to_5d_high_atr":2.52},"price":9.9699,"vwap":9.9556,"ext_from_open_pct":1.42,"max_ext_allowed_pct":3.0,"volume_pace":1.014,"trend":"flat","recent_slope_pct":0.0058,"volatility":"medium"},"price":9.9699,"volume":{"bars":128,"last_bar_volume":513067.0,"baseline_avg":327041.2,"bar_rvol":1.568815,"raw_accel":2.872379,"smooth_accel":1.21596,"accel_momentum":1.4095,"rvol_3bar":[0.94846,0.390495,1.568815],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":95446.0,"sell_vol":59594.0,"unclassified_vol":0.0,"imbalance":0.231244,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.566618},"context":{"vwap":9.955576,"price_vs_vwap_pct":0.143877,"ema9":9.965568,"ema20":9.957718,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.797015,"dist_to_hod_atr":3.99382,"atr":0.020056,"spread_atr":0.498604,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.021583,"IWM":0.007024}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.362778},"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":"0626630c9e9a","ts":"2026-09-15T15:38:25+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6757,"target":13.2,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":25.0,"room_to_5d_high_atr":1.22},"price":12.9055,"vwap":12.8742,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":-0.0413,"volatility":"high"},"price":12.9055,"volume":{"bars":128,"last_bar_volume":41487.0,"baseline_avg":34376.15,"bar_rvol":1.206854,"raw_accel":2.111836,"smooth_accel":0.061916,"accel_momentum":0.407877,"rvol_3bar":[0.63968,0.388088,1.206854],"trend_3bar":"MIXED","projected_rvol":0.657037},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":8325.0,"sell_vol":3752.0,"unclassified_vol":0.0,"imbalance":0.378654,"bid":12.81,"ask":12.82,"spread_pct":0.078034,"quote_size_imbalance":null,"quote_age_s":0.783119},"context":{"vwap":12.874195,"price_vs_vwap_pct":0.243161,"ema9":12.875039,"ema20":12.872113,"ema_stack":true,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.008352,"dist_to_hod_atr":2.767493,"atr":0.095574,"spread_atr":0.104631,"own_change_pct":-0.233645,"rel_strength_pct":{"SPY":-0.255228,"IWM":-0.22662}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.45698},"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":"526ebf887070","ts":"2026-09-15T15:38:30+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.82 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.5897,"target":13.2,"target_label":"premarket_high","reward_risk":1.66,"pos_in_5d_range_pct":19.3,"room_to_5d_high_atr":1.32},"price":12.8195,"vwap":12.8741,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.904,"trend":"flat","recent_slope_pct":-0.1752,"volatility":"high"},"price":12.8195,"volume":{"bars":128,"last_bar_volume":41487.0,"baseline_avg":34376.15,"bar_rvol":1.206854,"raw_accel":2.111836,"smooth_accel":0.061916,"accel_momentum":0.407877,"rvol_3bar":[0.63968,0.388088,1.206854],"trend_3bar":"MIXED","projected_rvol":0.640386},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":6466.0,"sell_vol":4541.0,"unclassified_vol":0.0,"imbalance":0.174889,"bid":12.81,"ask":12.82,"spread_pct":0.078034,"quote_size_imbalance":null,"quote_age_s":0.428979},"context":{"vwap":12.874195,"price_vs_vwap_pct":-0.424842,"ema9":12.875039,"ema20":12.872113,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.661352,"dist_to_hod_atr":3.667321,"atr":0.095574,"spread_atr":0.104631,"own_change_pct":-0.233645,"rel_strength_pct":{"SPY":-0.255228,"IWM":-0.22662}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.211065},"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":"efb33d694eed","ts":"2026-09-15T15:38:40+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9556,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":1.01,"trend":"flat","recent_slope_pct":-0.0241,"volatility":"medium"},"price":9.955,"volume":{"bars":128,"last_bar_volume":513067.0,"baseline_avg":327041.2,"bar_rvol":1.568815,"raw_accel":2.872379,"smooth_accel":1.21596,"accel_momentum":1.4095,"rvol_3bar":[0.94846,0.390495,1.568815],"trend_3bar":"MIXED","projected_rvol":0.21501},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":9984.0,"sell_vol":32344.0,"unclassified_vol":0.0,"imbalance":-0.528256,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.004012},"context":{"vwap":9.955576,"price_vs_vwap_pct":-0.005788,"ema9":9.965568,"ema20":9.957718,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.73674,"atr":0.020056,"spread_atr":0.498604,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.021583,"IWM":0.007024}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.828735},"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":"6b0b81df5d0d","ts":"2026-09-15T15:38:45+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8439,"target":10.015,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":20.6,"room_to_5d_high_atr":2.53},"price":9.9631,"vwap":9.9556,"ext_from_open_pct":1.35,"max_ext_allowed_pct":3.0,"volume_pace":1.01,"trend":"flat","recent_slope_pct":-0.0078,"volatility":"medium"},"price":9.9631,"volume":{"bars":128,"last_bar_volume":513067.0,"baseline_avg":327041.2,"bar_rvol":1.568815,"raw_accel":2.872379,"smooth_accel":1.21596,"accel_momentum":1.4095,"rvol_3bar":[0.94846,0.390495,1.568815],"trend_3bar":"MIXED","projected_rvol":0.289937},"flow":{"window_s":30,"trades":185,"trade_rate":6.166667,"buy_vol":23724.0,"sell_vol":39430.0,"unclassified_vol":0.0,"imbalance":-0.248694,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.004155},"context":{"vwap":9.955576,"price_vs_vwap_pct":0.075573,"ema9":9.965568,"ema20":9.957718,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.864677,"dist_to_hod_atr":4.332871,"atr":0.020056,"spread_atr":0.498604,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.021583,"IWM":0.007024}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.390154},"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":"63613e7802e8","ts":"2026-09-15T15:39:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.6582,"target":9.94,"target_label":"ceiling","reward_risk":2.52,"pos_in_5d_range_pct":453.6,"room_to_5d_high_atr":-5.09},"price":9.7382,"vwap":9.5948,"ext_from_open_pct":3.05,"max_ext_allowed_pct":4.0,"volume_pace":4.713,"trend":"flat","recent_slope_pct":-0.0395,"volatility":"low"},"price":9.7382,"volume":{"bars":129,"last_bar_volume":1055.0,"baseline_avg":11710.65,"bar_rvol":0.090089,"raw_accel":-0.827445,"smooth_accel":-0.606355,"accel_momentum":-0.59558,"rvol_3bar":[0.442378,0.515703,0.090089],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":182.0,"sell_vol":128.0,"unclassified_vol":0.0,"imbalance":0.174194,"bid":9.73,"ask":9.77,"spread_pct":0.410256,"quote_size_imbalance":null,"quote_age_s":4.991984},"context":{"vwap":9.594764,"price_vs_vwap_pct":1.494945,"ema9":9.77773,"ema20":9.781706,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.527451,"dist_to_hod_atr":5.533062,"atr":0.083462,"spread_atr":0.47926,"own_change_pct":-0.40858,"rel_strength_pct":{"SPY":-0.461418,"IWM":-0.447226}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.015693},"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":"de6231eb6bce","ts":"2026-09-15T15:39:40+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.6576,"target":13.2,"target_label":"premarket_high","reward_risk":1.36,"pos_in_5d_range_pct":23.8,"room_to_5d_high_atr":1.24},"price":12.8874,"vwap":12.8741,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":3.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":-0.0051,"volatility":"high"},"price":12.8874,"volume":{"bars":129,"last_bar_volume":20694.0,"baseline_avg":35527.8,"bar_rvol":0.582473,"raw_accel":-0.501193,"smooth_accel":0.029166,"accel_momentum":-0.03275,"rvol_3bar":[0.388088,1.206854,0.582473],"trend_3bar":"MIXED","projected_rvol":0.298456},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":3806.0,"sell_vol":1392.0,"unclassified_vol":0.0,"imbalance":0.464409,"bid":12.83,"ask":12.84,"spread_pct":0.077912,"quote_size_imbalance":null,"quote_age_s":0.654796},"context":{"vwap":12.874105,"price_vs_vwap_pct":0.103271,"ema9":12.866031,"ema20":12.868102,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.145786,"dist_to_hod_atr":2.946687,"atr":0.095904,"spread_atr":0.104271,"own_change_pct":-0.538781,"rel_strength_pct":{"SPY":-0.591619,"IWM":-0.577427}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.270506},"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":"efd484dfd667","ts":"2026-09-15T15:39:45+00:00","symbol":"CLSK","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.83 below VWAP $12.87","plan":{"state":"PASS","setup":"","stop":12.6002,"target":13.2,"target_label":"premarket_high","reward_risk":1.61,"pos_in_5d_range_pct":20.0,"room_to_5d_high_atr":1.31},"price":12.83,"vwap":12.8741,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":-0.0945,"volatility":"high"},"price":12.83,"volume":{"bars":129,"last_bar_volume":20694.0,"baseline_avg":35527.8,"bar_rvol":0.582473,"raw_accel":-0.501193,"smooth_accel":0.029166,"accel_momentum":-0.03275,"rvol_3bar":[0.388088,1.206854,0.582473],"trend_3bar":"MIXED","projected_rvol":0.279105},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":3006.0,"sell_vol":1660.0,"unclassified_vol":0.0,"imbalance":0.28847,"bid":12.83,"ask":12.84,"spread_pct":0.077912,"quote_size_imbalance":null,"quote_age_s":0.024206},"context":{"vwap":12.874105,"price_vs_vwap_pct":-0.342585,"ema9":12.866031,"ema20":12.868102,"ema_stack":false,"ema_warm":true,"hod":13.17,"dist_to_hod_pct":-2.581625,"dist_to_hod_atr":3.545201,"atr":0.095904,"spread_atr":0.104271,"own_change_pct":-0.538781,"rel_strength_pct":{"SPY":-0.591619,"IWM":-0.577427}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.168026},"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":"c2e2cdd4c330","ts":"2026-09-15T15:40:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 360.0s, plan says WATCH; stop 11.10, target 11.44 (premarket_high), R:R 0.55; selling not fading: red-bar volume 0.84x the advance (max 0.7); imbalance -63% still heavy selling; no reclaim yet (n","plan":{"state":"WATCH","setup":"","stop":11.1032,"target":11.44,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":25.3,"room_to_5d_high_atr":1.23},"price":11.32,"vwap":11.2553,"ext_from_open_pct":0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":-0.022,"volatility":"high"},"price":11.32,"volume":{"bars":130,"last_bar_volume":100636.0,"baseline_avg":130099.45,"bar_rvol":0.773531,"raw_accel":0.066059,"smooth_accel":-0.129603,"accel_momentum":0.015032,"rvol_3bar":[0.563133,0.713008,0.773531],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":2001.0,"sell_vol":26607.0,"unclassified_vol":0.0,"imbalance":-0.860109,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.200159},"context":{"vwap":11.255325,"price_vs_vwap_pct":0.574619,"ema9":11.331951,"ema20":11.325417,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.393728,"dist_to_hod_atr":2.053691,"atr":0.077909,"spread_atr":0.128356,"own_change_pct":-0.35242,"rel_strength_pct":{"SPY":-0.349779,"IWM":-0.3138}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.665321},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5a19fcfbc51f","ts":"2026-09-15T15:40:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.29x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":7.6253,"target":8.07,"target_label":"premarket_high","reward_risk":1.34,"pos_in_5d_range_pct":49.1,"room_to_5d_high_atr":1.13},"price":7.815,"vwap":7.7509,"ext_from_open_pct":1.49,"max_ext_allowed_pct":4.0,"volume_pace":0.287,"trend":"flat","recent_slope_pct":0.0461,"volatility":"high"},"price":7.815,"volume":{"bars":130,"last_bar_volume":2404.0,"baseline_avg":8243.8,"bar_rvol":0.291613,"raw_accel":-0.713161,"smooth_accel":-0.042123,"accel_momentum":-0.046892,"rvol_3bar":[0.57923,1.054837,0.291613],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1178.0,"sell_vol":235.0,"unclassified_vol":0.0,"imbalance":0.667374,"bid":7.81,"ask":7.82,"spread_pct":0.127959,"quote_size_imbalance":null,"quote_age_s":15.795623},"context":{"vwap":7.750884,"price_vs_vwap_pct":0.82721,"ema9":7.804866,"ema20":7.793241,"ema_stack":true,"ema_warm":true,"hod":7.96,"dist_to_hod_pct":-1.821608,"dist_to_hod_atr":4.479701,"atr":0.032368,"spread_atr":0.308945,"own_change_pct":0.111448,"rel_strength_pct":{"SPY":0.114089,"IWM":0.150068}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.194615},"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":"f1f269a53af2","ts":"2026-09-15T15:40:50+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.86 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7364,"target":13.84,"target_label":"range_20d_high","reward_risk":7.93,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":1.33},"price":12.86,"vwap":12.8617,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":-0.0655,"volatility":"medium"},"price":12.86,"volume":{"bars":130,"last_bar_volume":129.0,"baseline_avg":1323.8,"bar_rvol":0.097447,"raw_accel":-0.610213,"smooth_accel":-0.93051,"accel_momentum":-0.057999,"rvol_3bar":[0.118489,0.103439,0.097447],"trend_3bar":"DECELERATING","projected_rvol":1.621695},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":696.0,"sell_vol":963.0,"unclassified_vol":0.0,"imbalance":-0.16094,"bid":12.85,"ask":12.88,"spread_pct":0.233191,"quote_size_imbalance":null,"quote_age_s":0.061597},"context":{"vwap":12.861702,"price_vs_vwap_pct":-0.013234,"ema9":12.872529,"ema20":12.856497,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.380191,"dist_to_hod_atr":14.943434,"atr":0.030107,"spread_atr":0.99645,"own_change_pct":-0.00233,"rel_strength_pct":{"SPY":0.000311,"IWM":0.036289}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.015683},"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":"d149662d8c26","ts":"2026-09-15T15:40:55+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7389,"target":13.84,"target_label":"range_20d_high","reward_risk":7.91,"pos_in_5d_range_pct":58.0,"room_to_5d_high_atr":1.32},"price":12.8625,"vwap":12.8618,"ext_from_open_pct":-0.91,"max_ext_allowed_pct":3.0,"volume_pace":0.958,"trend":"flat","recent_slope_pct":-0.0617,"volatility":"medium"},"price":12.8625,"volume":{"bars":130,"last_bar_volume":129.0,"baseline_avg":1323.8,"bar_rvol":0.097447,"raw_accel":-0.610213,"smooth_accel":-0.93051,"accel_momentum":-0.057999,"rvol_3bar":[0.118489,0.103439,0.097447],"trend_3bar":"DECELERATING","projected_rvol":1.476741},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":699.0,"sell_vol":963.0,"unclassified_vol":0.0,"imbalance":-0.158845,"bid":12.85,"ask":12.88,"spread_pct":0.233191,"quote_size_imbalance":null,"quote_age_s":5.061597},"context":{"vwap":12.861702,"price_vs_vwap_pct":0.006203,"ema9":12.872529,"ema20":12.856497,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.361408,"dist_to_hod_atr":14.860397,"atr":0.030107,"spread_atr":0.99645,"own_change_pct":-0.00233,"rel_strength_pct":{"SPY":0.000311,"IWM":0.036289}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.015479},"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":"c92d905688ad","ts":"2026-09-15T15:41:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 695.0s, plan says PASS; stop 8.32, target 8.56 (premarket_high), R:R 1.65; target 0.15 away > ~0.11 reachable in 253 min","plan":{"state":"PASS","setup":"","stop":8.3199,"target":8.5586,"target_label":"premarket_high","reward_risk":1.65,"pos_in_5d_range_pct":58.6,"room_to_5d_high_atr":1.0},"price":8.41,"vwap":8.3084,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":0.962,"trend":"flat","recent_slope_pct":0.0937,"volatility":"medium"},"price":8.41,"volume":{"bars":131,"last_bar_volume":141.0,"baseline_avg":1903.05,"bar_rvol":0.074092,"raw_accel":-0.703634,"smooth_accel":-0.407772,"accel_momentum":0.526378,"rvol_3bar":[0.328442,0.135667,0.074092],"trend_3bar":"DECELERATING","projected_rvol":1.071175},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1284.0,"sell_vol":47.0,"unclassified_vol":0.0,"imbalance":0.929376,"bid":8.4,"ask":8.41,"spread_pct":0.118977,"quote_size_imbalance":null,"quote_age_s":1.180756},"context":{"vwap":8.307774,"price_vs_vwap_pct":1.230485,"ema9":8.36627,"ema20":8.357733,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.058824,"dist_to_hod_atr":4.891604,"atr":0.018399,"spread_atr":0.543512,"own_change_pct":-0.075314,"rel_strength_pct":{"SPY":-0.119884,"IWM":-0.091118}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.068859},"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":"d932ceead5af","ts":"2026-09-15T15:41:45+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.86 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7369,"target":13.84,"target_label":"range_20d_high","reward_risk":7.93,"pos_in_5d_range_pct":57.9,"room_to_5d_high_atr":1.32},"price":12.8605,"vwap":12.8618,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":-0.0371,"volatility":"medium"},"price":12.8605,"volume":{"bars":131,"last_bar_volume":1835.0,"baseline_avg":1293.25,"bar_rvol":1.418906,"raw_accel":4.675623,"smooth_accel":0.509339,"accel_momentum":1.439849,"rvol_3bar":[0.103439,0.097447,1.418906],"trend_3bar":"MIXED","projected_rvol":0.139184},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":100.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.904762,"bid":12.85,"ask":12.88,"spread_pct":0.233191,"quote_size_imbalance":null,"quote_age_s":16.593101},"context":{"vwap":12.861752,"price_vs_vwap_pct":-0.009737,"ema9":12.870403,"ema20":12.857011,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.376434,"dist_to_hod_atr":14.930612,"atr":0.030099,"spread_atr":0.996703,"own_change_pct":-0.083898,"rel_strength_pct":{"SPY":-0.128469,"IWM":-0.099702}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.283772},"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":"d4de73a1e6ae","ts":"2026-09-15T15:41:55+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.739,"target":13.84,"target_label":"range_20d_high","reward_risk":7.91,"pos_in_5d_range_pct":58.0,"room_to_5d_high_atr":1.32},"price":12.8626,"vwap":12.8618,"ext_from_open_pct":-0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":-0.0339,"volatility":"medium"},"price":12.8626,"volume":{"bars":131,"last_bar_volume":1835.0,"baseline_avg":1293.25,"bar_rvol":1.418906,"raw_accel":4.675623,"smooth_accel":0.509339,"accel_momentum":1.439849,"rvol_3bar":[0.103439,0.097447,1.418906],"trend_3bar":"MIXED","projected_rvol":0.117252},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":4.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":-0.111111,"bid":12.85,"ask":12.88,"spread_pct":0.233191,"quote_size_imbalance":null,"quote_age_s":26.593101},"context":{"vwap":12.861752,"price_vs_vwap_pct":0.00659,"ema9":12.870403,"ema20":12.857011,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.360656,"dist_to_hod_atr":14.860843,"atr":0.030099,"spread_atr":0.996703,"own_change_pct":-0.083898,"rel_strength_pct":{"SPY":-0.128469,"IWM":-0.099702}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.157656},"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":"5abb6addc6cc","ts":"2026-09-15T15:42:40+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 840.0s, plan says WATCH; stop 5.66, target 5.83 (prev_day_high), R:R 0.70; R:R 0.70 < 2.0 at 5.76; breakout: 1-min close > 5.80 on >= 4412 sh","plan":{"state":"WATCH","setup":"","stop":5.6604,"target":5.83,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.18},"price":5.76,"vwap":5.7147,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":0.622,"trend":"flat","recent_slope_pct":0.0844,"volatility":"high"},"price":5.76,"volume":{"bars":132,"last_bar_volume":5120.0,"baseline_avg":3275.55,"bar_rvol":1.563096,"raw_accel":1.662507,"smooth_accel":-0.024676,"accel_momentum":-2.031826,"rvol_3bar":[0.192195,0.566171,1.563096],"trend_3bar":"ACCELERATING","projected_rvol":3.370884},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":5406.0,"sell_vol":1341.0,"unclassified_vol":0.0,"imbalance":0.60249,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.39424},"context":{"vwap":5.714169,"price_vs_vwap_pct":0.802057,"ema9":5.738061,"ema20":5.728808,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.518135,"dist_to_hod_atr":2.074954,"atr":0.014458,"spread_atr":0.691651,"own_change_pct":0.333333,"rel_strength_pct":{"SPY":0.319471,"IWM":0.329857}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.94175},"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":"1a1365d9dabe","ts":"2026-09-15T15:42:45+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 845.0s, plan says PASS; stop 5.64, target 5.79 (ceiling), R:R 0.49; R:R 0.49 < 2.0 at 5.74; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.642,"target":5.79,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":83.6,"room_to_5d_high_atr":0.22},"price":5.7416,"vwap":5.7146,"ext_from_open_pct":0.73,"max_ext_allowed_pct":4.0,"volume_pace":0.622,"trend":"flat","recent_slope_pct":0.0204,"volatility":"high"},"price":5.7416,"volume":{"bars":132,"last_bar_volume":5120.0,"baseline_avg":3275.55,"bar_rvol":1.563096,"raw_accel":1.662507,"smooth_accel":-0.024676,"accel_momentum":-2.031826,"rvol_3bar":[0.192195,0.566171,1.563096],"trend_3bar":"ACCELERATING","projected_rvol":3.001226},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":5386.0,"sell_vol":1353.0,"unclassified_vol":0.0,"imbalance":0.598457,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.77854},"context":{"vwap":5.714169,"price_vs_vwap_pct":0.48005,"ema9":5.738061,"ema20":5.728808,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.835924,"dist_to_hod_atr":3.347592,"atr":0.014458,"spread_atr":0.691651,"own_change_pct":0.333333,"rel_strength_pct":{"SPY":0.319471,"IWM":0.329857}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.935446},"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":"f9f1c8dfc7b7","ts":"2026-09-15T15:43:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 540.0s, plan says PASS; stop 7.13, target 7.30 (premarket_high), R:R 0.61; R:R 0.61 < 2.0 at 7.24; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.1306,"target":7.2991,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":27.5,"room_to_5d_high_atr":1.54},"price":7.235,"vwap":7.1977,"ext_from_open_pct":1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":0.0277,"volatility":"medium"},"price":7.235,"volume":{"bars":133,"last_bar_volume":94592.0,"baseline_avg":200711.5,"bar_rvol":0.471283,"raw_accel":0.283021,"smooth_accel":-0.459194,"accel_momentum":-0.126672,"rvol_3bar":[0.953785,0.355367,0.471283],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":143,"trade_rate":4.766667,"buy_vol":20682.0,"sell_vol":21330.0,"unclassified_vol":0.0,"imbalance":-0.015424,"bid":7.23,"ask":7.24,"spread_pct":0.138217,"quote_size_imbalance":null,"quote_age_s":0.106466},"context":{"vwap":7.197666,"price_vs_vwap_pct":0.518695,"ema9":7.231803,"ema20":7.225446,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-1.296044,"dist_to_hod_atr":4.598038,"atr":0.020661,"spread_atr":0.484004,"own_change_pct":0.184167,"rel_strength_pct":{"SPY":0.12144,"IWM":0.124455}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.007269},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5aeac411b36a","ts":"2026-09-15T15:44:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 925.0s, plan says WATCH; stop 5.67, target 5.83 (prev_day_high), R:R 0.65; R:R 0.65 < 2.0 at 5.76; breakout: 1-min close > 5.80 on >= 4568 sh","plan":{"state":"WATCH","setup":"","stop":5.6654,"target":5.83,"target_label":"prev_day_high","reward_risk":0.65,"pos_in_5d_range_pct":88.0,"room_to_5d_high_atr":0.16},"price":5.765,"vwap":5.715,"ext_from_open_pct":1.14,"max_ext_allowed_pct":4.0,"volume_pace":0.621,"trend":"flat","recent_slope_pct":0.0624,"volatility":"high"},"price":5.765,"volume":{"bars":134,"last_bar_volume":803.0,"baseline_avg":3202.05,"bar_rvol":0.250777,"raw_accel":-0.894342,"smooth_accel":0.461472,"accel_momentum":-0.397485,"rvol_3bar":[1.563096,2.50037,0.250777],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":4714.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":0.957641,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":1.034107},"context":{"vwap":5.714655,"price_vs_vwap_pct":0.880974,"ema9":5.742015,"ema20":5.732405,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.431779,"dist_to_hod_atr":1.647597,"atr":0.015174,"spread_atr":0.659039,"own_change_pct":0.254338,"rel_strength_pct":{"SPY":0.21473,"IWM":0.191123}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.240154},"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":"26a059a019ca","ts":"2026-09-15T15:44:15+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 935.0s, plan says PASS; stop 5.65, target 5.79 (ceiling), R:R 0.38; R:R 0.38 < 2.0 at 5.75; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6522,"target":5.79,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":85.5,"room_to_5d_high_atr":0.2},"price":5.7518,"vwap":5.715,"ext_from_open_pct":0.91,"max_ext_allowed_pct":4.0,"volume_pace":0.62,"trend":"flat","recent_slope_pct":0.0165,"volatility":"high"},"price":5.7518,"volume":{"bars":134,"last_bar_volume":803.0,"baseline_avg":3202.05,"bar_rvol":0.250777,"raw_accel":-0.894342,"smooth_accel":0.461472,"accel_momentum":-0.397485,"rvol_3bar":[1.563096,2.50037,0.250777],"trend_3bar":"MIXED","projected_rvol":5.414032},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":4460.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":0.955283,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":1.641844},"context":{"vwap":5.714655,"price_vs_vwap_pct":0.649989,"ema9":5.742015,"ema20":5.732405,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.659758,"dist_to_hod_atr":2.517528,"atr":0.015174,"spread_atr":0.659039,"own_change_pct":0.254338,"rel_strength_pct":{"SPY":0.21473,"IWM":0.191123}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.239563},"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":"e1b8b2f55962","ts":"2026-09-15T15:44:20+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 940.0s, plan says WATCH; stop 5.67, target 5.83 (prev_day_high), R:R 0.60; R:R 0.60 < 2.0 at 5.77; breakout: 1-min close > 5.80 on >= 4568 sh","plan":{"state":"WATCH","setup":"","stop":5.6704,"target":5.83,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":88.9,"room_to_5d_high_atr":0.15},"price":5.77,"vwap":5.715,"ext_from_open_pct":1.23,"max_ext_allowed_pct":4.0,"volume_pace":0.62,"trend":"flat","recent_slope_pct":0.0798,"volatility":"high"},"price":5.77,"volume":{"bars":134,"last_bar_volume":803.0,"baseline_avg":3202.05,"bar_rvol":0.250777,"raw_accel":-0.894342,"smooth_accel":0.461472,"accel_momentum":-0.397485,"rvol_3bar":[1.563096,2.50037,0.250777],"trend_3bar":"MIXED","projected_rvol":4.249777},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":4580.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":0.955594,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":2.786572},"context":{"vwap":5.714655,"price_vs_vwap_pct":0.968469,"ema9":5.742015,"ema20":5.732405,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.345423,"dist_to_hod_atr":1.318078,"atr":0.015174,"spread_atr":0.659039,"own_change_pct":0.254338,"rel_strength_pct":{"SPY":0.21473,"IWM":0.191123}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.239641},"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":"30a172bec267","ts":"2026-09-15T15:44:50+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 970.0s, plan says PASS; stop 5.66, target 5.79 (ceiling), R:R 0.32; R:R 0.32 < 2.0 at 5.76; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6588,"target":5.79,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":86.7,"room_to_5d_high_atr":0.18},"price":5.7584,"vwap":5.7158,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":0.629,"trend":"flat","recent_slope_pct":0.0395,"volatility":"high"},"price":5.7584,"volume":{"bars":134,"last_bar_volume":803.0,"baseline_avg":3202.05,"bar_rvol":0.250777,"raw_accel":-0.894342,"smooth_accel":0.461472,"accel_momentum":-0.397485,"rvol_3bar":[1.563096,2.50037,0.250777],"trend_3bar":"MIXED","projected_rvol":5.581299},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":5294.0,"sell_vol":5063.0,"unclassified_vol":0.0,"imbalance":0.022304,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":2.689955},"context":{"vwap":5.714655,"price_vs_vwap_pct":0.765482,"ema9":5.742015,"ema20":5.732405,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.545769,"dist_to_hod_atr":2.082563,"atr":0.015174,"spread_atr":0.659039,"own_change_pct":0.254338,"rel_strength_pct":{"SPY":0.21473,"IWM":0.191123}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.005593},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4ad13059df05","ts":"2026-09-15T15:45:00+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 980.0s, plan says WATCH; stop 5.67, target 5.83 (prev_day_high), R:R 0.64; R:R 0.64 < 2.0 at 5.77; breakout: 1-min close > 5.80 on >= 4568 sh","plan":{"state":"WATCH","setup":"","stop":5.6668,"target":5.83,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":88.2,"room_to_5d_high_atr":0.16},"price":5.7664,"vwap":5.7159,"ext_from_open_pct":1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.628,"trend":"flat","recent_slope_pct":0.0673,"volatility":"high"},"price":5.7664,"volume":{"bars":134,"last_bar_volume":803.0,"baseline_avg":3202.05,"bar_rvol":0.250777,"raw_accel":-0.894342,"smooth_accel":0.461472,"accel_momentum":-0.397485,"rvol_3bar":[1.563096,2.50037,0.250777],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":5467.0,"sell_vol":5054.0,"unclassified_vol":0.0,"imbalance":0.039255,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":0.000567},"context":{"vwap":5.714655,"price_vs_vwap_pct":0.905473,"ema9":5.742015,"ema20":5.732405,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.407599,"dist_to_hod_atr":1.555332,"atr":0.015174,"spread_atr":0.659039,"own_change_pct":0.254338,"rel_strength_pct":{"SPY":0.223966,"IWM":0.212191}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.009844},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"05b757155e49","ts":"2026-09-15T15:45:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 990.0s, plan says PASS; stop 5.65, target 5.79 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 5.75; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6547,"target":5.79,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":86.0,"room_to_5d_high_atr":0.19},"price":5.7543,"vwap":5.716,"ext_from_open_pct":0.95,"max_ext_allowed_pct":3.0,"volume_pace":0.628,"trend":"flat","recent_slope_pct":0.0612,"volatility":"high"},"price":5.7543,"volume":{"bars":135,"last_bar_volume":15080.0,"baseline_avg":2876.4,"bar_rvol":5.242664,"raw_accel":17.779577,"smooth_accel":2.031238,"accel_momentum":1.569766,"rvol_3bar":[2.50037,0.250777,5.242664],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":5564.0,"sell_vol":5636.0,"unclassified_vol":0.0,"imbalance":-0.006429,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":3.411004},"context":{"vwap":5.71591,"price_vs_vwap_pct":0.671627,"ema9":5.746892,"ema20":5.735642,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.61658,"dist_to_hod_atr":2.149151,"atr":0.016611,"spread_atr":0.602003,"own_change_pct":0.463431,"rel_strength_pct":{"SPY":0.433059,"IWM":0.421284}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.033703},"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":"adbc0581639a","ts":"2026-09-15T15:45:15+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 995.0s, plan says WATCH; stop 5.67, target 5.83 (prev_day_high), R:R 0.64; R:R 0.64 < 2.0 at 5.77; breakout: 1-min close > 5.80 on >= 4827 sh","plan":{"state":"WATCH","setup":"","stop":5.667,"target":5.83,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":88.3,"room_to_5d_high_atr":0.16},"price":5.7666,"vwap":5.716,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.628,"trend":"flat","recent_slope_pct":0.1039,"volatility":"high"},"price":5.7666,"volume":{"bars":135,"last_bar_volume":15080.0,"baseline_avg":2876.4,"bar_rvol":5.242664,"raw_accel":17.779577,"smooth_accel":2.031238,"accel_momentum":1.569766,"rvol_3bar":[2.50037,0.250777,5.242664],"trend_3bar":"MIXED","projected_rvol":1.173689},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":2784.0,"sell_vol":5736.0,"unclassified_vol":0.0,"imbalance":-0.346479,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":3.836041},"context":{"vwap":5.71591,"price_vs_vwap_pct":0.886816,"ema9":5.746892,"ema20":5.735642,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.404145,"dist_to_hod_atr":1.408687,"atr":0.016611,"spread_atr":0.602003,"own_change_pct":0.463431,"rel_strength_pct":{"SPY":0.433059,"IWM":0.421284}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.816472},"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":"cc1d6ed72c63","ts":"2026-09-15T15:45:40+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 1020.0s, plan says PASS; stop 5.66, target 5.79 (ceiling), R:R 0.35; R:R 0.35 < 2.0 at 5.75; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6551,"target":5.79,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.7547,"vwap":5.716,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.626,"trend":"flat","recent_slope_pct":0.0626,"volatility":"high"},"price":5.7547,"volume":{"bars":135,"last_bar_volume":15080.0,"baseline_avg":2876.4,"bar_rvol":5.242664,"raw_accel":17.779577,"smooth_accel":2.031238,"accel_momentum":1.569766,"rvol_3bar":[2.50037,0.250777,5.242664],"trend_3bar":"MIXED","projected_rvol":0.587192},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":242.0,"sell_vol":205.0,"unclassified_vol":0.0,"imbalance":0.082774,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":2.885005},"context":{"vwap":5.71591,"price_vs_vwap_pct":0.678625,"ema9":5.746892,"ema20":5.735642,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.609672,"dist_to_hod_atr":2.125071,"atr":0.016611,"spread_atr":0.602003,"own_change_pct":0.463431,"rel_strength_pct":{"SPY":0.433059,"IWM":0.421284}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.433957},"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":"48b31672e7a1","ts":"2026-09-15T15:45:50+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 1030.0s, plan says WATCH; stop 5.66, target 5.83 (prev_day_high), R:R 0.71; R:R 0.71 < 2.0 at 5.76; breakout: 1-min close > 5.80 on >= 4827 sh","plan":{"state":"WATCH","setup":"","stop":5.6596,"target":5.83,"target_label":"prev_day_high","reward_risk":0.71,"pos_in_5d_range_pct":86.9,"room_to_5d_high_atr":0.18},"price":5.7592,"vwap":5.716,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.626,"trend":"flat","recent_slope_pct":0.0782,"volatility":"high"},"price":5.7592,"volume":{"bars":135,"last_bar_volume":15080.0,"baseline_avg":2876.4,"bar_rvol":5.242664,"raw_accel":17.779577,"smooth_accel":2.031238,"accel_momentum":1.569766,"rvol_3bar":[2.50037,0.250777,5.242664],"trend_3bar":"MIXED","projected_rvol":0.553609},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":273.0,"sell_vol":161.0,"unclassified_vol":0.0,"imbalance":0.258065,"bid":5.76,"ask":5.77,"spread_pct":0.173461,"quote_size_imbalance":null,"quote_age_s":7.425469},"context":{"vwap":5.71591,"price_vs_vwap_pct":0.757352,"ema9":5.746892,"ema20":5.735642,"ema_stack":true,"ema_warm":true,"hod":5.79,"dist_to_hod_pct":-0.531952,"dist_to_hod_atr":1.854169,"atr":0.016611,"spread_atr":0.602003,"own_change_pct":0.463431,"rel_strength_pct":{"SPY":0.433059,"IWM":0.421284}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.352946},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5640efdc9f4d","ts":"2026-09-15T15:47:45+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8407,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.9599,"vwap":9.9563,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.98,"trend":"flat","recent_slope_pct":-0.069,"volatility":"medium"},"price":9.9599,"volume":{"bars":137,"last_bar_volume":115197.0,"baseline_avg":250753.85,"bar_rvol":0.459403,"raw_accel":-0.538344,"smooth_accel":0.19682,"accel_momentum":-0.523714,"rvol_3bar":[1.13889,0.939941,0.459403],"trend_3bar":"DECELERATING","projected_rvol":0.625756},"flow":{"window_s":30,"trades":188,"trade_rate":6.266667,"buy_vol":13374.0,"sell_vol":65123.0,"unclassified_vol":0.0,"imbalance":-0.659248,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":1.908742},"context":{"vwap":9.956287,"price_vs_vwap_pct":0.036288,"ema9":9.973391,"ema20":9.968029,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.896517,"dist_to_hod_atr":4.564482,"atr":0.019739,"spread_atr":0.506602,"own_change_pct":-0.186279,"rel_strength_pct":{"SPY":-0.171099,"IWM":-0.167004}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.30286},"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":"2814582d2e96","ts":"2026-09-15T15:48:05+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8408,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.96,"vwap":9.9563,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.978,"trend":"flat","recent_slope_pct":-0.0652,"volatility":"medium"},"price":9.96,"volume":{"bars":138,"last_bar_volume":132664.0,"baseline_avg":238933.1,"bar_rvol":0.555235,"raw_accel":0.151627,"smooth_accel":-0.150816,"accel_momentum":-0.347636,"rvol_3bar":[0.939941,0.459403,0.555235],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":188,"trade_rate":6.266667,"buy_vol":26748.0,"sell_vol":53117.0,"unclassified_vol":0.0,"imbalance":-0.33017,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.812886},"context":{"vwap":9.956293,"price_vs_vwap_pct":0.03723,"ema9":9.968713,"ema20":9.966312,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.895522,"dist_to_hod_atr":4.475833,"atr":0.020108,"spread_atr":0.497315,"own_change_pct":-0.350526,"rel_strength_pct":{"SPY":-0.289817,"IWM":-0.280318}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.183322},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6677a3a80949","ts":"2026-09-15T15:48:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.015,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9463,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":1.648,"trend":"flat","recent_slope_pct":0.101,"volatility":"medium"},"price":5.96,"volume":{"bars":138,"last_bar_volume":51896.0,"baseline_avg":83112.05,"bar_rvol":0.62441,"raw_accel":1.412309,"smooth_accel":0.125276,"accel_momentum":-0.331113,"rvol_3bar":[1.605821,0.24403,0.62441],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":3714.0,"sell_vol":3840.0,"unclassified_vol":0.0,"imbalance":-0.01668,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.281193},"context":{"vwap":5.946328,"price_vs_vwap_pct":0.229928,"ema9":5.940163,"ema20":5.929462,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":4.934315,"atr":0.022293,"spread_atr":0.448574,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.482294,"IWM":0.491793}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.010415},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4dc214e565ab","ts":"2026-09-15T15:48:10+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9563,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.977,"trend":"flat","recent_slope_pct":-0.0753,"volatility":"medium"},"price":9.955,"volume":{"bars":138,"last_bar_volume":132664.0,"baseline_avg":238933.1,"bar_rvol":0.555235,"raw_accel":0.151627,"smooth_accel":-0.150816,"accel_momentum":-0.347636,"rvol_3bar":[0.939941,0.459403,0.555235],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":188,"trade_rate":6.266667,"buy_vol":26862.0,"sell_vol":52817.0,"unclassified_vol":0.0,"imbalance":-0.325745,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.704306},"context":{"vwap":9.956293,"price_vs_vwap_pct":-0.012989,"ema9":9.968713,"ema20":9.966312,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.724491,"atr":0.020108,"spread_atr":0.497315,"own_change_pct":-0.350526,"rel_strength_pct":{"SPY":-0.289817,"IWM":-0.280318}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.180865},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6066b245a22d","ts":"2026-09-15T15:48:20+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.015,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":2.53},"price":9.965,"vwap":9.9563,"ext_from_open_pct":1.37,"max_ext_allowed_pct":4.0,"volume_pace":0.984,"trend":"flat","recent_slope_pct":-0.0552,"volatility":"medium"},"price":9.965,"volume":{"bars":138,"last_bar_volume":132664.0,"baseline_avg":238933.1,"bar_rvol":0.555235,"raw_accel":0.151627,"smooth_accel":-0.150816,"accel_momentum":-0.347636,"rvol_3bar":[0.939941,0.459403,0.555235],"trend_3bar":"MIXED","projected_rvol":4.645388},"flow":{"window_s":30,"trades":171,"trade_rate":5.7,"buy_vol":79242.0,"sell_vol":291963.0,"unclassified_vol":0.0,"imbalance":-0.573055,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.03396},"context":{"vwap":9.956293,"price_vs_vwap_pct":0.08745,"ema9":9.968713,"ema20":9.966312,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.845771,"dist_to_hod_atr":4.227176,"atr":0.020108,"spread_atr":0.497315,"own_change_pct":-0.350526,"rel_strength_pct":{"SPY":-0.289817,"IWM":-0.280318}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.31818},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dcbc07d776b1","ts":"2026-09-15T15:48:40+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8613,"target":6.015,"target_label":"ceiling","reward_risk":0.85,"pos_in_5d_range_pct":101.9,"room_to_5d_high_atr":-0.04},"price":5.9444,"vwap":5.9463,"ext_from_open_pct":0.58,"max_ext_allowed_pct":4.0,"volume_pace":1.647,"trend":"flat","recent_slope_pct":0.0486,"volatility":"medium"},"price":5.9444,"volume":{"bars":138,"last_bar_volume":51896.0,"baseline_avg":83112.05,"bar_rvol":0.62441,"raw_accel":1.412309,"smooth_accel":0.125276,"accel_momentum":-0.331113,"rvol_3bar":[1.605821,0.24403,0.62441],"trend_3bar":"MIXED","projected_rvol":1.122021},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":28049.0,"sell_vol":32611.0,"unclassified_vol":0.0,"imbalance":-0.075206,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.670108},"context":{"vwap":5.946328,"price_vs_vwap_pct":-0.032419,"ema9":5.940163,"ema20":5.929462,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.069193,"dist_to_hod_atr":5.634091,"atr":0.022293,"spread_atr":0.448574,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.482294,"IWM":0.491793}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.046959},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d8404bcbbdf1","ts":"2026-09-15T15:48:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8768,"target":6.015,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":104.0,"room_to_5d_high_atr":-0.09},"price":5.9599,"vwap":5.9464,"ext_from_open_pct":0.84,"max_ext_allowed_pct":4.0,"volume_pace":1.646,"trend":"flat","recent_slope_pct":0.1007,"volatility":"medium"},"price":5.9599,"volume":{"bars":138,"last_bar_volume":51896.0,"baseline_avg":83112.05,"bar_rvol":0.62441,"raw_accel":1.412309,"smooth_accel":0.125276,"accel_momentum":-0.331113,"rvol_3bar":[1.605821,0.24403,0.62441],"trend_3bar":"MIXED","projected_rvol":1.027448},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":17936.0,"sell_vol":32863.0,"unclassified_vol":0.0,"imbalance":-0.293844,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.060281},"context":{"vwap":5.946328,"price_vs_vwap_pct":0.228246,"ema9":5.940163,"ema20":5.929462,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.813839,"dist_to_hod_atr":4.938801,"atr":0.022293,"spread_atr":0.448574,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.482294,"IWM":0.491793}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.183479},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0d5344681e4c","ts":"2026-09-15T15:49:20+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7668,"target":13.84,"target_label":"range_20d_high","reward_risk":7.69,"pos_in_5d_range_pct":59.8,"room_to_5d_high_atr":1.26},"price":12.8904,"vwap":12.8642,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.0168,"volatility":"medium"},"price":12.8904,"volume":{"bars":139,"last_bar_volume":212.0,"baseline_avg":1931.95,"bar_rvol":0.109734,"raw_accel":-0.561065,"smooth_accel":-0.959977,"accel_momentum":-0.101194,"rvol_3bar":[0.133975,0.153246,0.109734],"trend_3bar":"MIXED","projected_rvol":2.144465},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":141.0,"sell_vol":1244.0,"unclassified_vol":0.0,"imbalance":-0.79639,"bid":12.86,"ask":12.89,"spread_pct":0.23301,"quote_size_imbalance":null,"quote_age_s":0.232953},"context":{"vwap":12.864051,"price_vs_vwap_pct":0.204823,"ema9":12.89292,"ema20":12.877605,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.151789,"dist_to_hod_atr":16.783725,"atr":0.024994,"spread_atr":1.200266,"own_change_pct":0.170834,"rel_strength_pct":{"SPY":0.227582,"IWM":0.249802}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.087391},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02e7d084bb4b","ts":"2026-09-15T15:50:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.8377,"target":10.015,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":20.2,"room_to_5d_high_atr":2.54},"price":9.9569,"vwap":9.9564,"ext_from_open_pct":1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.977,"trend":"flat","recent_slope_pct":-0.0126,"volatility":"medium"},"price":9.9569,"volume":{"bars":139,"last_bar_volume":408520.0,"baseline_avg":223775.4,"bar_rvol":1.82558,"raw_accel":2.079358,"smooth_accel":-0.131553,"accel_momentum":0.019263,"rvol_3bar":[0.459403,0.555235,1.82558],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":45443.0,"sell_vol":70757.0,"unclassified_vol":0.0,"imbalance":-0.217849,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.000418},"context":{"vwap":9.956369,"price_vs_vwap_pct":0.005334,"ema9":9.968971,"ema20":9.966663,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.926368,"dist_to_hod_atr":4.631778,"atr":0.0201,"spread_atr":0.497506,"own_change_pct":-0.150225,"rel_strength_pct":{"SPY":-0.08158,"IWM":-0.048414}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.3977},"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":"db867aa6340f","ts":"2026-09-15T15:50:10+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8408,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.96,"vwap":9.9564,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.976,"trend":"flat","recent_slope_pct":-0.0059,"volatility":"medium"},"price":9.96,"volume":{"bars":140,"last_bar_volume":146999.0,"baseline_avg":224371.65,"bar_rvol":0.655159,"raw_accel":-0.640167,"smooth_accel":0.036511,"accel_momentum":0.168064,"rvol_3bar":[0.555235,1.82558,0.655159],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":54808.0,"sell_vol":71582.0,"unclassified_vol":0.0,"imbalance":-0.132716,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.314074},"context":{"vwap":9.95638,"price_vs_vwap_pct":0.036358,"ema9":9.966556,"ema20":9.965733,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.895522,"dist_to_hod_atr":4.444389,"atr":0.02025,"spread_atr":0.493821,"own_change_pct":-0.281422,"rel_strength_pct":{"SPY":-0.212777,"IWM":-0.179611}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.08695},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bc4e92c01b1d","ts":"2026-09-15T15:50:25+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7678,"target":13.23,"target_label":"ceiling","reward_risk":2.74,"pos_in_5d_range_pct":59.9,"room_to_5d_high_atr":1.26},"price":12.8914,"vwap":12.8641,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.96,"trend":"flat","recent_slope_pct":-0.053,"volatility":"medium"},"price":12.8914,"volume":{"bars":140,"last_bar_volume":1778.0,"baseline_avg":1919.25,"bar_rvol":0.926404,"raw_accel":2.705614,"smooth_accel":-0.87852,"accel_momentum":0.081456,"rvol_3bar":[0.153246,0.109734,0.926404],"trend_3bar":"MIXED","projected_rvol":0.556467},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":177.0,"sell_vol":268.0,"unclassified_vol":0.0,"imbalance":-0.204494,"bid":12.85,"ask":12.87,"spread_pct":0.155521,"quote_size_imbalance":null,"quote_age_s":9.731204},"context":{"vwap":12.8641,"price_vs_vwap_pct":0.21222,"ema9":12.886976,"ema20":12.876233,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.144276,"dist_to_hod_atr":15.320536,"atr":0.027316,"spread_atr":0.732164,"own_change_pct":-0.352475,"rel_strength_pct":{"SPY":-0.28383,"IWM":-0.250664}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.189444},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"70e96281a9fe","ts":"2026-09-15T15:50:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6421,"target":7.7858,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":0.78},"price":7.73,"vwap":7.7234,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":0.0223,"volatility":"medium"},"price":7.73,"volume":{"bars":140,"last_bar_volume":6598.0,"baseline_avg":7006.8,"bar_rvol":0.941657,"raw_accel":2.766627,"smooth_accel":-0.3187,"accel_momentum":0.278204,"rvol_3bar":[0.82578,0.085119,0.941657],"trend_3bar":"MIXED","projected_rvol":23.151225},"flow":{"window_s":30,"trades":338,"trade_rate":11.266667,"buy_vol":29717.0,"sell_vol":51391.0,"unclassified_vol":0.0,"imbalance":-0.267224,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.200931},"context":{"vwap":7.723636,"price_vs_vwap_pct":0.082402,"ema9":7.71296,"ema20":7.708578,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.024328,"dist_to_hod_atr":6.359181,"atr":0.01258,"spread_atr":0.794898,"own_change_pct":-0.120466,"rel_strength_pct":{"SPY":-0.051821,"IWM":-0.018655}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.251633},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9728be3ebb50","ts":"2026-09-15T15:50:30+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.85 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7214,"target":13.23,"target_label":"ceiling","reward_risk":3.12,"pos_in_5d_range_pct":56.9,"room_to_5d_high_atr":1.36},"price":12.845,"vwap":12.8641,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":-0.125,"volatility":"medium"},"price":12.845,"volume":{"bars":140,"last_bar_volume":1778.0,"baseline_avg":1919.25,"bar_rvol":0.926404,"raw_accel":2.705614,"smooth_accel":-0.87852,"accel_momentum":0.081456,"rvol_3bar":[0.153246,0.109734,0.926404],"trend_3bar":"MIXED","projected_rvol":1.147323},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":296.0,"sell_vol":805.0,"unclassified_vol":0.0,"imbalance":-0.462307,"bid":12.83,"ask":12.87,"spread_pct":0.311284,"quote_size_imbalance":null,"quote_age_s":0.150486},"context":{"vwap":12.8641,"price_vs_vwap_pct":-0.148474,"ema9":12.886976,"ema20":12.876233,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.492889,"dist_to_hod_atr":17.019157,"atr":0.027316,"spread_atr":1.464328,"own_change_pct":-0.352475,"rel_strength_pct":{"SPY":-0.28383,"IWM":-0.250664}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.428283},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dccd351b2b8a","ts":"2026-09-15T15:50:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6353,"target":7.7858,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":0.8},"price":7.7232,"vwap":7.7233,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.594,"trend":"flat","recent_slope_pct":0.0047,"volatility":"medium"},"price":7.7232,"volume":{"bars":140,"last_bar_volume":6598.0,"baseline_avg":7006.8,"bar_rvol":0.941657,"raw_accel":2.766627,"smooth_accel":-0.3187,"accel_momentum":0.278204,"rvol_3bar":[0.82578,0.085119,0.941657],"trend_3bar":"MIXED","projected_rvol":19.844641},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":5750.0,"sell_vol":1141.0,"unclassified_vol":0.0,"imbalance":0.668843,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.261553},"context":{"vwap":7.723636,"price_vs_vwap_pct":-0.00564,"ema9":7.71296,"ema20":7.708578,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.111396,"dist_to_hod_atr":6.899711,"atr":0.01258,"spread_atr":0.794898,"own_change_pct":-0.120466,"rel_strength_pct":{"SPY":-0.051821,"IWM":-0.018655}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.629821},"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":"bcbd4d444be5","ts":"2026-09-15T15:51:05+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7776,"target":13.23,"target_label":"ceiling","reward_risk":2.66,"pos_in_5d_range_pct":60.5,"room_to_5d_high_atr":1.24},"price":12.9012,"vwap":12.8642,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.957,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"medium"},"price":12.9012,"volume":{"bars":141,"last_bar_volume":1164.0,"baseline_avg":1998.75,"bar_rvol":0.582364,"raw_accel":-0.345332,"smooth_accel":0.187053,"accel_momentum":1.065573,"rvol_3bar":[0.109734,0.926404,0.582364],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":65.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.969697,"bid":12.83,"ask":12.86,"spread_pct":0.233554,"quote_size_imbalance":null,"quote_age_s":5.353008},"context":{"vwap":12.864157,"price_vs_vwap_pct":0.287953,"ema9":12.889381,"ema20":12.878401,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.070647,"dist_to_hod_atr":13.941614,"atr":0.029315,"spread_atr":1.023363,"own_change_pct":-0.007752,"rel_strength_pct":{"SPY":0.015351,"IWM":0.02736}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.564717},"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":"8a69dd1f2934","ts":"2026-09-15T15:51:15+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7776,"target":13.23,"target_label":"ceiling","reward_risk":2.66,"pos_in_5d_range_pct":60.5,"room_to_5d_high_atr":1.24},"price":12.9012,"vwap":12.8642,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.956,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"medium"},"price":12.9012,"volume":{"bars":141,"last_bar_volume":1164.0,"baseline_avg":1998.75,"bar_rvol":0.582364,"raw_accel":-0.345332,"smooth_accel":0.187053,"accel_momentum":1.065573,"rvol_3bar":[0.109734,0.926404,0.582364],"trend_3bar":"MIXED","projected_rvol":0.036023},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":34.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.789474,"bid":12.83,"ask":12.86,"spread_pct":0.233554,"quote_size_imbalance":null,"quote_age_s":15.353008},"context":{"vwap":12.864157,"price_vs_vwap_pct":0.287953,"ema9":12.889381,"ema20":12.878401,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.070647,"dist_to_hod_atr":13.941614,"atr":0.029315,"spread_atr":1.023363,"own_change_pct":-0.007752,"rel_strength_pct":{"SPY":0.015351,"IWM":0.02736}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.459761},"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":"b0713cd82b10","ts":"2026-09-15T15:51:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1285.0s, plan says WATCH; stop 8.33, target 8.56 (premarket_high), R:R 0.99; R:R 0.99 < 2.0 at 8.45; breakout: 1-min close > 8.45 on >= 2394 sh","plan":{"state":"WATCH","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":0.99,"pos_in_5d_range_pct":62.6,"room_to_5d_high_atr":0.9},"price":8.445,"vwap":8.3149,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":0.0168,"volatility":"medium"},"price":8.445,"volume":{"bars":141,"last_bar_volume":706.0,"baseline_avg":1837.4,"bar_rvol":0.384239,"raw_accel":0.536954,"smooth_accel":-0.045246,"accel_momentum":0.536159,"rvol_3bar":[1.392365,0.119022,0.384239],"trend_3bar":"MIXED","projected_rvol":0.028301},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":5.0,"sell_vol":21.0,"unclassified_vol":0.0,"imbalance":-0.615385,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.249676},"context":{"vwap":8.31485,"price_vs_vwap_pct":1.565271,"ema9":8.417005,"ema20":8.398066,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.647059,"dist_to_hod_atr":2.364737,"atr":0.023258,"spread_atr":0.429952,"own_change_pct":0.143962,"rel_strength_pct":{"SPY":0.167065,"IWM":0.179074}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.236455},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1136008df408","ts":"2026-09-15T15:51:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6371,"target":7.78,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":0.8},"price":7.725,"vwap":7.7233,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.0428,"volatility":"medium"},"price":7.725,"volume":{"bars":141,"last_bar_volume":85837.0,"baseline_avg":7164.25,"bar_rvol":11.981296,"raw_accel":12.009548,"smooth_accel":5.09126,"accel_momentum":5.40996,"rvol_3bar":[0.085119,0.941657,11.981296],"trend_3bar":"ACCELERATING","projected_rvol":0.376034},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":624.0,"sell_vol":723.0,"unclassified_vol":0.0,"imbalance":-0.073497,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.805132},"context":{"vwap":7.723271,"price_vs_vwap_pct":0.022381,"ema9":7.715368,"ema20":7.710142,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.088348,"dist_to_hod_atr":5.846428,"atr":0.014539,"spread_atr":0.687815,"own_change_pct":0.064767,"rel_strength_pct":{"SPY":0.08787,"IWM":0.099879}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.880585},"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":"637b95ce5972","ts":"2026-09-15T15:51:35+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.97,"trend":"flat","recent_slope_pct":0.005,"volatility":"medium"},"price":9.955,"volume":{"bars":141,"last_bar_volume":137727.0,"baseline_avg":204018.05,"bar_rvol":0.675073,"raw_accel":-0.063075,"smooth_accel":0.393765,"accel_momentum":0.357254,"rvol_3bar":[1.82558,0.655159,0.675073],"trend_3bar":"MIXED","projected_rvol":0.407628},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":26093.0,"sell_vol":19150.0,"unclassified_vol":0.0,"imbalance":0.15346,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.105449},"context":{"vwap":9.956398,"price_vs_vwap_pct":-0.014044,"ema9":9.966245,"ema20":9.965664,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.667431,"atr":0.020354,"spread_atr":0.491309,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.023103,"IWM":0.035112}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.103597},"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":"7bd0a810bf89","ts":"2026-09-15T15:51:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1300.0s, plan says PASS; stop 8.33, target 8.56 (premarket_high), R:R 1.12; target 0.12 away > ~0.11 reachable in 243 min","plan":{"state":"PASS","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":1.12,"pos_in_5d_range_pct":61.8,"room_to_5d_high_atr":0.92},"price":8.4376,"vwap":8.3149,"ext_from_open_pct":1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":-0.0007,"volatility":"medium"},"price":8.4376,"volume":{"bars":141,"last_bar_volume":706.0,"baseline_avg":1837.4,"bar_rvol":0.384239,"raw_accel":0.536954,"smooth_accel":-0.045246,"accel_momentum":0.536159,"rvol_3bar":[1.392365,0.119022,0.384239],"trend_3bar":"MIXED","projected_rvol":0.019593},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":5.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.428571,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":5.517146},"context":{"vwap":8.31485,"price_vs_vwap_pct":1.476273,"ema9":8.417005,"ema20":8.398066,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.734118,"dist_to_hod_atr":2.682902,"atr":0.023258,"spread_atr":0.429952,"own_change_pct":0.143962,"rel_strength_pct":{"SPY":0.167065,"IWM":0.179074}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.164674},"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":"a1524972ec80","ts":"2026-09-15T15:51:50+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6212,"target":7.78,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":45.7,"room_to_5d_high_atr":0.84},"price":7.7091,"vwap":7.7233,"ext_from_open_pct":0.12,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0016,"volatility":"medium"},"price":7.7091,"volume":{"bars":141,"last_bar_volume":85837.0,"baseline_avg":7164.25,"bar_rvol":11.981296,"raw_accel":12.009548,"smooth_accel":5.09126,"accel_momentum":5.40996,"rvol_3bar":[0.085119,0.941657,11.981296],"trend_3bar":"ACCELERATING","projected_rvol":0.490938},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1004.0,"sell_vol":1711.0,"unclassified_vol":0.0,"imbalance":-0.260405,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.073478},"context":{"vwap":7.723271,"price_vs_vwap_pct":-0.18349,"ema9":7.715368,"ema20":7.710142,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.291933,"dist_to_hod_atr":6.940054,"atr":0.014539,"spread_atr":0.687815,"own_change_pct":0.064767,"rel_strength_pct":{"SPY":0.08787,"IWM":0.099879}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-3.119991},"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":"a8f6af8c4e87","ts":"2026-09-15T15:51:55+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.839,"target":10.015,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.54},"price":9.9582,"vwap":9.9564,"ext_from_open_pct":1.3,"max_ext_allowed_pct":4.0,"volume_pace":0.969,"trend":"flat","recent_slope_pct":0.0114,"volatility":"medium"},"price":9.9582,"volume":{"bars":141,"last_bar_volume":137727.0,"baseline_avg":204018.05,"bar_rvol":0.675073,"raw_accel":-0.063075,"smooth_accel":0.393765,"accel_momentum":0.357254,"rvol_3bar":[1.82558,0.655159,0.675073],"trend_3bar":"MIXED","projected_rvol":0.662749},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":72469.0,"sell_vol":46402.0,"unclassified_vol":0.0,"imbalance":0.219288,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.301726},"context":{"vwap":9.956398,"price_vs_vwap_pct":0.018096,"ema9":9.966245,"ema20":9.965664,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.913433,"dist_to_hod_atr":4.510213,"atr":0.020354,"spread_atr":0.491309,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.023103,"IWM":0.035112}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.148035},"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":"3fbe641df93b","ts":"2026-09-15T15:51:55+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6371,"target":7.78,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":0.8},"price":7.725,"vwap":7.7233,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0428,"volatility":"medium"},"price":7.725,"volume":{"bars":141,"last_bar_volume":85837.0,"baseline_avg":7164.25,"bar_rvol":11.981296,"raw_accel":12.009548,"smooth_accel":5.09126,"accel_momentum":5.40996,"rvol_3bar":[0.085119,0.941657,11.981296],"trend_3bar":"ACCELERATING","projected_rvol":0.453007},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1048.0,"sell_vol":1402.0,"unclassified_vol":0.0,"imbalance":-0.14449,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.054807},"context":{"vwap":7.723271,"price_vs_vwap_pct":0.022381,"ema9":7.715368,"ema20":7.710142,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.088348,"dist_to_hod_atr":5.846428,"atr":0.014539,"spread_atr":0.687815,"own_change_pct":0.064767,"rel_strength_pct":{"SPY":0.08787,"IWM":0.099879}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.731175},"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":"6b0baf7efe1b","ts":"2026-09-15T15:52:00+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6199,"target":7.78,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":0.85},"price":7.7078,"vwap":7.7233,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":-0.0018,"volatility":"medium"},"price":7.7078,"volume":{"bars":141,"last_bar_volume":85837.0,"baseline_avg":7164.25,"bar_rvol":11.981296,"raw_accel":12.009548,"smooth_accel":5.09126,"accel_momentum":5.40996,"rvol_3bar":[0.085119,0.941657,11.981296],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1026.0,"sell_vol":1302.0,"unclassified_vol":0.0,"imbalance":-0.118557,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":3.115456},"context":{"vwap":7.723271,"price_vs_vwap_pct":-0.200322,"ema9":7.715368,"ema20":7.710142,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.308579,"dist_to_hod_atr":7.02947,"atr":0.014539,"spread_atr":0.687815,"own_change_pct":0.064767,"rel_strength_pct":{"SPY":0.103713,"IWM":0.127977}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.420463},"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":"c990fccd8969","ts":"2026-09-15T15:52:05+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":4.0,"volume_pace":0.968,"trend":"flat","recent_slope_pct":-0.027,"volatility":"medium"},"price":9.955,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":47578.0,"sell_vol":28582.0,"unclassified_vol":0.0,"imbalance":0.249422,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":5.000323},"context":{"vwap":9.956408,"price_vs_vwap_pct":-0.014146,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.673234,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.025269,"IWM":-0.001006}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.154838},"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":"fcb750a80f92","ts":"2026-09-15T15:52:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1320.0s, plan says WATCH; stop 8.33, target 8.56 (premarket_high), R:R 0.91; R:R 0.91 < 2.0 at 8.45; breakout: 1-min close > 8.46 on >= 2371 sh","plan":{"state":"WATCH","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":63.2,"room_to_5d_high_atr":0.89},"price":8.45,"vwap":8.3149,"ext_from_open_pct":1.44,"max_ext_allowed_pct":3.0,"volume_pace":0.949,"trend":"flat","recent_slope_pct":0.0445,"volatility":"medium"},"price":8.45,"volume":{"bars":142,"last_bar_volume":27.0,"baseline_avg":1851.35,"bar_rvol":0.014584,"raw_accel":-0.961756,"smooth_accel":-0.825129,"accel_momentum":-0.779882,"rvol_3bar":[0.119022,0.384239,0.014584],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":8.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.333333,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":1.31257},"context":{"vwap":8.314865,"price_vs_vwap_pct":1.625217,"ema9":8.421124,"ema20":8.401831,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":2.119548,"atr":0.02359,"spread_atr":0.42391,"own_change_pct":0.149555,"rel_strength_pct":{"SPY":0.188501,"IWM":0.212765}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.004861},"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":"194eb4010152","ts":"2026-09-15T15:52:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6371,"target":7.78,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":0.8},"price":7.725,"vwap":7.7233,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0222,"volatility":"medium"},"price":7.725,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1059.0,"sell_vol":1302.0,"unclassified_vol":0.0,"imbalance":-0.102922,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":2.713552},"context":{"vwap":7.723255,"price_vs_vwap_pct":0.022588,"ema9":7.713854,"ema20":7.709919,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.088348,"dist_to_hod_atr":5.671953,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.033978},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8d62323c00fb","ts":"2026-09-15T15:52:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1325.0s, plan says PASS; stop 8.33, target 8.56 (premarket_high), R:R 1.02; target 0.12 away > ~0.11 reachable in 243 min","plan":{"state":"PASS","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":62.4,"room_to_5d_high_atr":0.91},"price":8.4429,"vwap":8.3149,"ext_from_open_pct":1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.949,"trend":"flat","recent_slope_pct":0.0276,"volatility":"medium"},"price":8.4429,"volume":{"bars":142,"last_bar_volume":27.0,"baseline_avg":1851.35,"bar_rvol":0.014584,"raw_accel":-0.961756,"smooth_accel":-0.825129,"accel_momentum":-0.779882,"rvol_3bar":[0.119022,0.384239,0.014584],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":8.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":-0.157895,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":6.31257},"context":{"vwap":8.314865,"price_vs_vwap_pct":1.539828,"ema9":8.421124,"ema20":8.401831,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.671765,"dist_to_hod_atr":2.420523,"atr":0.02359,"spread_atr":0.42391,"own_change_pct":0.149555,"rel_strength_pct":{"SPY":0.188501,"IWM":0.212765}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.002303},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3e295093b85e","ts":"2026-09-15T15:52:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6343,"target":7.78,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":0.8},"price":7.7222,"vwap":7.7233,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0149,"volatility":"medium"},"price":7.7222,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":927.0,"sell_vol":1303.0,"unclassified_vol":0.0,"imbalance":-0.16861,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":7.713552},"context":{"vwap":7.723255,"price_vs_vwap_pct":-0.013666,"ema9":7.713854,"ema20":7.709919,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.1242,"dist_to_hod_atr":5.858793,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.055664},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a51ec3295d30","ts":"2026-09-15T15:52:15+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.8407,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.9599,"vwap":9.9564,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.967,"trend":"flat","recent_slope_pct":-0.0172,"volatility":"medium"},"price":9.9599,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":0.356647},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":25144.0,"sell_vol":9254.0,"unclassified_vol":0.0,"imbalance":0.461945,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.187306},"context":{"vwap":9.956408,"price_vs_vwap_pct":0.035069,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.896517,"dist_to_hod_atr":4.432193,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.025269,"IWM":-0.001006}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.28677},"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":"886ed3163a7b","ts":"2026-09-15T15:52:20+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":4.0,"volume_pace":0.967,"trend":"flat","recent_slope_pct":-0.027,"volatility":"medium"},"price":9.955,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":0.550063},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":24212.0,"sell_vol":27656.0,"unclassified_vol":0.0,"imbalance":-0.066399,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":2.577617},"context":{"vwap":9.956408,"price_vs_vwap_pct":-0.014146,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.673234,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.025269,"IWM":-0.001006}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.04122},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a82cf47f763e","ts":"2026-09-15T15:52:20+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6371,"target":7.78,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":0.8},"price":7.725,"vwap":7.7233,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0222,"volatility":"medium"},"price":7.725,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":0.059289},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":860.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":0.784232,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":17.713552},"context":{"vwap":7.723255,"price_vs_vwap_pct":0.022588,"ema9":7.713854,"ema20":7.709919,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.088348,"dist_to_hod_atr":5.671953,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.258902},"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":"d1587d654ea8","ts":"2026-09-15T15:52:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1345.0s, plan says WATCH; stop 8.33, target 8.56 (premarket_high), R:R 0.91; R:R 0.91 < 2.0 at 8.45; breakout: 1-min close > 8.46 on >= 2371 sh","plan":{"state":"WATCH","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":63.2,"room_to_5d_high_atr":0.89},"price":8.45,"vwap":8.3168,"ext_from_open_pct":1.44,"max_ext_allowed_pct":3.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.0445,"volatility":"medium"},"price":8.45,"volume":{"bars":142,"last_bar_volume":27.0,"baseline_avg":1851.35,"bar_rvol":0.014584,"raw_accel":-0.961756,"smooth_accel":-0.825129,"accel_momentum":-0.779882,"rvol_3bar":[0.119022,0.384239,0.014584],"trend_3bar":"MIXED","projected_rvol":3.519594},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1172.0,"sell_vol":2086.0,"unclassified_vol":0.0,"imbalance":-0.28054,"bid":8.44,"ask":8.46,"spread_pct":0.236686,"quote_size_imbalance":null,"quote_age_s":1.324388},"context":{"vwap":8.314865,"price_vs_vwap_pct":1.625217,"ema9":8.421124,"ema20":8.401831,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":2.119548,"atr":0.02359,"spread_atr":0.847819,"own_change_pct":0.149555,"rel_strength_pct":{"SPY":0.188501,"IWM":0.212765}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.004091},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c3ee8f247a8d","ts":"2026-09-15T15:52:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6323,"target":7.78,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":0.81},"price":7.7202,"vwap":7.7233,"ext_from_open_pct":0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.589,"trend":"flat","recent_slope_pct":0.0097,"volatility":"medium"},"price":7.7202,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":0.288721},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1598.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.988799,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":27.713552},"context":{"vwap":7.723255,"price_vs_vwap_pct":-0.039562,"ema9":7.713854,"ema20":7.709919,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.149808,"dist_to_hod_atr":5.992251,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.326436},"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":"850ec987a35e","ts":"2026-09-15T15:52:35+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.8403,"target":10.015,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.9595,"vwap":9.9564,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.966,"trend":"flat","recent_slope_pct":-0.018,"volatility":"medium"},"price":9.9595,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":0.557447},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":18822.0,"sell_vol":46035.0,"unclassified_vol":0.0,"imbalance":-0.419585,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.34399},"context":{"vwap":9.956408,"price_vs_vwap_pct":0.031051,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.900498,"dist_to_hod_atr":4.45187,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.025269,"IWM":-0.001006}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.260473},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4c919792990a","ts":"2026-09-15T15:52:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.637,"target":7.78,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":0.8},"price":7.7249,"vwap":7.7233,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.589,"trend":"flat","recent_slope_pct":0.0219,"volatility":"medium"},"price":7.7249,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":0.435815},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1637.0,"sell_vol":1160.0,"unclassified_vol":0.0,"imbalance":0.17054,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":2.762698},"context":{"vwap":7.723255,"price_vs_vwap_pct":0.021293,"ema9":7.713854,"ema20":7.709919,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.089629,"dist_to_hod_atr":5.678626,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.056301},"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":"06bde91b8cfd","ts":"2026-09-15T15:52:40+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":4.0,"volume_pace":0.966,"trend":"flat","recent_slope_pct":-0.027,"volatility":"medium"},"price":9.955,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":0.532454},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":18894.0,"sell_vol":40943.0,"unclassified_vol":0.0,"imbalance":-0.368484,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.078868},"context":{"vwap":9.956408,"price_vs_vwap_pct":-0.014146,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.673234,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.025269,"IWM":-0.001006}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.22875},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"41e49bc0e233","ts":"2026-09-15T15:52:40+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6201,"target":7.78,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":0.84},"price":7.708,"vwap":7.7232,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.589,"trend":"flat","recent_slope_pct":-0.0219,"volatility":"medium"},"price":7.708,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":0.528888},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":2580.0,"sell_vol":1260.0,"unclassified_vol":0.0,"imbalance":0.34375,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.042206},"context":{"vwap":7.723255,"price_vs_vwap_pct":-0.197526,"ema9":7.713854,"ema20":7.709919,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.306018,"dist_to_hod_atr":6.806343,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.113483},"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":"9de94b03c5d6","ts":"2026-09-15T15:52:45+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6421,"target":7.78,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":0.78},"price":7.73,"vwap":7.7233,"ext_from_open_pct":0.39,"max_ext_allowed_pct":3.0,"volume_pace":0.589,"trend":"flat","recent_slope_pct":0.0351,"volatility":"medium"},"price":7.73,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":0.665717},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3410.0,"sell_vol":2061.0,"unclassified_vol":0.0,"imbalance":0.246573,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":0.211341},"context":{"vwap":7.723255,"price_vs_vwap_pct":0.087328,"ema9":7.713854,"ema20":7.709919,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.024328,"dist_to_hod_atr":5.338308,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.081402},"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":"cfc530169beb","ts":"2026-09-15T15:52:50+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.8396,"target":10.015,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.54},"price":9.9588,"vwap":9.9564,"ext_from_open_pct":1.31,"max_ext_allowed_pct":4.0,"volume_pace":0.965,"trend":"flat","recent_slope_pct":-0.0194,"volatility":"medium"},"price":9.9588,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":0.500321},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":14669.0,"sell_vol":32130.0,"unclassified_vol":0.0,"imbalance":-0.373106,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":2.61596},"context":{"vwap":9.956408,"price_vs_vwap_pct":0.02402,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.907463,"dist_to_hod_atr":4.486305,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.025269,"IWM":-0.001006}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.23162},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e1b4c9264af9","ts":"2026-09-15T15:52:50+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6209,"target":7.78,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":45.7,"room_to_5d_high_atr":0.84},"price":7.7088,"vwap":7.7232,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"medium"},"price":7.7088,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":0.798573},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":3407.0,"sell_vol":3781.0,"unclassified_vol":0.0,"imbalance":-0.052031,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":0.806762},"context":{"vwap":7.723255,"price_vs_vwap_pct":-0.187168,"ema9":7.713854,"ema20":7.709919,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.295775,"dist_to_hod_atr":6.75296,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.017177},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4af7eaeef4ce","ts":"2026-09-15T15:52:55+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8363,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.9555,"vwap":9.9564,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":0.964,"trend":"flat","recent_slope_pct":-0.026,"volatility":"medium"},"price":9.9555,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":0.461404},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":6523.0,"sell_vol":23004.0,"unclassified_vol":0.0,"imbalance":-0.558167,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.741927},"context":{"vwap":9.956408,"price_vs_vwap_pct":-0.009124,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.940299,"dist_to_hod_atr":4.648638,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.025269,"IWM":-0.001006}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.346503},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"df3150bfd6f2","ts":"2026-09-15T15:52:55+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":7.6432,"target":7.78,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":49.7,"room_to_5d_high_atr":0.78},"price":7.7311,"vwap":7.7233,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.589,"trend":"flat","recent_slope_pct":0.038,"volatility":"medium"},"price":7.7311,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":0.74881},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":3407.0,"sell_vol":4014.0,"unclassified_vol":0.0,"imbalance":-0.081795,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":0.768389},"context":{"vwap":7.723255,"price_vs_vwap_pct":0.10157,"ema9":7.713854,"ema20":7.709919,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.010243,"dist_to_hod_atr":5.264907,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.119085,"IWM":-0.094821}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.027003},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3026dbfe0438","ts":"2026-09-15T15:53:00+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.8397,"target":10.015,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":20.3,"room_to_5d_high_atr":2.54},"price":9.9589,"vwap":9.9564,"ext_from_open_pct":1.31,"max_ext_allowed_pct":4.0,"volume_pace":0.964,"trend":"flat","recent_slope_pct":-0.0192,"volatility":"medium"},"price":9.9589,"volume":{"bars":142,"last_bar_volume":124378.0,"baseline_avg":200355.2,"bar_rvol":0.620787,"raw_accel":-0.096924,"smooth_accel":-0.376728,"accel_momentum":-0.770493,"rvol_3bar":[0.655159,0.675073,0.620787],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":7700.0,"sell_vol":20603.0,"unclassified_vol":0.0,"imbalance":-0.455888,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.000273},"context":{"vwap":9.956408,"price_vs_vwap_pct":0.025025,"ema9":9.964996,"ema20":9.965124,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.906468,"dist_to_hod_atr":4.481385,"atr":0.020329,"spread_atr":0.491919,"own_change_pct":-0.064216,"rel_strength_pct":{"SPY":-0.04969,"IWM":-0.025645}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.28301},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"77a9a480d77d","ts":"2026-09-15T15:53:00+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.621,"target":7.78,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":45.7,"room_to_5d_high_atr":0.84},"price":7.7089,"vwap":7.7232,"ext_from_open_pct":0.12,"max_ext_allowed_pct":3.0,"volume_pace":0.589,"trend":"flat","recent_slope_pct":-0.0196,"volatility":"medium"},"price":7.7089,"volume":{"bars":142,"last_bar_volume":3675.0,"baseline_avg":11131.85,"bar_rvol":0.330134,"raw_accel":-0.957186,"smooth_accel":7.004497,"accel_momentum":1.913237,"rvol_3bar":[0.941657,11.981296,0.330134],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2025.0,"sell_vol":4011.0,"unclassified_vol":0.0,"imbalance":-0.329026,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":5.768389},"context":{"vwap":7.723255,"price_vs_vwap_pct":-0.185873,"ema9":7.713854,"ema20":7.709919,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.294494,"dist_to_hod_atr":6.746287,"atr":0.014986,"spread_atr":0.667289,"own_change_pct":-0.158031,"rel_strength_pct":{"SPY":-0.143505,"IWM":-0.11946}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.108623},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a8ea1f16d1fd","ts":"2026-09-15T15:53:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.655,"target":9.94,"target_label":"ceiling","reward_risk":1.85,"pos_in_5d_range_pct":458.1,"room_to_5d_high_atr":-5.16},"price":9.755,"vwap":9.6012,"ext_from_open_pct":3.23,"max_ext_allowed_pct":5.0,"volume_pace":4.411,"trend":"flat","recent_slope_pct":-0.061,"volatility":"low"},"price":9.755,"volume":{"bars":143,"last_bar_volume":3860.0,"baseline_avg":4875.8,"bar_rvol":0.791665,"raw_accel":-0.21894,"smooth_accel":0.313425,"accel_momentum":0.359193,"rvol_3bar":[0.704163,1.033146,0.791665],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":145.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.676301,"bid":9.73,"ask":9.78,"spread_pct":0.512558,"quote_size_imbalance":null,"quote_age_s":4.991579},"context":{"vwap":9.60116,"price_vs_vwap_pct":1.602304,"ema9":9.769121,"ema20":9.773153,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.362745,"dist_to_hod_atr":8.147039,"atr":0.054621,"spread_atr":0.915398,"own_change_pct":-0.107521,"rel_strength_pct":{"SPY":-0.092995,"IWM":-0.06895}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.535403},"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":"4f744d8da23c","ts":"2026-09-15T15:53:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.6421,"target":7.78,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":0.78},"price":7.73,"vwap":7.7233,"ext_from_open_pct":0.39,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.0292,"volatility":"medium"},"price":7.73,"volume":{"bars":143,"last_bar_volume":7643.0,"baseline_avg":10994.4,"bar_rvol":0.695172,"raw_accel":1.079728,"smooth_accel":6.426049,"accel_momentum":-0.578448,"rvol_3bar":[11.981296,0.330134,0.695172],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":3870.0,"sell_vol":11724.0,"unclassified_vol":0.0,"imbalance":-0.503655,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.375359},"context":{"vwap":7.723239,"price_vs_vwap_pct":0.08754,"ema9":7.712863,"ema20":7.709822,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.024328,"dist_to_hod_atr":4.931351,"atr":0.016223,"spread_atr":0.616419,"own_change_pct":-0.059636,"rel_strength_pct":{"SPY":-0.04511,"IWM":-0.021065}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.350127},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e7f0acfeff8e","ts":"2026-09-15T15:53:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.71 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.623,"target":7.78,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":0.84},"price":7.7109,"vwap":7.7232,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0204,"volatility":"medium"},"price":7.7109,"volume":{"bars":143,"last_bar_volume":7643.0,"baseline_avg":10994.4,"bar_rvol":0.695172,"raw_accel":1.079728,"smooth_accel":6.426049,"accel_momentum":-0.578448,"rvol_3bar":[11.981296,0.330134,0.695172],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":2985.0,"sell_vol":11723.0,"unclassified_vol":0.0,"imbalance":-0.594098,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":5.375359},"context":{"vwap":7.723239,"price_vs_vwap_pct":-0.159765,"ema9":7.712863,"ema20":7.709822,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.268886,"dist_to_hod_atr":6.108712,"atr":0.016223,"spread_atr":0.616419,"own_change_pct":-0.059636,"rel_strength_pct":{"SPY":-0.04511,"IWM":-0.021065}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.413001},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b0f930dc2001","ts":"2026-09-15T15:53:20+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":4.0,"volume_pace":0.962,"trend":"flat","recent_slope_pct":-0.0099,"volatility":"medium"},"price":9.955,"volume":{"bars":143,"last_bar_volume":93437.0,"baseline_avg":194501.1,"bar_rvol":0.480393,"raw_accel":-0.248766,"smooth_accel":-0.483361,"accel_momentum":-0.106633,"rvol_3bar":[0.675073,0.620787,0.480393],"trend_3bar":"DECELERATING","projected_rvol":0.198508},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":6493.0,"sell_vol":16279.0,"unclassified_vol":0.0,"imbalance":-0.429738,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.967357},"context":{"vwap":9.956414,"price_vs_vwap_pct":-0.014201,"ema9":9.963777,"ema20":9.964531,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.708449,"atr":0.020176,"spread_atr":0.495626,"own_change_pct":0.089447,"rel_strength_pct":{"SPY":0.103973,"IWM":0.128018}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.206443},"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":"c338c4ae8df9","ts":"2026-09-15T15:53:25+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.8406,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.9598,"vwap":9.9564,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":-0.0003,"volatility":"medium"},"price":9.9598,"volume":{"bars":143,"last_bar_volume":93437.0,"baseline_avg":194501.1,"bar_rvol":0.480393,"raw_accel":-0.248766,"smooth_accel":-0.483361,"accel_momentum":-0.106633,"rvol_3bar":[0.675073,0.620787,0.480393],"trend_3bar":"DECELERATING","projected_rvol":0.176205},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":5874.0,"sell_vol":17102.0,"unclassified_vol":0.0,"imbalance":-0.488684,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.598929},"context":{"vwap":9.956414,"price_vs_vwap_pct":0.034009,"ema9":9.963777,"ema20":9.964531,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.897512,"dist_to_hod_atr":4.470548,"atr":0.020176,"spread_atr":0.495626,"own_change_pct":0.089447,"rel_strength_pct":{"SPY":0.103973,"IWM":0.128018}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.23476},"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":"85414840b247","ts":"2026-09-15T15:53:30+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":4.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":-0.0099,"volatility":"medium"},"price":9.955,"volume":{"bars":143,"last_bar_volume":93437.0,"baseline_avg":194501.1,"bar_rvol":0.480393,"raw_accel":-0.248766,"smooth_accel":-0.483361,"accel_momentum":-0.106633,"rvol_3bar":[0.675073,0.620787,0.480393],"trend_3bar":"DECELERATING","projected_rvol":0.149953},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":4579.0,"sell_vol":10004.0,"unclassified_vol":0.0,"imbalance":-0.372009,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.00025},"context":{"vwap":9.956414,"price_vs_vwap_pct":-0.014201,"ema9":9.963777,"ema20":9.964531,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.708449,"atr":0.020176,"spread_atr":0.495626,"own_change_pct":0.089447,"rel_strength_pct":{"SPY":0.103973,"IWM":0.128018}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.17871},"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":"3e14c6ef560f","ts":"2026-09-15T15:53:30+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7771,"target":13.205,"target_label":"ceiling","reward_risk":2.46,"pos_in_5d_range_pct":60.5,"room_to_5d_high_atr":1.24},"price":12.9007,"vwap":12.8642,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.945,"trend":"flat","recent_slope_pct":0.0584,"volatility":"medium"},"price":12.9007,"volume":{"bars":143,"last_bar_volume":1125.0,"baseline_avg":1767.4,"bar_rvol":0.636528,"raw_accel":1.546113,"smooth_accel":0.058824,"accel_momentum":-2.713683,"rvol_3bar":[0.582364,0.084422,0.636528],"trend_3bar":"MIXED","projected_rvol":0.083739},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":25.0,"sell_vol":49.0,"unclassified_vol":0.0,"imbalance":-0.324324,"bid":12.83,"ask":12.87,"spread_pct":0.311284,"quote_size_imbalance":null,"quote_age_s":0.067965},"context":{"vwap":12.864212,"price_vs_vwap_pct":0.283636,"ema9":12.890888,"ema20":12.881081,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.074403,"dist_to_hod_atr":12.307987,"atr":0.033247,"spread_atr":1.203127,"own_change_pct":-0.077464,"rel_strength_pct":{"SPY":-0.062937,"IWM":-0.038893}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.206442},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d556a1bab7b1","ts":"2026-09-15T15:53:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1410.0s, plan says PASS; stop 8.33, target 8.56 (premarket_high), R:R 1.30; target 0.13 away > ~0.12 reachable in 241 min","plan":{"state":"PASS","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":1.3,"pos_in_5d_range_pct":60.8,"room_to_5d_high_atr":0.95},"price":8.4293,"vwap":8.317,"ext_from_open_pct":1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":0.0272,"volatility":"medium"},"price":8.4293,"volume":{"bars":143,"last_bar_volume":3339.0,"baseline_avg":1768.0,"bar_rvol":1.888575,"raw_accel":6.554299,"smooth_accel":0.364154,"accel_momentum":1.189283,"rvol_3bar":[0.384239,0.014584,1.888575],"trend_3bar":"MIXED","projected_rvol":0.175501},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":168.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.856354,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":2.625945},"context":{"vwap":8.316879,"price_vs_vwap_pct":1.351716,"ema9":8.426899,"ema20":8.406419,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.831765,"dist_to_hod_atr":2.929536,"atr":0.024134,"spread_atr":0.414362,"own_change_pct":0.237248,"rel_strength_pct":{"SPY":0.251774,"IWM":0.275819}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.617288},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a8d384012b7b","ts":"2026-09-15T15:53:35+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.85 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7214,"target":13.205,"target_label":"ceiling","reward_risk":2.91,"pos_in_5d_range_pct":56.9,"room_to_5d_high_atr":1.36},"price":12.845,"vwap":12.8642,"ext_from_open_pct":-1.04,"max_ext_allowed_pct":3.0,"volume_pace":0.944,"trend":"flat","recent_slope_pct":-0.028,"volatility":"medium"},"price":12.845,"volume":{"bars":143,"last_bar_volume":1125.0,"baseline_avg":1767.4,"bar_rvol":0.636528,"raw_accel":1.546113,"smooth_accel":0.058824,"accel_momentum":-2.713683,"rvol_3bar":[0.582364,0.084422,0.636528],"trend_3bar":"MIXED","projected_rvol":0.094085},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":33.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.081967,"bid":12.83,"ask":12.87,"spread_pct":0.311284,"quote_size_imbalance":null,"quote_age_s":0.598585},"context":{"vwap":12.864212,"price_vs_vwap_pct":-0.149348,"ema9":12.890888,"ema20":12.881081,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.492889,"dist_to_hod_atr":13.983341,"atr":0.033247,"spread_atr":1.203127,"own_change_pct":-0.077464,"rel_strength_pct":{"SPY":-0.062937,"IWM":-0.038893}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.052174},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cd693d76db52","ts":"2026-09-15T15:53:45+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1781,"target":7.07,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.4796,"vwap":6.431,"ext_from_open_pct":2.28,"max_ext_allowed_pct":4.0,"volume_pace":2.734,"trend":"flat","recent_slope_pct":0.2835,"volatility":"high"},"price":6.4796,"volume":{"bars":143,"last_bar_volume":9086.0,"baseline_avg":8727.05,"bar_rvol":1.041131,"raw_accel":3.081761,"smooth_accel":0.036724,"accel_momentum":0.486625,"rvol_3bar":[0.488415,0.242321,1.041131],"trend_3bar":"MIXED","projected_rvol":1.312853},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":5980.0,"sell_vol":1730.0,"unclassified_vol":0.0,"imbalance":0.551232,"bid":6.44,"ask":6.48,"spread_pct":0.619195,"quote_size_imbalance":null,"quote_age_s":7.840122},"context":{"vwap":6.430966,"price_vs_vwap_pct":0.756242,"ema9":6.393938,"ema20":6.381041,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.819767,"dist_to_hod_atr":6.788342,"atr":0.058983,"spread_atr":0.678156,"own_change_pct":0.669811,"rel_strength_pct":{"SPY":0.684337,"IWM":0.708382}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.573905},"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":"c46cab03caa6","ts":"2026-09-15T15:53:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1420.0s, plan says WATCH; stop 8.33, target 8.56 (premarket_high), R:R 0.93; R:R 0.93 < 2.0 at 8.45; breakout: 1-min close > 8.46 on >= 2431 sh","plan":{"state":"WATCH","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":63.1,"room_to_5d_high_atr":0.89},"price":8.4486,"vwap":8.317,"ext_from_open_pct":1.42,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":0.0729,"volatility":"medium"},"price":8.4486,"volume":{"bars":143,"last_bar_volume":3339.0,"baseline_avg":1768.0,"bar_rvol":1.888575,"raw_accel":6.554299,"smooth_accel":0.364154,"accel_momentum":1.189283,"rvol_3bar":[0.384239,0.014584,1.888575],"trend_3bar":"MIXED","projected_rvol":0.146305},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":67.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.55814,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":7.27963},"context":{"vwap":8.316879,"price_vs_vwap_pct":1.583774,"ema9":8.426899,"ema20":8.406419,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.604706,"dist_to_hod_atr":2.129818,"atr":0.024134,"spread_atr":0.414362,"own_change_pct":0.237248,"rel_strength_pct":{"SPY":0.251774,"IWM":0.275819}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.054088},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fd1ca0e832ef","ts":"2026-09-15T15:53:50+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":6.1685,"target":7.07,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":48.2,"room_to_5d_high_atr":3.62},"price":6.47,"vwap":6.431,"ext_from_open_pct":2.13,"max_ext_allowed_pct":4.0,"volume_pace":2.733,"trend":"flat","recent_slope_pct":0.2536,"volatility":"high"},"price":6.47,"volume":{"bars":143,"last_bar_volume":9086.0,"baseline_avg":8727.05,"bar_rvol":1.041131,"raw_accel":3.081761,"smooth_accel":0.036724,"accel_momentum":0.486625,"rvol_3bar":[0.488415,0.242321,1.041131],"trend_3bar":"MIXED","projected_rvol":1.205631},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":5995.0,"sell_vol":1720.0,"unclassified_vol":0.0,"imbalance":0.554115,"bid":6.44,"ask":6.48,"spread_pct":0.619195,"quote_size_imbalance":null,"quote_age_s":1.00767},"context":{"vwap":6.430966,"price_vs_vwap_pct":0.606965,"ema9":6.393938,"ema20":6.381041,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.959302,"dist_to_hod_atr":6.951099,"atr":0.058983,"spread_atr":0.678156,"own_change_pct":0.669811,"rel_strength_pct":{"SPY":0.684337,"IWM":0.708382}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.576907},"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":"49b553943233","ts":"2026-09-15T15:53:55+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1785,"target":7.07,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.48,"vwap":6.431,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":2.731,"trend":"flat","recent_slope_pct":0.2847,"volatility":"high"},"price":6.48,"volume":{"bars":143,"last_bar_volume":9086.0,"baseline_avg":8727.05,"bar_rvol":1.041131,"raw_accel":3.081761,"smooth_accel":0.036724,"accel_momentum":0.486625,"rvol_3bar":[0.488415,0.242321,1.041131],"trend_3bar":"MIXED","projected_rvol":1.126404},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":5930.0,"sell_vol":1620.0,"unclassified_vol":0.0,"imbalance":0.570861,"bid":6.47,"ask":6.48,"spread_pct":0.15444,"quote_size_imbalance":null,"quote_age_s":0.593729},"context":{"vwap":6.430966,"price_vs_vwap_pct":0.762462,"ema9":6.393938,"ema20":6.381041,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.813953,"dist_to_hod_atr":6.78156,"atr":0.058983,"spread_atr":0.169539,"own_change_pct":0.669811,"rel_strength_pct":{"SPY":0.684337,"IWM":0.708382}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.594341},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"93e962819604","ts":"2026-09-15T15:53:55+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.8385,"target":10.015,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":20.2,"room_to_5d_high_atr":2.54},"price":9.9577,"vwap":9.9564,"ext_from_open_pct":1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":-0.0045,"volatility":"medium"},"price":9.9577,"volume":{"bars":143,"last_bar_volume":93437.0,"baseline_avg":194501.1,"bar_rvol":0.480393,"raw_accel":-0.248766,"smooth_accel":-0.483361,"accel_momentum":-0.106633,"rvol_3bar":[0.675073,0.620787,0.480393],"trend_3bar":"DECELERATING","projected_rvol":0.464007},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":44670.0,"sell_vol":23779.0,"unclassified_vol":0.0,"imbalance":0.305205,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.980343},"context":{"vwap":9.956414,"price_vs_vwap_pct":0.012917,"ema9":9.963777,"ema20":9.964531,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.918408,"dist_to_hod_atr":4.57463,"atr":0.020176,"spread_atr":0.495626,"own_change_pct":0.089447,"rel_strength_pct":{"SPY":0.103973,"IWM":0.128018}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.146619},"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":"fde259d5df1b","ts":"2026-09-15T15:54:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.43","plan":{"state":"PASS","setup":"","stop":6.1285,"target":7.07,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.43,"vwap":6.431,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":2.733,"trend":"flat","recent_slope_pct":0.1291,"volatility":"high"},"price":6.43,"volume":{"bars":143,"last_bar_volume":9086.0,"baseline_avg":8727.05,"bar_rvol":1.041131,"raw_accel":3.081761,"smooth_accel":0.036724,"accel_momentum":0.486625,"rvol_3bar":[0.488415,0.242321,1.041131],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":7187.0,"sell_vol":4230.0,"unclassified_vol":0.0,"imbalance":0.259,"bid":6.4,"ask":6.47,"spread_pct":1.087801,"quote_size_imbalance":null,"quote_age_s":0.020858},"context":{"vwap":6.430966,"price_vs_vwap_pct":-0.015026,"ema9":6.393938,"ema20":6.381041,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.540698,"dist_to_hod_atr":7.629255,"atr":0.058983,"spread_atr":1.186773,"own_change_pct":0.669811,"rel_strength_pct":{"SPY":0.685657,"IWM":0.729523}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.269653},"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":"c53876a79b47","ts":"2026-09-15T15:54:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":-0.0099,"volatility":"medium"},"price":9.955,"volume":{"bars":143,"last_bar_volume":93437.0,"baseline_avg":194501.1,"bar_rvol":0.480393,"raw_accel":-0.248766,"smooth_accel":-0.483361,"accel_momentum":-0.106633,"rvol_3bar":[0.675073,0.620787,0.480393],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":45020.0,"sell_vol":35402.0,"unclassified_vol":0.0,"imbalance":0.119594,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.000228},"context":{"vwap":9.956414,"price_vs_vwap_pct":-0.014201,"ema9":9.963777,"ema20":9.964531,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.708449,"atr":0.020176,"spread_atr":0.495626,"own_change_pct":0.089447,"rel_strength_pct":{"SPY":0.105293,"IWM":0.149159}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.057452},"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":"fcae1c8c3042","ts":"2026-09-15T15:54:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.655,"target":9.94,"target_label":"ceiling","reward_risk":1.85,"pos_in_5d_range_pct":458.1,"room_to_5d_high_atr":-5.16},"price":9.755,"vwap":9.6012,"ext_from_open_pct":3.23,"max_ext_allowed_pct":5.0,"volume_pace":4.382,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"low"},"price":9.755,"volume":{"bars":144,"last_bar_volume":677.0,"baseline_avg":4828.75,"bar_rvol":0.140202,"raw_accel":-0.824611,"smooth_accel":0.635438,"accel_momentum":0.322013,"rvol_3bar":[1.033146,0.791665,0.140202],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":2.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":-0.866667,"bid":9.73,"ask":9.78,"spread_pct":0.512558,"quote_size_imbalance":null,"quote_age_s":4.991556},"context":{"vwap":9.601236,"price_vs_vwap_pct":1.601504,"ema9":9.771296,"ema20":9.773806,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.362745,"dist_to_hod_atr":8.203047,"atr":0.054248,"spread_atr":0.921691,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.015846,"IWM":0.059712}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.121508},"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":"be07279a1cf8","ts":"2026-09-15T15:54:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.015,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9465,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":1.611,"trend":"flat","recent_slope_pct":-0.0338,"volatility":"medium"},"price":5.945,"volume":{"bars":144,"last_bar_volume":28682.0,"baseline_avg":75066.1,"bar_rvol":0.38209,"raw_accel":0.213334,"smooth_accel":-0.250632,"accel_momentum":0.071715,"rvol_3bar":[1.01582,0.315428,0.38209],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":183,"trade_rate":6.1,"buy_vol":36414.0,"sell_vol":26041.0,"unclassified_vol":0.0,"imbalance":0.166088,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.225411},"context":{"vwap":5.946463,"price_vs_vwap_pct":-0.024601,"ema9":5.951059,"ema20":5.940913,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.770329,"atr":0.018463,"spread_atr":0.541626,"own_change_pct":-0.036931,"rel_strength_pct":{"SPY":-0.021085,"IWM":0.022781}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.06346},"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":"d0850e187d8d","ts":"2026-09-15T15:54:10+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.8377,"target":10.015,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":20.2,"room_to_5d_high_atr":2.54},"price":9.9569,"vwap":9.9564,"ext_from_open_pct":1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":-0.0213,"volatility":"medium"},"price":9.9569,"volume":{"bars":144,"last_bar_volume":95005.0,"baseline_avg":196083.3,"bar_rvol":0.484513,"raw_accel":0.016781,"smooth_accel":-0.54876,"accel_momentum":-0.065399,"rvol_3bar":[0.620787,0.480393,0.484513],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":61246.0,"sell_vol":41612.0,"unclassified_vol":0.0,"imbalance":0.190885,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.150029},"context":{"vwap":9.956415,"price_vs_vwap_pct":0.004867,"ema9":9.962022,"ema20":9.963624,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.926368,"dist_to_hod_atr":4.678485,"atr":0.0199,"spread_atr":0.502523,"own_change_pct":-0.150451,"rel_strength_pct":{"SPY":-0.134606,"IWM":-0.090739}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.092486},"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":"de9171861ac6","ts":"2026-09-15T15:54:15+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":-0.0251,"volatility":"medium"},"price":9.955,"volume":{"bars":144,"last_bar_volume":95005.0,"baseline_avg":196083.3,"bar_rvol":0.484513,"raw_accel":0.016781,"smooth_accel":-0.54876,"accel_momentum":-0.065399,"rvol_3bar":[0.620787,0.480393,0.484513],"trend_3bar":"MIXED","projected_rvol":1.536959},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":60553.0,"sell_vol":66632.0,"unclassified_vol":0.0,"imbalance":-0.047797,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.066358},"context":{"vwap":9.956415,"price_vs_vwap_pct":-0.014216,"ema9":9.962022,"ema20":9.963624,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":4.773964,"atr":0.0199,"spread_atr":0.502523,"own_change_pct":-0.150451,"rel_strength_pct":{"SPY":-0.134606,"IWM":-0.090739}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.023158},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"45eda678a893","ts":"2026-09-15T15:54:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1435,"target":7.07,"target_label":"premarket_high","reward_risk":2.07,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.64},"price":6.445,"vwap":6.431,"ext_from_open_pct":1.74,"max_ext_allowed_pct":3.0,"volume_pace":2.728,"trend":"flat","recent_slope_pct":0.2185,"volatility":"high"},"price":6.445,"volume":{"bars":144,"last_bar_volume":15734.0,"baseline_avg":9132.1,"bar_rvol":1.722933,"raw_accel":0.731675,"smooth_accel":1.206576,"accel_momentum":1.169851,"rvol_3bar":[0.242321,1.041131,1.722933],"trend_3bar":"ACCELERATING","projected_rvol":0.398813},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":4803.0,"sell_vol":3377.0,"unclassified_vol":0.0,"imbalance":0.174328,"bid":6.42,"ask":6.47,"spread_pct":0.775795,"quote_size_imbalance":null,"quote_age_s":5.786815},"context":{"vwap":6.431026,"price_vs_vwap_pct":0.217298,"ema9":6.40115,"ema20":6.385704,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.322674,"dist_to_hod_atr":7.129601,"atr":0.061013,"spread_atr":0.819494,"own_change_pct":0.941915,"rel_strength_pct":{"SPY":0.957761,"IWM":1.001627}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.300355},"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":"1ffb14b83b97","ts":"2026-09-15T15:54:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8721,"target":6.015,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.9552,"vwap":5.9465,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.609,"trend":"flat","recent_slope_pct":0.0005,"volatility":"medium"},"price":5.9552,"volume":{"bars":144,"last_bar_volume":28682.0,"baseline_avg":75066.1,"bar_rvol":0.38209,"raw_accel":0.213334,"smooth_accel":-0.250632,"accel_momentum":0.071715,"rvol_3bar":[1.01582,0.315428,0.38209],"trend_3bar":"MIXED","projected_rvol":1.682637},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":21722.0,"sell_vol":22825.0,"unclassified_vol":0.0,"imbalance":-0.02476,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.12265},"context":{"vwap":5.946463,"price_vs_vwap_pct":0.14693,"ema9":5.951059,"ema20":5.940913,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.891269,"dist_to_hod_atr":6.21787,"atr":0.018463,"spread_atr":0.541626,"own_change_pct":-0.036931,"rel_strength_pct":{"SPY":-0.021085,"IWM":0.022781}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.009461},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"182528bad184","ts":"2026-09-15T15:54:25+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.015,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9465,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.608,"trend":"flat","recent_slope_pct":-0.0338,"volatility":"medium"},"price":5.945,"volume":{"bars":144,"last_bar_volume":28682.0,"baseline_avg":75066.1,"bar_rvol":0.38209,"raw_accel":0.213334,"smooth_accel":-0.250632,"accel_momentum":0.071715,"rvol_3bar":[1.01582,0.315428,0.38209],"trend_3bar":"MIXED","projected_rvol":1.354135},"flow":{"window_s":30,"trades":145,"trade_rate":4.833333,"buy_vol":19557.0,"sell_vol":22950.0,"unclassified_vol":0.0,"imbalance":-0.079822,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.208419},"context":{"vwap":5.946463,"price_vs_vwap_pct":-0.024601,"ema9":5.951059,"ema20":5.940913,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.770329,"atr":0.018463,"spread_atr":0.541626,"own_change_pct":-0.036931,"rel_strength_pct":{"SPY":-0.021085,"IWM":0.022781}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.030499},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4371f7c602f2","ts":"2026-09-15T15:54:35+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.8377,"target":10.015,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":20.2,"room_to_5d_high_atr":2.54},"price":9.9569,"vwap":9.9564,"ext_from_open_pct":1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":-0.0213,"volatility":"medium"},"price":9.9569,"volume":{"bars":144,"last_bar_volume":95005.0,"baseline_avg":196083.3,"bar_rvol":0.484513,"raw_accel":0.016781,"smooth_accel":-0.54876,"accel_momentum":-0.065399,"rvol_3bar":[0.620787,0.480393,0.484513],"trend_3bar":"MIXED","projected_rvol":1.312672},"flow":{"window_s":30,"trades":178,"trade_rate":5.933333,"buy_vol":23636.0,"sell_vol":98141.0,"unclassified_vol":0.0,"imbalance":-0.611815,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":2.265439},"context":{"vwap":9.956415,"price_vs_vwap_pct":0.004867,"ema9":9.962022,"ema20":9.963624,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.926368,"dist_to_hod_atr":4.678485,"atr":0.0199,"spread_atr":0.502523,"own_change_pct":-0.150451,"rel_strength_pct":{"SPY":-0.134606,"IWM":-0.090739}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.296433},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6c48f9e998d7","ts":"2026-09-15T15:54:35+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.777,"target":13.2005,"target_label":"ceiling","reward_risk":2.43,"pos_in_5d_range_pct":60.5,"room_to_5d_high_atr":1.24},"price":12.9006,"vwap":12.8642,"ext_from_open_pct":-0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.938,"trend":"flat","recent_slope_pct":-0.0261,"volatility":"medium"},"price":12.9006,"volume":{"bars":144,"last_bar_volume":159.0,"baseline_avg":1752.4,"bar_rvol":0.090733,"raw_accel":-0.858667,"smooth_accel":-0.542486,"accel_momentum":-0.601309,"rvol_3bar":[0.084422,0.636528,0.090733],"trend_3bar":"MIXED","projected_rvol":0.168259},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":130.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":12.83,"ask":12.86,"spread_pct":0.233554,"quote_size_imbalance":null,"quote_age_s":4.339415},"context":{"vwap":12.864212,"price_vs_vwap_pct":0.282861,"ema9":12.88263,"ema20":12.878083,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.075155,"dist_to_hod_atr":11.625313,"atr":0.035208,"spread_atr":0.852087,"own_change_pct":-0.390698,"rel_strength_pct":{"SPY":-0.374852,"IWM":-0.330986}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.090733},"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":"2c6ad785ec4e","ts":"2026-09-15T15:54:40+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8308,"target":10.015,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.56},"price":9.95,"vwap":9.9564,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":0.958,"trend":"flat","recent_slope_pct":-0.0351,"volatility":"medium"},"price":9.95,"volume":{"bars":144,"last_bar_volume":95005.0,"baseline_avg":196083.3,"bar_rvol":0.484513,"raw_accel":0.016781,"smooth_accel":-0.54876,"accel_momentum":-0.065399,"rvol_3bar":[0.620787,0.480393,0.484513],"trend_3bar":"MIXED","projected_rvol":1.23842},"flow":{"window_s":30,"trades":187,"trade_rate":6.233333,"buy_vol":16399.0,"sell_vol":107506.0,"unclassified_vol":0.0,"imbalance":-0.735297,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.031209},"context":{"vwap":9.956415,"price_vs_vwap_pct":-0.064435,"ema9":9.962022,"ema20":9.963624,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.995025,"dist_to_hod_atr":5.025226,"atr":0.0199,"spread_atr":0.502523,"own_change_pct":-0.150451,"rel_strength_pct":{"SPY":-0.134606,"IWM":-0.090739}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.356261},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e0bc1eda5860","ts":"2026-09-15T15:54:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1475.0s, plan says PASS; stop 8.33, target 8.56 (premarket_high), R:R 1.16; target 0.12 away > ~0.12 reachable in 240 min","plan":{"state":"PASS","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":1.16,"pos_in_5d_range_pct":61.6,"room_to_5d_high_atr":0.93},"price":8.436,"vwap":8.3171,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.949,"trend":"flat","recent_slope_pct":0.0654,"volatility":"medium"},"price":8.436,"volume":{"bars":144,"last_bar_volume":195.0,"baseline_avg":1915.35,"bar_rvol":0.101809,"raw_accel":-0.941599,"smooth_accel":0.068086,"accel_momentum":-0.296068,"rvol_3bar":[0.014584,1.888575,0.101809],"trend_3bar":"MIXED","projected_rvol":0.18169},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":7.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":-0.875,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":1.869823},"context":{"vwap":8.317,"price_vs_vwap_pct":1.430807,"ema9":8.432519,"ema20":8.411046,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.752941,"dist_to_hod_atr":2.601356,"atr":0.024603,"spread_atr":0.406462,"own_change_pct":0.262069,"rel_strength_pct":{"SPY":0.277915,"IWM":0.321781}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.089083},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a961c715917e","ts":"2026-09-15T15:54:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.655,"target":9.94,"target_label":"ceiling","reward_risk":1.85,"pos_in_5d_range_pct":458.1,"room_to_5d_high_atr":-5.16},"price":9.755,"vwap":9.6014,"ext_from_open_pct":3.23,"max_ext_allowed_pct":4.0,"volume_pace":4.366,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"low"},"price":9.755,"volume":{"bars":144,"last_bar_volume":677.0,"baseline_avg":4828.75,"bar_rvol":0.140202,"raw_accel":-0.824611,"smooth_accel":0.635438,"accel_momentum":0.322013,"rvol_3bar":[1.033146,0.791665,0.140202],"trend_3bar":"DECELERATING","projected_rvol":0.389887},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":363.0,"sell_vol":1046.0,"unclassified_vol":0.0,"imbalance":-0.484741,"bid":9.73,"ask":9.78,"spread_pct":0.512558,"quote_size_imbalance":null,"quote_age_s":14.991541},"context":{"vwap":9.601236,"price_vs_vwap_pct":1.601504,"ema9":9.771296,"ema20":9.773806,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.362745,"dist_to_hod_atr":8.203047,"atr":0.054248,"spread_atr":0.921691,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.015846,"IWM":0.059712}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.067962},"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":"e4b4f93be4c0","ts":"2026-09-15T15:54:45+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.85 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7295,"target":13.2005,"target_label":"ceiling","reward_risk":2.81,"pos_in_5d_range_pct":57.4,"room_to_5d_high_atr":1.34},"price":12.8531,"vwap":12.8642,"ext_from_open_pct":-0.98,"max_ext_allowed_pct":4.0,"volume_pace":0.937,"trend":"flat","recent_slope_pct":-0.0999,"volatility":"medium"},"price":12.8531,"volume":{"bars":144,"last_bar_volume":159.0,"baseline_avg":1752.4,"bar_rvol":0.090733,"raw_accel":-0.858667,"smooth_accel":-0.542486,"accel_momentum":-0.601309,"rvol_3bar":[0.084422,0.636528,0.090733],"trend_3bar":"MIXED","projected_rvol":0.152172},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":130.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.64557,"bid":12.83,"ask":12.86,"spread_pct":0.233554,"quote_size_imbalance":null,"quote_age_s":14.339415},"context":{"vwap":12.864212,"price_vs_vwap_pct":-0.08638,"ema9":12.88263,"ema20":12.878083,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.432032,"dist_to_hod_atr":12.974451,"atr":0.035208,"spread_atr":0.852087,"own_change_pct":-0.390698,"rel_strength_pct":{"SPY":-0.374852,"IWM":-0.330986}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.058574},"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":"c80737a57521","ts":"2026-09-15T15:54:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1485.0s, plan says WATCH; stop 8.33, target 8.56 (premarket_high), R:R 0.83; R:R 0.83 < 2.0 at 8.46; breakout: 1-min close > 8.47 on >= 2419 sh","plan":{"state":"WATCH","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.87},"price":8.455,"vwap":8.3172,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":0.1104,"volatility":"medium"},"price":8.455,"volume":{"bars":144,"last_bar_volume":195.0,"baseline_avg":1915.35,"bar_rvol":0.101809,"raw_accel":-0.941599,"smooth_accel":0.068086,"accel_momentum":-0.296068,"rvol_3bar":[0.014584,1.888575,0.101809],"trend_3bar":"MIXED","projected_rvol":0.154123},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":20.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":-0.68,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":11.869823},"context":{"vwap":8.317,"price_vs_vwap_pct":1.659254,"ema9":8.432519,"ema20":8.411046,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":1.829079,"atr":0.024603,"spread_atr":0.406462,"own_change_pct":0.262069,"rel_strength_pct":{"SPY":0.277915,"IWM":0.321781}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.06923},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"36ae7f0cbe08","ts":"2026-09-15T15:55:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.43","plan":{"state":"PASS","setup":"","stop":6.1286,"target":7.07,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":47.8,"room_to_5d_high_atr":3.66},"price":6.4301,"vwap":6.4311,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":2.722,"trend":"flat","recent_slope_pct":0.1722,"volatility":"high"},"price":6.4301,"volume":{"bars":144,"last_bar_volume":15734.0,"baseline_avg":9132.1,"bar_rvol":1.722933,"raw_accel":0.731675,"smooth_accel":1.206576,"accel_momentum":1.169851,"rvol_3bar":[0.242321,1.041131,1.722933],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":6652.0,"sell_vol":4973.0,"unclassified_vol":0.0,"imbalance":0.14443,"bid":6.43,"ask":6.44,"spread_pct":0.1554,"quote_size_imbalance":null,"quote_age_s":6.678272},"context":{"vwap":6.431026,"price_vs_vwap_pct":-0.014392,"ema9":6.40115,"ema20":6.385704,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.539244,"dist_to_hod_atr":7.373811,"atr":0.061013,"spread_atr":0.163899,"own_change_pct":0.941915,"rel_strength_pct":{"SPY":0.927384,"IWM":0.977058}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.248843},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"812493db2b6b","ts":"2026-09-15T15:55:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.65,"target":9.94,"target_label":"ceiling","reward_risk":1.9,"pos_in_5d_range_pct":456.8,"room_to_5d_high_atr":-5.14},"price":9.75,"vwap":9.6014,"ext_from_open_pct":3.17,"max_ext_allowed_pct":4.0,"volume_pace":4.357,"trend":"flat","recent_slope_pct":-0.0388,"volatility":"low"},"price":9.75,"volume":{"bars":145,"last_bar_volume":1427.0,"baseline_avg":4298.35,"bar_rvol":0.331988,"raw_accel":0.327951,"smooth_accel":-0.346912,"accel_momentum":-0.98235,"rvol_3bar":[0.791665,0.140202,0.331988],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":364.0,"sell_vol":760.0,"unclassified_vol":0.0,"imbalance":-0.352313,"bid":9.73,"ask":9.78,"spread_pct":0.512558,"quote_size_imbalance":null,"quote_age_s":4.991532},"context":{"vwap":9.601383,"price_vs_vwap_pct":1.547874,"ema9":9.768457,"ema20":9.772215,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.411765,"dist_to_hod_atr":8.357369,"atr":0.053845,"spread_atr":0.928597,"own_change_pct":-0.206601,"rel_strength_pct":{"SPY":-0.221132,"IWM":-0.171458}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.116964},"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":"3d29be11b59a","ts":"2026-09-15T15:55:05+00:00","symbol":"DRVN","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7552,"target":13.2005,"target_label":"ceiling","reward_risk":2.6,"pos_in_5d_range_pct":59.1,"room_to_5d_high_atr":1.29},"price":12.8788,"vwap":12.8642,"ext_from_open_pct":-0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.935,"trend":"flat","recent_slope_pct":-0.0477,"volatility":"medium"},"price":12.8788,"volume":{"bars":145,"last_bar_volume":200.0,"baseline_avg":1729.85,"bar_rvol":0.115617,"raw_accel":-0.537532,"smooth_accel":-0.521445,"accel_momentum":0.021041,"rvol_3bar":[0.636528,0.090733,0.115617],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":1.0,"sell_vol":38.0,"unclassified_vol":0.0,"imbalance":-0.948718,"bid":12.83,"ask":12.86,"spread_pct":0.233554,"quote_size_imbalance":null,"quote_age_s":0.649909},"context":{"vwap":12.864214,"price_vs_vwap_pct":0.113383,"ema9":12.876724,"ema20":12.875703,"ema_stack":true,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.238942,"dist_to_hod_atr":11.864371,"atr":0.036336,"spread_atr":0.825635,"own_change_pct":-0.078519,"rel_strength_pct":{"SPY":-0.09305,"IWM":-0.043375}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.109688},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e75fb0029dc3","ts":"2026-09-15T15:55:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8668,"target":6.015,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.9499,"vwap":5.9465,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.601,"trend":"flat","recent_slope_pct":-0.0449,"volatility":"medium"},"price":5.9499,"volume":{"bars":145,"last_bar_volume":58707.0,"baseline_avg":71303.5,"bar_rvol":0.82334,"raw_accel":1.046824,"smooth_accel":-0.408242,"accel_momentum":-0.15761,"rvol_3bar":[0.315428,0.38209,0.82334],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1886.0,"sell_vol":10804.0,"unclassified_vol":0.0,"imbalance":-0.702758,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.077553},"context":{"vwap":5.946458,"price_vs_vwap_pct":0.057878,"ema9":5.948847,"ema20":5.940826,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.978583,"dist_to_hod_atr":6.585516,"atr":0.018237,"spread_atr":0.548336,"own_change_pct":-0.168067,"rel_strength_pct":{"SPY":-0.182598,"IWM":-0.132924}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.578609},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b13f64b7adff","ts":"2026-09-15T15:55:15+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8608,"target":6.015,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":101.9,"room_to_5d_high_atr":-0.04},"price":5.9439,"vwap":5.9465,"ext_from_open_pct":0.57,"max_ext_allowed_pct":3.0,"volume_pace":1.6,"trend":"flat","recent_slope_pct":-0.065,"volatility":"medium"},"price":5.9439,"volume":{"bars":145,"last_bar_volume":58707.0,"baseline_avg":71303.5,"bar_rvol":0.82334,"raw_accel":1.046824,"smooth_accel":-0.408242,"accel_momentum":-0.15761,"rvol_3bar":[0.315428,0.38209,0.82334],"trend_3bar":"ACCELERATING","projected_rvol":0.065074},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1315.0,"sell_vol":9904.0,"unclassified_vol":0.0,"imbalance":-0.765576,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.974839},"context":{"vwap":5.946458,"price_vs_vwap_pct":-0.043023,"ema9":5.948847,"ema20":5.940826,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.07743,"dist_to_hod_atr":6.914518,"atr":0.018237,"spread_atr":0.548336,"own_change_pct":-0.168067,"rel_strength_pct":{"SPY":-0.182598,"IWM":-0.132924}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.630329},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5895fadfabc8","ts":"2026-09-15T15:55:30+00:00","symbol":"DRVN","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.83 below VWAP $12.86","plan":{"state":"PASS","setup":"","stop":12.7064,"target":13.2005,"target_label":"ceiling","reward_risk":3.0,"pos_in_5d_range_pct":55.9,"room_to_5d_high_atr":1.39},"price":12.83,"vwap":12.8642,"ext_from_open_pct":-1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":-0.1236,"volatility":"medium"},"price":12.83,"volume":{"bars":145,"last_bar_volume":200.0,"baseline_avg":1729.85,"bar_rvol":0.115617,"raw_accel":-0.537532,"smooth_accel":-0.521445,"accel_momentum":0.021041,"rvol_3bar":[0.636528,0.090733,0.115617],"trend_3bar":"MIXED","projected_rvol":0.391941},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":69.0,"sell_vol":270.0,"unclassified_vol":0.0,"imbalance":-0.59292,"bid":12.83,"ask":12.85,"spread_pct":0.155763,"quote_size_imbalance":null,"quote_age_s":0.637225},"context":{"vwap":12.864214,"price_vs_vwap_pct":-0.265964,"ema9":12.876724,"ema20":12.875703,"ema_stack":false,"ema_warm":true,"hod":13.3099,"dist_to_hod_pct":-3.605587,"dist_to_hod_atr":13.207404,"atr":0.036336,"spread_atr":0.550423,"own_change_pct":-0.078519,"rel_strength_pct":{"SPY":-0.09305,"IWM":-0.043375}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.068552},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9aa1f1a9aecf","ts":"2026-09-15T15:55:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1310.0s, plan says WATCH; stop 7.21, target 7.47 (prev_day_high), R:R 1.48; R:R 1.48 < 2.0 at 7.32; breakout: 1-min close > 7.31 on >= 268104 sh","plan":{"state":"WATCH","setup":"","stop":7.2106,"target":7.47,"target_label":"prev_day_high","reward_risk":1.48,"pos_in_5d_range_pct":36.5,"room_to_5d_high_atr":1.35},"price":7.315,"vwap":7.2077,"ext_from_open_pct":2.31,"max_ext_allowed_pct":4.0,"volume_pace":0.725,"trend":"flat","recent_slope_pct":0.069,"volatility":"medium"},"price":7.315,"volume":{"bars":145,"last_bar_volume":186932.0,"baseline_avg":213109.85,"bar_rvol":0.877163,"raw_accel":0.532644,"smooth_accel":0.222819,"accel_momentum":-0.54773,"rvol_3bar":[2.507937,0.55678,0.877163],"trend_3bar":"MIXED","projected_rvol":2.587229},"flow":{"window_s":30,"trades":270,"trade_rate":9.0,"buy_vol":246977.0,"sell_vol":107647.0,"unclassified_vol":0.0,"imbalance":0.392895,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.012674},"context":{"vwap":7.205515,"price_vs_vwap_pct":1.519466,"ema9":7.267666,"ema20":7.253585,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.204638,"dist_to_hod_atr":0.607074,"atr":0.024709,"spread_atr":0.404716,"own_change_pct":0.118511,"rel_strength_pct":{"SPY":0.10398,"IWM":0.153654}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.344633},"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":"7eee9bd1086b","ts":"2026-09-15T15:56:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.6571,"target":7.83,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":0.74},"price":7.745,"vwap":7.7233,"ext_from_open_pct":0.58,"max_ext_allowed_pct":4.0,"volume_pace":0.588,"trend":"flat","recent_slope_pct":0.1172,"volatility":"medium"},"price":7.745,"volume":{"bars":145,"last_bar_volume":3701.0,"baseline_avg":11606.6,"bar_rvol":0.31887,"raw_accel":-0.737164,"smooth_accel":-0.735459,"accel_momentum":-0.008438,"rvol_3bar":[0.695172,1.277368,0.31887],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":7276.0,"sell_vol":7105.0,"unclassified_vol":0.0,"imbalance":0.011891,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":1.199166},"context":{"vwap":7.723209,"price_vs_vwap_pct":0.282156,"ema9":7.715041,"ema20":7.711395,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.832266,"dist_to_hod_atr":3.809647,"atr":0.017062,"spread_atr":0.5861,"own_change_pct":0.185457,"rel_strength_pct":{"SPY":0.157727,"IWM":0.188793}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.003792},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8c4ab05bc6cc","ts":"2026-09-15T15:56:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.6571,"target":9.94,"target_label":"ceiling","reward_risk":1.83,"pos_in_5d_range_pct":458.7,"room_to_5d_high_atr":-5.17},"price":9.7571,"vwap":9.6017,"ext_from_open_pct":3.25,"max_ext_allowed_pct":4.0,"volume_pace":4.336,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"low"},"price":9.7571,"volume":{"bars":146,"last_bar_volume":3097.0,"baseline_avg":3967.4,"bar_rvol":0.780612,"raw_accel":1.170287,"smooth_accel":-0.572321,"accel_momentum":-0.225409,"rvol_3bar":[0.140202,0.331988,0.780612],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":79.0,"sell_vol":83.0,"unclassified_vol":0.0,"imbalance":-0.024691,"bid":9.73,"ask":9.78,"spread_pct":0.512558,"quote_size_imbalance":null,"quote_age_s":0.328009},"context":{"vwap":9.601683,"price_vs_vwap_pct":1.618646,"ema9":9.761606,"ema20":9.768594,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.342157,"dist_to_hod_atr":8.543348,"atr":0.051842,"spread_atr":0.964478,"own_change_pct":-0.366428,"rel_strength_pct":{"SPY":-0.394158,"IWM":-0.363091}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.019274},"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":"8b4acbf3106c","ts":"2026-09-15T15:56:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1320.0s, plan says PASS; stop 7.17, target 7.30 (premarket_high), R:R 0.24; R:R 0.24 < 2.0 at 7.27; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.1692,"target":7.2991,"target_label":"premarket_high","reward_risk":0.24,"pos_in_5d_range_pct":31.9,"room_to_5d_high_atr":1.45},"price":7.2736,"vwap":7.208,"ext_from_open_pct":1.73,"max_ext_allowed_pct":4.0,"volume_pace":0.726,"trend":"flat","recent_slope_pct":-0.0176,"volatility":"medium"},"price":7.2736,"volume":{"bars":146,"last_bar_volume":553543.0,"baseline_avg":204255.7,"bar_rvol":2.710049,"raw_accel":1.9612,"smooth_accel":-0.119031,"accel_momentum":-0.34185,"rvol_3bar":[0.55678,0.877163,2.710049],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":307,"trade_rate":10.233333,"buy_vol":303127.0,"sell_vol":82856.0,"unclassified_vol":0.0,"imbalance":0.570675,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.017619},"context":{"vwap":7.20788,"price_vs_vwap_pct":0.911773,"ema9":7.277133,"ema20":7.259434,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.769441,"dist_to_hod_atr":2.100487,"atr":0.026851,"spread_atr":0.372427,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.5456,"IWM":0.576667}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.546558},"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":"5a037caa9712","ts":"2026-09-15T15:56:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1335.0s, plan says WATCH; stop 7.21, target 7.47 (prev_day_high), R:R 1.48; R:R 1.48 < 2.0 at 7.32; breakout: 1-min close > 7.33 on >= 280216 sh","plan":{"state":"WATCH","setup":"","stop":7.2106,"target":7.47,"target_label":"prev_day_high","reward_risk":1.48,"pos_in_5d_range_pct":36.5,"room_to_5d_high_atr":1.35},"price":7.315,"vwap":7.2083,"ext_from_open_pct":2.31,"max_ext_allowed_pct":4.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.096,"volatility":"medium"},"price":7.315,"volume":{"bars":146,"last_bar_volume":553543.0,"baseline_avg":204255.7,"bar_rvol":2.710049,"raw_accel":1.9612,"smooth_accel":-0.119031,"accel_momentum":-0.34185,"rvol_3bar":[0.55678,0.877163,2.710049],"trend_3bar":"ACCELERATING","projected_rvol":1.433395},"flow":{"window_s":30,"trades":222,"trade_rate":7.4,"buy_vol":165150.0,"sell_vol":40047.0,"unclassified_vol":0.0,"imbalance":0.609673,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.465503},"context":{"vwap":7.20788,"price_vs_vwap_pct":1.486144,"ema9":7.277133,"ema20":7.259434,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.204638,"dist_to_hod_atr":0.55864,"atr":0.026851,"spread_atr":0.372427,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.5456,"IWM":0.576667}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.652243},"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":"9c90deb88cd5","ts":"2026-09-15T15:56:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1340.0s, plan says PASS; stop 7.21, target 7.47 (prev_day_high), R:R 1.53; target 0.16 away > ~0.16 reachable in 239 min","plan":{"state":"PASS","setup":"","stop":7.2056,"target":7.47,"target_label":"prev_day_high","reward_risk":1.53,"pos_in_5d_range_pct":36.0,"room_to_5d_high_atr":1.37},"price":7.31,"vwap":7.2084,"ext_from_open_pct":2.24,"max_ext_allowed_pct":3.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":0.0823,"volatility":"medium"},"price":7.31,"volume":{"bars":146,"last_bar_volume":553543.0,"baseline_avg":204255.7,"bar_rvol":2.710049,"raw_accel":1.9612,"smooth_accel":-0.119031,"accel_momentum":-0.34185,"rvol_3bar":[0.55678,0.877163,2.710049],"trend_3bar":"ACCELERATING","projected_rvol":1.569574},"flow":{"window_s":30,"trades":160,"trade_rate":5.333333,"buy_vol":148931.0,"sell_vol":32776.0,"unclassified_vol":0.0,"imbalance":0.639243,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.365665},"context":{"vwap":7.20788,"price_vs_vwap_pct":1.416776,"ema9":7.277133,"ema20":7.259434,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.272851,"dist_to_hod_atr":0.744853,"atr":0.026851,"spread_atr":0.372427,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.5456,"IWM":0.576667}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.732381},"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":"471f49b4f3f2","ts":"2026-09-15T15:56:35+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1350.0s, plan says WATCH; stop 7.21, target 7.47 (prev_day_high), R:R 1.48; R:R 1.48 < 2.0 at 7.32; breakout: 1-min close > 7.33 on >= 280216 sh","plan":{"state":"WATCH","setup":"","stop":7.2106,"target":7.47,"target_label":"prev_day_high","reward_risk":1.48,"pos_in_5d_range_pct":36.5,"room_to_5d_high_atr":1.35},"price":7.315,"vwap":7.2086,"ext_from_open_pct":2.31,"max_ext_allowed_pct":4.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":0.096,"volatility":"medium"},"price":7.315,"volume":{"bars":146,"last_bar_volume":553543.0,"baseline_avg":204255.7,"bar_rvol":2.710049,"raw_accel":1.9612,"smooth_accel":-0.119031,"accel_momentum":-0.34185,"rvol_3bar":[0.55678,0.877163,2.710049],"trend_3bar":"ACCELERATING","projected_rvol":1.382763},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":112185.0,"sell_vol":32861.0,"unclassified_vol":0.0,"imbalance":0.546889,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.012612},"context":{"vwap":7.20788,"price_vs_vwap_pct":1.486144,"ema9":7.277133,"ema20":7.259434,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.204638,"dist_to_hod_atr":0.55864,"atr":0.026851,"spread_atr":0.372427,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.5456,"IWM":0.576667}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.482095},"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":"90a75e965690","ts":"2026-09-15T15:56:40+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1355.0s, plan says PASS; stop 7.21, target 7.47 (prev_day_high), R:R 1.53; target 0.16 away > ~0.16 reachable in 238 min","plan":{"state":"PASS","setup":"","stop":7.2056,"target":7.47,"target_label":"prev_day_high","reward_risk":1.53,"pos_in_5d_range_pct":36.0,"room_to_5d_high_atr":1.37},"price":7.31,"vwap":7.2086,"ext_from_open_pct":2.24,"max_ext_allowed_pct":3.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":0.0823,"volatility":"medium"},"price":7.31,"volume":{"bars":146,"last_bar_volume":553543.0,"baseline_avg":204255.7,"bar_rvol":2.710049,"raw_accel":1.9612,"smooth_accel":-0.119031,"accel_momentum":-0.34185,"rvol_3bar":[0.55678,0.877163,2.710049],"trend_3bar":"ACCELERATING","projected_rvol":1.227887},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":98042.0,"sell_vol":17026.0,"unclassified_vol":0.0,"imbalance":0.704071,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.763927},"context":{"vwap":7.20788,"price_vs_vwap_pct":1.416776,"ema9":7.277133,"ema20":7.259434,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.272851,"dist_to_hod_atr":0.744853,"atr":0.026851,"spread_atr":0.372427,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.5456,"IWM":0.576667}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.908066},"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":"05b90f171c1a","ts":"2026-09-15T15:56:50+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1365.0s, plan says WATCH; stop 7.22, target 7.47 (prev_day_high), R:R 1.44; R:R 1.44 < 2.0 at 7.32; breakout: 1-min close > 7.33 on >= 280216 sh","plan":{"state":"WATCH","setup":"","stop":7.2155,"target":7.47,"target_label":"prev_day_high","reward_risk":1.44,"pos_in_5d_range_pct":37.1,"room_to_5d_high_atr":1.34},"price":7.3199,"vwap":7.2087,"ext_from_open_pct":2.38,"max_ext_allowed_pct":4.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":0.1094,"volatility":"medium"},"price":7.3199,"volume":{"bars":146,"last_bar_volume":553543.0,"baseline_avg":204255.7,"bar_rvol":2.710049,"raw_accel":1.9612,"smooth_accel":-0.119031,"accel_momentum":-0.34185,"rvol_3bar":[0.55678,0.877163,2.710049],"trend_3bar":"ACCELERATING","projected_rvol":1.125143},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":82017.0,"sell_vol":11904.0,"unclassified_vol":0.0,"imbalance":0.74651,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.191971},"context":{"vwap":7.20788,"price_vs_vwap_pct":1.554125,"ema9":7.277133,"ema20":7.259434,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.13779,"dist_to_hod_atr":0.376151,"atr":0.026851,"spread_atr":0.372427,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.5456,"IWM":0.576667}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.02308},"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":"ad3028ba313c","ts":"2026-09-15T15:56:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1370.0s, plan says PASS; stop 7.21, target 7.47 (prev_day_high), R:R 1.48; target 0.15 away > ~0.15 reachable in 238 min","plan":{"state":"PASS","setup":"","stop":7.2106,"target":7.47,"target_label":"prev_day_high","reward_risk":1.48,"pos_in_5d_range_pct":36.5,"room_to_5d_high_atr":1.35},"price":7.315,"vwap":7.2088,"ext_from_open_pct":2.31,"max_ext_allowed_pct":4.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":0.096,"volatility":"medium"},"price":7.315,"volume":{"bars":146,"last_bar_volume":553543.0,"baseline_avg":204255.7,"bar_rvol":2.710049,"raw_accel":1.9612,"smooth_accel":-0.119031,"accel_momentum":-0.34185,"rvol_3bar":[0.55678,0.877163,2.710049],"trend_3bar":"ACCELERATING","projected_rvol":1.169144},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":72305.0,"sell_vol":13018.0,"unclassified_vol":0.0,"imbalance":0.694854,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.523111},"context":{"vwap":7.20788,"price_vs_vwap_pct":1.486144,"ema9":7.277133,"ema20":7.259434,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.204638,"dist_to_hod_atr":0.55864,"atr":0.026851,"spread_atr":0.372427,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.5456,"IWM":0.576667}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.883088},"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":"37ff5fb6d237","ts":"2026-09-15T15:57:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.015,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9465,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.606,"trend":"flat","recent_slope_pct":0.0507,"volatility":"medium"},"price":5.96,"volume":{"bars":147,"last_bar_volume":104925.0,"baseline_avg":70766.5,"bar_rvol":1.482693,"raw_accel":-0.350519,"smooth_accel":1.438904,"accel_momentum":0.596303,"rvol_3bar":[0.82334,2.410071,1.482693],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":144,"trade_rate":4.8,"buy_vol":53406.0,"sell_vol":61388.0,"unclassified_vol":0.0,"imbalance":-0.069533,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":1.94615},"context":{"vwap":5.946454,"price_vs_vwap_pct":0.227791,"ema9":5.950094,"ema20":5.942814,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.816727,"atr":0.018911,"spread_atr":0.528793,"own_change_pct":0.083963,"rel_strength_pct":{"SPY":0.068775,"IWM":0.112074}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.103096},"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":"8a45c7d8e578","ts":"2026-09-15T15:57:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1380.0s, plan says WATCH; stop 7.22, target 7.47 (prev_day_high), R:R 1.44; R:R 1.44 < 2.0 at 7.32; breakout: 1-min close > 7.33 on >= 282378 sh","plan":{"state":"WATCH","setup":"","stop":7.2156,"target":7.47,"target_label":"prev_day_high","reward_risk":1.44,"pos_in_5d_range_pct":37.1,"room_to_5d_high_atr":1.34},"price":7.32,"vwap":7.2088,"ext_from_open_pct":2.38,"max_ext_allowed_pct":4.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.1571,"volatility":"medium"},"price":7.32,"volume":{"bars":147,"last_bar_volume":219811.0,"baseline_avg":225973.1,"bar_rvol":0.972731,"raw_accel":-0.602902,"smooth_accel":0.030255,"accel_momentum":0.149286,"rvol_3bar":[0.877163,2.710049,0.972731],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":44574.0,"sell_vol":12157.0,"unclassified_vol":0.0,"imbalance":0.571416,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.472138},"context":{"vwap":7.208768,"price_vs_vwap_pct":1.543007,"ema9":7.283706,"ema20":7.26425,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.136426,"dist_to_hod_atr":0.354016,"atr":0.028247,"spread_atr":0.354016,"own_change_pct":0.4811,"rel_strength_pct":{"SPY":0.465911,"IWM":0.509211}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.555834},"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":"7a04e5edec4c","ts":"2026-09-15T15:57:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 110.0s, plan says PASS; stop 11.14, target 11.44 (premarket_high), R:R 0.39; R:R 0.39 < 2.0 at 11.36; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1382,"target":11.44,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":27.7,"room_to_5d_high_atr":1.19},"price":11.355,"vwap":11.2649,"ext_from_open_pct":0.84,"max_ext_allowed_pct":4.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":0.0705,"volatility":"high"},"price":11.355,"volume":{"bars":147,"last_bar_volume":111563.0,"baseline_avg":124970.5,"bar_rvol":0.892715,"raw_accel":-0.526618,"smooth_accel":0.161309,"accel_momentum":0.103701,"rvol_3bar":[1.533929,1.990941,0.892715],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":21855.0,"sell_vol":28057.0,"unclassified_vol":0.0,"imbalance":-0.124259,"bid":11.35,"ask":11.36,"spread_pct":0.088067,"quote_size_imbalance":null,"quote_age_s":0.23848},"context":{"vwap":11.264878,"price_vs_vwap_pct":0.800023,"ema9":11.34118,"ema20":11.335589,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.08885,"dist_to_hod_atr":2.400895,"atr":0.052064,"spread_atr":0.192072,"own_change_pct":-0.087989,"rel_strength_pct":{"SPY":-0.103178,"IWM":-0.059878}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.110928},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f6f78569ed88","ts":"2026-09-15T15:57:10+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.8409,"target":10.015,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.9601,"vwap":9.9564,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":0.0203,"volatility":"medium"},"price":9.9601,"volume":{"bars":147,"last_bar_volume":95244.0,"baseline_avg":181141.35,"bar_rvol":0.525799,"raw_accel":-0.073358,"smooth_accel":0.273486,"accel_momentum":0.153695,"rvol_3bar":[1.085027,0.535036,0.525799],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":43467.0,"sell_vol":53272.0,"unclassified_vol":0.0,"imbalance":-0.101355,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":1.395748},"context":{"vwap":9.956407,"price_vs_vwap_pct":0.037093,"ema9":9.958955,"ema20":9.961473,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.894527,"dist_to_hod_atr":4.925326,"atr":0.018253,"spread_atr":0.547867,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.015188,"IWM":0.028111}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.053292},"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":"1931f0d3d747","ts":"2026-09-15T15:57:10+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8624,"target":6.015,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":102.1,"room_to_5d_high_atr":-0.05},"price":5.9455,"vwap":5.9465,"ext_from_open_pct":0.6,"max_ext_allowed_pct":3.0,"volume_pace":1.605,"trend":"flat","recent_slope_pct":0.002,"volatility":"medium"},"price":5.9455,"volume":{"bars":147,"last_bar_volume":104925.0,"baseline_avg":70766.5,"bar_rvol":1.482693,"raw_accel":-0.350519,"smooth_accel":1.438904,"accel_momentum":0.596303,"rvol_3bar":[0.82334,2.410071,1.482693],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":35937.0,"sell_vol":39378.0,"unclassified_vol":0.0,"imbalance":-0.045688,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.579193},"context":{"vwap":5.946454,"price_vs_vwap_pct":-0.016052,"ema9":5.950094,"ema20":5.942814,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.051071,"dist_to_hod_atr":6.583478,"atr":0.018911,"spread_atr":0.528793,"own_change_pct":0.083963,"rel_strength_pct":{"SPY":0.068775,"IWM":0.112074}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.067741},"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":"9dd4dbe2916e","ts":"2026-09-15T15:57:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8719,"target":6.015,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9465,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.604,"trend":"flat","recent_slope_pct":0.0339,"volatility":"medium"},"price":5.955,"volume":{"bars":147,"last_bar_volume":104925.0,"baseline_avg":70766.5,"bar_rvol":1.482693,"raw_accel":-0.350519,"smooth_accel":1.438904,"accel_momentum":0.596303,"rvol_3bar":[0.82334,2.410071,1.482693],"trend_3bar":"MIXED","projected_rvol":1.186324},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":28359.0,"sell_vol":32185.0,"unclassified_vol":0.0,"imbalance":-0.063194,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.000981},"context":{"vwap":5.946454,"price_vs_vwap_pct":0.143707,"ema9":5.950094,"ema20":5.942814,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":6.081124,"atr":0.018911,"spread_atr":0.528793,"own_change_pct":0.083963,"rel_strength_pct":{"SPY":0.068775,"IWM":0.112074}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.093697},"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":"3258effc1df6","ts":"2026-09-15T15:57:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1390.0s, plan says PASS; stop 7.21, target 7.47 (prev_day_high), R:R 1.53; target 0.16 away > ~0.16 reachable in 238 min","plan":{"state":"PASS","setup":"","stop":7.2056,"target":7.47,"target_label":"prev_day_high","reward_risk":1.53,"pos_in_5d_range_pct":36.0,"room_to_5d_high_atr":1.37},"price":7.31,"vwap":7.2089,"ext_from_open_pct":2.24,"max_ext_allowed_pct":3.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.1298,"volatility":"medium"},"price":7.31,"volume":{"bars":147,"last_bar_volume":219811.0,"baseline_avg":225973.1,"bar_rvol":0.972731,"raw_accel":-0.602902,"smooth_accel":0.030255,"accel_momentum":0.149286,"rvol_3bar":[0.877163,2.710049,0.972731],"trend_3bar":"MIXED","projected_rvol":0.568315},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":56687.0,"sell_vol":22732.0,"unclassified_vol":0.0,"imbalance":0.427543,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.092251},"context":{"vwap":7.208768,"price_vs_vwap_pct":1.404287,"ema9":7.283706,"ema20":7.26425,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.272851,"dist_to_hod_atr":0.708033,"atr":0.028247,"spread_atr":0.354016,"own_change_pct":0.4811,"rel_strength_pct":{"SPY":0.465911,"IWM":0.509211}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.415884},"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":"7581eca162de","ts":"2026-09-15T15:57:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1400.0s, plan says WATCH; stop 7.21, target 7.47 (prev_day_high), R:R 1.48; R:R 1.48 < 2.0 at 7.32; breakout: 1-min close > 7.33 on >= 282378 sh","plan":{"state":"WATCH","setup":"","stop":7.2106,"target":7.47,"target_label":"prev_day_high","reward_risk":1.48,"pos_in_5d_range_pct":36.5,"room_to_5d_high_atr":1.35},"price":7.315,"vwap":7.2089,"ext_from_open_pct":2.31,"max_ext_allowed_pct":3.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.1435,"volatility":"medium"},"price":7.315,"volume":{"bars":147,"last_bar_volume":219811.0,"baseline_avg":225973.1,"bar_rvol":0.972731,"raw_accel":-0.602902,"smooth_accel":0.030255,"accel_momentum":0.149286,"rvol_3bar":[0.877163,2.710049,0.972731],"trend_3bar":"MIXED","projected_rvol":0.36599},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":21816.0,"sell_vol":13551.0,"unclassified_vol":0.0,"imbalance":0.233692,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.320017},"context":{"vwap":7.208768,"price_vs_vwap_pct":1.473647,"ema9":7.283706,"ema20":7.26425,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.204638,"dist_to_hod_atr":0.531024,"atr":0.028247,"spread_atr":0.354016,"own_change_pct":0.4811,"rel_strength_pct":{"SPY":0.465911,"IWM":0.509211}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.22732},"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":"89bd2a52a374","ts":"2026-09-15T15:57:30+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8628,"target":6.015,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":102.1,"room_to_5d_high_atr":-0.05},"price":5.9459,"vwap":5.9465,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":1.602,"trend":"flat","recent_slope_pct":0.0034,"volatility":"medium"},"price":5.9459,"volume":{"bars":147,"last_bar_volume":104925.0,"baseline_avg":70766.5,"bar_rvol":1.482693,"raw_accel":-0.350519,"smooth_accel":1.438904,"accel_momentum":0.596303,"rvol_3bar":[0.82334,2.410071,1.482693],"trend_3bar":"MIXED","projected_rvol":0.65613},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":20058.0,"sell_vol":3158.0,"unclassified_vol":0.0,"imbalance":0.727946,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.575814},"context":{"vwap":5.946454,"price_vs_vwap_pct":-0.009325,"ema9":5.950094,"ema20":5.942814,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.044481,"dist_to_hod_atr":6.562326,"atr":0.018911,"spread_atr":0.528793,"own_change_pct":0.083963,"rel_strength_pct":{"SPY":0.068775,"IWM":0.112074}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.079321},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8cd3d5ce4bbd","ts":"2026-09-15T15:57:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.015,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9465,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.601,"trend":"flat","recent_slope_pct":0.0171,"volatility":"medium"},"price":5.95,"volume":{"bars":147,"last_bar_volume":104925.0,"baseline_avg":70766.5,"bar_rvol":1.482693,"raw_accel":-0.350519,"smooth_accel":1.438904,"accel_momentum":0.596303,"rvol_3bar":[0.82334,2.410071,1.482693],"trend_3bar":"MIXED","projected_rvol":0.573298},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1791.0,"sell_vol":2127.0,"unclassified_vol":0.0,"imbalance":-0.085758,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.770289},"context":{"vwap":5.946454,"price_vs_vwap_pct":0.059624,"ema9":5.950094,"ema20":5.942814,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.345521,"atr":0.018911,"spread_atr":0.528793,"own_change_pct":0.083963,"rel_strength_pct":{"SPY":0.068775,"IWM":0.112074}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.127153},"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":"1efe6f963598","ts":"2026-09-15T15:57:40+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 1415.0s, plan says PASS; stop 7.21, target 7.47 (prev_day_high), R:R 1.48; target 0.15 away > ~0.15 reachable in 237 min","plan":{"state":"PASS","setup":"","stop":7.2106,"target":7.47,"target_label":"prev_day_high","reward_risk":1.48,"pos_in_5d_range_pct":36.5,"room_to_5d_high_atr":1.35},"price":7.315,"vwap":7.209,"ext_from_open_pct":2.31,"max_ext_allowed_pct":3.0,"volume_pace":0.726,"trend":"flat","recent_slope_pct":0.1435,"volatility":"medium"},"price":7.315,"volume":{"bars":147,"last_bar_volume":219811.0,"baseline_avg":225973.1,"bar_rvol":0.972731,"raw_accel":-0.602902,"smooth_accel":0.030255,"accel_momentum":0.149286,"rvol_3bar":[0.877163,2.710049,0.972731],"trend_3bar":"MIXED","projected_rvol":0.329807},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":29406.0,"sell_vol":17167.0,"unclassified_vol":0.0,"imbalance":0.262792,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.584768},"context":{"vwap":7.208768,"price_vs_vwap_pct":1.473647,"ema9":7.283706,"ema20":7.26425,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.204638,"dist_to_hod_atr":0.531024,"atr":0.028247,"spread_atr":0.354016,"own_change_pct":0.4811,"rel_strength_pct":{"SPY":0.465911,"IWM":0.509211}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.255626},"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":"2c02ca31cacf","ts":"2026-09-15T15:57:50+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8358,"target":10.015,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.955,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.947,"trend":"flat","recent_slope_pct":0.01,"volatility":"medium"},"price":9.955,"volume":{"bars":147,"last_bar_volume":95244.0,"baseline_avg":181141.35,"bar_rvol":0.525799,"raw_accel":-0.073358,"smooth_accel":0.273486,"accel_momentum":0.153695,"rvol_3bar":[1.085027,0.535036,0.525799],"trend_3bar":"DECELERATING","projected_rvol":1.440287},"flow":{"window_s":30,"trades":232,"trade_rate":7.733333,"buy_vol":72451.0,"sell_vol":81049.0,"unclassified_vol":0.0,"imbalance":-0.056013,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.120306},"context":{"vwap":9.956407,"price_vs_vwap_pct":-0.01413,"ema9":9.958955,"ema20":9.961473,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.945274,"dist_to_hod_atr":5.204738,"atr":0.018253,"spread_atr":0.547867,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.015188,"IWM":0.028111}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.029452},"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":"f1e2c17fe3ea","ts":"2026-09-15T15:57:55+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6319,"target":7.78,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":0.81},"price":7.7198,"vwap":7.7235,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.587,"trend":"flat","recent_slope_pct":0.0643,"volatility":"medium"},"price":7.7198,"volume":{"bars":147,"last_bar_volume":11873.0,"baseline_avg":10869.1,"bar_rvol":1.092363,"raw_accel":-0.43831,"smooth_accel":0.445411,"accel_momentum":1.044814,"rvol_3bar":[0.31887,1.919638,1.092363],"trend_3bar":"MIXED","projected_rvol":1.245165},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":8575.0,"sell_vol":1448.0,"unclassified_vol":0.0,"imbalance":0.711065,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":1.07319},"context":{"vwap":7.723456,"price_vs_vwap_pct":-0.047339,"ema9":7.728366,"ema20":7.7187,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.15493,"dist_to_hod_atr":4.429468,"atr":0.020364,"spread_atr":0.491072,"own_change_pct":0.647396,"rel_strength_pct":{"SPY":0.632208,"IWM":0.675507}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.77674},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9016e5491e5c","ts":"2026-09-15T15:58:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.6671,"target":7.83,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":54.1,"room_to_5d_high_atr":0.71},"price":7.755,"vwap":7.7236,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":0.588,"trend":"flat","recent_slope_pct":0.1552,"volatility":"medium"},"price":7.755,"volume":{"bars":147,"last_bar_volume":11873.0,"baseline_avg":10869.1,"bar_rvol":1.092363,"raw_accel":-0.43831,"smooth_accel":0.445411,"accel_momentum":1.044814,"rvol_3bar":[0.31887,1.919638,1.092363],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":11013.0,"sell_vol":3435.0,"unclassified_vol":0.0,"imbalance":0.524502,"bid":7.75,"ask":7.76,"spread_pct":0.128949,"quote_size_imbalance":null,"quote_age_s":1.622405},"context":{"vwap":7.723456,"price_vs_vwap_pct":0.408416,"ema9":7.728366,"ema20":7.7187,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.704225,"dist_to_hod_atr":2.700895,"atr":0.020364,"spread_atr":0.491072,"own_change_pct":0.647396,"rel_strength_pct":{"SPY":0.630226,"IWM":0.689637}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.572946},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ce17ade2a812","ts":"2026-09-15T15:58:10+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1638,"target":8.4519,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":3.8,"room_to_5d_high_atr":3.94},"price":8.355,"vwap":8.3504,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.815,"trend":"flat","recent_slope_pct":0.0548,"volatility":"high"},"price":8.355,"volume":{"bars":148,"last_bar_volume":47330.0,"baseline_avg":67155.9,"bar_rvol":0.704778,"raw_accel":-0.313341,"smooth_accel":-0.125172,"accel_momentum":-0.56397,"rvol_3bar":[0.965604,1.001032,0.704778],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":10897.0,"sell_vol":3066.0,"unclassified_vol":0.0,"imbalance":0.560839,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":1.472648},"context":{"vwap":8.350423,"price_vs_vwap_pct":0.054815,"ema9":8.347019,"ema20":8.338615,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.905288,"dist_to_hod_atr":9.390692,"atr":0.026622,"spread_atr":0.375628,"own_change_pct":0.043088,"rel_strength_pct":{"SPY":0.025918,"IWM":0.085329}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.395267},"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":"4022e17c85d1","ts":"2026-09-15T15:58:25+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1784,"target":7.07,"target_label":"premarket_high","reward_risk":1.96,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.4799,"vwap":6.4311,"ext_from_open_pct":2.29,"max_ext_allowed_pct":4.0,"volume_pace":2.673,"trend":"flat","recent_slope_pct":0.1937,"volatility":"high"},"price":6.4799,"volume":{"bars":148,"last_bar_volume":12239.0,"baseline_avg":10290.3,"bar_rvol":1.189373,"raw_accel":3.75749,"smooth_accel":-0.513865,"accel_momentum":-0.277786,"rvol_3bar":[0.41411,0.233677,1.189373],"trend_3bar":"MIXED","projected_rvol":1.574531},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":6225.0,"sell_vol":541.0,"unclassified_vol":0.0,"imbalance":0.840083,"bid":6.46,"ask":6.48,"spread_pct":0.309119,"quote_size_imbalance":null,"quote_age_s":6.696325},"context":{"vwap":6.431012,"price_vs_vwap_pct":0.760193,"ema9":6.411913,"ema20":6.396665,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.815407,"dist_to_hod_atr":6.733547,"atr":0.059419,"spread_atr":0.336593,"own_change_pct":0.662231,"rel_strength_pct":{"SPY":0.645061,"IWM":0.704472}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.999171},"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":"84b55ee52bb9","ts":"2026-09-15T15:58:35+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.34 below VWAP $8.35","plan":{"state":"PASS","setup":"","stop":8.1528,"target":8.4519,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":3.5,"room_to_5d_high_atr":3.96},"price":8.344,"vwap":8.3504,"ext_from_open_pct":-0.31,"max_ext_allowed_pct":4.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":0.0285,"volatility":"high"},"price":8.344,"volume":{"bars":148,"last_bar_volume":47330.0,"baseline_avg":67155.9,"bar_rvol":0.704778,"raw_accel":-0.313341,"smooth_accel":-0.125172,"accel_momentum":-0.56397,"rvol_3bar":[0.965604,1.001032,0.704778],"trend_3bar":"MIXED","projected_rvol":0.485625},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":16795.0,"sell_vol":170.0,"unclassified_vol":0.0,"imbalance":0.979959,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.39141},"context":{"vwap":8.350423,"price_vs_vwap_pct":-0.076914,"ema9":8.347019,"ema20":8.338615,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-3.03312,"dist_to_hod_atr":9.803882,"atr":0.026622,"spread_atr":0.375628,"own_change_pct":0.043088,"rel_strength_pct":{"SPY":0.025918,"IWM":0.085329}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.690653},"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":"6546d1476ca3","ts":"2026-09-15T15:58:45+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.177,"target":8.4519,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":4.2,"room_to_5d_high_atr":3.93},"price":8.3682,"vwap":8.3504,"ext_from_open_pct":-0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":0.0864,"volatility":"high"},"price":8.3682,"volume":{"bars":148,"last_bar_volume":47330.0,"baseline_avg":67155.9,"bar_rvol":0.704778,"raw_accel":-0.313341,"smooth_accel":-0.125172,"accel_momentum":-0.56397,"rvol_3bar":[0.965604,1.001032,0.704778],"trend_3bar":"MIXED","projected_rvol":0.497052},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":5047.0,"sell_vol":1157.0,"unclassified_vol":0.0,"imbalance":0.627015,"bid":8.36,"ask":8.37,"spread_pct":0.119546,"quote_size_imbalance":null,"quote_age_s":0.731422},"context":{"vwap":8.350423,"price_vs_vwap_pct":0.212891,"ema9":8.347019,"ema20":8.338615,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.751888,"dist_to_hod_atr":8.894863,"atr":0.026622,"spread_atr":0.375628,"own_change_pct":0.043088,"rel_strength_pct":{"SPY":0.025918,"IWM":0.085329}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.441906},"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":"715970df2cd7","ts":"2026-09-15T15:58:50+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.09% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":6.1335,"target":7.07,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":47.8,"room_to_5d_high_atr":3.65},"price":6.435,"vwap":6.4311,"ext_from_open_pct":1.58,"max_ext_allowed_pct":3.0,"volume_pace":2.67,"trend":"flat","recent_slope_pct":0.0542,"volatility":"high"},"price":6.435,"volume":{"bars":148,"last_bar_volume":12239.0,"baseline_avg":10290.3,"bar_rvol":1.189373,"raw_accel":3.75749,"smooth_accel":-0.513865,"accel_momentum":-0.277786,"rvol_3bar":[0.41411,0.233677,1.189373],"trend_3bar":"MIXED","projected_rvol":1.800997},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3947.0,"sell_vol":4972.0,"unclassified_vol":0.0,"imbalance":-0.114923,"bid":6.4,"ask":6.47,"spread_pct":1.087801,"quote_size_imbalance":null,"quote_age_s":1.13077},"context":{"vwap":6.431012,"price_vs_vwap_pct":0.062014,"ema9":6.411913,"ema20":6.396665,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.468023,"dist_to_hod_atr":7.489198,"atr":0.059419,"spread_atr":1.178076,"own_change_pct":0.662231,"rel_strength_pct":{"SPY":0.645061,"IWM":0.704472}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.136686},"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":"982bfedb9a3e","ts":"2026-09-15T15:59:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1485,"target":7.07,"target_label":"premarket_high","reward_risk":2.06,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":3.64},"price":6.45,"vwap":6.431,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":2.666,"trend":"flat","recent_slope_pct":0.1703,"volatility":"high"},"price":6.45,"volume":{"bars":149,"last_bar_volume":16330.0,"baseline_avg":10701.05,"bar_rvol":1.526018,"raw_accel":0.334259,"smooth_accel":-0.088451,"accel_momentum":0.425414,"rvol_3bar":[0.233677,1.189373,1.526018],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1438.0,"sell_vol":4543.0,"unclassified_vol":0.0,"imbalance":-0.519144,"bid":6.43,"ask":6.45,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":3.535793},"context":{"vwap":6.43104,"price_vs_vwap_pct":0.29482,"ema9":6.415411,"ema20":6.399783,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.25,"dist_to_hod_atr":7.14586,"atr":0.060175,"spread_atr":0.332366,"own_change_pct":-0.009331,"rel_strength_pct":{"SPY":-8.6e-05,"IWM":0.050416}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.792223},"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":"155bcfe04444","ts":"2026-09-15T15:59:10+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.40 below VWAP $6.43","plan":{"state":"PASS","setup":"","stop":6.0995,"target":7.07,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":47.4,"room_to_5d_high_atr":3.68},"price":6.401,"vwap":6.431,"ext_from_open_pct":1.04,"max_ext_allowed_pct":3.0,"volume_pace":2.665,"trend":"flat","recent_slope_pct":0.0178,"volatility":"high"},"price":6.401,"volume":{"bars":149,"last_bar_volume":16330.0,"baseline_avg":10701.05,"bar_rvol":1.526018,"raw_accel":0.334259,"smooth_accel":-0.088451,"accel_momentum":0.425414,"rvol_3bar":[0.233677,1.189373,1.526018],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":1022.0,"sell_vol":5033.0,"unclassified_vol":0.0,"imbalance":-0.662428,"bid":6.4,"ask":6.45,"spread_pct":0.77821,"quote_size_imbalance":null,"quote_age_s":2.136176},"context":{"vwap":6.43104,"price_vs_vwap_pct":-0.467109,"ema9":6.415411,"ema20":6.399783,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.962209,"dist_to_hod_atr":7.960156,"atr":0.060175,"spread_atr":0.830914,"own_change_pct":-0.009331,"rel_strength_pct":{"SPY":-8.6e-05,"IWM":0.050416}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.010877},"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":"661f8999f9fe","ts":"2026-09-15T15:59:40+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.35 below VWAP $8.35","plan":{"state":"PASS","setup":"","stop":8.1551,"target":8.4375,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":3.6,"room_to_5d_high_atr":3.95},"price":8.3463,"vwap":8.3505,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":0.0144,"volatility":"high"},"price":8.3463,"volume":{"bars":149,"last_bar_volume":40347.0,"baseline_avg":62542.75,"bar_rvol":0.645111,"raw_accel":-0.147539,"smooth_accel":-0.283223,"accel_momentum":-0.158051,"rvol_3bar":[1.001032,0.704778,0.645111],"trend_3bar":"DECELERATING","projected_rvol":0.479624},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":10508.0,"sell_vol":1964.0,"unclassified_vol":0.0,"imbalance":0.685055,"bid":8.36,"ask":8.37,"spread_pct":0.119546,"quote_size_imbalance":null,"quote_age_s":0.196119},"context":{"vwap":8.350446,"price_vs_vwap_pct":-0.04965,"ema9":8.349615,"ema20":8.340652,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-3.006392,"dist_to_hod_atr":9.661034,"atr":0.026778,"spread_atr":0.373445,"own_change_pct":0.11976,"rel_strength_pct":{"SPY":0.129005,"IWM":0.179508}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.441936},"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":"c61725254454","ts":"2026-09-15T15:59:45+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1788,"target":8.4375,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":4.3,"room_to_5d_high_atr":3.92},"price":8.37,"vwap":8.3505,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":0.0711,"volatility":"high"},"price":8.37,"volume":{"bars":149,"last_bar_volume":40347.0,"baseline_avg":62542.75,"bar_rvol":0.645111,"raw_accel":-0.147539,"smooth_accel":-0.283223,"accel_momentum":-0.158051,"rvol_3bar":[1.001032,0.704778,0.645111],"trend_3bar":"DECELERATING","projected_rvol":0.434988},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":9717.0,"sell_vol":2124.0,"unclassified_vol":0.0,"imbalance":0.641247,"bid":8.36,"ask":8.37,"spread_pct":0.119546,"quote_size_imbalance":null,"quote_age_s":0.087849},"context":{"vwap":8.350446,"price_vs_vwap_pct":0.234168,"ema9":8.349615,"ema20":8.340652,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.73097,"dist_to_hod_atr":8.775969,"atr":0.026778,"spread_atr":0.373445,"own_change_pct":0.11976,"rel_strength_pct":{"SPY":0.129005,"IWM":0.179508}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.413675},"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":"472ae22b41e8","ts":"2026-09-15T15:59:50+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.35 below VWAP $8.35","plan":{"state":"PASS","setup":"","stop":8.1562,"target":8.4375,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":3.6,"room_to_5d_high_atr":3.95},"price":8.3474,"vwap":8.3505,"ext_from_open_pct":-0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":0.017,"volatility":"high"},"price":8.3474,"volume":{"bars":149,"last_bar_volume":40347.0,"baseline_avg":62542.75,"bar_rvol":0.645111,"raw_accel":-0.147539,"smooth_accel":-0.283223,"accel_momentum":-0.158051,"rvol_3bar":[1.001032,0.704778,0.645111],"trend_3bar":"DECELERATING","projected_rvol":0.393907},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":9604.0,"sell_vol":2196.0,"unclassified_vol":0.0,"imbalance":0.627797,"bid":8.36,"ask":8.37,"spread_pct":0.119546,"quote_size_imbalance":null,"quote_age_s":0.169736},"context":{"vwap":8.350446,"price_vs_vwap_pct":-0.036477,"ema9":8.349615,"ema20":8.340652,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.993608,"dist_to_hod_atr":9.619955,"atr":0.026778,"spread_atr":0.373445,"own_change_pct":0.11976,"rel_strength_pct":{"SPY":0.129005,"IWM":0.179508}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.404998},"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":"885af11ddc49","ts":"2026-09-15T15:59:55+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1738,"target":8.4375,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":4.1,"room_to_5d_high_atr":3.93},"price":8.365,"vwap":8.3505,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":0.0591,"volatility":"high"},"price":8.365,"volume":{"bars":149,"last_bar_volume":40347.0,"baseline_avg":62542.75,"bar_rvol":0.645111,"raw_accel":-0.147539,"smooth_accel":-0.283223,"accel_momentum":-0.158051,"rvol_3bar":[1.001032,0.704778,0.645111],"trend_3bar":"DECELERATING","projected_rvol":0.386964},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":10897.0,"sell_vol":2144.0,"unclassified_vol":0.0,"imbalance":0.671191,"bid":8.36,"ask":8.37,"spread_pct":0.119546,"quote_size_imbalance":null,"quote_age_s":0.010099},"context":{"vwap":8.350446,"price_vs_vwap_pct":0.174291,"ema9":8.349615,"ema20":8.340652,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.789076,"dist_to_hod_atr":8.962691,"atr":0.026778,"spread_atr":0.373445,"own_change_pct":0.11976,"rel_strength_pct":{"SPY":0.129005,"IWM":0.179508}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.432992},"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":"97f502405b4d","ts":"2026-09-15T16:00:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3278,"target":5.4598,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":2.01},"price":5.39,"vwap":5.3897,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.768,"trend":"flat","recent_slope_pct":0.044,"volatility":"medium"},"price":5.39,"volume":{"bars":150,"last_bar_volume":11771.0,"baseline_avg":39567.3,"bar_rvol":0.297493,"raw_accel":0.038465,"smooth_accel":-0.642171,"accel_momentum":-0.546455,"rvol_3bar":[0.262348,0.267598,0.297493],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1604.0,"sell_vol":3870.0,"unclassified_vol":0.0,"imbalance":-0.413957,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":0.395243},"context":{"vwap":5.389682,"price_vs_vwap_pct":0.005909,"ema9":5.385621,"ema20":5.380408,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.882883,"dist_to_hod_atr":8.680968,"atr":0.018431,"spread_atr":0.542561,"own_change_pct":0.295814,"rel_strength_pct":{"SPY":0.295154,"IWM":0.295814}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.123149},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"65cbf75ec785","ts":"2026-09-15T16:00:20+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.35 below VWAP $8.35","plan":{"state":"PASS","setup":"","stop":8.1568,"target":8.4293,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":3.6,"room_to_5d_high_atr":3.95},"price":8.348,"vwap":8.3505,"ext_from_open_pct":-0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0256,"volatility":"high"},"price":8.348,"volume":{"bars":150,"last_bar_volume":23907.0,"baseline_avg":61036.8,"bar_rvol":0.391682,"raw_accel":-0.407465,"smooth_accel":-0.509741,"accel_momentum":-0.226518,"rvol_3bar":[0.704778,0.645111,0.391682],"trend_3bar":"DECELERATING","projected_rvol":0.619741},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":8938.0,"sell_vol":7048.0,"unclassified_vol":0.0,"imbalance":0.118228,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.718829},"context":{"vwap":8.350455,"price_vs_vwap_pct":-0.029399,"ema9":8.349932,"ema20":8.341656,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.986636,"dist_to_hod_atr":9.596977,"atr":0.026779,"spread_atr":0.373423,"own_change_pct":0.134293,"rel_strength_pct":{"SPY":0.133632,"IWM":0.134293}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.046308},"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":"26ff6eb8501f","ts":"2026-09-15T16:00:30+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1638,"target":8.4293,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":3.8,"room_to_5d_high_atr":3.94},"price":8.355,"vwap":8.3505,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"high"},"price":8.355,"volume":{"bars":150,"last_bar_volume":23907.0,"baseline_avg":61036.8,"bar_rvol":0.391682,"raw_accel":-0.407465,"smooth_accel":-0.509741,"accel_momentum":-0.226518,"rvol_3bar":[0.704778,0.645111,0.391682],"trend_3bar":"DECELERATING","projected_rvol":1.962324},"flow":{"window_s":30,"trades":184,"trade_rate":6.133333,"buy_vol":36370.0,"sell_vol":23517.0,"unclassified_vol":0.0,"imbalance":0.214621,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.353897},"context":{"vwap":8.350455,"price_vs_vwap_pct":0.054428,"ema9":8.349932,"ema20":8.341656,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.905288,"dist_to_hod_atr":9.335581,"atr":0.026779,"spread_atr":0.373423,"own_change_pct":0.134293,"rel_strength_pct":{"SPY":0.133632,"IWM":0.134293}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.084063},"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":"cec6755fc6c4","ts":"2026-09-15T16:01:00+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.35 below VWAP $8.35","plan":{"state":"PASS","setup":"","stop":8.1588,"target":8.4293,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":3.7,"room_to_5d_high_atr":3.95},"price":8.35,"vwap":8.3505,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.812,"trend":"flat","recent_slope_pct":-0.0208,"volatility":"high"},"price":8.35,"volume":{"bars":150,"last_bar_volume":23907.0,"baseline_avg":61036.8,"bar_rvol":0.391682,"raw_accel":-0.407465,"smooth_accel":-0.509741,"accel_momentum":-0.226518,"rvol_3bar":[0.704778,0.645111,0.391682],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":209,"trade_rate":6.966667,"buy_vol":36452.0,"sell_vol":24142.0,"unclassified_vol":0.0,"imbalance":0.203155,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.654183},"context":{"vwap":8.350455,"price_vs_vwap_pct":-0.005449,"ema9":8.349932,"ema20":8.341656,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.963393,"dist_to_hod_atr":9.522292,"atr":0.026779,"spread_atr":0.373423,"own_change_pct":0.134293,"rel_strength_pct":{"SPY":0.181816,"IWM":0.197695}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.079572},"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":"50cad85be6af","ts":"2026-09-15T16:01:00+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.38 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3228,"target":5.4598,"target_label":"ceiling","reward_risk":1.2,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":2.03},"price":5.385,"vwap":5.3897,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":0.0254,"volatility":"medium"},"price":5.385,"volume":{"bars":150,"last_bar_volume":11771.0,"baseline_avg":39567.3,"bar_rvol":0.297493,"raw_accel":0.038465,"smooth_accel":-0.642171,"accel_momentum":-0.546455,"rvol_3bar":[0.262348,0.267598,0.297493],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":7135.0,"sell_vol":4967.0,"unclassified_vol":0.0,"imbalance":0.179144,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":0.000542},"context":{"vwap":5.389682,"price_vs_vwap_pct":-0.086861,"ema9":5.385621,"ema20":5.380408,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.972973,"dist_to_hod_atr":8.952249,"atr":0.018431,"spread_atr":0.542561,"own_change_pct":0.295814,"rel_strength_pct":{"SPY":0.343337,"IWM":0.359216}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.053294},"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":"3b633b0be449","ts":"2026-09-15T16:01:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1688,"target":8.59,"target_label":"premarket_high","reward_risk":1.2,"pos_in_5d_range_pct":4.0,"room_to_5d_high_atr":3.94},"price":8.36,"vwap":8.3505,"ext_from_open_pct":-0.12,"max_ext_allowed_pct":4.0,"volume_pace":0.814,"trend":"flat","recent_slope_pct":-0.0086,"volatility":"high"},"price":8.36,"volume":{"bars":151,"last_bar_volume":120481.0,"baseline_avg":58655.05,"bar_rvol":2.05406,"raw_accel":4.03957,"smooth_accel":0.021414,"accel_momentum":0.531155,"rvol_3bar":[0.645111,0.391682,2.05406],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":328,"trade_rate":10.933333,"buy_vol":51507.0,"sell_vol":34252.0,"unclassified_vol":0.0,"imbalance":0.201203,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.31114},"context":{"vwap":8.350519,"price_vs_vwap_pct":0.113536,"ema9":8.349946,"ema20":8.342451,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.847182,"dist_to_hod_atr":9.070943,"atr":0.027009,"spread_atr":0.370243,"own_change_pct":0.086302,"rel_strength_pct":{"SPY":0.133825,"IWM":0.149704}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.413284},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"61d55d9a03d1","ts":"2026-09-15T16:01:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3276,"target":5.4584,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":2.01},"price":5.3898,"vwap":5.3897,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":4.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":0.0271,"volatility":"medium"},"price":5.3898,"volume":{"bars":151,"last_bar_volume":28697.0,"baseline_avg":38421.5,"bar_rvol":0.7469,"raw_accel":1.437941,"smooth_accel":-0.441754,"accel_momentum":0.200417,"rvol_3bar":[0.267598,0.297493,0.7469],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":15128.0,"sell_vol":4549.0,"unclassified_vol":0.0,"imbalance":0.537633,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":0.305085},"context":{"vwap":5.389682,"price_vs_vwap_pct":0.002197,"ema9":5.385497,"ema20":5.380846,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.886486,"dist_to_hod_atr":8.777924,"atr":0.01825,"spread_atr":0.547935,"own_change_pct":-0.277778,"rel_strength_pct":{"SPY":-0.230254,"IWM":-0.214376}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.401558},"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":"683114e3d295","ts":"2026-09-15T16:01:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.62,"target":9.94,"target_label":"ceiling","reward_risk":1.29,"pos_in_5d_range_pct":459.5,"room_to_5d_high_atr":-5.18},"price":9.76,"vwap":9.6069,"ext_from_open_pct":3.28,"max_ext_allowed_pct":5.0,"volume_pace":4.377,"trend":"flat","recent_slope_pct":0.033,"volatility":"low"},"price":9.76,"volume":{"bars":151,"last_bar_volume":5136.0,"baseline_avg":5769.75,"bar_rvol":0.89016,"raw_accel":-0.420251,"smooth_accel":4.922062,"accel_momentum":-6.35248,"rvol_3bar":[13.580591,1.630951,0.89016],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":47.0,"sell_vol":223.0,"unclassified_vol":0.0,"imbalance":-0.651852,"bid":9.7,"ask":9.77,"spread_pct":0.719055,"quote_size_imbalance":null,"quote_age_s":4.315923},"context":{"vwap":9.606943,"price_vs_vwap_pct":1.593187,"ema9":9.735075,"ema20":9.751118,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-4.313725,"dist_to_hod_atr":7.581013,"atr":0.05804,"spread_atr":1.20607,"own_change_pct":-0.043147,"rel_strength_pct":{"SPY":0.004377,"IWM":0.020255}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.580252},"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":"e9318689474f","ts":"2026-09-15T16:01:10+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3264,"target":5.4584,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":7.1,"room_to_5d_high_atr":2.01},"price":5.3886,"vwap":5.3897,"ext_from_open_pct":-1.31,"max_ext_allowed_pct":4.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":0.0226,"volatility":"medium"},"price":5.3886,"volume":{"bars":151,"last_bar_volume":28697.0,"baseline_avg":38421.5,"bar_rvol":0.7469,"raw_accel":1.437941,"smooth_accel":-0.441754,"accel_momentum":0.200417,"rvol_3bar":[0.267598,0.297493,0.7469],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":117,"trade_rate":3.9,"buy_vol":18193.0,"sell_vol":4358.0,"unclassified_vol":0.0,"imbalance":0.613498,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":0.295459},"context":{"vwap":5.389682,"price_vs_vwap_pct":-0.020068,"ema9":5.385497,"ema20":5.380846,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.908108,"dist_to_hod_atr":8.843676,"atr":0.01825,"spread_atr":0.547935,"own_change_pct":-0.277778,"rel_strength_pct":{"SPY":-0.230254,"IWM":-0.214376}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.458222},"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":"3b1957fb0419","ts":"2026-09-15T16:01:55+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1684,"target":7.07,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":48.2,"room_to_5d_high_atr":3.62},"price":6.4699,"vwap":6.4311,"ext_from_open_pct":2.13,"max_ext_allowed_pct":3.0,"volume_pace":2.627,"trend":"flat","recent_slope_pct":0.0722,"volatility":"high"},"price":6.4699,"volume":{"bars":151,"last_bar_volume":4245.0,"baseline_avg":8378.25,"bar_rvol":0.506669,"raw_accel":-0.06436,"smooth_accel":0.330014,"accel_momentum":-0.272328,"rvol_3bar":[1.526018,0.463465,0.506669],"trend_3bar":"MIXED","projected_rvol":1.601289},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":6632.0,"sell_vol":4826.0,"unclassified_vol":0.0,"imbalance":0.157619,"bid":6.43,"ask":6.47,"spread_pct":0.620155,"quote_size_imbalance":null,"quote_age_s":6.594986},"context":{"vwap":6.431018,"price_vs_vwap_pct":0.604608,"ema9":6.419883,"ema20":6.404893,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.960756,"dist_to_hod_atr":6.908833,"atr":0.059359,"spread_atr":0.673868,"own_change_pct":0.095016,"rel_strength_pct":{"SPY":0.142539,"IWM":0.158418}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.079861},"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":"97898b129750","ts":"2026-09-15T16:02:00+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":6.1385,"target":7.07,"target_label":"premarket_high","reward_risk":2.09,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.65},"price":6.44,"vwap":6.431,"ext_from_open_pct":1.66,"max_ext_allowed_pct":3.0,"volume_pace":2.626,"trend":"flat","recent_slope_pct":-0.0207,"volatility":"high"},"price":6.44,"volume":{"bars":151,"last_bar_volume":4245.0,"baseline_avg":8378.25,"bar_rvol":0.506669,"raw_accel":-0.06436,"smooth_accel":0.330014,"accel_momentum":-0.272328,"rvol_3bar":[1.526018,0.463465,0.506669],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":6732.0,"sell_vol":4805.0,"unclassified_vol":0.0,"imbalance":0.167028,"bid":6.43,"ask":6.45,"spread_pct":0.310559,"quote_size_imbalance":null,"quote_age_s":3.783671},"context":{"vwap":6.431018,"price_vs_vwap_pct":0.139674,"ema9":6.419883,"ema20":6.404893,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.395349,"dist_to_hod_atr":7.412549,"atr":0.059359,"spread_atr":0.336934,"own_change_pct":0.095016,"rel_strength_pct":{"SPY":0.096336,"IWM":0.052837}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.084628},"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":"ad35538f6e2e","ts":"2026-09-15T16:02:05+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1585,"target":7.07,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":3.63},"price":6.46,"vwap":6.431,"ext_from_open_pct":1.97,"max_ext_allowed_pct":3.0,"volume_pace":2.624,"trend":"flat","recent_slope_pct":0.1106,"volatility":"high"},"price":6.46,"volume":{"bars":152,"last_bar_volume":12478.0,"baseline_avg":7630.5,"bar_rvol":1.635279,"raw_accel":1.939458,"smooth_accel":-0.313729,"accel_momentum":-0.643743,"rvol_3bar":[0.463465,0.506669,1.635279],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1840.0,"sell_vol":4810.0,"unclassified_vol":0.0,"imbalance":-0.446617,"bid":6.43,"ask":6.46,"spread_pct":0.465477,"quote_size_imbalance":null,"quote_age_s":4.270995},"context":{"vwap":6.431039,"price_vs_vwap_pct":0.450325,"ema9":6.423906,"ema20":6.408236,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.104651,"dist_to_hod_atr":7.07016,"atr":0.059405,"spread_atr":0.505011,"own_change_pct":0.940439,"rel_strength_pct":{"SPY":0.941759,"IWM":0.89826}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.730343},"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":"4bfd00270352","ts":"2026-09-15T16:02:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1756,"target":7.47,"target_label":"prev_day_high","reward_risk":1.82,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.44},"price":7.28,"vwap":7.211,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0963,"volatility":"medium"},"price":7.28,"volume":{"bars":152,"last_bar_volume":210357.0,"baseline_avg":208237.0,"bar_rvol":1.010181,"raw_accel":-0.039974,"smooth_accel":0.342909,"accel_momentum":0.970794,"rvol_3bar":[0.250955,1.057269,1.010181],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":119,"trade_rate":3.966667,"buy_vol":42970.0,"sell_vol":20891.0,"unclassified_vol":0.0,"imbalance":0.345735,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.539675},"context":{"vwap":7.210938,"price_vs_vwap_pct":0.957741,"ema9":7.287937,"ema20":7.275155,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.682128,"dist_to_hod_atr":1.736225,"atr":0.028798,"spread_atr":0.347245,"own_change_pct":-0.478796,"rel_strength_pct":{"SPY":-0.477476,"IWM":-0.520975}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.349255},"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":"fac49d86e909","ts":"2026-09-15T16:03:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2112,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.72,"trend":"flat","recent_slope_pct":-0.0755,"volatility":"medium"},"price":7.275,"volume":{"bars":153,"last_bar_volume":83731.0,"baseline_avg":215068.55,"bar_rvol":0.389322,"raw_accel":-0.601958,"smooth_accel":1.660687,"accel_momentum":1.317778,"rvol_3bar":[1.057269,1.010181,0.389322],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":2637.0,"sell_vol":20629.0,"unclassified_vol":0.0,"imbalance":-0.773317,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":3.152825},"context":{"vwap":7.211185,"price_vs_vwap_pct":0.884942,"ema9":7.286349,"ema20":7.275616,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.933821,"atr":0.028441,"spread_atr":0.351604,"own_change_pct":-0.342231,"rel_strength_pct":{"SPY":-0.33959,"IWM":-0.387935}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.30107},"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":"feed2a8335eb","ts":"2026-09-15T16:03:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7239,"target":7.875,"target_label":"prev_day_high","reward_risk":0.28,"pos_in_5d_range_pct":18.3,"room_to_5d_high_atr":2.76},"price":7.8422,"vwap":7.8422,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":3.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.0439,"volatility":"high"},"price":7.8422,"volume":{"bars":153,"last_bar_volume":2078.0,"baseline_avg":5926.3,"bar_rvol":0.35064,"raw_accel":-0.648809,"smooth_accel":-0.385168,"accel_momentum":0.139569,"rvol_3bar":[0.272381,1.025059,0.35064],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":183.0,"sell_vol":211.0,"unclassified_vol":0.0,"imbalance":-0.071066,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.524126},"context":{"vwap":7.842184,"price_vs_vwap_pct":0.000206,"ema9":7.840675,"ema20":7.833864,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.107188,"dist_to_hod_atr":5.542044,"atr":0.015843,"spread_atr":0.631212,"own_change_pct":0.403658,"rel_strength_pct":{"SPY":0.4063,"IWM":0.357955}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.024919},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"32bb446a42fe","ts":"2026-09-15T16:03:40+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.35 below VWAP $8.35","plan":{"state":"PASS","setup":"","stop":8.1588,"target":8.405,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":3.7,"room_to_5d_high_atr":3.95},"price":8.35,"vwap":8.3506,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0012,"volatility":"high"},"price":8.35,"volume":{"bars":153,"last_bar_volume":31134.0,"baseline_avg":63561.0,"bar_rvol":0.489829,"raw_accel":-0.602381,"smooth_accel":1.060475,"accel_momentum":0.638496,"rvol_3bar":[2.05406,1.231305,0.489829],"trend_3bar":"DECELERATING","projected_rvol":0.971563},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":8879.0,"sell_vol":21094.0,"unclassified_vol":0.0,"imbalance":-0.407533,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":1.50654},"context":{"vwap":8.350555,"price_vs_vwap_pct":-0.006648,"ema9":8.350389,"ema20":8.344031,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.963393,"dist_to_hod_atr":10.076461,"atr":0.025307,"spread_atr":0.395155,"own_change_pct":-0.086139,"rel_strength_pct":{"SPY":-0.083498,"IWM":-0.131843}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.199622},"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":"8179fce58ad3","ts":"2026-09-15T16:03:45+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1638,"target":8.59,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":3.8,"room_to_5d_high_atr":3.94},"price":8.355,"vwap":8.3506,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":0.0108,"volatility":"high"},"price":8.355,"volume":{"bars":153,"last_bar_volume":31134.0,"baseline_avg":63561.0,"bar_rvol":0.489829,"raw_accel":-0.602381,"smooth_accel":1.060475,"accel_momentum":0.638496,"rvol_3bar":[2.05406,1.231305,0.489829],"trend_3bar":"DECELERATING","projected_rvol":0.97972},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":14212.0,"sell_vol":21048.0,"unclassified_vol":0.0,"imbalance":-0.193874,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.194369},"context":{"vwap":8.350555,"price_vs_vwap_pct":0.053228,"ema9":8.350389,"ema20":8.344031,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.905288,"dist_to_hod_atr":9.878883,"atr":0.025307,"spread_atr":0.395155,"own_change_pct":-0.086139,"rel_strength_pct":{"SPY":-0.083498,"IWM":-0.131843}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.094965},"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":"a64f4b1c048c","ts":"2026-09-15T16:04:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says WATCH; stop 7.17, target 7.30 (premarket_high), R:R 0.28; R:R 0.28 < 2.0 at 7.27; pullback: buy 7.23-7.25 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":7.1656,"target":7.2991,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":31.5,"room_to_5d_high_atr":1.46},"price":7.27,"vwap":7.2114,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":-0.0344,"volatility":"medium"},"price":7.27,"volume":{"bars":154,"last_bar_volume":75884.0,"baseline_avg":214525.5,"bar_rvol":0.35373,"raw_accel":-0.093717,"smooth_accel":0.15089,"accel_momentum":-1.509797,"rvol_3bar":[1.010181,0.389322,0.35373],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":12417.0,"sell_vol":12497.0,"unclassified_vol":0.0,"imbalance":-0.003211,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.160053},"context":{"vwap":7.211408,"price_vs_vwap_pct":0.81249,"ema9":7.28508,"ema20":7.276034,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.818554,"dist_to_hod_atr":2.133418,"atr":0.028124,"spread_atr":0.35557,"own_change_pct":-0.309479,"rel_strength_pct":{"SPY":-0.325329,"IWM":-0.406187}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001136},"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":"93c7c1a8a265","ts":"2026-09-15T16:04:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 405.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 6.01 on >= 109272 sh","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9466,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":1.55,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":5.96,"volume":{"bars":154,"last_bar_volume":56838.0,"baseline_avg":58429.75,"bar_rvol":0.972758,"raw_accel":2.891032,"smooth_accel":0.200454,"accel_momentum":0.705012,"rvol_3bar":[0.641266,0.183068,0.972758],"trend_3bar":"MIXED","projected_rvol":0.193309},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":4110.0,"sell_vol":879.0,"unclassified_vol":0.0,"imbalance":0.647625,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.701474},"context":{"vwap":5.946574,"price_vs_vwap_pct":0.225772,"ema9":5.954873,"ema20":5.949603,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":6.459417,"atr":0.017029,"spread_atr":0.58722,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.01585,"IWM":-0.096708}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.629982},"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":"74b7b7cd0ca8","ts":"2026-09-15T16:04:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 80.0s, plan says PASS; stop 7.18, target 7.47 (prev_day_high), R:R 1.77; target 0.18 away > ~0.15 reachable in 231 min","plan":{"state":"PASS","setup":"","stop":7.1812,"target":7.47,"target_label":"prev_day_high","reward_risk":1.77,"pos_in_5d_range_pct":33.2,"room_to_5d_high_atr":1.42},"price":7.2856,"vwap":7.2114,"ext_from_open_pct":1.9,"max_ext_allowed_pct":4.0,"volume_pace":0.716,"trend":"flat","recent_slope_pct":0.0085,"volatility":"medium"},"price":7.2856,"volume":{"bars":154,"last_bar_volume":75884.0,"baseline_avg":214525.5,"bar_rvol":0.35373,"raw_accel":-0.093717,"smooth_accel":0.15089,"accel_momentum":-1.509797,"rvol_3bar":[1.010181,0.389322,0.35373],"trend_3bar":"DECELERATING","projected_rvol":0.074799},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":4738.0,"sell_vol":5806.0,"unclassified_vol":0.0,"imbalance":-0.10129,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.45253},"context":{"vwap":7.211408,"price_vs_vwap_pct":1.028814,"ema9":7.28508,"ema20":7.276034,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.60573,"dist_to_hod_atr":1.578729,"atr":0.028124,"spread_atr":0.35557,"own_change_pct":-0.309479,"rel_strength_pct":{"SPY":-0.325329,"IWM":-0.406187}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.035829},"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":"8bddcca55358","ts":"2026-09-15T16:04:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.0s, plan says WATCH; stop 7.17, target 7.30 (premarket_high), R:R 0.23; no reclaim yet (needs a close > 7.29); R:R 0.23 < 2.0 at 7.28; pullback: buy 7.27-7.29 holding + reclaim/fading selling/","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2114,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.716,"trend":"flat","recent_slope_pct":-0.0206,"volatility":"medium"},"price":7.275,"volume":{"bars":154,"last_bar_volume":75884.0,"baseline_avg":214525.5,"bar_rvol":0.35373,"raw_accel":-0.093717,"smooth_accel":0.15089,"accel_momentum":-1.509797,"rvol_3bar":[1.010181,0.389322,0.35373],"trend_3bar":"DECELERATING","projected_rvol":0.064281},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1006.0,"sell_vol":5889.0,"unclassified_vol":0.0,"imbalance":-0.708194,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.329829},"context":{"vwap":7.211408,"price_vs_vwap_pct":0.881825,"ema9":7.28508,"ema20":7.276034,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.955633,"atr":0.028124,"spread_atr":0.35557,"own_change_pct":-0.309479,"rel_strength_pct":{"SPY":-0.325329,"IWM":-0.406187}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.250509},"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":"fcf06d700610","ts":"2026-09-15T16:04:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 420.0s, plan says PASS; stop 5.87, target 6.00 (ceiling), R:R 0.56; R:R 0.56 < 2.0 at 5.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.8669,"target":5.9962,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9466,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.548,"trend":"flat","recent_slope_pct":-0.0252,"volatility":"medium"},"price":5.95,"volume":{"bars":154,"last_bar_volume":56838.0,"baseline_avg":58429.75,"bar_rvol":0.972758,"raw_accel":2.891032,"smooth_accel":0.200454,"accel_momentum":0.705012,"rvol_3bar":[0.641266,0.183068,0.972758],"trend_3bar":"MIXED","projected_rvol":0.330155},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":9337.0,"sell_vol":1503.0,"unclassified_vol":0.0,"imbalance":0.722694,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.524982},"context":{"vwap":5.946574,"price_vs_vwap_pct":0.057608,"ema9":5.954873,"ema20":5.949603,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":7.046637,"atr":0.017029,"spread_atr":0.58722,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.01585,"IWM":-0.096708}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.703006},"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":"19b59dd943f6","ts":"2026-09-15T16:04:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 425.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.85; R:R 0.85 < 2.0 at 5.96; breakout: 1-min close > 6.01 on >= 109272 sh","plan":{"state":"WATCH","setup":"","stop":5.876,"target":6.03,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":103.9,"room_to_5d_high_atr":-0.09},"price":5.9591,"vwap":5.9466,"ext_from_open_pct":0.83,"max_ext_allowed_pct":4.0,"volume_pace":1.547,"trend":"flat","recent_slope_pct":0.0054,"volatility":"medium"},"price":5.9591,"volume":{"bars":154,"last_bar_volume":56838.0,"baseline_avg":58429.75,"bar_rvol":0.972758,"raw_accel":2.891032,"smooth_accel":0.200454,"accel_momentum":0.705012,"rvol_3bar":[0.641266,0.183068,0.972758],"trend_3bar":"MIXED","projected_rvol":0.340203},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":10704.0,"sell_vol":1583.0,"unclassified_vol":0.0,"imbalance":0.742329,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":1.348521},"context":{"vwap":5.946574,"price_vs_vwap_pct":0.210637,"ema9":5.954873,"ema20":5.949603,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.827018,"dist_to_hod_atr":6.512267,"atr":0.017029,"spread_atr":0.58722,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.01585,"IWM":-0.096708}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.722107},"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":"784214df1bae","ts":"2026-09-15T16:04:40+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7217,"target":7.875,"target_label":"prev_day_high","reward_risk":0.3,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":2.77},"price":7.84,"vwap":7.8422,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.0191,"volatility":"high"},"price":7.84,"volume":{"bars":154,"last_bar_volume":355.0,"baseline_avg":5570.35,"bar_rvol":0.06373,"raw_accel":-0.829163,"smooth_accel":-0.110756,"accel_momentum":0.274412,"rvol_3bar":[1.025059,0.35064,0.06373],"trend_3bar":"DECELERATING","projected_rvol":4.670981},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":11828.0,"sell_vol":5516.0,"unclassified_vol":0.0,"imbalance":0.36393,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.633542},"context":{"vwap":7.842186,"price_vs_vwap_pct":-0.027878,"ema9":7.84454,"ema20":7.836353,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.134931,"dist_to_hod_atr":5.631212,"atr":0.015982,"spread_atr":0.62569,"own_change_pct":0.378014,"rel_strength_pct":{"SPY":0.362164,"IWM":0.281305}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.023193},"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":"a5f52f16f14d","ts":"2026-09-15T16:04:45+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.43","plan":{"state":"PASS","setup":"","stop":6.1285,"target":7.07,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.43,"vwap":6.4312,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":2.596,"trend":"flat","recent_slope_pct":0.0298,"volatility":"high"},"price":6.43,"volume":{"bars":154,"last_bar_volume":17994.0,"baseline_avg":8004.05,"bar_rvol":2.248112,"raw_accel":1.628012,"smooth_accel":0.486102,"accel_momentum":0.774147,"rvol_3bar":[1.635279,0.869378,2.248112],"trend_3bar":"MIXED","projected_rvol":1.499574},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1291.0,"sell_vol":859.0,"unclassified_vol":0.0,"imbalance":0.20093,"bid":6.42,"ask":6.48,"spread_pct":0.930233,"quote_size_imbalance":null,"quote_age_s":14.654853},"context":{"vwap":6.431164,"price_vs_vwap_pct":-0.018101,"ema9":6.436556,"ema20":6.417549,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.540698,"dist_to_hod_atr":8.13805,"atr":0.055296,"spread_atr":1.085073,"own_change_pct":0.342178,"rel_strength_pct":{"SPY":0.326328,"IWM":0.24547}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.451714},"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":"ba83ef5cc7f1","ts":"2026-09-15T16:04:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 430.0s, plan says PASS; stop 5.87, target 6.00 (ceiling), R:R 0.55; R:R 0.55 < 2.0 at 5.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.8674,"target":5.9962,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":102.8,"room_to_5d_high_atr":-0.06},"price":5.9505,"vwap":5.9466,"ext_from_open_pct":0.69,"max_ext_allowed_pct":4.0,"volume_pace":1.549,"trend":"flat","recent_slope_pct":-0.0235,"volatility":"medium"},"price":5.9505,"volume":{"bars":154,"last_bar_volume":56838.0,"baseline_avg":58429.75,"bar_rvol":0.972758,"raw_accel":2.891032,"smooth_accel":0.200454,"accel_momentum":0.705012,"rvol_3bar":[0.641266,0.183068,0.972758],"trend_3bar":"MIXED","projected_rvol":0.970396},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":38627.0,"sell_vol":2514.0,"unclassified_vol":0.0,"imbalance":0.877786,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.298738},"context":{"vwap":5.946574,"price_vs_vwap_pct":0.066016,"ema9":5.954873,"ema20":5.949603,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.968699,"dist_to_hod_atr":7.017276,"atr":0.017029,"spread_atr":0.58722,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.01585,"IWM":-0.096708}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.853873},"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":"0f2b80dac782","ts":"2026-09-15T16:04:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8422,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.0318,"volatility":"high"},"price":7.845,"volume":{"bars":154,"last_bar_volume":355.0,"baseline_avg":5570.35,"bar_rvol":0.06373,"raw_accel":-0.829163,"smooth_accel":-0.110756,"accel_momentum":0.274412,"rvol_3bar":[1.025059,0.35064,0.06373],"trend_3bar":"DECELERATING","projected_rvol":4.152223},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":11814.0,"sell_vol":5516.0,"unclassified_vol":0.0,"imbalance":0.363416,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.820706},"context":{"vwap":7.842186,"price_vs_vwap_pct":0.03588,"ema9":7.84454,"ema20":7.836353,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":5.318367,"atr":0.015982,"spread_atr":0.62569,"own_change_pct":0.378014,"rel_strength_pct":{"SPY":0.362164,"IWM":0.281305}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.023161},"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":"4e1741f2adb3","ts":"2026-09-15T16:04:50+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1758,"target":7.07,"target_label":"premarket_high","reward_risk":1.97,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":3.62},"price":6.4773,"vwap":6.4312,"ext_from_open_pct":2.25,"max_ext_allowed_pct":3.0,"volume_pace":2.595,"trend":"flat","recent_slope_pct":0.1764,"volatility":"high"},"price":6.4773,"volume":{"bars":154,"last_bar_volume":17994.0,"baseline_avg":8004.05,"bar_rvol":2.248112,"raw_accel":1.628012,"smooth_accel":0.486102,"accel_momentum":0.774147,"rvol_3bar":[1.635279,0.869378,2.248112],"trend_3bar":"MIXED","projected_rvol":1.354264},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1262.0,"sell_vol":763.0,"unclassified_vol":0.0,"imbalance":0.24642,"bid":6.42,"ask":6.48,"spread_pct":0.930233,"quote_size_imbalance":null,"quote_age_s":19.654853},"context":{"vwap":6.431164,"price_vs_vwap_pct":0.717381,"ema9":6.436556,"ema20":6.417549,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-5.853198,"dist_to_hod_atr":7.28265,"atr":0.055296,"spread_atr":1.085073,"own_change_pct":0.342178,"rel_strength_pct":{"SPY":0.326328,"IWM":0.24547}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.553979},"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":"92bc04434211","ts":"2026-09-15T16:04:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 435.0s, plan says WATCH; stop 5.89, target 6.03 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 5.97; breakout: 1-min close > 6.01 on >= 109272 sh","plan":{"state":"WATCH","setup":"","stop":5.8869,"target":6.03,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.12},"price":5.97,"vwap":5.9466,"ext_from_open_pct":1.02,"max_ext_allowed_pct":4.0,"volume_pace":1.548,"trend":"flat","recent_slope_pct":0.042,"volatility":"medium"},"price":5.97,"volume":{"bars":154,"last_bar_volume":56838.0,"baseline_avg":58429.75,"bar_rvol":0.972758,"raw_accel":2.891032,"smooth_accel":0.200454,"accel_momentum":0.705012,"rvol_3bar":[0.641266,0.183068,0.972758],"trend_3bar":"MIXED","projected_rvol":0.873767},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":36266.0,"sell_vol":2514.0,"unclassified_vol":0.0,"imbalance":0.870346,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.225291},"context":{"vwap":5.946574,"price_vs_vwap_pct":0.393936,"ema9":5.954873,"ema20":5.949603,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.647446,"dist_to_hod_atr":5.872197,"atr":0.017029,"spread_atr":0.58722,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.01585,"IWM":-0.096708}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.846635},"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":"c413d39b161c","ts":"2026-09-15T16:04:50+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 105.0s, plan says PASS; stop 7.18, target 7.47 (prev_day_high), R:R 1.78; target 0.19 away > ~0.15 reachable in 230 min","plan":{"state":"PASS","setup":"","stop":7.1793,"target":7.47,"target_label":"prev_day_high","reward_risk":1.78,"pos_in_5d_range_pct":33.0,"room_to_5d_high_atr":1.43},"price":7.2837,"vwap":7.2115,"ext_from_open_pct":1.87,"max_ext_allowed_pct":3.0,"volume_pace":0.715,"trend":"flat","recent_slope_pct":0.0033,"volatility":"medium"},"price":7.2837,"volume":{"bars":154,"last_bar_volume":75884.0,"baseline_avg":214525.5,"bar_rvol":0.35373,"raw_accel":-0.093717,"smooth_accel":0.15089,"accel_momentum":-1.509797,"rvol_3bar":[1.010181,0.389322,0.35373],"trend_3bar":"DECELERATING","projected_rvol":0.133998},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2743.0,"sell_vol":17365.0,"unclassified_vol":0.0,"imbalance":-0.727173,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.668914},"context":{"vwap":7.211408,"price_vs_vwap_pct":1.002467,"ema9":7.28508,"ema20":7.276034,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.631651,"dist_to_hod_atr":1.646287,"atr":0.028124,"spread_atr":0.35557,"own_change_pct":-0.309479,"rel_strength_pct":{"SPY":-0.325329,"IWM":-0.406187}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.257223},"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":"8658c462d5f5","ts":"2026-09-15T16:04:55+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.35 below VWAP $8.35","plan":{"state":"PASS","setup":"","stop":8.1588,"target":8.405,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":3.7,"room_to_5d_high_atr":3.95},"price":8.35,"vwap":8.3506,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":0.0049,"volatility":"high"},"price":8.35,"volume":{"bars":154,"last_bar_volume":55056.0,"baseline_avg":62848.9,"bar_rvol":0.876006,"raw_accel":0.768356,"smooth_accel":-0.109584,"accel_momentum":-1.170059,"rvol_3bar":[1.231305,0.489829,0.876006],"trend_3bar":"MIXED","projected_rvol":1.038595},"flow":{"window_s":30,"trades":203,"trade_rate":6.766667,"buy_vol":16425.0,"sell_vol":20673.0,"unclassified_vol":0.0,"imbalance":-0.114508,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.006207},"context":{"vwap":8.350577,"price_vs_vwap_pct":-0.006915,"ema9":8.351311,"ema20":8.345076,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.963393,"dist_to_hod_atr":10.500477,"atr":0.024285,"spread_atr":0.411783,"own_change_pct":-0.059809,"rel_strength_pct":{"SPY":-0.075658,"IWM":-0.156517}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.100309},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0a78a1c3d56b","ts":"2026-09-15T16:05:00+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1652,"target":8.59,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":3.9,"room_to_5d_high_atr":3.94},"price":8.3564,"vwap":8.3506,"ext_from_open_pct":-0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":0.0202,"volatility":"high"},"price":8.3564,"volume":{"bars":154,"last_bar_volume":55056.0,"baseline_avg":62848.9,"bar_rvol":0.876006,"raw_accel":0.768356,"smooth_accel":-0.109584,"accel_momentum":-1.170059,"rvol_3bar":[1.231305,0.489829,0.876006],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":206,"trade_rate":6.866667,"buy_vol":16506.0,"sell_vol":20276.0,"unclassified_vol":0.0,"imbalance":-0.102496,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.976495},"context":{"vwap":8.350577,"price_vs_vwap_pct":0.069727,"ema9":8.351311,"ema20":8.345076,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.889018,"dist_to_hod_atr":10.236936,"atr":0.024285,"spread_atr":0.411783,"own_change_pct":-0.059809,"rel_strength_pct":{"SPY":-0.088206,"IWM":-0.13012}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.089787},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c8c06b5b7b5f","ts":"2026-09-15T16:05:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.6521,"target":7.83,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":0.75},"price":7.74,"vwap":7.7244,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.579,"trend":"flat","recent_slope_pct":-0.0161,"volatility":"medium"},"price":7.74,"volume":{"bars":155,"last_bar_volume":433.0,"baseline_avg":13224.4,"bar_rvol":0.032743,"raw_accel":-0.917696,"smooth_accel":0.062886,"accel_momentum":0.253752,"rvol_3bar":[1.727208,0.382155,0.032743],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":32.0,"sell_vol":206.0,"unclassified_vol":0.0,"imbalance":-0.731092,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":0.892433},"context":{"vwap":7.724433,"price_vs_vwap_pct":0.201529,"ema9":7.748102,"ema20":7.737125,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.896287,"dist_to_hod_atr":3.342506,"atr":0.020942,"spread_atr":0.477501,"own_change_pct":0.042589,"rel_strength_pct":{"SPY":0.014192,"IWM":-0.027722}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.023938},"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":"a3056a79a71d","ts":"2026-09-15T16:05:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.165,"target":8.59,"target_label":"premarket_high","reward_risk":1.22,"pos_in_5d_range_pct":3.9,"room_to_5d_high_atr":3.94},"price":8.3562,"vwap":8.3506,"ext_from_open_pct":-0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":0.0187,"volatility":"high"},"price":8.3562,"volume":{"bars":155,"last_bar_volume":60354.0,"baseline_avg":63649.75,"bar_rvol":0.948221,"raw_accel":0.096229,"smooth_accel":-0.341934,"accel_momentum":-0.23235,"rvol_3bar":[0.489829,0.876006,0.948221],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":7618.0,"sell_vol":17433.0,"unclassified_vol":0.0,"imbalance":-0.391801,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.636555},"context":{"vwap":8.350594,"price_vs_vwap_pct":0.067135,"ema9":8.352329,"ema20":8.346154,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.891342,"dist_to_hod_atr":10.532811,"atr":0.023621,"spread_atr":0.423344,"own_change_pct":0.062267,"rel_strength_pct":{"SPY":0.033869,"IWM":-0.008045}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.371513},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fd828e049a62","ts":"2026-09-15T16:05:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 125.0s, plan says WATCH; stop 7.17, target 7.30 (premarket_high), R:R 0.23; no reclaim yet (needs a close > 7.29); R:R 0.23 < 2.0 at 7.28; pullback: buy 7.27-7.29 holding + reclaim/fading selling","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2115,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.714,"trend":"flat","recent_slope_pct":0.0048,"volatility":"medium"},"price":7.275,"volume":{"bars":155,"last_bar_volume":33074.0,"baseline_avg":203718.25,"bar_rvol":0.162352,"raw_accel":-0.564151,"smooth_accel":-0.600822,"accel_momentum":-0.751712,"rvol_3bar":[0.389322,0.35373,0.162352],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":8324.0,"sell_vol":15688.0,"unclassified_vol":0.0,"imbalance":-0.30668,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.530475},"context":{"vwap":7.211506,"price_vs_vwap_pct":0.880448,"ema9":7.284764,"ema20":7.276745,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.974812,"atr":0.027851,"spread_atr":0.359057,"own_change_pct":-0.226027,"rel_strength_pct":{"SPY":-0.254425,"IWM":-0.296339}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.04979},"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":"b90ea1ff1c3e","ts":"2026-09-15T16:05:15+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.43","plan":{"state":"PASS","setup":"","stop":6.1254,"target":7.07,"target_label":"premarket_high","reward_risk":2.13,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.4269,"vwap":6.4312,"ext_from_open_pct":1.45,"max_ext_allowed_pct":4.0,"volume_pace":2.588,"trend":"flat","recent_slope_pct":-0.0271,"volatility":"high"},"price":6.4269,"volume":{"bars":155,"last_bar_volume":10153.0,"baseline_avg":8341.65,"bar_rvol":1.217145,"raw_accel":-0.435756,"smooth_accel":0.646002,"accel_momentum":0.1599,"rvol_3bar":[0.869378,2.248112,1.217145],"trend_3bar":"MIXED","projected_rvol":0.063297},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1059.0,"sell_vol":224.0,"unclassified_vol":0.0,"imbalance":0.650818,"bid":6.42,"ask":6.47,"spread_pct":0.775795,"quote_size_imbalance":null,"quote_age_s":3.238563},"context":{"vwap":6.431217,"price_vs_vwap_pct":-0.067129,"ema9":6.444705,"ema20":6.423239,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.585756,"dist_to_hod_atr":8.172953,"atr":0.055439,"spread_atr":0.901893,"own_change_pct":0.735614,"rel_strength_pct":{"SPY":0.707217,"IWM":0.665303}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.792141},"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":"81a35c1530c6","ts":"2026-09-15T16:05:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 460.0s, plan says PASS; stop 5.87, target 6.00 (ceiling), R:R 0.55; R:R 0.55 < 2.0 at 5.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.8677,"target":5.9962,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":102.8,"room_to_5d_high_atr":-0.06},"price":5.9508,"vwap":5.9466,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":1.544,"trend":"flat","recent_slope_pct":-0.0141,"volatility":"medium"},"price":5.9508,"volume":{"bars":155,"last_bar_volume":44018.0,"baseline_avg":58653.65,"bar_rvol":0.750473,"raw_accel":-0.225553,"smooth_accel":0.367278,"accel_momentum":0.166824,"rvol_3bar":[0.183068,0.972758,0.750473],"trend_3bar":"MIXED","projected_rvol":0.331369},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":4154.0,"sell_vol":2198.0,"unclassified_vol":0.0,"imbalance":0.307935,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.899534},"context":{"vwap":5.946611,"price_vs_vwap_pct":0.070451,"ema9":5.956899,"ema20":5.951069,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.963756,"dist_to_hod_atr":6.90208,"atr":0.01727,"spread_atr":0.579034,"own_change_pct":0.167926,"rel_strength_pct":{"SPY":0.139529,"IWM":0.097615}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.231097},"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":"cb7fced594bd","ts":"2026-09-15T16:05:20+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1435,"target":7.07,"target_label":"premarket_high","reward_risk":2.07,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":3.64},"price":6.445,"vwap":6.4312,"ext_from_open_pct":1.74,"max_ext_allowed_pct":4.0,"volume_pace":2.587,"trend":"flat","recent_slope_pct":0.029,"volatility":"high"},"price":6.445,"volume":{"bars":155,"last_bar_volume":10153.0,"baseline_avg":8341.65,"bar_rvol":1.217145,"raw_accel":-0.435756,"smooth_accel":0.646002,"accel_momentum":0.1599,"rvol_3bar":[0.869378,2.248112,1.217145],"trend_3bar":"MIXED","projected_rvol":0.065455},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1086.0,"sell_vol":216.0,"unclassified_vol":0.0,"imbalance":0.668203,"bid":6.42,"ask":6.47,"spread_pct":0.775795,"quote_size_imbalance":null,"quote_age_s":8.238563},"context":{"vwap":6.431217,"price_vs_vwap_pct":0.21431,"ema9":6.444705,"ema20":6.423239,"ema_stack":true,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.322674,"dist_to_hod_atr":7.846468,"atr":0.055439,"spread_atr":0.901893,"own_change_pct":0.735614,"rel_strength_pct":{"SPY":0.707217,"IWM":0.665303}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.8133},"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":"9af866871a7e","ts":"2026-09-15T16:05:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 465.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.78; R:R 0.78 < 2.0 at 5.96; breakout: 1-min close > 6.01 on >= 108572 sh","plan":{"state":"WATCH","setup":"","stop":5.8819,"target":6.03,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":104.7,"room_to_5d_high_atr":-0.11},"price":5.965,"vwap":5.9466,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":1.544,"trend":"flat","recent_slope_pct":0.0336,"volatility":"medium"},"price":5.965,"volume":{"bars":155,"last_bar_volume":44018.0,"baseline_avg":58653.65,"bar_rvol":0.750473,"raw_accel":-0.225553,"smooth_accel":0.367278,"accel_momentum":0.166824,"rvol_3bar":[0.183068,0.972758,0.750473],"trend_3bar":"MIXED","projected_rvol":0.621189},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":11170.0,"sell_vol":2448.0,"unclassified_vol":0.0,"imbalance":0.640476,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.102903},"context":{"vwap":5.946611,"price_vs_vwap_pct":0.309242,"ema9":5.956899,"ema20":5.951069,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.729819,"dist_to_hod_atr":6.079852,"atr":0.01727,"spread_atr":0.579034,"own_change_pct":0.167926,"rel_strength_pct":{"SPY":0.139529,"IWM":0.097615}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.48066},"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":"5f4af74cb4de","ts":"2026-09-15T16:05:20+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7227,"target":7.875,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":18.2,"room_to_5d_high_atr":2.77},"price":7.841,"vwap":7.8422,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.084,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"high"},"price":7.841,"volume":{"bars":155,"last_bar_volume":24306.0,"baseline_avg":5405.15,"bar_rvol":4.496822,"raw_accel":16.98729,"smooth_accel":2.290144,"accel_momentum":2.4009,"rvol_3bar":[0.35064,0.06373,4.496822],"trend_3bar":"MIXED","projected_rvol":2.422689},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":3490.0,"sell_vol":914.0,"unclassified_vol":0.0,"imbalance":0.584923,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.6748},"context":{"vwap":7.842248,"price_vs_vwap_pct":-0.015909,"ema9":7.844632,"ema20":7.837176,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.12232,"dist_to_hod_atr":5.470418,"atr":0.016269,"spread_atr":0.614654,"own_change_pct":0.127632,"rel_strength_pct":{"SPY":0.099235,"IWM":0.057321}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.630294},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"54f152c2ff03","ts":"2026-09-15T16:05:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 135.0s, plan says PASS; stop 7.17, target 7.47 (prev_day_high), R:R 1.83; target 0.19 away > ~0.15 reachable in 230 min","plan":{"state":"PASS","setup":"","stop":7.175,"target":7.47,"target_label":"prev_day_high","reward_risk":1.83,"pos_in_5d_range_pct":32.5,"room_to_5d_high_atr":1.44},"price":7.2794,"vwap":7.2115,"ext_from_open_pct":1.81,"max_ext_allowed_pct":4.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":0.0169,"volatility":"medium"},"price":7.2794,"volume":{"bars":155,"last_bar_volume":33074.0,"baseline_avg":203718.25,"bar_rvol":0.162352,"raw_accel":-0.564151,"smooth_accel":-0.600822,"accel_momentum":-0.751712,"rvol_3bar":[0.389322,0.35373,0.162352],"trend_3bar":"DECELERATING","projected_rvol":0.206712},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":17594.0,"sell_vol":5562.0,"unclassified_vol":0.0,"imbalance":0.519606,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.110811},"context":{"vwap":7.211506,"price_vs_vwap_pct":0.941461,"ema9":7.284764,"ema20":7.276745,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.690314,"dist_to_hod_atr":1.816827,"atr":0.027851,"spread_atr":0.359057,"own_change_pct":-0.226027,"rel_strength_pct":{"SPY":-0.254425,"IWM":-0.296339}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.084359},"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":"c4447eb418b1","ts":"2026-09-15T16:05:25+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.43","plan":{"state":"PASS","setup":"","stop":6.1238,"target":7.07,"target_label":"premarket_high","reward_risk":2.14,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.4253,"vwap":6.4312,"ext_from_open_pct":1.43,"max_ext_allowed_pct":3.0,"volume_pace":2.586,"trend":"flat","recent_slope_pct":-0.0321,"volatility":"high"},"price":6.4253,"volume":{"bars":155,"last_bar_volume":10153.0,"baseline_avg":8341.65,"bar_rvol":1.217145,"raw_accel":-0.435756,"smooth_accel":0.646002,"accel_momentum":0.1599,"rvol_3bar":[0.869378,2.248112,1.217145],"trend_3bar":"MIXED","projected_rvol":0.139828},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1071.0,"sell_vol":419.0,"unclassified_vol":0.0,"imbalance":0.437584,"bid":6.42,"ask":6.45,"spread_pct":0.4662,"quote_size_imbalance":null,"quote_age_s":1.238291},"context":{"vwap":6.431217,"price_vs_vwap_pct":-0.092008,"ema9":6.444705,"ema20":6.423239,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.609012,"dist_to_hod_atr":8.201813,"atr":0.055439,"spread_atr":0.541136,"own_change_pct":0.735614,"rel_strength_pct":{"SPY":0.707217,"IWM":0.665303}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.532603},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c1fed984713","ts":"2026-09-15T16:05:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7259,"target":7.875,"target_label":"prev_day_high","reward_risk":0.26,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.8442,"vwap":7.8423,"ext_from_open_pct":-0.71,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":-0.0211,"volatility":"high"},"price":7.8442,"volume":{"bars":155,"last_bar_volume":24306.0,"baseline_avg":5405.15,"bar_rvol":4.496822,"raw_accel":16.98729,"smooth_accel":2.290144,"accel_momentum":2.4009,"rvol_3bar":[0.35064,0.06373,4.496822],"trend_3bar":"MIXED","projected_rvol":1.972341},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":3528.0,"sell_vol":914.0,"unclassified_vol":0.0,"imbalance":0.588474,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.502778},"context":{"vwap":7.842248,"price_vs_vwap_pct":0.024896,"ema9":7.844632,"ema20":7.837176,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.081967,"dist_to_hod_atr":5.273729,"atr":0.016269,"spread_atr":0.614654,"own_change_pct":0.127632,"rel_strength_pct":{"SPY":0.099235,"IWM":0.057321}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.646262},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2ef386e1f8f1","ts":"2026-09-15T16:05:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 140.0s, plan says WATCH; stop 7.17, target 7.30 (premarket_high), R:R 0.23; no reclaim yet (needs a close > 7.29); R:R 0.23 < 2.0 at 7.28; pullback: buy 7.27-7.29 holding + reclaim/fading selling","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2115,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.713,"trend":"flat","recent_slope_pct":0.0048,"volatility":"medium"},"price":7.275,"volume":{"bars":155,"last_bar_volume":33074.0,"baseline_avg":203718.25,"bar_rvol":0.162352,"raw_accel":-0.564151,"smooth_accel":-0.600822,"accel_momentum":-0.751712,"rvol_3bar":[0.389322,0.35373,0.162352],"trend_3bar":"DECELERATING","projected_rvol":0.165405},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":9986.0,"sell_vol":4361.0,"unclassified_vol":0.0,"imbalance":0.392068,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.760786},"context":{"vwap":7.211506,"price_vs_vwap_pct":0.880448,"ema9":7.284764,"ema20":7.276745,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.974812,"atr":0.027851,"spread_atr":0.359057,"own_change_pct":-0.226027,"rel_strength_pct":{"SPY":-0.254425,"IWM":-0.296339}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.063653},"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":"8399f087291d","ts":"2026-09-15T16:05:35+00:00","symbol":"TNON","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":6.1335,"target":7.07,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":47.8,"room_to_5d_high_atr":3.65},"price":6.435,"vwap":6.4312,"ext_from_open_pct":1.58,"max_ext_allowed_pct":3.0,"volume_pace":2.583,"trend":"flat","recent_slope_pct":-0.002,"volatility":"high"},"price":6.435,"volume":{"bars":155,"last_bar_volume":10153.0,"baseline_avg":8341.65,"bar_rvol":1.217145,"raw_accel":-0.435756,"smooth_accel":0.646002,"accel_momentum":0.1599,"rvol_3bar":[0.869378,2.248112,1.217145],"trend_3bar":"MIXED","projected_rvol":0.157215},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":175.0,"sell_vol":459.0,"unclassified_vol":0.0,"imbalance":-0.44795,"bid":6.42,"ask":6.45,"spread_pct":0.4662,"quote_size_imbalance":null,"quote_age_s":11.238291},"context":{"vwap":6.431217,"price_vs_vwap_pct":0.058819,"ema9":6.444705,"ema20":6.423239,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.468023,"dist_to_hod_atr":8.026846,"atr":0.055439,"spread_atr":0.541136,"own_change_pct":0.735614,"rel_strength_pct":{"SPY":0.707217,"IWM":0.665303}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.54522},"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":"efbbdaa8f859","ts":"2026-09-15T16:05:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 490.0s, plan says PASS; stop 5.87, target 6.00 (ceiling), R:R 0.50; R:R 0.50 < 2.0 at 5.95; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.8718,"target":5.9962,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.07},"price":5.9549,"vwap":5.9466,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.54,"trend":"flat","recent_slope_pct":-0.0003,"volatility":"medium"},"price":5.9549,"volume":{"bars":155,"last_bar_volume":44018.0,"baseline_avg":58653.65,"bar_rvol":0.750473,"raw_accel":-0.225553,"smooth_accel":0.367278,"accel_momentum":0.166824,"rvol_3bar":[0.183068,0.972758,0.750473],"trend_3bar":"MIXED","projected_rvol":0.308819},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":7285.0,"sell_vol":1441.0,"unclassified_vol":0.0,"imbalance":0.669723,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":1.577975},"context":{"vwap":5.946611,"price_vs_vwap_pct":0.139398,"ema9":5.956899,"ema20":5.951069,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.896211,"dist_to_hod_atr":6.664676,"atr":0.01727,"spread_atr":0.579034,"own_change_pct":0.167926,"rel_strength_pct":{"SPY":0.139529,"IWM":0.097615}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.502609},"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":"80eb2d40cae7","ts":"2026-09-15T16:05:45+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7217,"target":7.875,"target_label":"prev_day_high","reward_risk":0.3,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":2.77},"price":7.84,"vwap":7.8422,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":-0.0318,"volatility":"high"},"price":7.84,"volume":{"bars":155,"last_bar_volume":24306.0,"baseline_avg":5405.15,"bar_rvol":4.496822,"raw_accel":16.98729,"smooth_accel":2.290144,"accel_momentum":2.4009,"rvol_3bar":[0.35064,0.06373,4.496822],"trend_3bar":"MIXED","projected_rvol":1.102899},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":3040.0,"sell_vol":829.0,"unclassified_vol":0.0,"imbalance":0.571465,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.445291},"context":{"vwap":7.842248,"price_vs_vwap_pct":-0.02866,"ema9":7.844632,"ema20":7.837176,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.134931,"dist_to_hod_atr":5.531883,"atr":0.016269,"spread_atr":0.614654,"own_change_pct":0.127632,"rel_strength_pct":{"SPY":0.099235,"IWM":0.057321}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.569779},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dfd42b254d2d","ts":"2026-09-15T16:05:45+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 160.0s, plan says PASS; stop 7.18, target 7.47 (prev_day_high), R:R 1.82; target 0.19 away > ~0.15 reachable in 229 min","plan":{"state":"PASS","setup":"","stop":7.1756,"target":7.47,"target_label":"prev_day_high","reward_risk":1.82,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.44},"price":7.28,"vwap":7.2116,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":0.712,"trend":"flat","recent_slope_pct":0.0185,"volatility":"medium"},"price":7.28,"volume":{"bars":155,"last_bar_volume":33074.0,"baseline_avg":203718.25,"bar_rvol":0.162352,"raw_accel":-0.564151,"smooth_accel":-0.600822,"accel_momentum":-0.751712,"rvol_3bar":[0.389322,0.35373,0.162352],"trend_3bar":"DECELERATING","projected_rvol":0.124852},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":10823.0,"sell_vol":3727.0,"unclassified_vol":0.0,"imbalance":0.487698,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.570744},"context":{"vwap":7.211506,"price_vs_vwap_pct":0.949781,"ema9":7.284764,"ema20":7.276745,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.682128,"dist_to_hod_atr":1.795284,"atr":0.027851,"spread_atr":0.359057,"own_change_pct":-0.226027,"rel_strength_pct":{"SPY":-0.254425,"IWM":-0.296339}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.079179},"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":"ba4ef94f9651","ts":"2026-09-15T16:05:50+00:00","symbol":"TNON","event":"REJECT","bot":{"state":"REJECT","reason":"price $6.43 below VWAP $6.43","plan":{"state":"PASS","setup":"","stop":6.1285,"target":7.07,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":3.66},"price":6.43,"vwap":6.4312,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":2.579,"trend":"flat","recent_slope_pct":-0.0175,"volatility":"high"},"price":6.43,"volume":{"bars":155,"last_bar_volume":10153.0,"baseline_avg":8341.65,"bar_rvol":1.217145,"raw_accel":-0.435756,"smooth_accel":0.646002,"accel_momentum":0.1599,"rvol_3bar":[0.869378,2.248112,1.217145],"trend_3bar":"MIXED","projected_rvol":0.137671},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":216.0,"sell_vol":559.0,"unclassified_vol":0.0,"imbalance":-0.442581,"bid":6.42,"ask":6.47,"spread_pct":0.775795,"quote_size_imbalance":null,"quote_age_s":0.465403},"context":{"vwap":6.431217,"price_vs_vwap_pct":-0.018927,"ema9":6.444705,"ema20":6.423239,"ema_stack":false,"ema_warm":true,"hod":6.88,"dist_to_hod_pct":-6.540698,"dist_to_hod_atr":8.117036,"atr":0.055439,"spread_atr":0.901893,"own_change_pct":0.735614,"rel_strength_pct":{"SPY":0.707217,"IWM":0.665303}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.538685},"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":"fd51f673c16d","ts":"2026-09-15T16:05:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 495.0s, plan says WATCH; stop 5.89, target 6.03 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 5.97; breakout: 1-min close > 6.01 on >= 108572 sh","plan":{"state":"WATCH","setup":"","stop":5.8869,"target":6.03,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.12},"price":5.97,"vwap":5.9466,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":1.539,"trend":"flat","recent_slope_pct":0.0503,"volatility":"medium"},"price":5.97,"volume":{"bars":155,"last_bar_volume":44018.0,"baseline_avg":58653.65,"bar_rvol":0.750473,"raw_accel":-0.225553,"smooth_accel":0.367278,"accel_momentum":0.166824,"rvol_3bar":[0.183068,0.972758,0.750473],"trend_3bar":"MIXED","projected_rvol":0.279123},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":307.0,"sell_vol":1191.0,"unclassified_vol":0.0,"imbalance":-0.59012,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":1.887783},"context":{"vwap":5.946611,"price_vs_vwap_pct":0.393324,"ema9":5.956899,"ema20":5.951069,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.647446,"dist_to_hod_atr":5.790335,"atr":0.01727,"spread_atr":0.579034,"own_change_pct":0.167926,"rel_strength_pct":{"SPY":0.139529,"IWM":0.097615}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.442869},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ddbbdac7c2a2","ts":"2026-09-15T16:05:50+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 165.0s, plan says WATCH; stop 7.16, target 7.30 (premarket_high), R:R 0.31; R:R 0.31 < 2.0 at 7.27; pullback: buy 7.23-7.25 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":7.1627,"target":7.2991,"target_label":"premarket_high","reward_risk":0.31,"pos_in_5d_range_pct":31.1,"room_to_5d_high_atr":1.47},"price":7.2671,"vwap":7.2119,"ext_from_open_pct":1.64,"max_ext_allowed_pct":3.0,"volume_pace":0.715,"trend":"flat","recent_slope_pct":-0.0169,"volatility":"medium"},"price":7.2671,"volume":{"bars":155,"last_bar_volume":33074.0,"baseline_avg":203718.25,"bar_rvol":0.162352,"raw_accel":-0.564151,"smooth_accel":-0.600822,"accel_momentum":-0.751712,"rvol_3bar":[0.389322,0.35373,0.162352],"trend_3bar":"DECELERATING","projected_rvol":0.85451},"flow":{"window_s":30,"trades":287,"trade_rate":9.566667,"buy_vol":60642.0,"sell_vol":70387.0,"unclassified_vol":0.0,"imbalance":-0.074373,"bid":7.26,"ask":7.27,"spread_pct":0.137646,"quote_size_imbalance":null,"quote_age_s":0.068633},"context":{"vwap":7.211506,"price_vs_vwap_pct":0.770901,"ema9":7.284764,"ema20":7.276745,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.858117,"dist_to_hod_atr":2.258467,"atr":0.027851,"spread_atr":0.359057,"own_change_pct":-0.226027,"rel_strength_pct":{"SPY":-0.254425,"IWM":-0.296339}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.012075},"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":"efea40996ffe","ts":"2026-09-15T16:06:00+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8423,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.079,"trend":"flat","recent_slope_pct":-0.0191,"volatility":"high"},"price":7.845,"volume":{"bars":155,"last_bar_volume":24306.0,"baseline_avg":5405.15,"bar_rvol":4.496822,"raw_accel":16.98729,"smooth_accel":2.290144,"accel_momentum":2.4009,"rvol_3bar":[0.35064,0.06373,4.496822],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":5.0,"sell_vol":311.0,"unclassified_vol":0.0,"imbalance":-0.968354,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.112459},"context":{"vwap":7.842248,"price_vs_vwap_pct":0.035097,"ema9":7.844632,"ema20":7.837176,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":5.224556,"atr":0.016269,"spread_atr":0.614654,"own_change_pct":0.127632,"rel_strength_pct":{"SPY":0.12235,"IWM":0.085455}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.354518},"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":"91888cca6720","ts":"2026-09-15T16:06:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.6608,"target":7.83,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":53.0,"room_to_5d_high_atr":0.73},"price":7.7487,"vwap":7.7245,"ext_from_open_pct":0.63,"max_ext_allowed_pct":3.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":-0.0276,"volatility":"medium"},"price":7.7487,"volume":{"bars":156,"last_bar_volume":5918.0,"baseline_avg":12755.85,"bar_rvol":0.463944,"raw_accel":0.855776,"smooth_accel":-0.646084,"accel_momentum":-0.70897,"rvol_3bar":[0.382155,0.032743,0.463944],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":27.0,"sell_vol":998.0,"unclassified_vol":0.0,"imbalance":-0.947317,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":3.299411},"context":{"vwap":7.724489,"price_vs_vwap_pct":0.313425,"ema9":7.747382,"ema20":7.737827,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.784891,"dist_to_hod_atr":3.022354,"atr":0.020282,"spread_atr":0.493043,"own_change_pct":-0.135397,"rel_strength_pct":{"SPY":-0.140679,"IWM":-0.177574}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.439502},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c5a04b6fd3c2","ts":"2026-09-15T16:06:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.1688,"target":8.59,"target_label":"premarket_high","reward_risk":1.2,"pos_in_5d_range_pct":4.0,"room_to_5d_high_atr":3.94},"price":8.36,"vwap":8.3506,"ext_from_open_pct":-0.12,"max_ext_allowed_pct":3.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":0.0206,"volatility":"high"},"price":8.36,"volume":{"bars":156,"last_bar_volume":69844.0,"baseline_avg":60780.15,"bar_rvol":1.149125,"raw_accel":0.157239,"smooth_accel":-0.194254,"accel_momentum":0.147681,"rvol_3bar":[0.876006,0.948221,1.149125],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":243,"trade_rate":8.1,"buy_vol":28759.0,"sell_vol":35198.0,"unclassified_vol":0.0,"imbalance":-0.100677,"bid":8.35,"ask":8.36,"spread_pct":0.119689,"quote_size_imbalance":null,"quote_age_s":0.783616},"context":{"vwap":8.350629,"price_vs_vwap_pct":0.112216,"ema9":8.352863,"ema20":8.346997,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.847182,"dist_to_hod_atr":10.649577,"atr":0.023006,"spread_atr":0.434677,"own_change_pct":0.05988,"rel_strength_pct":{"SPY":0.054597,"IWM":0.017702}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.11569},"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":"f424daa09a9b","ts":"2026-09-15T16:06:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":7.9203,"target":8.19,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":66.6,"room_to_5d_high_atr":0.74},"price":8.11,"vwap":7.821,"ext_from_open_pct":5.32,"max_ext_allowed_pct":3.0,"volume_pace":0.308,"trend":"flat","recent_slope_pct":0.0803,"volatility":"high"},"price":8.11,"volume":{"bars":156,"last_bar_volume":9964.0,"baseline_avg":23688.65,"bar_rvol":0.420623,"raw_accel":0.682494,"smooth_accel":-0.386157,"accel_momentum":-0.022379,"rvol_3bar":[0.638348,0.091329,0.420623],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2865.0,"sell_vol":1402.0,"unclassified_vol":0.0,"imbalance":0.342864,"bid":8.11,"ask":8.12,"spread_pct":0.123229,"quote_size_imbalance":null,"quote_age_s":2.14798},"context":{"vwap":7.820974,"price_vs_vwap_pct":3.695521,"ema9":8.104415,"ema20":8.085117,"ema_stack":true,"ema_warm":true,"hod":8.19,"dist_to_hod_pct":-0.976801,"dist_to_hod_atr":1.310641,"atr":0.061039,"spread_atr":0.16383,"own_change_pct":0.185185,"rel_strength_pct":{"SPY":0.179902,"IWM":0.143007}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.144217},"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":"e0b41c2008fc","ts":"2026-09-15T16:06:10+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3328,"target":5.4334,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":1.99},"price":5.395,"vwap":5.3896,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.759,"trend":"flat","recent_slope_pct":0.0512,"volatility":"medium"},"price":5.395,"volume":{"bars":156,"last_bar_volume":82238.0,"baseline_avg":30777.2,"bar_rvol":2.672043,"raw_accel":1.125178,"smooth_accel":0.1368,"accel_momentum":0.61954,"rvol_3bar":[0.398311,1.277546,2.672043],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":37659.0,"sell_vol":38416.0,"unclassified_vol":0.0,"imbalance":-0.009951,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":1.005982},"context":{"vwap":5.389638,"price_vs_vwap_pct":0.099489,"ema9":5.387398,"ema20":5.383572,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.792793,"dist_to_hod_atr":9.375679,"atr":0.016532,"spread_atr":0.604883,"own_change_pct":0.185701,"rel_strength_pct":{"SPY":0.180418,"IWM":0.143523}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.026589},"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":"63a652e30746","ts":"2026-09-15T16:06:20+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.8447,"target":10.2,"target_label":"prev_day_high","reward_risk":1.98,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":2.53},"price":9.9639,"vwap":9.9564,"ext_from_open_pct":1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":0.0234,"volatility":"medium"},"price":9.9639,"volume":{"bars":156,"last_bar_volume":15400.0,"baseline_avg":126582.3,"bar_rvol":0.12166,"raw_accel":-0.51336,"smooth_accel":-0.451645,"accel_momentum":0.293477,"rvol_3bar":[0.168279,0.156805,0.12166],"trend_3bar":"DECELERATING","projected_rvol":0.714981},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":20152.0,"sell_vol":15249.0,"unclassified_vol":0.0,"imbalance":0.138499,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.230974},"context":{"vwap":9.956372,"price_vs_vwap_pct":0.075611,"ema9":9.954736,"ema20":9.956959,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.856716,"dist_to_hod_atr":5.601152,"atr":0.015372,"spread_atr":0.65054,"own_change_pct":0.025113,"rel_strength_pct":{"SPY":0.01983,"IWM":-0.017065}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.01685},"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":"854cb4b79997","ts":"2026-09-15T16:06:20+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7227,"target":7.875,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":18.2,"room_to_5d_high_atr":2.77},"price":7.841,"vwap":7.8423,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.077,"trend":"flat","recent_slope_pct":-0.0675,"volatility":"high"},"price":7.841,"volume":{"bars":156,"last_bar_volume":4780.0,"baseline_avg":6445.75,"bar_rvol":0.741574,"raw_accel":-0.803341,"smooth_accel":2.071891,"accel_momentum":-0.218253,"rvol_3bar":[0.06373,4.496822,0.741574],"trend_3bar":"MIXED","projected_rvol":0.020013},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":44.0,"sell_vol":308.0,"unclassified_vol":0.0,"imbalance":-0.75,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.141371},"context":{"vwap":7.842251,"price_vs_vwap_pct":-0.015951,"ema9":7.844706,"ema20":7.837922,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.12232,"dist_to_hod_atr":5.689466,"atr":0.015643,"spread_atr":0.639266,"own_change_pct":0.063776,"rel_strength_pct":{"SPY":0.058493,"IWM":0.021598}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.55618},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"307cb60deacd","ts":"2026-09-15T16:06:25+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.6544,"target":7.83,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":0.75},"price":7.7423,"vwap":7.7245,"ext_from_open_pct":0.55,"max_ext_allowed_pct":4.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.0441,"volatility":"medium"},"price":7.7423,"volume":{"bars":156,"last_bar_volume":5918.0,"baseline_avg":12755.85,"bar_rvol":0.463944,"raw_accel":0.855776,"smooth_accel":-0.646084,"accel_momentum":-0.70897,"rvol_3bar":[0.382155,0.032743,0.463944],"trend_3bar":"MIXED","projected_rvol":0.384765},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1414.0,"sell_vol":1398.0,"unclassified_vol":0.0,"imbalance":0.00569,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":3.278659},"context":{"vwap":7.724489,"price_vs_vwap_pct":0.230572,"ema9":7.747382,"ema20":7.737827,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.866837,"dist_to_hod_atr":3.337902,"atr":0.020282,"spread_atr":0.493043,"own_change_pct":-0.135397,"rel_strength_pct":{"SPY":-0.140679,"IWM":-0.177574}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.00264},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9bcf7c9f2a68","ts":"2026-09-15T16:06:45+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4136,"target":9.675,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5638,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":4.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0989,"volatility":"high"},"price":9.565,"volume":{"bars":156,"last_bar_volume":12874.0,"baseline_avg":17637.1,"bar_rvol":0.729939,"raw_accel":-0.577195,"smooth_accel":0.157548,"accel_momentum":-0.600812,"rvol_3bar":[1.010464,1.854543,0.729939],"trend_3bar":"MIXED","projected_rvol":0.446407},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":3572.0,"sell_vol":225.0,"unclassified_vol":0.0,"imbalance":0.881485,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.072672},"context":{"vwap":9.563845,"price_vs_vwap_pct":0.01208,"ema9":9.533536,"ema20":9.51832,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":9.879985,"atr":0.026822,"spread_atr":0.37283,"own_change_pct":0.578643,"rel_strength_pct":{"SPY":0.57336,"IWM":0.536465}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.64343},"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":"731270d0c3c4","ts":"2026-09-15T16:06:50+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4096,"target":9.675,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.24},"price":9.561,"vwap":9.5638,"ext_from_open_pct":-1.94,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0905,"volatility":"high"},"price":9.561,"volume":{"bars":156,"last_bar_volume":12874.0,"baseline_avg":17637.1,"bar_rvol":0.729939,"raw_accel":-0.577195,"smooth_accel":0.157548,"accel_momentum":-0.600812,"rvol_3bar":[1.010464,1.854543,0.729939],"trend_3bar":"MIXED","projected_rvol":0.53104},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":3572.0,"sell_vol":2120.0,"unclassified_vol":0.0,"imbalance":0.255095,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.043037},"context":{"vwap":9.563845,"price_vs_vwap_pct":-0.029744,"ema9":9.533536,"ema20":9.51832,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.736521,"dist_to_hod_atr":10.029117,"atr":0.026822,"spread_atr":0.37283,"own_change_pct":0.578643,"rel_strength_pct":{"SPY":0.57336,"IWM":0.536465}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.186204},"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":"371d996580ab","ts":"2026-09-15T16:07:00+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 235.0s, plan says PASS; stop 7.18, target 7.47 (prev_day_high), R:R 1.82; target 0.19 away > ~0.15 reachable in 228 min","plan":{"state":"PASS","setup":"","stop":7.1756,"target":7.47,"target_label":"prev_day_high","reward_risk":1.82,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.44},"price":7.28,"vwap":7.2129,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0144,"volatility":"medium"},"price":7.28,"volume":{"bars":156,"last_bar_volume":238144.0,"baseline_avg":195811.55,"bar_rvol":1.21619,"raw_accel":3.864759,"smooth_accel":-0.323657,"accel_momentum":0.277165,"rvol_3bar":[0.35373,0.162352,1.21619],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":245,"trade_rate":8.166667,"buy_vol":139047.0,"sell_vol":77121.0,"unclassified_vol":0.0,"imbalance":0.286472,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.098986},"context":{"vwap":7.212137,"price_vs_vwap_pct":0.940952,"ema9":7.281711,"ema20":7.276055,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.682128,"dist_to_hod_atr":1.755003,"atr":0.02849,"spread_atr":0.351001,"own_change_pct":-0.212766,"rel_strength_pct":{"SPY":-0.188996,"IWM":-0.179389}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.348404},"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":"95121e626f0e","ts":"2026-09-15T16:07:05+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4136,"target":9.675,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5637,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":0.0553,"volatility":"high"},"price":9.565,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":5441.0,"sell_vol":5655.0,"unclassified_vol":0.0,"imbalance":-0.019286,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.170198},"context":{"vwap":9.563716,"price_vs_vwap_pct":0.013431,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":9.609289,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.014794},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f1ab256d29e4","ts":"2026-09-15T16:07:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8423,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.072,"trend":"flat","recent_slope_pct":-0.0382,"volatility":"high"},"price":7.845,"volume":{"bars":157,"last_bar_volume":73.0,"baseline_avg":6368.3,"bar_rvol":0.011463,"raw_accel":-0.984728,"smooth_accel":2.492096,"accel_momentum":0.420205,"rvol_3bar":[4.496822,0.741574,0.011463],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":10.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.999454},"context":{"vwap":7.842251,"price_vs_vwap_pct":0.035053,"ema9":7.844765,"ema20":7.838596,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":5.646279,"atr":0.015054,"spread_atr":0.664268,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.02377,"IWM":0.033377}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.011463},"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":"35c73432dd35","ts":"2026-09-15T16:07:10+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4113,"target":9.675,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.23},"price":9.5627,"vwap":9.5637,"ext_from_open_pct":-1.92,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0505,"volatility":"high"},"price":9.5627,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":5441.0,"sell_vol":5656.0,"unclassified_vol":0.0,"imbalance":-0.019375,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.311606},"context":{"vwap":9.563716,"price_vs_vwap_pct":-0.010618,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.719227,"dist_to_hod_atr":9.692691,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.014861},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a99879806f8b","ts":"2026-09-15T16:07:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 245.0s, plan says WATCH; stop 7.17, target 7.30 (premarket_high), R:R 0.23; selling not fading: red-bar volume 0.74x the advance (max 0.7); no reclaim yet (needs a close > 7.30); R:R 0.23 < 2.0 a","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2131,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0186,"volatility":"medium"},"price":7.275,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":245,"trade_rate":8.166667,"buy_vol":148956.0,"sell_vol":60257.0,"unclassified_vol":0.0,"imbalance":0.423965,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.248692},"context":{"vwap":7.212948,"price_vs_vwap_pct":0.860288,"ema9":7.281369,"ema20":7.276431,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.934334,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.65991},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"96278621add5","ts":"2026-09-15T16:07:15+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4136,"target":9.675,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5637,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0553,"volatility":"high"},"price":9.565,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":0.098272},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":2067.0,"sell_vol":5690.0,"unclassified_vol":0.0,"imbalance":-0.467062,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.565067},"context":{"vwap":9.563716,"price_vs_vwap_pct":0.013431,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":9.609289,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.358264},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"62645a66334c","ts":"2026-09-15T16:07:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.1654,"target":7.2991,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":31.4,"room_to_5d_high_atr":1.46},"price":7.2698,"vwap":7.2132,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0328,"volatility":"medium"},"price":7.2698,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":2.107702},"flow":{"window_s":30,"trades":234,"trade_rate":7.8,"buy_vol":135395.0,"sell_vol":69180.0,"unclassified_vol":0.0,"imbalance":0.323671,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.78655},"context":{"vwap":7.212948,"price_vs_vwap_pct":0.788196,"ema9":7.281369,"ema20":7.276431,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.821282,"dist_to_hod_atr":2.117217,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.503801},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8aad8a5ff827","ts":"2026-09-15T16:07:20+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.405,"target":9.675,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":5.1,"room_to_5d_high_atr":3.24},"price":9.5564,"vwap":9.5637,"ext_from_open_pct":-1.99,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0373,"volatility":"high"},"price":9.5564,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":0.209814},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":2134.0,"sell_vol":4506.0,"unclassified_vol":0.0,"imbalance":-0.357229,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.083744},"context":{"vwap":9.563716,"price_vs_vwap_pct":-0.076492,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.783316,"dist_to_hod_atr":9.921138,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.274015},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ca256829f163","ts":"2026-09-15T16:07:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2132,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0186,"volatility":"medium"},"price":7.275,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":1.606082},"flow":{"window_s":30,"trades":227,"trade_rate":7.566667,"buy_vol":120502.0,"sell_vol":51551.0,"unclassified_vol":0.0,"imbalance":0.400754,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.247802},"context":{"vwap":7.212948,"price_vs_vwap_pct":0.860288,"ema9":7.281369,"ema20":7.276431,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.934334,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.623783},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1f2d635b2685","ts":"2026-09-15T16:07:25+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8352,"target":10.015,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":20.0,"room_to_5d_high_atr":2.55},"price":9.9544,"vwap":9.9564,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0139,"volatility":"medium"},"price":9.9544,"volume":{"bars":157,"last_bar_volume":50221.0,"baseline_avg":114875.8,"bar_rvol":0.437176,"raw_accel":0.748706,"smooth_accel":-0.091368,"accel_momentum":0.360276,"rvol_3bar":[0.156805,0.12166,0.437176],"trend_3bar":"MIXED","projected_rvol":0.845734},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":14764.0,"sell_vol":34717.0,"unclassified_vol":0.0,"imbalance":-0.403246,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.467668},"context":{"vwap":9.956379,"price_vs_vwap_pct":-0.019874,"ema9":9.956789,"ema20":9.957725,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.951244,"dist_to_hod_atr":6.169622,"atr":0.015495,"spread_atr":0.645358,"own_change_pct":0.113526,"rel_strength_pct":{"SPY":0.137296,"IWM":0.146903}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.17629},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3bd4468a7aab","ts":"2026-09-15T16:07:25+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.421,"target":9.675,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.22},"price":9.5724,"vwap":9.5637,"ext_from_open_pct":-1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0708,"volatility":"high"},"price":9.5724,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":0.16799},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":234.0,"sell_vol":1000.0,"unclassified_vol":0.0,"imbalance":-0.620746,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.561174},"context":{"vwap":9.563716,"price_vs_vwap_pct":0.090807,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.620549,"dist_to_hod_atr":9.340954,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.476148},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8cba7406e160","ts":"2026-09-15T16:07:25+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1756,"target":7.47,"target_label":"prev_day_high","reward_risk":1.82,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.44},"price":7.28,"vwap":7.2132,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0048,"volatility":"medium"},"price":7.28,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":1.395311},"flow":{"window_s":30,"trades":226,"trade_rate":7.533333,"buy_vol":120571.0,"sell_vol":60482.0,"unclassified_vol":0.0,"imbalance":0.331886,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":1.63017},"context":{"vwap":7.212948,"price_vs_vwap_pct":0.929608,"ema9":7.281369,"ema20":7.276431,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.682128,"dist_to_hod_atr":1.758486,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.516588},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9e3f53a25f29","ts":"2026-09-15T16:07:30+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.2,"target_label":"prev_day_high","reward_risk":1.97,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":2.53},"price":9.965,"vwap":9.9564,"ext_from_open_pct":1.37,"max_ext_allowed_pct":4.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0351,"volatility":"medium"},"price":9.965,"volume":{"bars":157,"last_bar_volume":50221.0,"baseline_avg":114875.8,"bar_rvol":0.437176,"raw_accel":0.748706,"smooth_accel":-0.091368,"accel_momentum":0.360276,"rvol_3bar":[0.156805,0.12166,0.437176],"trend_3bar":"MIXED","projected_rvol":0.714267},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":15128.0,"sell_vol":25898.0,"unclassified_vol":0.0,"imbalance":-0.262516,"bid":9.96,"ask":9.97,"spread_pct":0.100351,"quote_size_imbalance":null,"quote_age_s":0.495442},"context":{"vwap":9.956379,"price_vs_vwap_pct":0.08659,"ema9":9.956789,"ema20":9.957725,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.845771,"dist_to_hod_atr":5.485542,"atr":0.015495,"spread_atr":0.645358,"own_change_pct":0.113526,"rel_strength_pct":{"SPY":0.137296,"IWM":0.146903}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.114766},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e6cafebcd4fe","ts":"2026-09-15T16:07:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2132,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0186,"volatility":"medium"},"price":7.275,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":1.16355},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":66244.0,"sell_vol":50038.0,"unclassified_vol":0.0,"imbalance":0.139368,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.162513},"context":{"vwap":7.212948,"price_vs_vwap_pct":0.860288,"ema9":7.281369,"ema20":7.276431,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.934334,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.216929},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa44e215bc9e","ts":"2026-09-15T16:07:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.6523,"target":7.83,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":51.4,"room_to_5d_high_atr":0.75},"price":7.7402,"vwap":7.7245,"ext_from_open_pct":0.52,"max_ext_allowed_pct":3.0,"volume_pace":0.572,"trend":"flat","recent_slope_pct":-0.0311,"volatility":"medium"},"price":7.7402,"volume":{"bars":157,"last_bar_volume":2400.0,"baseline_avg":12857.9,"bar_rvol":0.186656,"raw_accel":-0.594458,"smooth_accel":-0.709626,"accel_momentum":-0.063543,"rvol_3bar":[0.032743,0.463944,0.186656],"trend_3bar":"MIXED","projected_rvol":0.146525},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":152.0,"sell_vol":316.0,"unclassified_vol":0.0,"imbalance":-0.350427,"bid":7.74,"ask":7.75,"spread_pct":0.129116,"quote_size_imbalance":null,"quote_age_s":1.919203},"context":{"vwap":7.724517,"price_vs_vwap_pct":0.203024,"ema9":7.748665,"ema20":7.739349,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.893726,"dist_to_hod_atr":3.551277,"atr":0.019655,"spread_atr":0.508779,"own_change_pct":0.118792,"rel_strength_pct":{"SPY":0.142562,"IWM":0.15217}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.065409},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0960dacbfe10","ts":"2026-09-15T16:07:35+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.1656,"target":7.2991,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":31.5,"room_to_5d_high_atr":1.46},"price":7.27,"vwap":7.2132,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0323,"volatility":"medium"},"price":7.27,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":0.997714},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":37443.0,"sell_vol":41867.0,"unclassified_vol":0.0,"imbalance":-0.055781,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.445666},"context":{"vwap":7.212948,"price_vs_vwap_pct":0.790968,"ema9":7.281369,"ema20":7.276431,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.818554,"dist_to_hod_atr":2.110183,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.086824},"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":"f465e0144b34","ts":"2026-09-15T16:07:40+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9467,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":1.533,"trend":"flat","recent_slope_pct":-0.0504,"volatility":"medium"},"price":5.945,"volume":{"bars":157,"last_bar_volume":108899.0,"baseline_avg":50577.5,"bar_rvol":2.153112,"raw_accel":6.586666,"smooth_accel":0.556661,"accel_momentum":-0.308061,"rvol_3bar":[0.750473,0.252253,2.153112],"trend_3bar":"MIXED","projected_rvol":0.761455},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":3030.0,"sell_vol":19050.0,"unclassified_vol":0.0,"imbalance":-0.725543,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":3.95317},"context":{"vwap":5.946692,"price_vs_vwap_pct":-0.028448,"ema9":5.957399,"ema20":5.95242,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":7.10504,"atr":0.017593,"spread_atr":0.568403,"own_change_pct":-0.083893,"rel_strength_pct":{"SPY":-0.060123,"IWM":-0.050515}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.562176},"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":"5d73e91feb34","ts":"2026-09-15T16:07:40+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.55 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.3972,"target":9.675,"target_label":"ceiling","reward_risk":0.84,"pos_in_5d_range_pct":4.8,"room_to_5d_high_atr":3.26},"price":9.5486,"vwap":9.5637,"ext_from_open_pct":-2.07,"max_ext_allowed_pct":3.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":0.021,"volatility":"high"},"price":9.5486,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":0.114207},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":278.0,"sell_vol":1031.0,"unclassified_vol":0.0,"imbalance":-0.575248,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.163422},"context":{"vwap":9.563716,"price_vs_vwap_pct":-0.158051,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.862665,"dist_to_hod_atr":10.203977,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.441249},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b6d930dfa7f9","ts":"2026-09-15T16:07:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1756,"target":7.47,"target_label":"prev_day_high","reward_risk":1.82,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.44},"price":7.28,"vwap":7.2133,"ext_from_open_pct":1.82,"max_ext_allowed_pct":4.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0048,"volatility":"medium"},"price":7.28,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":0.94867},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":22147.0,"sell_vol":33761.0,"unclassified_vol":0.0,"imbalance":-0.207734,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":0.078087},"context":{"vwap":7.212948,"price_vs_vwap_pct":0.929608,"ema9":7.281369,"ema20":7.276431,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.682128,"dist_to_hod_atr":1.758486,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.323343},"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":"85a353aa5023","ts":"2026-09-15T16:07:45+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.87},"price":8.455,"vwap":8.3254,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":-0.046,"volatility":"medium"},"price":8.455,"volume":{"bars":157,"last_bar_volume":278.0,"baseline_avg":942.65,"bar_rvol":0.294913,"raw_accel":-0.368182,"smooth_accel":-0.134512,"accel_momentum":0.221388,"rvol_3bar":[0.363345,0.466349,0.294913],"trend_3bar":"MIXED","projected_rvol":4.800651},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1065.0,"sell_vol":2125.0,"unclassified_vol":0.0,"imbalance":-0.332288,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.724856},"context":{"vwap":8.323264,"price_vs_vwap_pct":1.582744,"ema9":8.471362,"ema20":8.455609,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":2.5928,"atr":0.017356,"spread_atr":0.576178,"own_change_pct":0.028327,"rel_strength_pct":{"SPY":0.052097,"IWM":0.061705}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.097996},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d3a84d5b5ed0","ts":"2026-09-15T16:07:45+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.1851,"target":7.47,"target_label":"prev_day_high","reward_risk":1.73,"pos_in_5d_range_pct":33.7,"room_to_5d_high_atr":1.41},"price":7.2895,"vwap":7.2134,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":0.0213,"volatility":"medium"},"price":7.2895,"volume":{"bars":157,"last_bar_volume":311109.0,"baseline_avg":199874.6,"bar_rvol":1.556521,"raw_accel":0.30639,"smooth_accel":0.573976,"accel_momentum":0.897633,"rvol_3bar":[0.162352,1.21619,1.556521],"trend_3bar":"ACCELERATING","projected_rvol":1.138054},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":45882.0,"sell_vol":19400.0,"unclassified_vol":0.0,"imbalance":0.405655,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":0.039904},"context":{"vwap":7.212948,"price_vs_vwap_pct":1.061316,"ema9":7.281369,"ema20":7.276431,"ema_stack":true,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.552524,"dist_to_hod_atr":1.424373,"atr":0.028434,"spread_atr":0.351697,"own_change_pct":0.068729,"rel_strength_pct":{"SPY":0.092498,"IWM":0.102106}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.631411},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"920bc2b8a86b","ts":"2026-09-15T16:07:45+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.327,"target":5.43,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":2.01},"price":5.3892,"vwap":5.3897,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.753,"trend":"flat","recent_slope_pct":0.0469,"volatility":"medium"},"price":5.3892,"volume":{"bars":157,"last_bar_volume":12820.0,"baseline_avg":34448.75,"bar_rvol":0.372147,"raw_accel":-0.844111,"smooth_accel":0.33124,"accel_momentum":0.19444,"rvol_3bar":[1.277546,2.672043,0.372147],"trend_3bar":"MIXED","projected_rvol":0.595513},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":10377.0,"sell_vol":2873.0,"unclassified_vol":0.0,"imbalance":0.56634,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":0.101874},"context":{"vwap":5.389645,"price_vs_vwap_pct":-0.008257,"ema9":5.388918,"ema20":5.38466,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.897297,"dist_to_hod_atr":9.964688,"atr":0.016137,"spread_atr":0.619694,"own_change_pct":0.185701,"rel_strength_pct":{"SPY":0.209471,"IWM":0.219078}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.210762},"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":"8be83a0ddbeb","ts":"2026-09-15T16:07:50+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4236,"target":9.675,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.21},"price":9.575,"vwap":9.5637,"ext_from_open_pct":-1.79,"max_ext_allowed_pct":3.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":0.0762,"volatility":"high"},"price":9.575,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":0.095329},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":49.0,"sell_vol":115.0,"unclassified_vol":0.0,"imbalance":-0.402439,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.408669},"context":{"vwap":9.563716,"price_vs_vwap_pct":0.117993,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.5941,"dist_to_hod_atr":9.246675,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.308694},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1a0b9fb173a1","ts":"2026-09-15T16:07:50+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3358,"target":5.5297,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":1.98},"price":5.398,"vwap":5.3897,"ext_from_open_pct":-1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.753,"trend":"flat","recent_slope_pct":0.0796,"volatility":"medium"},"price":5.398,"volume":{"bars":157,"last_bar_volume":12820.0,"baseline_avg":34448.75,"bar_rvol":0.372147,"raw_accel":-0.844111,"smooth_accel":0.33124,"accel_momentum":0.19444,"rvol_3bar":[1.277546,2.672043,0.372147],"trend_3bar":"MIXED","projected_rvol":0.647118},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":4191.0,"sell_vol":2577.0,"unclassified_vol":0.0,"imbalance":0.238475,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":0.88067},"context":{"vwap":5.389645,"price_vs_vwap_pct":0.155019,"ema9":5.388918,"ema20":5.38466,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.738739,"dist_to_hod_atr":9.419356,"atr":0.016137,"spread_atr":0.619694,"own_change_pct":0.185701,"rel_strength_pct":{"SPY":0.209471,"IWM":0.219078}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.088748},"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":"46564f481df9","ts":"2026-09-15T16:07:55+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9467,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.531,"trend":"flat","recent_slope_pct":-0.0336,"volatility":"medium"},"price":5.95,"volume":{"bars":157,"last_bar_volume":108899.0,"baseline_avg":50577.5,"bar_rvol":2.153112,"raw_accel":6.586666,"smooth_accel":0.556661,"accel_momentum":-0.308061,"rvol_3bar":[0.750473,0.252253,2.153112],"trend_3bar":"MIXED","projected_rvol":0.589224},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":1989.0,"sell_vol":19270.0,"unclassified_vol":0.0,"imbalance":-0.812879,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":4.238905},"context":{"vwap":5.946692,"price_vs_vwap_pct":0.055633,"ema9":5.957399,"ema20":5.95242,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.820838,"atr":0.017593,"spread_atr":0.568403,"own_change_pct":-0.083893,"rel_strength_pct":{"SPY":-0.060123,"IWM":-0.050515}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.75022},"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":"5b000c1d74c7","ts":"2026-09-15T16:07:55+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.54 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.3927,"target":9.675,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":4.5,"room_to_5d_high_atr":3.26},"price":9.5441,"vwap":9.5637,"ext_from_open_pct":-2.11,"max_ext_allowed_pct":3.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":0.0115,"volatility":"high"},"price":9.5441,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":0.093363},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":149.0,"sell_vol":120.0,"unclassified_vol":0.0,"imbalance":0.107807,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.183613},"context":{"vwap":9.563716,"price_vs_vwap_pct":-0.205103,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.908444,"dist_to_hod_atr":10.367154,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.013277,"IWM":0.022884}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.082694},"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":"aef93850a8cd","ts":"2026-09-15T16:07:55+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7232,"target":7.875,"target_label":"prev_day_high","reward_risk":0.28,"pos_in_5d_range_pct":18.2,"room_to_5d_high_atr":2.77},"price":7.8415,"vwap":7.8423,"ext_from_open_pct":-0.74,"max_ext_allowed_pct":3.0,"volume_pace":1.068,"trend":"flat","recent_slope_pct":-0.0471,"volatility":"high"},"price":7.8415,"volume":{"bars":157,"last_bar_volume":73.0,"baseline_avg":6368.3,"bar_rvol":0.011463,"raw_accel":-0.984728,"smooth_accel":2.492096,"accel_momentum":0.420205,"rvol_3bar":[4.496822,0.741574,0.011463],"trend_3bar":"DECELERATING","projected_rvol":0.664827},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":51.0,"sell_vol":328.0,"unclassified_vol":0.0,"imbalance":-0.730871,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":6.219515},"context":{"vwap":7.842251,"price_vs_vwap_pct":-0.009577,"ema9":7.844765,"ema20":7.838596,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.116015,"dist_to_hod_atr":5.878773,"atr":0.015054,"spread_atr":0.664268,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.02377,"IWM":0.033377}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.008378},"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":"422d25e7b190","ts":"2026-09-15T16:08:00+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":6.03,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9467,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.53,"trend":"flat","recent_slope_pct":-0.0672,"volatility":"medium"},"price":5.94,"volume":{"bars":157,"last_bar_volume":108899.0,"baseline_avg":50577.5,"bar_rvol":2.153112,"raw_accel":6.586666,"smooth_accel":0.556661,"accel_momentum":-0.308061,"rvol_3bar":[0.750473,0.252253,2.153112],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":2043.0,"sell_vol":12440.0,"unclassified_vol":0.0,"imbalance":-0.717876,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.565895},"context":{"vwap":5.946692,"price_vs_vwap_pct":-0.112528,"ema9":5.957399,"ema20":5.95242,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":7.389241,"atr":0.017593,"spread_atr":0.568403,"own_change_pct":-0.083893,"rel_strength_pct":{"SPY":-0.036353,"IWM":-0.068079}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.545667},"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":"8e0fa55c626b","ts":"2026-09-15T16:08:00+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4236,"target":9.675,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.21},"price":9.575,"vwap":9.5637,"ext_from_open_pct":-1.79,"max_ext_allowed_pct":3.0,"volume_pace":0.852,"trend":"flat","recent_slope_pct":0.0762,"volatility":"high"},"price":9.575,"volume":{"bars":157,"last_bar_volume":13238.0,"baseline_avg":17258.15,"bar_rvol":0.767058,"raw_accel":0.028274,"smooth_accel":-0.046141,"accel_momentum":-0.203689,"rvol_3bar":[1.854543,0.729939,0.767058],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":150.0,"sell_vol":120.0,"unclassified_vol":0.0,"imbalance":0.111111,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.072333},"context":{"vwap":9.563716,"price_vs_vwap_pct":0.117993,"ema9":9.532629,"ema20":9.519337,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.5941,"dist_to_hod_atr":9.246675,"atr":0.027577,"spread_atr":0.362615,"own_change_pct":-0.010493,"rel_strength_pct":{"SPY":0.037047,"IWM":0.00532}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.085229},"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":"ff180dac6df5","ts":"2026-09-15T16:08:00+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3271,"target":5.43,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":2.01},"price":5.3893,"vwap":5.3897,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.753,"trend":"flat","recent_slope_pct":0.0473,"volatility":"medium"},"price":5.3893,"volume":{"bars":157,"last_bar_volume":12820.0,"baseline_avg":34448.75,"bar_rvol":0.372147,"raw_accel":-0.844111,"smooth_accel":0.33124,"accel_momentum":0.19444,"rvol_3bar":[1.277546,2.672043,0.372147],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":3727.0,"sell_vol":3815.0,"unclassified_vol":0.0,"imbalance":-0.011668,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":0.000148},"context":{"vwap":5.389645,"price_vs_vwap_pct":-0.006401,"ema9":5.388918,"ema20":5.38466,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.895495,"dist_to_hod_atr":9.958491,"atr":0.016137,"spread_atr":0.619694,"own_change_pct":0.185701,"rel_strength_pct":{"SPY":0.233241,"IWM":0.201514}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.004342},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bf1d70fc9cc6","ts":"2026-09-15T16:08:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8742,"target":6.03,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.08},"price":5.9573,"vwap":5.9467,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":1.528,"trend":"flat","recent_slope_pct":-0.0635,"volatility":"medium"},"price":5.9573,"volume":{"bars":158,"last_bar_volume":28493.0,"baseline_avg":54946.8,"bar_rvol":0.518556,"raw_accel":-0.738354,"smooth_accel":0.354984,"accel_momentum":-0.201677,"rvol_3bar":[0.252253,2.153112,0.518556],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1429.0,"sell_vol":2279.0,"unclassified_vol":0.0,"imbalance":-0.229234,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":2.500505},"context":{"vwap":5.946692,"price_vs_vwap_pct":0.178391,"ema9":5.953919,"ema20":5.951237,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.856672,"dist_to_hod_atr":6.343912,"atr":0.017765,"spread_atr":0.562903,"own_change_pct":-0.251889,"rel_strength_pct":{"SPY":-0.204349,"IWM":-0.236076}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.118871},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bb77201e14e3","ts":"2026-09-15T16:08:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8423,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.067,"trend":"flat","recent_slope_pct":0.0088,"volatility":"high"},"price":7.85,"volume":{"bars":158,"last_bar_volume":4184.0,"baseline_avg":6318.4,"bar_rvol":0.662193,"raw_accel":1.648772,"smooth_accel":-0.662029,"accel_momentum":-3.154125,"rvol_3bar":[0.741574,0.011463,0.662193],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":212.0,"sell_vol":481.0,"unclassified_vol":0.0,"imbalance":-0.388167,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.399461},"context":{"vwap":7.842256,"price_vs_vwap_pct":0.098745,"ema9":7.844192,"ema20":7.83891,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":5.482024,"atr":0.014593,"spread_atr":0.685253,"own_change_pct":-0.23028,"rel_strength_pct":{"SPY":-0.18274,"IWM":-0.214467}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.257042},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"08bbbbdfea44","ts":"2026-09-15T16:08:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 7.17, target 7.30 (premarket_high), R:R 0.23; selling not fading: red-bar volume 0.74x the advance (max 0.7); imbalance -80% still heavy selling; no reclaim yet (need","plan":{"state":"WATCH","setup":"","stop":7.1706,"target":7.2991,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":32.0,"room_to_5d_high_atr":1.45},"price":7.275,"vwap":7.2136,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0088,"volatility":"medium"},"price":7.275,"volume":{"bars":158,"last_bar_volume":223832.0,"baseline_avg":198597.25,"bar_rvol":1.127065,"raw_accel":-0.280535,"smooth_accel":3.012087,"accel_momentum":2.438111,"rvol_3bar":[1.21619,1.556521,1.127065],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":194,"trade_rate":6.466667,"buy_vol":65091.0,"sell_vol":56537.0,"unclassified_vol":0.0,"imbalance":0.070329,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":1.554598},"context":{"vwap":7.213555,"price_vs_vwap_pct":0.851799,"ema9":7.281115,"ema20":7.27678,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.750341,"dist_to_hod_atr":1.974682,"atr":0.027853,"spread_atr":0.359033,"own_change_pct":0.001374,"rel_strength_pct":{"SPY":0.048913,"IWM":0.017187}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.079266},"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":"8985c2678948","ts":"2026-09-15T16:08:10+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3328,"target":5.5297,"target_label":"premarket_high","reward_risk":2.16,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":1.99},"price":5.395,"vwap":5.3897,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.752,"trend":"flat","recent_slope_pct":0.015,"volatility":"medium"},"price":5.395,"volume":{"bars":158,"last_bar_volume":20381.0,"baseline_avg":33251.4,"bar_rvol":0.612937,"raw_accel":0.589782,"smooth_accel":0.884965,"accel_momentum":0.553725,"rvol_3bar":[2.672043,0.372147,0.612937],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":3863.0,"sell_vol":5129.0,"unclassified_vol":0.0,"imbalance":-0.140792,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":3.762724},"context":{"vwap":5.389652,"price_vs_vwap_pct":0.099224,"ema9":5.388994,"ema20":5.385102,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.792793,"dist_to_hod_atr":9.837665,"atr":0.015756,"spread_atr":0.634688,"own_change_pct":0.011134,"rel_strength_pct":{"SPY":0.058674,"IWM":0.026948}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.086296},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ac87b0b83fd5","ts":"2026-09-15T16:08:15+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":6.03,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9467,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.528,"trend":"flat","recent_slope_pct":-0.1216,"volatility":"medium"},"price":5.94,"volume":{"bars":158,"last_bar_volume":28493.0,"baseline_avg":54946.8,"bar_rvol":0.518556,"raw_accel":-0.738354,"smooth_accel":0.354984,"accel_momentum":-0.201677,"rvol_3bar":[0.252253,2.153112,0.518556],"trend_3bar":"MIXED","projected_rvol":0.1132},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1389.0,"sell_vol":2889.0,"unclassified_vol":0.0,"imbalance":-0.350631,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.040802},"context":{"vwap":5.946692,"price_vs_vwap_pct":-0.112527,"ema9":5.953919,"ema20":5.951237,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":7.317733,"atr":0.017765,"spread_atr":0.562903,"own_change_pct":-0.251889,"rel_strength_pct":{"SPY":-0.204349,"IWM":-0.236076}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.181822},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"de37ad8aca70","ts":"2026-09-15T16:08:15+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7232,"target":7.875,"target_label":"prev_day_high","reward_risk":0.28,"pos_in_5d_range_pct":18.2,"room_to_5d_high_atr":2.77},"price":7.8415,"vwap":7.8423,"ext_from_open_pct":-0.74,"max_ext_allowed_pct":3.0,"volume_pace":1.067,"trend":"flat","recent_slope_pct":-0.0129,"volatility":"high"},"price":7.8415,"volume":{"bars":158,"last_bar_volume":4184.0,"baseline_avg":6318.4,"bar_rvol":0.662193,"raw_accel":1.648772,"smooth_accel":-0.662029,"accel_momentum":-3.154125,"rvol_3bar":[0.741574,0.011463,0.662193],"trend_3bar":"MIXED","projected_rvol":0.289314},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":212.0,"sell_vol":681.0,"unclassified_vol":0.0,"imbalance":-0.525196,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":5.399461},"context":{"vwap":7.842256,"price_vs_vwap_pct":-0.009642,"ema9":7.844192,"ema20":7.83891,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.116015,"dist_to_hod_atr":6.064489,"atr":0.014593,"spread_atr":0.685253,"own_change_pct":-0.23028,"rel_strength_pct":{"SPY":-0.18274,"IWM":-0.214467}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.347781},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8b246a8576eb","ts":"2026-09-15T16:08:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8741,"target":6.03,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":103.7,"room_to_5d_high_atr":-0.08},"price":5.9572,"vwap":5.9467,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":1.527,"trend":"flat","recent_slope_pct":-0.0638,"volatility":"medium"},"price":5.9572,"volume":{"bars":158,"last_bar_volume":28493.0,"baseline_avg":54946.8,"bar_rvol":0.518556,"raw_accel":-0.738354,"smooth_accel":0.354984,"accel_momentum":-0.201677,"rvol_3bar":[0.252253,2.153112,0.518556],"trend_3bar":"MIXED","projected_rvol":0.139826},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":662.0,"sell_vol":3464.0,"unclassified_vol":0.0,"imbalance":-0.679108,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.766053},"context":{"vwap":5.946692,"price_vs_vwap_pct":0.176709,"ema9":5.953919,"ema20":5.951237,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.85832,"dist_to_hod_atr":6.349541,"atr":0.017765,"spread_atr":0.562903,"own_change_pct":-0.251889,"rel_strength_pct":{"SPY":-0.204349,"IWM":-0.236076}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.352156},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9ceb11fef8cb","ts":"2026-09-15T16:08:20+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7247,"target":7.875,"target_label":"prev_day_high","reward_risk":0.27,"pos_in_5d_range_pct":18.3,"room_to_5d_high_atr":2.76},"price":7.843,"vwap":7.8423,"ext_from_open_pct":-0.72,"max_ext_allowed_pct":3.0,"volume_pace":1.066,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"high"},"price":7.843,"volume":{"bars":158,"last_bar_volume":4184.0,"baseline_avg":6318.4,"bar_rvol":0.662193,"raw_accel":1.648772,"smooth_accel":-0.662029,"accel_momentum":-3.154125,"rvol_3bar":[0.741574,0.011463,0.662193],"trend_3bar":"MIXED","projected_rvol":0.271588},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":310.0,"sell_vol":693.0,"unclassified_vol":0.0,"imbalance":-0.381854,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.68454},"context":{"vwap":7.842256,"price_vs_vwap_pct":0.009485,"ema9":7.844192,"ema20":7.83891,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.0971,"dist_to_hod_atr":5.961701,"atr":0.014593,"spread_atr":0.685253,"own_change_pct":-0.23028,"rel_strength_pct":{"SPY":-0.18274,"IWM":-0.214467}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.252861},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"91e52d4ccd73","ts":"2026-09-15T16:08:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says PASS; stop 7.18, target 7.47 (prev_day_high), R:R 1.82; target 0.19 away > ~0.15 reachable in 227 min","plan":{"state":"PASS","setup":"","stop":7.1755,"target":7.47,"target_label":"prev_day_high","reward_risk":1.82,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.44},"price":7.2799,"vwap":7.2137,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":0.0047,"volatility":"medium"},"price":7.2799,"volume":{"bars":158,"last_bar_volume":223832.0,"baseline_avg":198597.25,"bar_rvol":1.127065,"raw_accel":-0.280535,"smooth_accel":3.012087,"accel_momentum":2.438111,"rvol_3bar":[1.21619,1.556521,1.127065],"trend_3bar":"MIXED","projected_rvol":0.579706},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":36509.0,"sell_vol":27535.0,"unclassified_vol":0.0,"imbalance":0.140122,"bid":7.27,"ask":7.28,"spread_pct":0.137457,"quote_size_imbalance":null,"quote_age_s":1.075223},"context":{"vwap":7.213555,"price_vs_vwap_pct":0.919727,"ema9":7.281115,"ema20":7.27678,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.683492,"dist_to_hod_atr":1.798756,"atr":0.027853,"spread_atr":0.359033,"own_change_pct":0.001374,"rel_strength_pct":{"SPY":0.048913,"IWM":0.017187}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.157927},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8371552dde25","ts":"2026-09-15T16:08:30+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":6.03,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9467,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.525,"trend":"flat","recent_slope_pct":-0.1216,"volatility":"medium"},"price":5.94,"volume":{"bars":158,"last_bar_volume":28493.0,"baseline_avg":54946.8,"bar_rvol":0.518556,"raw_accel":-0.738354,"smooth_accel":0.354984,"accel_momentum":-0.201677,"rvol_3bar":[0.252253,2.153112,0.518556],"trend_3bar":"MIXED","projected_rvol":0.113637},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":459.0,"sell_vol":2663.0,"unclassified_vol":0.0,"imbalance":-0.705958,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.736838},"context":{"vwap":5.946692,"price_vs_vwap_pct":-0.112527,"ema9":5.953919,"ema20":5.951237,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":7.317733,"atr":0.017765,"spread_atr":0.562903,"own_change_pct":-0.251889,"rel_strength_pct":{"SPY":-0.204349,"IWM":-0.236076}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.366079},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ed5afcf37b15","ts":"2026-09-15T16:08:30+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4098,"target":9.675,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.24},"price":9.5612,"vwap":9.5637,"ext_from_open_pct":-1.94,"max_ext_allowed_pct":3.0,"volume_pace":0.849,"trend":"flat","recent_slope_pct":0.0287,"volatility":"high"},"price":9.5612,"volume":{"bars":158,"last_bar_volume":1483.0,"baseline_avg":17765.8,"bar_rvol":0.083475,"raw_accel":-0.887974,"smooth_accel":-0.630173,"accel_momentum":-0.584033,"rvol_3bar":[0.729939,0.767058,0.083475],"trend_3bar":"MIXED","projected_rvol":0.043342},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":0.0,"sell_vol":385.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.038592},"context":{"vwap":9.563714,"price_vs_vwap_pct":-0.02629,"ema9":9.541103,"ema20":9.524639,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.734486,"dist_to_hod_atr":9.189581,"atr":0.029251,"spread_atr":0.341874,"own_change_pct":0.419507,"rel_strength_pct":{"SPY":0.467047,"IWM":0.43532}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.083475},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1ef5162c19f2","ts":"2026-09-15T16:08:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.6557,"target":7.83,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":0.74},"price":7.7436,"vwap":7.7246,"ext_from_open_pct":0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.572,"trend":"flat","recent_slope_pct":-0.0192,"volatility":"medium"},"price":7.7436,"volume":{"bars":158,"last_bar_volume":4392.0,"baseline_avg":12701.8,"bar_rvol":0.345778,"raw_accel":0.383111,"smooth_accel":-0.541188,"accel_momentum":0.168438,"rvol_3bar":[0.463944,0.186656,0.345778],"trend_3bar":"MIXED","projected_rvol":1.170228},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":4745.0,"sell_vol":2687.0,"unclassified_vol":0.0,"imbalance":0.276911,"bid":7.73,"ask":7.74,"spread_pct":0.129282,"quote_size_imbalance":null,"quote_age_s":0.501157},"context":{"vwap":7.724561,"price_vs_vwap_pct":0.246468,"ema9":7.748092,"ema20":7.739963,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.850192,"dist_to_hod_atr":3.451737,"atr":0.019237,"spread_atr":0.51984,"own_change_pct":-0.118633,"rel_strength_pct":{"SPY":-0.071093,"IWM":-0.10282}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.09575},"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":"ba82e70696f0","ts":"2026-09-15T16:08:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8646,"target":6.03,"target_label":"premarket_high","reward_risk":0.99,"pos_in_5d_range_pct":102.4,"room_to_5d_high_atr":-0.05},"price":5.9477,"vwap":5.9467,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":1.523,"trend":"flat","recent_slope_pct":-0.0957,"volatility":"medium"},"price":5.9477,"volume":{"bars":158,"last_bar_volume":28493.0,"baseline_avg":54946.8,"bar_rvol":0.518556,"raw_accel":-0.738354,"smooth_accel":0.354984,"accel_momentum":-0.201677,"rvol_3bar":[0.252253,2.153112,0.518556],"trend_3bar":"MIXED","projected_rvol":0.151395},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2870.0,"sell_vol":1814.0,"unclassified_vol":0.0,"imbalance":0.225448,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":4.294439},"context":{"vwap":5.946692,"price_vs_vwap_pct":0.016956,"ema9":5.953919,"ema20":5.951237,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.014827,"dist_to_hod_atr":6.884298,"atr":0.017765,"spread_atr":0.562903,"own_change_pct":-0.251889,"rel_strength_pct":{"SPY":-0.204349,"IWM":-0.236076}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.116908},"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":"35237a89155b","ts":"2026-09-15T16:08:45+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.1097,"target":11.44,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":25.7,"room_to_5d_high_atr":1.22},"price":11.3265,"vwap":11.2692,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.913,"trend":"flat","recent_slope_pct":-0.0501,"volatility":"high"},"price":11.3265,"volume":{"bars":158,"last_bar_volume":86664.0,"baseline_avg":120754.7,"bar_rvol":0.717686,"raw_accel":-0.084364,"smooth_accel":0.50944,"accel_momentum":-0.124788,"rvol_3bar":[1.305518,0.790448,0.717686],"trend_3bar":"DECELERATING","projected_rvol":0.601241},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":16095.0,"sell_vol":23831.0,"unclassified_vol":0.0,"imbalance":-0.193758,"bid":11.32,"ask":11.33,"spread_pct":0.0883,"quote_size_imbalance":null,"quote_age_s":0.909006},"context":{"vwap":11.268986,"price_vs_vwap_pct":0.510374,"ema9":11.346557,"ema20":11.341754,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.337108,"dist_to_hod_atr":3.940346,"atr":0.038956,"spread_atr":0.2567,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.04754,"IWM":0.015813}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.139058},"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":"76f5b27185fd","ts":"2026-09-15T16:08:50+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9467,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.524,"trend":"flat","recent_slope_pct":-0.1048,"volatility":"medium"},"price":5.945,"volume":{"bars":158,"last_bar_volume":28493.0,"baseline_avg":54946.8,"bar_rvol":0.518556,"raw_accel":-0.738354,"smooth_accel":0.354984,"accel_momentum":-0.201677,"rvol_3bar":[0.252253,2.153112,0.518556],"trend_3bar":"MIXED","projected_rvol":0.65994},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":25789.0,"sell_vol":1868.0,"unclassified_vol":0.0,"imbalance":0.864917,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.128096},"context":{"vwap":5.946692,"price_vs_vwap_pct":-0.028447,"ema9":5.953919,"ema20":5.951237,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":7.036282,"atr":0.017765,"spread_atr":0.562903,"own_change_pct":-0.251889,"rel_strength_pct":{"SPY":-0.204349,"IWM":-0.236076}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.448508},"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":"9a65ca24c159","ts":"2026-09-15T16:09:00+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9467,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.523,"trend":"flat","recent_slope_pct":-0.088,"volatility":"medium"},"price":5.95,"volume":{"bars":158,"last_bar_volume":28493.0,"baseline_avg":54946.8,"bar_rvol":0.518556,"raw_accel":-0.738354,"smooth_accel":0.354984,"accel_momentum":-0.201677,"rvol_3bar":[0.252253,2.153112,0.518556],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":26149.0,"sell_vol":7682.0,"unclassified_vol":0.0,"imbalance":0.54586,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.072066},"context":{"vwap":5.946692,"price_vs_vwap_pct":0.055633,"ema9":5.953919,"ema20":5.951237,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.754831,"atr":0.017765,"spread_atr":0.562903,"own_change_pct":-0.251889,"rel_strength_pct":{"SPY":-0.197744,"IWM":-0.192164}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.283059},"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":"a1bfdeb6bbed","ts":"2026-09-15T16:09:00+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7217,"target":7.875,"target_label":"prev_day_high","reward_risk":0.3,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":2.77},"price":7.84,"vwap":7.8423,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":-0.0167,"volatility":"high"},"price":7.84,"volume":{"bars":158,"last_bar_volume":4184.0,"baseline_avg":6318.4,"bar_rvol":0.662193,"raw_accel":1.648772,"smooth_accel":-0.662029,"accel_momentum":-3.154125,"rvol_3bar":[0.741574,0.011463,0.662193],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":56.0,"sell_vol":331.0,"unclassified_vol":0.0,"imbalance":-0.710594,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.251595},"context":{"vwap":7.842256,"price_vs_vwap_pct":-0.028769,"ema9":7.844192,"ema20":7.83891,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.134931,"dist_to_hod_atr":6.167277,"atr":0.014593,"spread_atr":0.685253,"own_change_pct":-0.23028,"rel_strength_pct":{"SPY":-0.176135,"IWM":-0.170554}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.470551},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f5c04c1ba4b1","ts":"2026-09-15T16:09:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9467,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.522,"trend":"flat","recent_slope_pct":-0.0669,"volatility":"medium"},"price":5.945,"volume":{"bars":159,"last_bar_volume":36953.0,"baseline_avg":53776.65,"bar_rvol":0.687157,"raw_accel":0.296915,"smooth_accel":0.51328,"accel_momentum":0.158296,"rvol_3bar":[2.153112,0.518556,0.687157],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":24486.0,"sell_vol":7657.0,"unclassified_vol":0.0,"imbalance":0.523567,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.534303},"context":{"vwap":5.946697,"price_vs_vwap_pct":-0.028534,"ema9":5.953135,"ema20":5.951119,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":7.035294,"atr":0.017768,"spread_atr":0.562824,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.029818,"IWM":-0.024237}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.359772},"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":"b18a66cda3a7","ts":"2026-09-15T16:09:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8423,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":-0.0064,"volatility":"high"},"price":7.845,"volume":{"bars":159,"last_bar_volume":1272.0,"baseline_avg":5680.9,"bar_rvol":0.223908,"raw_accel":-0.695985,"smooth_accel":-0.812201,"accel_momentum":-0.150171,"rvol_3bar":[0.011463,0.662193,0.223908],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":54.0,"sell_vol":324.0,"unclassified_vol":0.0,"imbalance":-0.714286,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.999326},"context":{"vwap":7.842257,"price_vs_vwap_pct":0.034978,"ema9":7.843353,"ema20":7.839014,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":5.958611,"atr":0.014265,"spread_atr":0.701013,"own_change_pct":-0.254453,"rel_strength_pct":{"SPY":-0.200308,"IWM":-0.194727}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.159934},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"75ff0a1dac5b","ts":"2026-09-15T16:09:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7225,"target":7.875,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":18.2,"room_to_5d_high_atr":2.77},"price":7.8408,"vwap":7.8423,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.061,"trend":"flat","recent_slope_pct":-0.0171,"volatility":"high"},"price":7.8408,"volume":{"bars":159,"last_bar_volume":1272.0,"baseline_avg":5680.9,"bar_rvol":0.223908,"raw_accel":-0.695985,"smooth_accel":-0.812201,"accel_momentum":-0.150171,"rvol_3bar":[0.011463,0.662193,0.223908],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":54.0,"sell_vol":323.0,"unclassified_vol":0.0,"imbalance":-0.713528,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":2.18719},"context":{"vwap":7.842257,"price_vs_vwap_pct":-0.018578,"ema9":7.843353,"ema20":7.839014,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.124842,"dist_to_hod_atr":6.253037,"atr":0.014265,"spread_atr":0.701013,"own_change_pct":-0.254453,"rel_strength_pct":{"SPY":-0.200308,"IWM":-0.194727}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.159765},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4f9d42796759","ts":"2026-09-15T16:09:15+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8423,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.062,"trend":"flat","recent_slope_pct":-0.0064,"volatility":"high"},"price":7.845,"volume":{"bars":159,"last_bar_volume":1272.0,"baseline_avg":5680.9,"bar_rvol":0.223908,"raw_accel":-0.695985,"smooth_accel":-0.812201,"accel_momentum":-0.150171,"rvol_3bar":[0.011463,0.662193,0.223908],"trend_3bar":"MIXED","projected_rvol":1.339929},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1110.0,"sell_vol":1003.0,"unclassified_vol":0.0,"imbalance":0.050639,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.633773},"context":{"vwap":7.842257,"price_vs_vwap_pct":0.034978,"ema9":7.843353,"ema20":7.839014,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":5.958611,"atr":0.014265,"spread_atr":0.701013,"own_change_pct":-0.254453,"rel_strength_pct":{"SPY":-0.200308,"IWM":-0.194727}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.011338},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b92eef6391e2","ts":"2026-09-15T16:09:30+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3271,"target":5.43,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":2.01},"price":5.3893,"vwap":5.3897,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.747,"trend":"flat","recent_slope_pct":-0.0304,"volatility":"medium"},"price":5.3893,"volume":{"bars":159,"last_bar_volume":14440.0,"baseline_avg":33461.25,"bar_rvol":0.431544,"raw_accel":-0.291497,"smooth_accel":-0.641956,"accel_momentum":-1.52692,"rvol_3bar":[0.372147,0.612937,0.431544],"trend_3bar":"MIXED","projected_rvol":0.26048},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":1646.0,"sell_vol":2712.0,"unclassified_vol":0.0,"imbalance":-0.244608,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":6.4e-05},"context":{"vwap":5.389658,"price_vs_vwap_pct":-0.006635,"ema9":5.389196,"ema20":5.385569,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.895495,"dist_to_hod_atr":10.438695,"atr":0.015395,"spread_atr":0.649577,"own_change_pct":0.185874,"rel_strength_pct":{"SPY":0.240018,"IWM":0.245599}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.105559},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"474e25e81ef8","ts":"2026-09-15T16:09:35+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3328,"target":5.5297,"target_label":"premarket_high","reward_risk":2.16,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":1.99},"price":5.395,"vwap":5.3897,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.747,"trend":"flat","recent_slope_pct":-0.0093,"volatility":"medium"},"price":5.395,"volume":{"bars":159,"last_bar_volume":14440.0,"baseline_avg":33461.25,"bar_rvol":0.431544,"raw_accel":-0.291497,"smooth_accel":-0.641956,"accel_momentum":-1.52692,"rvol_3bar":[0.372147,0.612937,0.431544],"trend_3bar":"MIXED","projected_rvol":0.247655},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2069.0,"sell_vol":1647.0,"unclassified_vol":0.0,"imbalance":0.113563,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":2.351328},"context":{"vwap":5.389658,"price_vs_vwap_pct":0.099123,"ema9":5.389196,"ema20":5.385569,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.792793,"dist_to_hod_atr":10.068437,"atr":0.015395,"spread_atr":0.649577,"own_change_pct":0.185874,"rel_strength_pct":{"SPY":0.240018,"IWM":0.245599}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.049007},"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":"4d1c46671ded","ts":"2026-09-15T16:09:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8704,"target":6.03,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":103.2,"room_to_5d_high_atr":-0.07},"price":5.9535,"vwap":5.9467,"ext_from_open_pct":0.74,"max_ext_allowed_pct":3.0,"volume_pace":1.517,"trend":"flat","recent_slope_pct":-0.0383,"volatility":"medium"},"price":5.9535,"volume":{"bars":159,"last_bar_volume":36953.0,"baseline_avg":53776.65,"bar_rvol":0.687157,"raw_accel":0.296915,"smooth_accel":0.51328,"accel_momentum":0.158296,"rvol_3bar":[2.153112,0.518556,0.687157],"trend_3bar":"MIXED","projected_rvol":0.20507},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":3104.0,"sell_vol":3309.0,"unclassified_vol":0.0,"imbalance":-0.031966,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.795745},"context":{"vwap":5.946697,"price_vs_vwap_pct":0.114402,"ema9":5.953135,"ema20":5.951119,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.919275,"dist_to_hod_atr":6.556894,"atr":0.017768,"spread_atr":0.562824,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.029818,"IWM":-0.024237}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.021966},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"15c8f2e1fae6","ts":"2026-09-15T16:09:45+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8318,"target":10.015,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":19.8,"room_to_5d_high_atr":2.56},"price":9.951,"vwap":9.9564,"ext_from_open_pct":1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.888,"trend":"flat","recent_slope_pct":-0.0171,"volatility":"medium"},"price":9.951,"volume":{"bars":159,"last_bar_volume":12972.0,"baseline_avg":107497.55,"bar_rvol":0.120673,"raw_accel":-0.740949,"smooth_accel":0.809798,"accel_momentum":-0.281106,"rvol_3bar":[0.437176,0.448592,0.120673],"trend_3bar":"MIXED","projected_rvol":0.50261},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":6263.0,"sell_vol":30784.0,"unclassified_vol":0.0,"imbalance":-0.661889,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":1.071764},"context":{"vwap":9.95639,"price_vs_vwap_pct":-0.054137,"ema9":9.959745,"ema20":9.959094,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.985075,"dist_to_hod_atr":6.552081,"atr":0.01511,"spread_atr":0.661826,"own_change_pct":0.060271,"rel_strength_pct":{"SPY":0.114416,"IWM":0.119997}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.079872},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bc777009c357","ts":"2026-09-15T16:09:50+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9467,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":1.516,"trend":"flat","recent_slope_pct":-0.0669,"volatility":"medium"},"price":5.945,"volume":{"bars":159,"last_bar_volume":36953.0,"baseline_avg":53776.65,"bar_rvol":0.687157,"raw_accel":0.296915,"smooth_accel":0.51328,"accel_momentum":0.158296,"rvol_3bar":[2.153112,0.518556,0.687157],"trend_3bar":"MIXED","projected_rvol":0.173406},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2612.0,"sell_vol":3402.0,"unclassified_vol":0.0,"imbalance":-0.13136,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.761316},"context":{"vwap":5.946697,"price_vs_vwap_pct":-0.028534,"ema9":5.953135,"ema20":5.951119,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":7.035294,"atr":0.017768,"spread_atr":0.562824,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.029818,"IWM":-0.024237}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.090265},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"28532f9c5ec3","ts":"2026-09-15T16:09:55+00:00","symbol":"NOK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8407,"target":10.2,"target_label":"prev_day_high","reward_risk":2.01,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":2.54},"price":9.9599,"vwap":9.9564,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.887,"trend":"flat","recent_slope_pct":0.0008,"volatility":"medium"},"price":9.9599,"volume":{"bars":159,"last_bar_volume":12972.0,"baseline_avg":107497.55,"bar_rvol":0.120673,"raw_accel":-0.740949,"smooth_accel":0.809798,"accel_momentum":-0.281106,"rvol_3bar":[0.437176,0.448592,0.120673],"trend_3bar":"MIXED","projected_rvol":0.46077},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":7148.0,"sell_vol":34078.0,"unclassified_vol":0.0,"imbalance":-0.653229,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.436867},"context":{"vwap":9.95639,"price_vs_vwap_pct":0.035253,"ema9":9.959745,"ema20":9.959094,"ema_stack":true,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.896517,"dist_to_hod_atr":5.963055,"atr":0.01511,"spread_atr":0.661826,"own_change_pct":0.060271,"rel_strength_pct":{"SPY":0.114416,"IWM":0.119997}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.078827},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d195ffffc62d","ts":"2026-09-15T16:10:00+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.96 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8367,"target":10.2,"target_label":"prev_day_high","reward_risk":2.05,"pos_in_5d_range_pct":20.1,"room_to_5d_high_atr":2.55},"price":9.9559,"vwap":9.9564,"ext_from_open_pct":1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.887,"trend":"flat","recent_slope_pct":-0.0072,"volatility":"medium"},"price":9.9559,"volume":{"bars":159,"last_bar_volume":12972.0,"baseline_avg":107497.55,"bar_rvol":0.120673,"raw_accel":-0.740949,"smooth_accel":0.809798,"accel_momentum":-0.281106,"rvol_3bar":[0.437176,0.448592,0.120673],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":7105.0,"sell_vol":43915.0,"unclassified_vol":0.0,"imbalance":-0.721482,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":1.452968},"context":{"vwap":9.95639,"price_vs_vwap_pct":-0.004922,"ema9":9.959745,"ema20":9.959094,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.936318,"dist_to_hod_atr":6.227786,"atr":0.01511,"spread_atr":0.661826,"own_change_pct":0.060271,"rel_strength_pct":{"SPY":0.138176,"IWM":0.130533}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.087063},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9e1c3cce7156","ts":"2026-09-15T16:10:00+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3271,"target":5.43,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":2.01},"price":5.3893,"vwap":5.3897,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":3.0,"volume_pace":0.745,"trend":"flat","recent_slope_pct":-0.0304,"volatility":"medium"},"price":5.3893,"volume":{"bars":159,"last_bar_volume":14440.0,"baseline_avg":33461.25,"bar_rvol":0.431544,"raw_accel":-0.291497,"smooth_accel":-0.641956,"accel_momentum":-1.52692,"rvol_3bar":[0.372147,0.612937,0.431544],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":983.0,"sell_vol":2024.0,"unclassified_vol":0.0,"imbalance":-0.346192,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":3.1e-05},"context":{"vwap":5.389658,"price_vs_vwap_pct":-0.006635,"ema9":5.389196,"ema20":5.385569,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.895495,"dist_to_hod_atr":10.438695,"atr":0.015395,"spread_atr":0.649577,"own_change_pct":0.185874,"rel_strength_pct":{"SPY":0.263779,"IWM":0.256135}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.149397},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0572050b740c","ts":"2026-09-15T16:10:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.33,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":63.5,"room_to_5d_high_atr":0.88},"price":8.4522,"vwap":8.3279,"ext_from_open_pct":1.47,"max_ext_allowed_pct":4.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":-0.0977,"volatility":"medium"},"price":8.4522,"volume":{"bars":160,"last_bar_volume":2176.0,"baseline_avg":992.85,"bar_rvol":2.19167,"raw_accel":-0.208727,"smooth_accel":6.412078,"accel_momentum":0.957624,"rvol_3bar":[4.157297,2.8182,2.19167],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":15.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.666667,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":0.787413},"context":{"vwap":8.32786,"price_vs_vwap_pct":1.493057,"ema9":8.456181,"ema20":8.452016,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.562353,"dist_to_hod_atr":2.394249,"atr":0.019965,"spread_atr":0.500889,"own_change_pct":-0.589971,"rel_strength_pct":{"SPY":-0.512065,"IWM":-0.519709}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.461114},"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":"0018cab6a686","ts":"2026-09-15T16:10:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1232,"target":11.44,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":26.7,"room_to_5d_high_atr":1.21},"price":11.34,"vwap":11.2694,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":0.909,"trend":"flat","recent_slope_pct":-0.0485,"volatility":"high"},"price":11.34,"volume":{"bars":160,"last_bar_volume":68493.0,"baseline_avg":118655.95,"bar_rvol":0.57724,"raw_accel":0.029583,"smooth_accel":-0.377027,"accel_momentum":-0.163664,"rvol_3bar":[0.717686,0.548188,0.57724],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":12535.0,"sell_vol":14398.0,"unclassified_vol":0.0,"imbalance":-0.069172,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.238963},"context":{"vwap":11.26944,"price_vs_vwap_pct":0.626117,"ema9":11.341597,"ema20":11.340098,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.219512,"dist_to_hod_atr":3.647452,"atr":0.038383,"spread_atr":0.260532,"own_change_pct":-0.088145,"rel_strength_pct":{"SPY":-0.010239,"IWM":-0.017883}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.039929},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0bfa347fba5e","ts":"2026-09-15T16:10:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3328,"target":5.5297,"target_label":"premarket_high","reward_risk":2.16,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":1.99},"price":5.395,"vwap":5.3897,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.745,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.395,"volume":{"bars":160,"last_bar_volume":7365.0,"baseline_avg":30332.1,"bar_rvol":0.242812,"raw_accel":-0.489958,"smooth_accel":-0.684602,"accel_momentum":-0.042647,"rvol_3bar":[0.612937,0.431544,0.242812],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":1081.0,"sell_vol":2018.0,"unclassified_vol":0.0,"imbalance":-0.302356,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":0.696035},"context":{"vwap":5.38966,"price_vs_vwap_pct":0.099075,"ema9":5.389216,"ema20":5.385924,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.792793,"dist_to_hod_atr":10.292635,"atr":0.015059,"spread_atr":0.664041,"own_change_pct":0.022271,"rel_strength_pct":{"SPY":0.100177,"IWM":0.092533}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.073416},"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":"a1fb0f1cd9e7","ts":"2026-09-15T16:10:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.31x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":7.9065,"target":8.19,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":65.8,"room_to_5d_high_atr":0.76},"price":8.0962,"vwap":7.8257,"ext_from_open_pct":5.15,"max_ext_allowed_pct":3.0,"volume_pace":0.306,"trend":"flat","recent_slope_pct":-0.0677,"volatility":"high"},"price":8.0962,"volume":{"bars":160,"last_bar_volume":10726.0,"baseline_avg":19022.3,"bar_rvol":0.563865,"raw_accel":0.474567,"smooth_accel":0.968753,"accel_momentum":0.391777,"rvol_3bar":[1.385104,0.375256,0.563865],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1235.0,"sell_vol":3787.0,"unclassified_vol":0.0,"imbalance":-0.508164,"bid":8.1,"ask":8.12,"spread_pct":0.246609,"quote_size_imbalance":null,"quote_age_s":1.548882},"context":{"vwap":7.825645,"price_vs_vwap_pct":3.457283,"ema9":8.10016,"ema20":8.089585,"ema_stack":false,"ema_warm":true,"hod":8.19,"dist_to_hod_pct":-1.145299,"dist_to_hod_atr":1.700627,"atr":0.055156,"spread_atr":0.362607,"own_change_pct":-0.060586,"rel_strength_pct":{"SPY":0.017319,"IWM":0.009676}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.286536},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"58f8d7dfe594","ts":"2026-09-15T16:10:25+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.8381,"target":10.2,"target_label":"prev_day_high","reward_risk":2.04,"pos_in_5d_range_pct":20.2,"room_to_5d_high_atr":2.54},"price":9.9573,"vwap":9.9564,"ext_from_open_pct":1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.885,"trend":"flat","recent_slope_pct":-0.0296,"volatility":"medium"},"price":9.9573,"volume":{"bars":160,"last_bar_volume":55255.0,"baseline_avg":87720.15,"bar_rvol":0.629901,"raw_accel":1.519604,"smooth_accel":0.349817,"accel_momentum":-0.459981,"rvol_3bar":[0.448592,0.120673,0.629901],"trend_3bar":"MIXED","projected_rvol":0.112011},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":645.0,"sell_vol":13300.0,"unclassified_vol":0.0,"imbalance":-0.907494,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":0.072238},"context":{"vwap":9.956391,"price_vs_vwap_pct":0.009125,"ema9":9.958976,"ema20":9.95879,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.922388,"dist_to_hod_atr":6.089351,"atr":0.015223,"spread_atr":0.656888,"own_change_pct":0.059296,"rel_strength_pct":{"SPY":0.137202,"IWM":0.129558}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.571631},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b1976619d3b3","ts":"2026-09-15T16:10:25+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3272,"target":5.43,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":2.01},"price":5.3894,"vwap":5.3897,"ext_from_open_pct":-1.29,"max_ext_allowed_pct":4.0,"volume_pace":0.744,"trend":"flat","recent_slope_pct":-0.0208,"volatility":"medium"},"price":5.3894,"volume":{"bars":160,"last_bar_volume":7365.0,"baseline_avg":30332.1,"bar_rvol":0.242812,"raw_accel":-0.489958,"smooth_accel":-0.684602,"accel_momentum":-0.042647,"rvol_3bar":[0.612937,0.431544,0.242812],"trend_3bar":"DECELERATING","projected_rvol":1.136301},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":11285.0,"sell_vol":3506.0,"unclassified_vol":0.0,"imbalance":0.525928,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":2.40651},"context":{"vwap":5.38966,"price_vs_vwap_pct":-0.004828,"ema9":5.389216,"ema20":5.385924,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.893694,"dist_to_hod_atr":10.664498,"atr":0.015059,"spread_atr":0.664041,"own_change_pct":0.022271,"rel_strength_pct":{"SPY":0.100177,"IWM":0.092533}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.127702},"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":"de92645fec05","ts":"2026-09-15T16:10:30+00:00","symbol":"NOK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.95 below VWAP $9.96","plan":{"state":"PASS","setup":"","stop":9.8308,"target":10.01,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.56},"price":9.95,"vwap":9.9564,"ext_from_open_pct":1.22,"max_ext_allowed_pct":3.0,"volume_pace":0.884,"trend":"flat","recent_slope_pct":-0.0443,"volatility":"medium"},"price":9.95,"volume":{"bars":160,"last_bar_volume":55255.0,"baseline_avg":87720.15,"bar_rvol":0.629901,"raw_accel":1.519604,"smooth_accel":0.349817,"accel_momentum":-0.459981,"rvol_3bar":[0.448592,0.120673,0.629901],"trend_3bar":"MIXED","projected_rvol":0.108345},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":838.0,"sell_vol":3914.0,"unclassified_vol":0.0,"imbalance":-0.647306,"bid":9.95,"ask":9.96,"spread_pct":0.100452,"quote_size_imbalance":null,"quote_age_s":3.784309},"context":{"vwap":9.956391,"price_vs_vwap_pct":-0.064194,"ema9":9.958976,"ema20":9.95879,"ema_stack":false,"ema_warm":true,"hod":10.05,"dist_to_hod_pct":-0.995025,"dist_to_hod_atr":6.56888,"atr":0.015223,"spread_atr":0.656888,"own_change_pct":0.059296,"rel_strength_pct":{"SPY":0.137202,"IWM":0.129558}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.407739},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"05f0b76dfb3f","ts":"2026-09-15T16:10:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3328,"target":5.5297,"target_label":"premarket_high","reward_risk":2.16,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":1.99},"price":5.395,"vwap":5.3897,"ext_from_open_pct":-1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.744,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.395,"volume":{"bars":160,"last_bar_volume":7365.0,"baseline_avg":30332.1,"bar_rvol":0.242812,"raw_accel":-0.489958,"smooth_accel":-0.684602,"accel_momentum":-0.042647,"rvol_3bar":[0.612937,0.431544,0.242812],"trend_3bar":"DECELERATING","projected_rvol":0.955292},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":11189.0,"sell_vol":3299.0,"unclassified_vol":0.0,"imbalance":0.544589,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":1.3e-05},"context":{"vwap":5.38966,"price_vs_vwap_pct":0.099075,"ema9":5.389216,"ema20":5.385924,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.792793,"dist_to_hod_atr":10.292635,"atr":0.015059,"spread_atr":0.664041,"own_change_pct":0.022271,"rel_strength_pct":{"SPY":0.100177,"IWM":0.092533}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.132233},"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":"b16467902028","ts":"2026-09-15T16:10:45+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.0982,"target":11.44,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":24.9,"room_to_5d_high_atr":1.23},"price":11.315,"vwap":11.2697,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.909,"trend":"flat","recent_slope_pct":-0.0926,"volatility":"high"},"price":11.315,"volume":{"bars":160,"last_bar_volume":68493.0,"baseline_avg":118655.95,"bar_rvol":0.57724,"raw_accel":0.029583,"smooth_accel":-0.377027,"accel_momentum":-0.163664,"rvol_3bar":[0.717686,0.548188,0.57724],"trend_3bar":"MIXED","projected_rvol":1.079682},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":23742.0,"sell_vol":30967.0,"unclassified_vol":0.0,"imbalance":-0.132062,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.027734},"context":{"vwap":11.26944,"price_vs_vwap_pct":0.404278,"ema9":11.341597,"ema20":11.340098,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.437282,"dist_to_hod_atr":4.298783,"atr":0.038383,"spread_atr":0.260532,"own_change_pct":-0.088145,"rel_strength_pct":{"SPY":-0.010239,"IWM":-0.017883}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.076232},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"68349c906016","ts":"2026-09-15T16:11:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.33,"target":8.48,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.96},"price":8.425,"vwap":8.3279,"ext_from_open_pct":1.14,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":-0.0949,"volatility":"medium"},"price":8.425,"volume":{"bars":161,"last_bar_volume":31.0,"baseline_avg":1090.7,"bar_rvol":0.028422,"raw_accel":-0.985754,"smooth_accel":0.197922,"accel_momentum":-6.214156,"rvol_3bar":[2.8182,2.19167,0.028422],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":100.0,"sell_vol":29.0,"unclassified_vol":0.0,"imbalance":0.550388,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":0.995738},"context":{"vwap":8.327876,"price_vs_vwap_pct":1.166256,"ema9":8.452205,"ema20":8.450519,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.882353,"dist_to_hod_atr":3.661872,"atr":0.020481,"spread_atr":0.48825,"own_change_pct":-0.468381,"rel_strength_pct":{"SPY":-0.411593,"IWM":-0.398115}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.015643},"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":"842ea87b0fce","ts":"2026-09-15T16:11:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.6515,"target":7.83,"target_label":"premarket_high","reward_risk":1.03,"pos_in_5d_range_pct":51.3,"room_to_5d_high_atr":0.76},"price":7.7394,"vwap":7.7246,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":0.564,"trend":"flat","recent_slope_pct":-0.02,"volatility":"medium"},"price":7.7394,"volume":{"bars":161,"last_bar_volume":1333.0,"baseline_avg":12759.35,"bar_rvol":0.104472,"raw_accel":-0.58211,"smooth_accel":-0.120771,"accel_momentum":-0.747328,"rvol_3bar":[0.590294,0.184119,0.104472],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":224.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":0.04918,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.37478},"context":{"vwap":7.724629,"price_vs_vwap_pct":0.191218,"ema9":7.741892,"ema20":7.738787,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.903969,"dist_to_hod_atr":3.623437,"atr":0.019484,"spread_atr":0.513235,"own_change_pct":-0.065853,"rel_strength_pct":{"SPY":-0.009065,"IWM":0.004413}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.005138},"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":"f9dcf54cce48","ts":"2026-09-15T16:11:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.0882,"target":11.44,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":1.25},"price":11.305,"vwap":11.2698,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.909,"trend":"flat","recent_slope_pct":-0.0795,"volatility":"high"},"price":11.305,"volume":{"bars":161,"last_bar_volume":128983.0,"baseline_avg":114036.0,"bar_rvol":1.131073,"raw_accel":0.883156,"smooth_accel":-0.219562,"accel_momentum":0.157464,"rvol_3bar":[0.548188,0.57724,1.131073],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":9432.0,"sell_vol":44403.0,"unclassified_vol":0.0,"imbalance":-0.649596,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":6.038001},"context":{"vwap":11.269766,"price_vs_vwap_pct":0.312637,"ema9":11.335277,"ema20":11.337231,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.52439,"dist_to_hod_atr":4.462022,"atr":0.03922,"spread_atr":0.254973,"own_change_pct":-0.439264,"rel_strength_pct":{"SPY":-0.382476,"IWM":-0.368998}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.73474},"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":"8488f8911948","ts":"2026-09-15T16:11:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3569,"target":8.5586,"target_label":"premarket_high","reward_risk":1.24,"pos_in_5d_range_pct":62.9,"room_to_5d_high_atr":0.9},"price":8.447,"vwap":8.3279,"ext_from_open_pct":1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":-0.0428,"volatility":"medium"},"price":8.447,"volume":{"bars":161,"last_bar_volume":31.0,"baseline_avg":1090.7,"bar_rvol":0.028422,"raw_accel":-0.985754,"smooth_accel":0.197922,"accel_momentum":-6.214156,"rvol_3bar":[2.8182,2.19167,0.028422],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":137.0,"sell_vol":29.0,"unclassified_vol":0.0,"imbalance":0.650602,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":0.698516},"context":{"vwap":8.327876,"price_vs_vwap_pct":1.430429,"ema9":8.452205,"ema20":8.450519,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.623529,"dist_to_hod_atr":2.587723,"atr":0.020481,"spread_atr":0.48825,"own_change_pct":-0.468381,"rel_strength_pct":{"SPY":-0.411593,"IWM":-0.398115}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.018491},"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":"b11780080ef5","ts":"2026-09-15T16:11:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.6511,"target":7.83,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":51.2,"room_to_5d_high_atr":0.76},"price":7.739,"vwap":7.7246,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":-0.0211,"volatility":"medium"},"price":7.739,"volume":{"bars":161,"last_bar_volume":1333.0,"baseline_avg":12759.35,"bar_rvol":0.104472,"raw_accel":-0.58211,"smooth_accel":-0.120771,"accel_momentum":-0.747328,"rvol_3bar":[0.590294,0.184119,0.104472],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":229.0,"sell_vol":303.0,"unclassified_vol":0.0,"imbalance":-0.139098,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":2.72632},"context":{"vwap":7.724629,"price_vs_vwap_pct":0.18604,"ema9":7.741892,"ema20":7.738787,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.909091,"dist_to_hod_atr":3.643966,"atr":0.019484,"spread_atr":0.513235,"own_change_pct":-0.065853,"rel_strength_pct":{"SPY":-0.009065,"IWM":0.004413}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.014532},"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":"7d50557c0e20","ts":"2026-09-15T16:11:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.33,"target":8.48,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.96},"price":8.425,"vwap":8.328,"ext_from_open_pct":1.14,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":-0.0949,"volatility":"medium"},"price":8.425,"volume":{"bars":161,"last_bar_volume":31.0,"baseline_avg":1090.7,"bar_rvol":0.028422,"raw_accel":-0.985754,"smooth_accel":0.197922,"accel_momentum":-6.214156,"rvol_3bar":[2.8182,2.19167,0.028422],"trend_3bar":"DECELERATING","projected_rvol":1.052535},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":137.0,"sell_vol":150.0,"unclassified_vol":0.0,"imbalance":-0.045296,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":5.698516},"context":{"vwap":8.327876,"price_vs_vwap_pct":1.166256,"ema9":8.452205,"ema20":8.450519,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.882353,"dist_to_hod_atr":3.661872,"atr":0.020481,"spread_atr":0.48825,"own_change_pct":-0.468381,"rel_strength_pct":{"SPY":-0.411593,"IWM":-0.398115}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001287},"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":"aa3c60d3bb0d","ts":"2026-09-15T16:11:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.8299,"vwap":9.6103,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":4.191,"trend":"flat","recent_slope_pct":0.2103,"volatility":"low"},"price":9.8299,"volume":{"bars":161,"last_bar_volume":5764.0,"baseline_avg":5303.65,"bar_rvol":1.086799,"raw_accel":1.431042,"smooth_accel":0.123087,"accel_momentum":0.417774,"rvol_3bar":[0.382732,0.453637,1.086799],"trend_3bar":"ACCELERATING","projected_rvol":2.285219},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":5465.0,"sell_vol":2023.0,"unclassified_vol":0.0,"imbalance":0.459669,"bid":9.78,"ask":9.83,"spread_pct":0.509944,"quote_size_imbalance":null,"quote_age_s":4.849072},"context":{"vwap":9.609797,"price_vs_vwap_pct":2.290402,"ema9":9.759729,"ema20":9.755579,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.628431,"dist_to_hod_atr":6.93859,"atr":0.053339,"spread_atr":0.937394,"own_change_pct":0.311792,"rel_strength_pct":{"SPY":0.36858,"IWM":0.382058}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.499567},"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":"d0b4d5056a81","ts":"2026-09-15T16:11:20+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.8655,"target":6.03,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":102.5,"room_to_5d_high_atr":-0.06},"price":5.9486,"vwap":5.9467,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":1.508,"trend":"flat","recent_slope_pct":-0.0047,"volatility":"medium"},"price":5.9486,"volume":{"bars":161,"last_bar_volume":65806.0,"baseline_avg":48682.6,"bar_rvol":1.351736,"raw_accel":4.406942,"smooth_accel":-0.265892,"accel_momentum":0.291204,"rvol_3bar":[0.687157,0.165947,1.351736],"trend_3bar":"MIXED","projected_rvol":0.216237},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":2712.0,"sell_vol":2578.0,"unclassified_vol":0.0,"imbalance":0.025331,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":0.849816},"context":{"vwap":5.946667,"price_vs_vwap_pct":0.032512,"ema9":5.946407,"ema20":5.94815,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.0,"dist_to_hod_atr":6.674788,"atr":0.018188,"spread_atr":0.549818,"own_change_pct":-0.543405,"rel_strength_pct":{"SPY":-0.486617,"IWM":-0.473139}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.034241},"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":"08f3b780dd70","ts":"2026-09-15T16:11:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":471.6,"room_to_5d_high_atr":-5.35},"price":9.805,"vwap":9.6103,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":4.189,"trend":"flat","recent_slope_pct":0.1595,"volatility":"low"},"price":9.805,"volume":{"bars":161,"last_bar_volume":5764.0,"baseline_avg":5303.65,"bar_rvol":1.086799,"raw_accel":1.431042,"smooth_accel":0.123087,"accel_momentum":0.417774,"rvol_3bar":[0.382732,0.453637,1.086799],"trend_3bar":"ACCELERATING","projected_rvol":1.952618},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":3523.0,"sell_vol":1946.0,"unclassified_vol":0.0,"imbalance":0.288353,"bid":9.78,"ask":9.83,"spread_pct":0.509944,"quote_size_imbalance":null,"quote_age_s":9.849072},"context":{"vwap":9.609797,"price_vs_vwap_pct":2.031292,"ema9":9.759729,"ema20":9.755579,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.872549,"dist_to_hod_atr":7.405412,"atr":0.053339,"spread_atr":0.937394,"own_change_pct":0.311792,"rel_strength_pct":{"SPY":0.36858,"IWM":0.382058}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.313381},"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":"f8182c182824","ts":"2026-09-15T16:11:25+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":6.03,"target_label":"premarket_high","reward_risk":1.08,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9467,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.507,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"medium"},"price":5.94,"volume":{"bars":161,"last_bar_volume":65806.0,"baseline_avg":48682.6,"bar_rvol":1.351736,"raw_accel":4.406942,"smooth_accel":-0.265892,"accel_momentum":0.291204,"rvol_3bar":[0.687157,0.165947,1.351736],"trend_3bar":"MIXED","projected_rvol":0.204689},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2617.0,"sell_vol":2951.0,"unclassified_vol":0.0,"imbalance":-0.059986,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":1.888877},"context":{"vwap":5.946667,"price_vs_vwap_pct":-0.112106,"ema9":5.946407,"ema20":5.94815,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":7.147631,"atr":0.018188,"spread_atr":0.549818,"own_change_pct":-0.543405,"rel_strength_pct":{"SPY":-0.486617,"IWM":-0.473139}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.081085},"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":"1e698c3a62ae","ts":"2026-09-15T16:12:00+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7217,"target":7.875,"target_label":"prev_day_high","reward_risk":0.3,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":2.77},"price":7.84,"vwap":7.8424,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":0.0017,"volatility":"high"},"price":7.84,"volume":{"bars":161,"last_bar_volume":1974.0,"baseline_avg":7399.55,"bar_rvol":0.266773,"raw_accel":-0.948753,"smooth_accel":3.621556,"accel_momentum":3.113445,"rvol_3bar":[0.223908,6.988144,0.266773],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":38.0,"sell_vol":4737.0,"unclassified_vol":0.0,"imbalance":-0.984084,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.370539},"context":{"vwap":7.842373,"price_vs_vwap_pct":-0.030264,"ema9":7.84443,"ema20":7.840359,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.134931,"dist_to_hod_atr":6.427642,"atr":0.014002,"spread_atr":0.714182,"own_change_pct":0.001275,"rel_strength_pct":{"SPY":0.034957,"IWM":0.032906}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.262527},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2195226f8522","ts":"2026-09-15T16:12:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.8299,"vwap":9.6107,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":4.179,"trend":"flat","recent_slope_pct":0.1523,"volatility":"low"},"price":9.8299,"volume":{"bars":162,"last_bar_volume":6599.0,"baseline_avg":5423.9,"bar_rvol":1.216652,"raw_accel":0.144865,"smooth_accel":2.806252,"accel_momentum":2.683164,"rvol_3bar":[0.453637,1.086799,1.216652],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1790.0,"sell_vol":717.0,"unclassified_vol":0.0,"imbalance":0.428002,"bid":9.8,"ask":9.83,"spread_pct":0.305655,"quote_size_imbalance":null,"quote_age_s":4.991096},"context":{"vwap":9.61061,"price_vs_vwap_pct":2.281746,"ema9":9.771503,"ema20":9.761581,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.628431,"dist_to_hod_atr":6.770313,"atr":0.054665,"spread_atr":0.548796,"own_change_pct":0.698426,"rel_strength_pct":{"SPY":0.732108,"IWM":0.730057}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.520729},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e556fffbe137","ts":"2026-09-15T16:12:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8424,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.069,"trend":"flat","recent_slope_pct":0.0027,"volatility":"high"},"price":7.845,"volume":{"bars":162,"last_bar_volume":5116.0,"baseline_avg":6741.1,"bar_rvol":0.758927,"raw_accel":1.591692,"smooth_accel":7.24905,"accel_momentum":3.627495,"rvol_3bar":[6.988144,0.266773,0.758927],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":2.0,"sell_vol":297.0,"unclassified_vol":0.0,"imbalance":-0.986622,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.740636},"context":{"vwap":7.842376,"price_vs_vwap_pct":0.033458,"ema9":7.843544,"ema20":7.840325,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":6.197068,"atr":0.013716,"spread_atr":0.729067,"own_change_pct":-0.063735,"rel_strength_pct":{"SPY":-0.030053,"IWM":-0.032104}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.748774},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c880fc128282","ts":"2026-09-15T16:12:05+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.0865,"target":11.44,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.25},"price":11.3033,"vwap":11.27,"ext_from_open_pct":0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":-0.0648,"volatility":"high"},"price":11.3033,"volume":{"bars":162,"last_bar_volume":91335.0,"baseline_avg":113073.3,"bar_rvol":0.80775,"raw_accel":-0.291883,"smooth_accel":0.165322,"accel_momentum":0.384884,"rvol_3bar":[0.57724,1.131073,0.80775],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":11337.0,"sell_vol":22584.0,"unclassified_vol":0.0,"imbalance":-0.331565,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.468866},"context":{"vwap":11.270001,"price_vs_vwap_pct":0.295462,"ema9":11.331222,"ema20":11.335114,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.539199,"dist_to_hod_atr":4.50471,"atr":0.039226,"spread_atr":0.254935,"own_change_pct":-0.439947,"rel_strength_pct":{"SPY":-0.406265,"IWM":-0.408316}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.267821},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e05845d59d38","ts":"2026-09-15T16:12:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":477.5,"room_to_5d_high_atr":-5.44},"price":9.8268,"vwap":9.6107,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":4.179,"trend":"flat","recent_slope_pct":0.146,"volatility":"low"},"price":9.8268,"volume":{"bars":162,"last_bar_volume":6599.0,"baseline_avg":5423.9,"bar_rvol":1.216652,"raw_accel":0.144865,"smooth_accel":2.806252,"accel_momentum":2.683164,"rvol_3bar":[0.453637,1.086799,1.216652],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1326.0,"sell_vol":1035.0,"unclassified_vol":0.0,"imbalance":0.123253,"bid":9.8,"ask":9.83,"spread_pct":0.305655,"quote_size_imbalance":null,"quote_age_s":9.991096},"context":{"vwap":9.61061,"price_vs_vwap_pct":2.24949,"ema9":9.771503,"ema20":9.761581,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.658824,"dist_to_hod_atr":6.827022,"atr":0.054665,"spread_atr":0.548796,"own_change_pct":0.698426,"rel_strength_pct":{"SPY":0.732108,"IWM":0.730057}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.149956},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e805dd28a8d7","ts":"2026-09-15T16:12:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6446,"target":7.83,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":0.77},"price":7.7325,"vwap":7.7246,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.562,"trend":"flat","recent_slope_pct":-0.0313,"volatility":"medium"},"price":7.7325,"volume":{"bars":162,"last_bar_volume":6144.0,"baseline_avg":8534.15,"bar_rvol":0.719931,"raw_accel":1.879724,"smooth_accel":-0.307525,"accel_momentum":-0.186754,"rvol_3bar":[0.184119,0.104472,0.719931],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":843.0,"sell_vol":5815.0,"unclassified_vol":0.0,"imbalance":-0.746771,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":1.131738},"context":{"vwap":7.72464,"price_vs_vwap_pct":0.101753,"ema9":7.737514,"ema20":7.736997,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.992318,"dist_to_hod_atr":3.890347,"atr":0.019921,"spread_atr":0.50198,"own_change_pct":-0.435915,"rel_strength_pct":{"SPY":-0.402233,"IWM":-0.404284}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.537624},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c6faa1a65044","ts":"2026-09-15T16:12:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":478.3,"room_to_5d_high_atr":-5.45},"price":9.8298,"vwap":9.6108,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":4.178,"trend":"flat","recent_slope_pct":0.1521,"volatility":"low"},"price":9.8298,"volume":{"bars":162,"last_bar_volume":6599.0,"baseline_avg":5423.9,"bar_rvol":1.216652,"raw_accel":0.144865,"smooth_accel":2.806252,"accel_momentum":2.683164,"rvol_3bar":[0.453637,1.086799,1.216652],"trend_3bar":"ACCELERATING","projected_rvol":0.976419},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1770.0,"sell_vol":744.0,"unclassified_vol":0.0,"imbalance":0.408115,"bid":9.8,"ask":9.83,"spread_pct":0.305655,"quote_size_imbalance":null,"quote_age_s":4.880263},"context":{"vwap":9.61061,"price_vs_vwap_pct":2.280705,"ema9":9.771503,"ema20":9.761581,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.629412,"dist_to_hod_atr":6.772142,"atr":0.054665,"spread_atr":0.548796,"own_change_pct":0.698426,"rel_strength_pct":{"SPY":0.732108,"IWM":0.730057}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.496533},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4065f08ca8a6","ts":"2026-09-15T16:12:15+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6333,"target":7.775,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":0.81},"price":7.7212,"vwap":7.7246,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.561,"trend":"flat","recent_slope_pct":-0.0605,"volatility":"medium"},"price":7.7212,"volume":{"bars":162,"last_bar_volume":6144.0,"baseline_avg":8534.15,"bar_rvol":0.719931,"raw_accel":1.879724,"smooth_accel":-0.307525,"accel_momentum":-0.186754,"rvol_3bar":[0.184119,0.104472,0.719931],"trend_3bar":"MIXED","projected_rvol":0.495421},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":543.0,"sell_vol":4738.0,"unclassified_vol":0.0,"imbalance":-0.794357,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.244705},"context":{"vwap":7.72464,"price_vs_vwap_pct":-0.044532,"ema9":7.737514,"ema20":7.736997,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.137004,"dist_to_hod_atr":4.457585,"atr":0.019921,"spread_atr":0.50198,"own_change_pct":-0.435915,"rel_strength_pct":{"SPY":-0.402233,"IWM":-0.404284}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.571882},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"806f37e57aa0","ts":"2026-09-15T16:12:20+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":477.0,"room_to_5d_high_atr":-5.43},"price":9.825,"vwap":9.6109,"ext_from_open_pct":3.97,"max_ext_allowed_pct":5.0,"volume_pace":4.177,"trend":"flat","recent_slope_pct":0.1423,"volatility":"low"},"price":9.825,"volume":{"bars":162,"last_bar_volume":6599.0,"baseline_avg":5423.9,"bar_rvol":1.216652,"raw_accel":0.144865,"smooth_accel":2.806252,"accel_momentum":2.683164,"rvol_3bar":[0.453637,1.086799,1.216652],"trend_3bar":"ACCELERATING","projected_rvol":1.139402},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1758.0,"sell_vol":957.0,"unclassified_vol":0.0,"imbalance":0.295028,"bid":9.8,"ask":9.85,"spread_pct":0.508906,"quote_size_imbalance":null,"quote_age_s":3.661748},"context":{"vwap":9.61061,"price_vs_vwap_pct":2.23076,"ema9":9.771503,"ema20":9.761581,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.676471,"dist_to_hod_atr":6.85995,"atr":0.054665,"spread_atr":0.91466,"own_change_pct":0.698426,"rel_strength_pct":{"SPY":0.732108,"IWM":0.730057}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.358946},"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":"45c5ec927677","ts":"2026-09-15T16:12:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6446,"target":7.83,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":0.77},"price":7.7325,"vwap":7.7246,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.561,"trend":"flat","recent_slope_pct":-0.0313,"volatility":"medium"},"price":7.7325,"volume":{"bars":162,"last_bar_volume":6144.0,"baseline_avg":8534.15,"bar_rvol":0.719931,"raw_accel":1.879724,"smooth_accel":-0.307525,"accel_momentum":-0.186754,"rvol_3bar":[0.184119,0.104472,0.719931],"trend_3bar":"MIXED","projected_rvol":0.371918},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":244.0,"sell_vol":2538.0,"unclassified_vol":0.0,"imbalance":-0.824587,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":1.939452},"context":{"vwap":7.72464,"price_vs_vwap_pct":0.101753,"ema9":7.737514,"ema20":7.736997,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.992318,"dist_to_hod_atr":3.890347,"atr":0.019921,"spread_atr":0.50198,"own_change_pct":-0.435915,"rel_strength_pct":{"SPY":-0.402233,"IWM":-0.404284}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.593646},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f60ebfe881af","ts":"2026-09-15T16:12:30+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7217,"target":7.875,"target_label":"prev_day_high","reward_risk":0.3,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":2.77},"price":7.84,"vwap":7.8424,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.067,"trend":"flat","recent_slope_pct":-0.0101,"volatility":"high"},"price":7.84,"volume":{"bars":162,"last_bar_volume":5116.0,"baseline_avg":6741.1,"bar_rvol":0.758927,"raw_accel":1.591692,"smooth_accel":7.24905,"accel_momentum":3.627495,"rvol_3bar":[6.988144,0.266773,0.758927],"trend_3bar":"MIXED","projected_rvol":0.626307},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":36.0,"sell_vol":2075.0,"unclassified_vol":0.0,"imbalance":-0.965893,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.396318},"context":{"vwap":7.842376,"price_vs_vwap_pct":-0.030298,"ema9":7.843544,"ema20":7.840325,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.134931,"dist_to_hod_atr":6.561601,"atr":0.013716,"spread_atr":0.729067,"own_change_pct":-0.063735,"rel_strength_pct":{"SPY":-0.030053,"IWM":-0.032104}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.733042},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5c6dd2c77c05","ts":"2026-09-15T16:12:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.355,"target":8.5586,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":62.7,"room_to_5d_high_atr":0.9},"price":8.4451,"vwap":8.3288,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":0.0083,"volatility":"medium"},"price":8.4451,"volume":{"bars":162,"last_bar_volume":352.0,"baseline_avg":1056.95,"bar_rvol":0.333034,"raw_accel":0.332135,"smooth_accel":-0.603133,"accel_momentum":-0.801054,"rvol_3bar":[2.19167,0.028422,0.333034],"trend_3bar":"MIXED","projected_rvol":2.900799},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":407.0,"sell_vol":1126.0,"unclassified_vol":0.0,"imbalance":-0.469015,"bid":8.41,"ask":8.42,"spread_pct":0.118835,"quote_size_imbalance":null,"quote_age_s":0.020924},"context":{"vwap":8.328033,"price_vs_vwap_pct":1.405703,"ema9":8.446764,"ema20":8.448089,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.645882,"dist_to_hod_atr":2.620907,"atr":0.020947,"spread_atr":0.477397,"own_change_pct":-0.587624,"rel_strength_pct":{"SPY":-0.553942,"IWM":-0.555993}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.156198},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"10c9a670d041","ts":"2026-09-15T16:12:35+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3199,"target":8.48,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":58.6,"room_to_5d_high_atr":1.0},"price":8.41,"vwap":8.3288,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":-0.075,"volatility":"medium"},"price":8.41,"volume":{"bars":162,"last_bar_volume":352.0,"baseline_avg":1056.95,"bar_rvol":0.333034,"raw_accel":0.332135,"smooth_accel":-0.603133,"accel_momentum":-0.801054,"rvol_3bar":[2.19167,0.028422,0.333034],"trend_3bar":"MIXED","projected_rvol":3.021632},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":407.0,"sell_vol":1456.0,"unclassified_vol":0.0,"imbalance":-0.56307,"bid":8.41,"ask":8.42,"spread_pct":0.118835,"quote_size_imbalance":null,"quote_age_s":1.648751},"context":{"vwap":8.328033,"price_vs_vwap_pct":0.984234,"ema9":8.446764,"ema20":8.448089,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.058824,"dist_to_hod_atr":4.296569,"atr":0.020947,"spread_atr":0.477397,"own_change_pct":-0.587624,"rel_strength_pct":{"SPY":-0.553942,"IWM":-0.555993}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.187521},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"abbd3d149a4d","ts":"2026-09-15T16:12:40+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.38 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3228,"target":5.43,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":2.03},"price":5.385,"vwap":5.3897,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.738,"trend":"flat","recent_slope_pct":0.0013,"volatility":"medium"},"price":5.385,"volume":{"bars":162,"last_bar_volume":24977.0,"baseline_avg":27231.05,"bar_rvol":0.917225,"raw_accel":0.372287,"smooth_accel":0.060914,"accel_momentum":0.714359,"rvol_3bar":[0.242812,0.668471,0.917225],"trend_3bar":"ACCELERATING","projected_rvol":1.071608},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":5045.0,"sell_vol":13819.0,"unclassified_vol":0.0,"imbalance":-0.465119,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":0.070444},"context":{"vwap":5.389689,"price_vs_vwap_pct":-0.086996,"ema9":5.392299,"ema20":5.388047,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.972973,"dist_to_hod_atr":11.406909,"atr":0.014465,"spread_atr":0.691328,"own_change_pct":0.092678,"rel_strength_pct":{"SPY":0.12636,"IWM":0.12431}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.426619},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5e36e30ca397","ts":"2026-09-15T16:12:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8424,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.075,"trend":"flat","recent_slope_pct":0.0027,"volatility":"high"},"price":7.845,"volume":{"bars":162,"last_bar_volume":5116.0,"baseline_avg":6741.1,"bar_rvol":0.758927,"raw_accel":1.591692,"smooth_accel":7.24905,"accel_momentum":3.627495,"rvol_3bar":[6.988144,0.266773,0.758927],"trend_3bar":"MIXED","projected_rvol":3.634817},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":10839.0,"sell_vol":7447.0,"unclassified_vol":0.0,"imbalance":0.185497,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.067536},"context":{"vwap":7.842376,"price_vs_vwap_pct":0.033458,"ema9":7.843544,"ema20":7.840325,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":6.197068,"atr":0.013716,"spread_atr":0.729067,"own_change_pct":-0.063735,"rel_strength_pct":{"SPY":-0.030053,"IWM":-0.032104}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.140779},"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":"52f6bb4ecc71","ts":"2026-09-15T16:12:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3278,"target":5.43,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":2.01},"price":5.39,"vwap":5.3897,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.738,"trend":"flat","recent_slope_pct":0.0198,"volatility":"medium"},"price":5.39,"volume":{"bars":162,"last_bar_volume":24977.0,"baseline_avg":27231.05,"bar_rvol":0.917225,"raw_accel":0.372287,"smooth_accel":0.060914,"accel_momentum":0.714359,"rvol_3bar":[0.242812,0.668471,0.917225],"trend_3bar":"ACCELERATING","projected_rvol":0.988577},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":5002.0,"sell_vol":14277.0,"unclassified_vol":0.0,"imbalance":-0.481093,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":2.831249},"context":{"vwap":5.389689,"price_vs_vwap_pct":0.005774,"ema9":5.392299,"ema20":5.388047,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.882883,"dist_to_hod_atr":11.061245,"atr":0.014465,"spread_atr":0.691328,"own_change_pct":0.092678,"rel_strength_pct":{"SPY":0.12636,"IWM":0.12431}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.441271},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"97e0127416ad","ts":"2026-09-15T16:12:50+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.6112,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":4.172,"trend":"flat","recent_slope_pct":0.1525,"volatility":"low"},"price":9.83,"volume":{"bars":162,"last_bar_volume":6599.0,"baseline_avg":5423.9,"bar_rvol":1.216652,"raw_accel":0.144865,"smooth_accel":2.806252,"accel_momentum":2.683164,"rvol_3bar":[0.453637,1.086799,1.216652],"trend_3bar":"ACCELERATING","projected_rvol":1.05909},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":2121.0,"sell_vol":606.0,"unclassified_vol":0.0,"imbalance":0.555556,"bid":9.81,"ask":9.85,"spread_pct":0.406918,"quote_size_imbalance":null,"quote_age_s":4.440011},"context":{"vwap":9.61061,"price_vs_vwap_pct":2.282786,"ema9":9.771503,"ema20":9.761581,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":6.768484,"atr":0.054665,"spread_atr":0.731728,"own_change_pct":0.698426,"rel_strength_pct":{"SPY":0.732108,"IWM":0.730057}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.675918},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a94316b1a617","ts":"2026-09-15T16:12:55+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.38 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3228,"target":5.43,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":2.03},"price":5.385,"vwap":5.3897,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":3.0,"volume_pace":0.737,"trend":"flat","recent_slope_pct":0.0013,"volatility":"medium"},"price":5.385,"volume":{"bars":162,"last_bar_volume":24977.0,"baseline_avg":27231.05,"bar_rvol":0.917225,"raw_accel":0.372287,"smooth_accel":0.060914,"accel_momentum":0.714359,"rvol_3bar":[0.242812,0.668471,0.917225],"trend_3bar":"ACCELERATING","projected_rvol":0.842247},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":4907.0,"sell_vol":14395.0,"unclassified_vol":0.0,"imbalance":-0.491555,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":8.762723},"context":{"vwap":5.389689,"price_vs_vwap_pct":-0.086996,"ema9":5.392299,"ema20":5.388047,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.972973,"dist_to_hod_atr":11.406909,"atr":0.014465,"spread_atr":0.691328,"own_change_pct":0.092678,"rel_strength_pct":{"SPY":0.12636,"IWM":0.12431}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.450867},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e9354535a4f8","ts":"2026-09-15T16:13:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.6115,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":4.169,"trend":"flat","recent_slope_pct":0.1321,"volatility":"low"},"price":9.82,"volume":{"bars":163,"last_bar_volume":5596.0,"baseline_avg":5506.75,"bar_rvol":1.016207,"raw_accel":-0.151993,"smooth_accel":2.198397,"accel_momentum":-0.607854,"rvol_3bar":[1.086799,1.216652,1.016207],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2967.0,"sell_vol":1018.0,"unclassified_vol":0.0,"imbalance":0.489084,"bid":9.81,"ask":9.83,"spread_pct":0.203666,"quote_size_imbalance":null,"quote_age_s":0.968198},"context":{"vwap":9.611356,"price_vs_vwap_pct":2.170808,"ema9":9.783202,"ema20":9.768097,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":6.797448,"atr":0.055903,"spread_atr":0.35776,"own_change_pct":1.027749,"rel_strength_pct":{"SPY":1.046906,"IWM":1.076954}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.497011},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a52176c8c7a4","ts":"2026-09-15T16:13:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1556,"target":7.2991,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":30.3,"room_to_5d_high_atr":1.48},"price":7.26,"vwap":7.2157,"ext_from_open_pct":1.54,"max_ext_allowed_pct":4.0,"volume_pace":0.725,"trend":"flat","recent_slope_pct":-0.1147,"volatility":"medium"},"price":7.26,"volume":{"bars":163,"last_bar_volume":90840.0,"baseline_avg":193883.3,"bar_rvol":0.468529,"raw_accel":-0.319759,"smooth_accel":-0.428867,"accel_momentum":-0.070865,"rvol_3bar":[0.703136,0.660595,0.468529],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":73635.0,"sell_vol":48329.0,"unclassified_vol":0.0,"imbalance":0.207487,"bid":7.25,"ask":7.26,"spread_pct":0.137836,"quote_size_imbalance":null,"quote_age_s":0.631193},"context":{"vwap":7.215616,"price_vs_vwap_pct":0.615107,"ema9":7.277895,"ema20":7.277374,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.95498,"dist_to_hod_atr":2.690792,"atr":0.026015,"spread_atr":0.384399,"own_change_pct":-0.344775,"rel_strength_pct":{"SPY":-0.325618,"IWM":-0.295571}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.097214},"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":"de939caa37ab","ts":"2026-09-15T16:13:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.0882,"target":11.44,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":1.25},"price":11.305,"vwap":11.2701,"ext_from_open_pct":0.4,"max_ext_allowed_pct":4.0,"volume_pace":0.904,"trend":"flat","recent_slope_pct":-0.0598,"volatility":"high"},"price":11.305,"volume":{"bars":163,"last_bar_volume":43304.0,"baseline_avg":107163.9,"bar_rvol":0.404091,"raw_accel":-0.525877,"smooth_accel":0.18919,"accel_momentum":0.023868,"rvol_3bar":[1.131073,0.80775,0.404091],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":14066.0,"sell_vol":10838.0,"unclassified_vol":0.0,"imbalance":0.129618,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.523095},"context":{"vwap":11.270097,"price_vs_vwap_pct":0.309693,"ema9":11.325457,"ema20":11.331998,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.52439,"dist_to_hod_atr":4.444582,"atr":0.039374,"spread_atr":0.253976,"own_change_pct":-0.33157,"rel_strength_pct":{"SPY":-0.312413,"IWM":-0.282365}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.052377},"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":"f2ef60e44f83","ts":"2026-09-15T16:13:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says PASS; stop 7.74, target 8.00 (premarket_high), R:R 1.23; target 0.14 away > ~0.08 reachable in 222 min","plan":{"state":"PASS","setup":"","stop":7.7367,"target":8.0,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8425,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":4.0,"volume_pace":1.088,"trend":"flat","recent_slope_pct":0.018,"volatility":"high"},"price":7.855,"volume":{"bars":163,"last_bar_volume":34706.0,"baseline_avg":6598.65,"bar_rvol":5.259561,"raw_accel":5.783815,"smooth_accel":-0.049551,"accel_momentum":-7.298601,"rvol_3bar":[0.266773,0.758927,5.259561],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":35124.0,"sell_vol":2215.0,"unclassified_vol":0.0,"imbalance":0.881357,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.089218},"context":{"vwap":7.842394,"price_vs_vwap_pct":0.160743,"ema9":7.843835,"ema20":7.84077,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":5.431686,"atr":0.013808,"spread_atr":0.724225,"own_change_pct":0.039531,"rel_strength_pct":{"SPY":0.058688,"IWM":0.088736}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":4.635552},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"78d463eb3731","ts":"2026-09-15T16:13:10+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.1056,"target":11.44,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":25.4,"room_to_5d_high_atr":1.23},"price":11.3224,"vwap":11.2702,"ext_from_open_pct":0.55,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":-0.029,"volatility":"high"},"price":11.3224,"volume":{"bars":163,"last_bar_volume":43304.0,"baseline_avg":107163.9,"bar_rvol":0.404091,"raw_accel":-0.525877,"smooth_accel":0.18919,"accel_momentum":0.023868,"rvol_3bar":[1.131073,0.80775,0.404091],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":24849.0,"sell_vol":36059.0,"unclassified_vol":0.0,"imbalance":-0.184048,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":1.5903},"context":{"vwap":11.270097,"price_vs_vwap_pct":0.464084,"ema9":11.325457,"ema20":11.331998,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.372822,"dist_to_hod_atr":4.002664,"atr":0.039374,"spread_atr":0.253976,"own_change_pct":-0.33157,"rel_strength_pct":{"SPY":-0.312413,"IWM":-0.282365}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.074372},"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":"3316fe44e1e3","ts":"2026-09-15T16:13:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.8399,"vwap":9.6115,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":4.167,"trend":"flat","recent_slope_pct":0.1726,"volatility":"low"},"price":9.8399,"volume":{"bars":163,"last_bar_volume":5596.0,"baseline_avg":5506.75,"bar_rvol":1.016207,"raw_accel":-0.151993,"smooth_accel":2.198397,"accel_momentum":-0.607854,"rvol_3bar":[1.086799,1.216652,1.016207],"trend_3bar":"MIXED","projected_rvol":0.95955},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":3173.0,"sell_vol":957.0,"unclassified_vol":0.0,"imbalance":0.536562,"bid":9.82,"ask":9.84,"spread_pct":0.203459,"quote_size_imbalance":null,"quote_age_s":1.122656},"context":{"vwap":9.611356,"price_vs_vwap_pct":2.377854,"ema9":9.783202,"ema20":9.768097,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.530392,"dist_to_hod_atr":6.441477,"atr":0.055903,"spread_atr":0.35776,"own_change_pct":1.027749,"rel_strength_pct":{"SPY":1.046906,"IWM":1.076954}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.545258},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8f286f19e31c","ts":"2026-09-15T16:13:20+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says WATCH; stop 7.73, target 7.88 (prev_day_high), R:R 0.25; selling not fading: red-bar volume 1.02x the advance (max 0.7); no reclaim yet (needs a close > 7.85); R:R 0.25 < 2.0 at ","plan":{"state":"WATCH","setup":"","stop":7.7274,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.5,"room_to_5d_high_atr":2.76},"price":7.8457,"vwap":7.8424,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":4.0,"volume_pace":1.087,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"high"},"price":7.8457,"volume":{"bars":163,"last_bar_volume":34706.0,"baseline_avg":6598.65,"bar_rvol":5.259561,"raw_accel":5.783815,"smooth_accel":-0.049551,"accel_momentum":-7.298601,"rvol_3bar":[0.266773,0.758927,5.259561],"trend_3bar":"ACCELERATING","projected_rvol":5.305631},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":25826.0,"sell_vol":2122.0,"unclassified_vol":0.0,"imbalance":0.848147,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.432403},"context":{"vwap":7.842394,"price_vs_vwap_pct":0.042156,"ema9":7.843835,"ema20":7.84077,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.063052,"dist_to_hod_atr":6.105215,"atr":0.013808,"spread_atr":0.724225,"own_change_pct":0.039531,"rel_strength_pct":{"SPY":0.058688,"IWM":0.088736}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":4.460878},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8ed66c082f15","ts":"2026-09-15T16:13:20+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6321,"target":7.775,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":0.81},"price":7.72,"vwap":7.7246,"ext_from_open_pct":0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":-0.015,"volatility":"medium"},"price":7.72,"volume":{"bars":163,"last_bar_volume":1433.0,"baseline_avg":8657.6,"bar_rvol":0.165519,"raw_accel":-0.766764,"smooth_accel":-0.374034,"accel_momentum":-0.066509,"rvol_3bar":[0.104472,0.719931,0.165519],"trend_3bar":"MIXED","projected_rvol":2.063851},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":3332.0,"sell_vol":2725.0,"unclassified_vol":0.0,"imbalance":0.100215,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":1.320141},"context":{"vwap":7.724646,"price_vs_vwap_pct":-0.060142,"ema9":7.737571,"ema20":7.737074,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.152369,"dist_to_hod_atr":4.470077,"atr":0.020134,"spread_atr":0.496675,"own_change_pct":-0.103282,"rel_strength_pct":{"SPY":-0.084125,"IWM":-0.054077}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.016587},"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":"4e57b2f196f6","ts":"2026-09-15T16:13:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says PASS; stop 7.74, target 8.00 (premarket_high), R:R 1.23; target 0.14 away > ~0.08 reachable in 222 min","plan":{"state":"PASS","setup":"","stop":7.7367,"target":8.0,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8425,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":4.0,"volume_pace":1.087,"trend":"flat","recent_slope_pct":0.018,"volatility":"high"},"price":7.855,"volume":{"bars":163,"last_bar_volume":34706.0,"baseline_avg":6598.65,"bar_rvol":5.259561,"raw_accel":5.783815,"smooth_accel":-0.049551,"accel_momentum":-7.298601,"rvol_3bar":[0.266773,0.758927,5.259561],"trend_3bar":"ACCELERATING","projected_rvol":4.244868},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":18825.0,"sell_vol":1834.0,"unclassified_vol":0.0,"imbalance":0.82245,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.394448},"context":{"vwap":7.842394,"price_vs_vwap_pct":0.160743,"ema9":7.843835,"ema20":7.84077,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":5.431686,"atr":0.013808,"spread_atr":0.724225,"own_change_pct":0.039531,"rel_strength_pct":{"SPY":0.058688,"IWM":0.088736}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":4.325727},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2095d60224a7","ts":"2026-09-15T16:13:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6404,"target":7.775,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":49.2,"room_to_5d_high_atr":0.79},"price":7.7283,"vwap":7.7246,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":0.0065,"volatility":"medium"},"price":7.7283,"volume":{"bars":163,"last_bar_volume":1433.0,"baseline_avg":8657.6,"bar_rvol":0.165519,"raw_accel":-0.766764,"smooth_accel":-0.374034,"accel_momentum":-0.066509,"rvol_3bar":[0.104472,0.719931,0.165519],"trend_3bar":"MIXED","projected_rvol":1.654408},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":3344.0,"sell_vol":2724.0,"unclassified_vol":0.0,"imbalance":0.102175,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":2.430056},"context":{"vwap":7.724646,"price_vs_vwap_pct":0.047307,"ema9":7.737571,"ema20":7.737074,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.046095,"dist_to_hod_atr":4.057837,"atr":0.020134,"spread_atr":0.496675,"own_change_pct":-0.103282,"rel_strength_pct":{"SPY":-0.084125,"IWM":-0.054077}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.016912},"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":"346fd3d619dd","ts":"2026-09-15T16:13:25+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3284,"target":5.5297,"target_label":"premarket_high","reward_risk":2.24,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":2.01},"price":5.3906,"vwap":5.3897,"ext_from_open_pct":-1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.735,"trend":"flat","recent_slope_pct":-0.0137,"volatility":"medium"},"price":5.3906,"volume":{"bars":163,"last_bar_volume":21310.0,"baseline_avg":28196.0,"bar_rvol":0.755781,"raw_accel":-0.146815,"smooth_accel":0.528659,"accel_momentum":0.467745,"rvol_3bar":[0.668471,0.917225,0.755781],"trend_3bar":"MIXED","projected_rvol":0.533863},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1973.0,"sell_vol":4585.0,"unclassified_vol":0.0,"imbalance":-0.398292,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":2.519413},"context":{"vwap":5.389686,"price_vs_vwap_pct":0.016965,"ema9":5.390839,"ema20":5.387756,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.872072,"dist_to_hod_atr":10.726581,"atr":0.01486,"spread_atr":0.672935,"own_change_pct":-0.079788,"rel_strength_pct":{"SPY":-0.060631,"IWM":-0.030583}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.301022},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b0fb4e57fbd5","ts":"2026-09-15T16:13:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.6131,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":4.19,"trend":"flat","recent_slope_pct":0.1321,"volatility":"low"},"price":9.82,"volume":{"bars":163,"last_bar_volume":5596.0,"baseline_avg":5506.75,"bar_rvol":1.016207,"raw_accel":-0.151993,"smooth_accel":2.198397,"accel_momentum":-0.607854,"rvol_3bar":[1.086799,1.216652,1.016207],"trend_3bar":"MIXED","projected_rvol":4.559132},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":7683.0,"sell_vol":4870.0,"unclassified_vol":0.0,"imbalance":0.22409,"bid":9.8,"ask":9.82,"spread_pct":0.203874,"quote_size_imbalance":null,"quote_age_s":1.296129},"context":{"vwap":9.611356,"price_vs_vwap_pct":2.170808,"ema9":9.783202,"ema20":9.768097,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":6.797448,"atr":0.055903,"spread_atr":0.35776,"own_change_pct":1.027749,"rel_strength_pct":{"SPY":1.046906,"IWM":1.076954}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.227722},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c4a89e0c71c7","ts":"2026-09-15T16:13:30+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.38 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3228,"target":5.43,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":2.03},"price":5.385,"vwap":5.3897,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":4.0,"volume_pace":0.735,"trend":"flat","recent_slope_pct":-0.0345,"volatility":"medium"},"price":5.385,"volume":{"bars":163,"last_bar_volume":21310.0,"baseline_avg":28196.0,"bar_rvol":0.755781,"raw_accel":-0.146815,"smooth_accel":0.528659,"accel_momentum":0.467745,"rvol_3bar":[0.668471,0.917225,0.755781],"trend_3bar":"MIXED","projected_rvol":0.480139},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1881.0,"sell_vol":4888.0,"unclassified_vol":0.0,"imbalance":-0.444231,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":1.276862},"context":{"vwap":5.389686,"price_vs_vwap_pct":-0.086937,"ema9":5.390839,"ema20":5.387756,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.972973,"dist_to_hod_atr":11.103424,"atr":0.01486,"spread_atr":0.672935,"own_change_pct":-0.079788,"rel_strength_pct":{"SPY":-0.060631,"IWM":-0.030583}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.335741},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2b42570d54f9","ts":"2026-09-15T16:13:45+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6359,"target":7.775,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":48.4,"room_to_5d_high_atr":0.8},"price":7.7238,"vwap":7.7246,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":0.558,"trend":"flat","recent_slope_pct":-0.0052,"volatility":"medium"},"price":7.7238,"volume":{"bars":163,"last_bar_volume":1433.0,"baseline_avg":8657.6,"bar_rvol":0.165519,"raw_accel":-0.766764,"smooth_accel":-0.374034,"accel_momentum":-0.066509,"rvol_3bar":[0.104472,0.719931,0.165519],"trend_3bar":"MIXED","projected_rvol":1.005975},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":44.0,"sell_vol":643.0,"unclassified_vol":0.0,"imbalance":-0.871907,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.011898},"context":{"vwap":7.724646,"price_vs_vwap_pct":-0.010948,"ema9":7.737571,"ema20":7.737074,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.103713,"dist_to_hod_atr":4.281341,"atr":0.020134,"spread_atr":0.496675,"own_change_pct":-0.103282,"rel_strength_pct":{"SPY":-0.084125,"IWM":-0.054077}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.144317},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e8928d628b9e","ts":"2026-09-15T16:13:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.8499,"vwap":9.6136,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":4.19,"trend":"flat","recent_slope_pct":0.1929,"volatility":"low"},"price":9.8499,"volume":{"bars":163,"last_bar_volume":5596.0,"baseline_avg":5506.75,"bar_rvol":1.016207,"raw_accel":-0.151993,"smooth_accel":2.198397,"accel_momentum":-0.607854,"rvol_3bar":[1.086799,1.216652,1.016207],"trend_3bar":"MIXED","projected_rvol":3.227906},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":1782.0,"sell_vol":1973.0,"unclassified_vol":0.0,"imbalance":-0.050866,"bid":9.83,"ask":9.86,"spread_pct":0.304723,"quote_size_imbalance":null,"quote_age_s":0.593152},"context":{"vwap":9.611356,"price_vs_vwap_pct":2.481898,"ema9":9.783202,"ema20":9.768097,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.432353,"dist_to_hod_atr":6.262596,"atr":0.055903,"spread_atr":0.536641,"own_change_pct":1.027749,"rel_strength_pct":{"SPY":1.046906,"IWM":1.076954}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.05169},"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":"628f18a1071c","ts":"2026-09-15T16:13:55+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says WATCH; stop 7.73, target 7.88 (prev_day_high), R:R 0.21; selling not fading: red-bar volume 1.02x the advance (max 0.7); imbalance -82% still heavy selling; no reclaim yet (needs","plan":{"state":"WATCH","setup":"","stop":7.7318,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":2.75},"price":7.8501,"vwap":7.8425,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.084,"trend":"flat","recent_slope_pct":0.0055,"volatility":"high"},"price":7.8501,"volume":{"bars":163,"last_bar_volume":34706.0,"baseline_avg":6598.65,"bar_rvol":5.259561,"raw_accel":5.783815,"smooth_accel":-0.049551,"accel_momentum":-7.298601,"rvol_3bar":[0.266773,0.758927,5.259561],"trend_3bar":"ACCELERATING","projected_rvol":2.262612},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1822.0,"sell_vol":193.0,"unclassified_vol":0.0,"imbalance":0.808437,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.242447},"context":{"vwap":7.842394,"price_vs_vwap_pct":0.098262,"ema9":7.843835,"ema20":7.84077,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.007566,"dist_to_hod_atr":5.786556,"atr":0.013808,"spread_atr":0.724225,"own_change_pct":0.039531,"rel_strength_pct":{"SPY":0.058688,"IWM":0.088736}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":4.252022},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9949bdd46757","ts":"2026-09-15T16:13:55+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3296,"target":5.5297,"target_label":"premarket_high","reward_risk":2.22,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":2.0},"price":5.3918,"vwap":5.3897,"ext_from_open_pct":-1.25,"max_ext_allowed_pct":3.0,"volume_pace":0.733,"trend":"flat","recent_slope_pct":-0.0093,"volatility":"medium"},"price":5.3918,"volume":{"bars":163,"last_bar_volume":21310.0,"baseline_avg":28196.0,"bar_rvol":0.755781,"raw_accel":-0.146815,"smooth_accel":0.528659,"accel_momentum":0.467745,"rvol_3bar":[0.668471,0.917225,0.755781],"trend_3bar":"MIXED","projected_rvol":0.426598},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1137.0,"sell_vol":3617.0,"unclassified_vol":0.0,"imbalance":-0.521666,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":0.737052},"context":{"vwap":5.389686,"price_vs_vwap_pct":0.03923,"ema9":5.390839,"ema20":5.387756,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.85045,"dist_to_hod_atr":10.645829,"atr":0.01486,"spread_atr":0.672935,"own_change_pct":-0.079788,"rel_strength_pct":{"SPY":-0.060631,"IWM":-0.030583}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.394265},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"86dd1fd262cb","ts":"2026-09-15T16:14:00+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.38 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3187,"target":5.43,"target_label":"ceiling","reward_risk":0.79,"pos_in_5d_range_pct":5.7,"room_to_5d_high_atr":2.05},"price":5.3809,"vwap":5.3897,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.733,"trend":"flat","recent_slope_pct":-0.0497,"volatility":"medium"},"price":5.3809,"volume":{"bars":163,"last_bar_volume":21310.0,"baseline_avg":28196.0,"bar_rvol":0.755781,"raw_accel":-0.146815,"smooth_accel":0.528659,"accel_momentum":0.467745,"rvol_3bar":[0.668471,0.917225,0.755781],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1149.0,"sell_vol":4228.0,"unclassified_vol":0.0,"imbalance":-0.572624,"bid":5.38,"ask":5.39,"spread_pct":0.185701,"quote_size_imbalance":null,"quote_age_s":1.808274},"context":{"vwap":5.389686,"price_vs_vwap_pct":-0.163009,"ema9":5.390839,"ema20":5.387756,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-3.046847,"dist_to_hod_atr":11.379328,"atr":0.01486,"spread_atr":0.672935,"own_change_pct":-0.079788,"rel_strength_pct":{"SPY":-0.081109,"IWM":-0.056938}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.432778},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"50e2de8cd90d","ts":"2026-09-15T16:14:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 80.0s, plan says PASS; stop 7.74, target 8.00 (premarket_high), R:R 1.23; target 0.14 away > ~0.08 reachable in 221 min","plan":{"state":"PASS","setup":"","stop":7.7367,"target":8.0,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8425,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.0381,"volatility":"high"},"price":7.855,"volume":{"bars":164,"last_bar_volume":13686.0,"baseline_avg":8232.45,"bar_rvol":1.662446,"raw_accel":-0.605659,"smooth_accel":0.281168,"accel_momentum":0.330719,"rvol_3bar":[0.758927,5.259561,1.662446],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1722.0,"sell_vol":87.0,"unclassified_vol":0.0,"imbalance":0.903814,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.004365},"context":{"vwap":7.842462,"price_vs_vwap_pct":0.159877,"ema9":7.845088,"ema20":7.841659,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":5.398395,"atr":0.013893,"spread_atr":0.719786,"own_change_pct":0.128827,"rel_strength_pct":{"SPY":0.127505,"IWM":0.151676}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.502542},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0feeaab85621","ts":"2026-09-15T16:14:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.32,"target":8.48,"target_label":"ceiling","reward_risk":0.78,"pos_in_5d_range_pct":58.6,"room_to_5d_high_atr":1.0},"price":8.4101,"vwap":8.3289,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":0.915,"trend":"flat","recent_slope_pct":-0.08,"volatility":"medium"},"price":8.4101,"volume":{"bars":164,"last_bar_volume":79.0,"baseline_avg":1006.1,"bar_rvol":0.078521,"raw_accel":-0.960441,"smooth_accel":-0.510188,"accel_momentum":0.204646,"rvol_3bar":[0.333034,1.86079,0.078521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":4.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":-0.724138,"bid":8.4,"ask":8.42,"spread_pct":0.237812,"quote_size_imbalance":null,"quote_age_s":22.759856},"context":{"vwap":8.328888,"price_vs_vwap_pct":0.97506,"ema9":8.434745,"ema20":8.441834,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.057647,"dist_to_hod_atr":4.195999,"atr":0.021425,"spread_atr":0.933481,"own_change_pct":-0.374337,"rel_strength_pct":{"SPY":-0.375658,"IWM":-0.351487}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.05686},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6a4d28ce399d","ts":"2026-09-15T16:14:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":477.3,"room_to_5d_high_atr":-5.44},"price":9.826,"vwap":9.6154,"ext_from_open_pct":3.98,"max_ext_allowed_pct":4.0,"volume_pace":4.206,"trend":"flat","recent_slope_pct":0.1112,"volatility":"low"},"price":9.826,"volume":{"bars":164,"last_bar_volume":17799.0,"baseline_avg":5593.55,"bar_rvol":3.182058,"raw_accel":2.180665,"smooth_accel":1.961493,"accel_momentum":-0.236904,"rvol_3bar":[1.216652,1.016207,3.182058],"trend_3bar":"MIXED","projected_rvol":3.215042},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":5463.0,"sell_vol":6426.0,"unclassified_vol":0.0,"imbalance":-0.080999,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":9.990988},"context":{"vwap":9.613801,"price_vs_vwap_pct":2.207231,"ema9":9.793922,"ema20":9.77464,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.666667,"dist_to_hod_atr":6.739231,"atr":0.055496,"spread_atr":0.54058,"own_change_pct":0.636343,"rel_strength_pct":{"SPY":0.635022,"IWM":0.659193}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.257744},"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":"3e9914c0e442","ts":"2026-09-15T16:14:50+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.6155,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":4.202,"trend":"flat","recent_slope_pct":0.1397,"volatility":"low"},"price":9.84,"volume":{"bars":164,"last_bar_volume":17799.0,"baseline_avg":5593.55,"bar_rvol":3.182058,"raw_accel":2.180665,"smooth_accel":1.961493,"accel_momentum":-0.236904,"rvol_3bar":[1.216652,1.016207,3.182058],"trend_3bar":"MIXED","projected_rvol":2.572248},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":3.0,"sell_vol":103.0,"unclassified_vol":0.0,"imbalance":-0.943396,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":19.990988},"context":{"vwap":9.613801,"price_vs_vwap_pct":2.352855,"ema9":9.793922,"ema20":9.77464,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":6.48696,"atr":0.055496,"spread_atr":0.54058,"own_change_pct":0.636343,"rel_strength_pct":{"SPY":0.635022,"IWM":0.659193}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-3.001941},"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":"8b4f9efd03f8","ts":"2026-09-15T16:15:00+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 135.0s, plan says WATCH; stop 7.73, target 7.88 (prev_day_high), R:R 0.21; selling not fading: red-bar volume 1.02x the advance (max 0.7); imbalance -100% still heavy selling; R:R 0.21 < 2.0 at 7","plan":{"state":"WATCH","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8425,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.078,"trend":"flat","recent_slope_pct":0.0254,"volatility":"high"},"price":7.85,"volume":{"bars":164,"last_bar_volume":13686.0,"baseline_avg":8232.45,"bar_rvol":1.662446,"raw_accel":-0.605659,"smooth_accel":0.281168,"accel_momentum":0.330719,"rvol_3bar":[0.758927,5.259561,1.662446],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":1.0,"sell_vol":257.0,"unclassified_vol":0.0,"imbalance":-0.992248,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.771237},"context":{"vwap":7.842462,"price_vs_vwap_pct":0.096121,"ema9":7.845088,"ema20":7.841659,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":5.758287,"atr":0.013893,"spread_atr":0.719786,"own_change_pct":0.128827,"rel_strength_pct":{"SPY":0.123541,"IWM":0.153435}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.649558},"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":"a22c9b0330b2","ts":"2026-09-15T16:15:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.6155,"ext_from_open_pct":4.13,"max_ext_allowed_pct":5.0,"volume_pace":4.196,"trend":"flat","recent_slope_pct":0.0537,"volatility":"low"},"price":9.84,"volume":{"bars":165,"last_bar_volume":11990.0,"baseline_avg":6449.65,"bar_rvol":1.859016,"raw_accel":-0.326367,"smooth_accel":1.401588,"accel_momentum":-0.559905,"rvol_3bar":[1.016207,3.182058,1.859016],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":19.0,"sell_vol":49.0,"unclassified_vol":0.0,"imbalance":-0.441176,"bid":9.82,"ask":9.86,"spread_pct":0.406504,"quote_size_imbalance":null,"quote_age_s":0.58312},"context":{"vwap":9.615465,"price_vs_vwap_pct":2.335145,"ema9":9.803137,"ema20":9.780865,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":6.743852,"atr":0.053382,"spread_atr":0.749317,"own_change_pct":0.613497,"rel_strength_pct":{"SPY":0.608211,"IWM":0.638106}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.820154},"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":"d9c2f85558fb","ts":"2026-09-15T16:15:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"held 140.0s, plan says PASS; stop 7.74, target 8.00 (premarket_high), R:R 1.23; target 0.14 away > ~0.08 reachable in 220 min","plan":{"state":"PASS","setup":"","stop":7.7367,"target":8.0,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8425,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":1.077,"trend":"flat","recent_slope_pct":0.0446,"volatility":"high"},"price":7.855,"volume":{"bars":165,"last_bar_volume":396.0,"baseline_avg":8581.25,"bar_rvol":0.046147,"raw_accel":-0.971065,"smooth_accel":0.069701,"accel_momentum":-0.211467,"rvol_3bar":[5.259561,1.662446,0.046147],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":2.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-0.961538,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.685567},"context":{"vwap":7.842464,"price_vs_vwap_pct":0.159848,"ema9":7.846071,"ema20":7.842453,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":5.508652,"atr":0.013615,"spread_atr":0.734487,"own_change_pct":0.026759,"rel_strength_pct":{"SPY":0.021473,"IWM":0.051368}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.044372},"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":"0d553a561c71","ts":"2026-09-15T16:15:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.1655,"target":7.2991,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":31.4,"room_to_5d_high_atr":1.46},"price":7.2699,"vwap":7.2161,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0343,"volatility":"medium"},"price":7.2699,"volume":{"bars":165,"last_bar_volume":84380.0,"baseline_avg":176964.35,"bar_rvol":0.476819,"raw_accel":-0.586251,"smooth_accel":-0.212243,"accel_momentum":0.026364,"rvol_3bar":[0.468529,1.17976,0.476819],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":42174.0,"sell_vol":8641.0,"unclassified_vol":0.0,"imbalance":0.659904,"bid":7.25,"ask":7.26,"spread_pct":0.137836,"quote_size_imbalance":null,"quote_age_s":1.530673},"context":{"vwap":7.216137,"price_vs_vwap_pct":0.745042,"ema9":7.270473,"ema20":7.273756,"ema_stack":false,"ema_warm":true,"hod":7.33,"dist_to_hod_pct":-0.819918,"dist_to_hod_atr":2.30049,"atr":0.026125,"spread_atr":0.382777,"own_change_pct":-0.433667,"rel_strength_pct":{"SPY":-0.438953,"IWM":-0.409058}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.314655},"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":"a43381d8738f","ts":"2026-09-15T16:15:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.0959,"target":11.44,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":24.8,"room_to_5d_high_atr":1.24},"price":11.3127,"vwap":11.2705,"ext_from_open_pct":0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.902,"trend":"flat","recent_slope_pct":0.0037,"volatility":"high"},"price":11.3127,"volume":{"bars":165,"last_bar_volume":95292.0,"baseline_avg":102462.25,"bar_rvol":0.930021,"raw_accel":-0.079971,"smooth_accel":-0.16149,"accel_momentum":-0.063812,"rvol_3bar":[0.404091,1.008823,0.930021],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":839.0,"sell_vol":6415.0,"unclassified_vol":0.0,"imbalance":-0.768679,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":4.732892},"context":{"vwap":11.270519,"price_vs_vwap_pct":0.374256,"ema9":11.319333,"ema20":11.327691,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.457317,"dist_to_hod_atr":4.216778,"atr":0.039675,"spread_atr":0.252049,"own_change_pct":-0.209969,"rel_strength_pct":{"SPY":-0.215255,"IWM":-0.18536}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.714888},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c9b8ced9f072","ts":"2026-09-15T16:15:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.6155,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":4.192,"trend":"flat","recent_slope_pct":0.074,"volatility":"low"},"price":9.85,"volume":{"bars":165,"last_bar_volume":11990.0,"baseline_avg":6449.65,"bar_rvol":1.859016,"raw_accel":-0.326367,"smooth_accel":1.401588,"accel_momentum":-0.559905,"rvol_3bar":[1.016207,3.182058,1.859016],"trend_3bar":"MIXED","projected_rvol":0.096129},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":100.0,"sell_vol":56.0,"unclassified_vol":0.0,"imbalance":0.282051,"bid":9.82,"ask":9.86,"spread_pct":0.406504,"quote_size_imbalance":null,"quote_age_s":0.841831},"context":{"vwap":9.615465,"price_vs_vwap_pct":2.439144,"ema9":9.803137,"ema20":9.780865,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":6.556523,"atr":0.053382,"spread_atr":0.749317,"own_change_pct":0.613497,"rel_strength_pct":{"SPY":0.608211,"IWM":0.638106}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.524338},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4bf34b9ee8b9","ts":"2026-09-15T16:15:15+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7217,"target":7.875,"target_label":"prev_day_high","reward_risk":0.3,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":2.77},"price":7.84,"vwap":7.8425,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.085,"trend":"flat","recent_slope_pct":0.0064,"volatility":"high"},"price":7.84,"volume":{"bars":165,"last_bar_volume":396.0,"baseline_avg":8581.25,"bar_rvol":0.046147,"raw_accel":-0.971065,"smooth_accel":0.069701,"accel_momentum":-0.211467,"rvol_3bar":[5.259561,1.662446,0.046147],"trend_3bar":"DECELERATING","projected_rvol":7.163991},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":4457.0,"sell_vol":11012.0,"unclassified_vol":0.0,"imbalance":-0.423751,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.381768},"context":{"vwap":7.842464,"price_vs_vwap_pct":-0.031419,"ema9":7.846071,"ema20":7.842453,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.134931,"dist_to_hod_atr":6.610382,"atr":0.013615,"spread_atr":0.734487,"own_change_pct":0.026759,"rel_strength_pct":{"SPY":0.021473,"IWM":0.051368}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.019555},"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":"8850f6bc90ec","ts":"2026-09-15T16:15:30+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7309,"target":8.0,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.8492,"vwap":7.8425,"ext_from_open_pct":-0.64,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":0.0298,"volatility":"high"},"price":7.8492,"volume":{"bars":165,"last_bar_volume":396.0,"baseline_avg":8581.25,"bar_rvol":0.046147,"raw_accel":-0.971065,"smooth_accel":0.069701,"accel_momentum":-0.211467,"rvol_3bar":[5.259561,1.662446,0.046147],"trend_3bar":"DECELERATING","projected_rvol":3.610663},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":4480.0,"sell_vol":11012.0,"unclassified_vol":0.0,"imbalance":-0.421637,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.62393},"context":{"vwap":7.842464,"price_vs_vwap_pct":0.085891,"ema9":7.846071,"ema20":7.842453,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.018916,"dist_to_hod_atr":5.934654,"atr":0.013615,"spread_atr":0.734487,"own_change_pct":0.026759,"rel_strength_pct":{"SPY":0.021473,"IWM":0.051368}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.019457},"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":"385cc0f73fd4","ts":"2026-09-15T16:15:50+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.84","plan":{"state":"PASS","setup":"","stop":7.7241,"target":7.875,"target_label":"prev_day_high","reward_risk":0.28,"pos_in_5d_range_pct":18.3,"room_to_5d_high_atr":2.76},"price":7.8424,"vwap":7.8425,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":4.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.0125,"volatility":"high"},"price":7.8424,"volume":{"bars":165,"last_bar_volume":396.0,"baseline_avg":8581.25,"bar_rvol":0.046147,"raw_accel":-0.971065,"smooth_accel":0.069701,"accel_momentum":-0.211467,"rvol_3bar":[5.259561,1.662446,0.046147],"trend_3bar":"DECELERATING","projected_rvol":2.17297},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":30.0,"sell_vol":140.0,"unclassified_vol":0.0,"imbalance":-0.647059,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.481803},"context":{"vwap":7.842464,"price_vs_vwap_pct":-0.000816,"ema9":7.846071,"ema20":7.842453,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.104666,"dist_to_hod_atr":6.434105,"atr":0.013615,"spread_atr":0.734487,"own_change_pct":0.026759,"rel_strength_pct":{"SPY":0.021473,"IWM":0.051368}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.02986},"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":"c5b55f0e585a","ts":"2026-09-15T16:15:55+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.3484,"target":8.5586,"target_label":"premarket_high","reward_risk":1.33,"pos_in_5d_range_pct":61.9,"room_to_5d_high_atr":0.92},"price":8.4385,"vwap":8.3296,"ext_from_open_pct":1.3,"max_ext_allowed_pct":4.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":0.023,"volatility":"medium"},"price":8.4385,"volume":{"bars":165,"last_bar_volume":37.0,"baseline_avg":1000.3,"bar_rvol":0.036989,"raw_accel":-0.852044,"smooth_accel":-0.174287,"accel_momentum":0.335901,"rvol_3bar":[1.86079,0.078521,0.036989],"trend_3bar":"DECELERATING","projected_rvol":1.70458},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":16.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.777778,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":0.932674},"context":{"vwap":8.328902,"price_vs_vwap_pct":1.31588,"ema9":8.429796,"ema20":8.438802,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.723529,"dist_to_hod_atr":3.002854,"atr":0.020481,"spread_atr":0.488269,"own_change_pct":-0.178042,"rel_strength_pct":{"SPY":-0.183327,"IWM":-0.153433}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.028769},"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":"f91f4b646180","ts":"2026-09-15T16:16:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.6157,"ext_from_open_pct":4.13,"max_ext_allowed_pct":5.0,"volume_pace":4.175,"trend":"flat","recent_slope_pct":0.0236,"volatility":"low"},"price":9.84,"volume":{"bars":166,"last_bar_volume":1974.0,"baseline_avg":6977.8,"bar_rvol":0.282897,"raw_accel":-0.835363,"smooth_accel":0.76864,"accel_momentum":-0.632948,"rvol_3bar":[3.182058,1.859016,0.282897],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":125.0,"sell_vol":365.0,"unclassified_vol":0.0,"imbalance":-0.489796,"bid":9.82,"ask":9.86,"spread_pct":0.406504,"quote_size_imbalance":null,"quote_age_s":4.990947},"context":{"vwap":9.615736,"price_vs_vwap_pct":2.332255,"ema9":9.81051,"ema20":9.786497,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":6.737379,"atr":0.053433,"spread_atr":0.748598,"own_change_pct":0.608353,"rel_strength_pct":{"SPY":0.605341,"IWM":0.629448}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.138562},"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":"c334fc2549f1","ts":"2026-09-15T16:16:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6421,"target":7.83,"target_label":"premarket_high","reward_risk":1.14,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":0.78},"price":7.73,"vwap":7.7246,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":-0.0107,"volatility":"medium"},"price":7.73,"volume":{"bars":166,"last_bar_volume":14582.0,"baseline_avg":8114.15,"bar_rvol":1.797108,"raw_accel":6.18843,"smooth_accel":2.109428,"accel_momentum":1.633908,"rvol_3bar":[1.485785,0.087255,1.797108],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":11589.0,"sell_vol":2279.0,"unclassified_vol":0.0,"imbalance":0.67133,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.618471},"context":{"vwap":7.724634,"price_vs_vwap_pct":0.069472,"ema9":7.730814,"ema20":7.733524,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.024328,"dist_to_hod_atr":3.952002,"atr":0.020243,"spread_atr":0.494,"own_change_pct":-0.121456,"rel_strength_pct":{"SPY":-0.124469,"IWM":-0.100362}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.206452},"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":"f80e1996655f","ts":"2026-09-15T16:16:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7367,"target":8.0,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8425,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":1.081,"trend":"flat","recent_slope_pct":0.0157,"volatility":"high"},"price":7.855,"volume":{"bars":166,"last_bar_volume":15539.0,"baseline_avg":8149.35,"bar_rvol":1.906778,"raw_accel":6.627111,"smooth_accel":-0.291296,"accel_momentum":-0.360997,"rvol_3bar":[1.662446,0.046147,1.906778],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1665.0,"sell_vol":2824.0,"unclassified_vol":0.0,"imbalance":-0.258187,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.736939},"context":{"vwap":7.842491,"price_vs_vwap_pct":0.159498,"ema9":7.845336,"ema20":7.842448,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":5.468912,"atr":0.013714,"spread_atr":0.729188,"own_change_pct":-0.034416,"rel_strength_pct":{"SPY":-0.037429,"IWM":-0.013322}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.492305},"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":"796eb075de00","ts":"2026-09-15T16:16:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3291,"target":8.48,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":59.7,"room_to_5d_high_atr":0.97},"price":8.4192,"vwap":8.3296,"ext_from_open_pct":1.07,"max_ext_allowed_pct":4.0,"volume_pace":0.91,"trend":"flat","recent_slope_pct":0.0377,"volatility":"medium"},"price":8.4192,"volume":{"bars":166,"last_bar_volume":1563.0,"baseline_avg":985.5,"bar_rvol":1.585997,"raw_accel":5.343988,"smooth_accel":-0.294538,"accel_momentum":-0.120251,"rvol_3bar":[0.078521,0.036989,1.585997],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":87.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.955056,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":3.3659},"context":{"vwap":8.329592,"price_vs_vwap_pct":1.075777,"ema9":8.431537,"ema20":8.438774,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.950588,"dist_to_hod_atr":3.83267,"atr":0.021082,"spread_atr":0.47434,"own_change_pct":0.026078,"rel_strength_pct":{"SPY":0.023065,"IWM":0.047173}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.514716},"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":"e6348f9a2853","ts":"2026-09-15T16:16:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6338,"target":7.775,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":0.81},"price":7.7217,"vwap":7.7246,"ext_from_open_pct":0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.555,"trend":"flat","recent_slope_pct":-0.0322,"volatility":"medium"},"price":7.7217,"volume":{"bars":166,"last_bar_volume":14582.0,"baseline_avg":8114.15,"bar_rvol":1.797108,"raw_accel":6.18843,"smooth_accel":2.109428,"accel_momentum":1.633908,"rvol_3bar":[1.485785,0.087255,1.797108],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":11256.0,"sell_vol":2227.0,"unclassified_vol":0.0,"imbalance":0.669658,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":5.618471},"context":{"vwap":7.724634,"price_vs_vwap_pct":-0.037977,"ema9":7.730814,"ema20":7.733524,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.130602,"dist_to_hod_atr":4.362022,"atr":0.020243,"spread_atr":0.494,"own_change_pct":-0.121456,"rel_strength_pct":{"SPY":-0.124469,"IWM":-0.100362}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.203448},"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":"956d4cc39c7a","ts":"2026-09-15T16:16:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6371,"target":7.775,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":0.8},"price":7.725,"vwap":7.7246,"ext_from_open_pct":0.32,"max_ext_allowed_pct":4.0,"volume_pace":0.555,"trend":"flat","recent_slope_pct":-0.0237,"volatility":"medium"},"price":7.725,"volume":{"bars":166,"last_bar_volume":14582.0,"baseline_avg":8114.15,"bar_rvol":1.797108,"raw_accel":6.18843,"smooth_accel":2.109428,"accel_momentum":1.633908,"rvol_3bar":[1.485785,0.087255,1.797108],"trend_3bar":"MIXED","projected_rvol":0.708885},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":11849.0,"sell_vol":2229.0,"unclassified_vol":0.0,"imbalance":0.683336,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":10.618471},"context":{"vwap":7.724634,"price_vs_vwap_pct":0.004744,"ema9":7.730814,"ema20":7.733524,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.088348,"dist_to_hod_atr":4.199002,"atr":0.020243,"spread_atr":0.494,"own_change_pct":-0.121456,"rel_strength_pct":{"SPY":-0.124469,"IWM":-0.100362}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.228028},"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":"93cf64c7f602","ts":"2026-09-15T16:16:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.6339,"target":7.775,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":0.81},"price":7.7218,"vwap":7.7246,"ext_from_open_pct":0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.032,"volatility":"medium"},"price":7.7218,"volume":{"bars":166,"last_bar_volume":14582.0,"baseline_avg":8114.15,"bar_rvol":1.797108,"raw_accel":6.18843,"smooth_accel":2.109428,"accel_momentum":1.633908,"rvol_3bar":[1.485785,0.087255,1.797108],"trend_3bar":"MIXED","projected_rvol":0.457719},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1243.0,"sell_vol":614.0,"unclassified_vol":0.0,"imbalance":0.338718,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.070247},"context":{"vwap":7.724634,"price_vs_vwap_pct":-0.036682,"ema9":7.730814,"ema20":7.733524,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.129321,"dist_to_hod_atr":4.357082,"atr":0.020243,"spread_atr":0.494,"own_change_pct":-0.121456,"rel_strength_pct":{"SPY":-0.124469,"IWM":-0.100362}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.608713},"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":"6a742fa378e8","ts":"2026-09-15T16:16:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.642,"target":7.83,"target_label":"premarket_high","reward_risk":1.14,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":0.78},"price":7.7299,"vwap":7.7246,"ext_from_open_pct":0.39,"max_ext_allowed_pct":4.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.011,"volatility":"medium"},"price":7.7299,"volume":{"bars":166,"last_bar_volume":14582.0,"baseline_avg":8114.15,"bar_rvol":1.797108,"raw_accel":6.18843,"smooth_accel":2.109428,"accel_momentum":1.633908,"rvol_3bar":[1.485785,0.087255,1.797108],"trend_3bar":"MIXED","projected_rvol":0.418739},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1230.0,"sell_vol":122.0,"unclassified_vol":0.0,"imbalance":0.819527,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":1.978337},"context":{"vwap":7.724634,"price_vs_vwap_pct":0.068177,"ema9":7.730814,"ema20":7.733524,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.025608,"dist_to_hod_atr":3.956942,"atr":0.020243,"spread_atr":0.494,"own_change_pct":-0.121456,"rel_strength_pct":{"SPY":-0.124469,"IWM":-0.100362}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.472777},"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":"8011378edacb","ts":"2026-09-15T16:16:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.6159,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":4.162,"trend":"flat","recent_slope_pct":0.0236,"volatility":"low"},"price":9.84,"volume":{"bars":166,"last_bar_volume":1974.0,"baseline_avg":6977.8,"bar_rvol":0.282897,"raw_accel":-0.835363,"smooth_accel":0.76864,"accel_momentum":-0.632948,"rvol_3bar":[3.182058,1.859016,0.282897],"trend_3bar":"DECELERATING","projected_rvol":0.232929},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":268.0,"sell_vol":676.0,"unclassified_vol":0.0,"imbalance":-0.432203,"bid":9.82,"ask":9.86,"spread_pct":0.406504,"quote_size_imbalance":null,"quote_age_s":8.69762},"context":{"vwap":9.615736,"price_vs_vwap_pct":2.332255,"ema9":9.81051,"ema20":9.786497,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":6.737379,"atr":0.053433,"spread_atr":0.748598,"own_change_pct":0.608353,"rel_strength_pct":{"SPY":0.605341,"IWM":0.629448}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.122269},"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":"404c2fce9d60","ts":"2026-09-15T16:16:45+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.72 below VWAP $7.72","plan":{"state":"PASS","setup":"","stop":7.634,"target":7.775,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":0.81},"price":7.7219,"vwap":7.7246,"ext_from_open_pct":0.28,"max_ext_allowed_pct":3.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.0317,"volatility":"medium"},"price":7.7219,"volume":{"bars":166,"last_bar_volume":14582.0,"baseline_avg":8114.15,"bar_rvol":1.797108,"raw_accel":6.18843,"smooth_accel":2.109428,"accel_momentum":1.633908,"rvol_3bar":[1.485785,0.087255,1.797108],"trend_3bar":"MIXED","projected_rvol":0.325851},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":425.0,"sell_vol":120.0,"unclassified_vol":0.0,"imbalance":0.559633,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":0.220519},"context":{"vwap":7.724634,"price_vs_vwap_pct":-0.035387,"ema9":7.730814,"ema20":7.733524,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.128041,"dist_to_hod_atr":4.352142,"atr":0.020243,"spread_atr":0.494,"own_change_pct":-0.121456,"rel_strength_pct":{"SPY":-0.124469,"IWM":-0.100362}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.005721},"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":"e683775f186b","ts":"2026-09-15T16:16:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.6371,"target":7.775,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":0.8},"price":7.725,"vwap":7.7246,"ext_from_open_pct":0.32,"max_ext_allowed_pct":4.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.0237,"volatility":"medium"},"price":7.725,"volume":{"bars":166,"last_bar_volume":14582.0,"baseline_avg":8114.15,"bar_rvol":1.797108,"raw_accel":6.18843,"smooth_accel":2.109428,"accel_momentum":1.633908,"rvol_3bar":[1.485785,0.087255,1.797108],"trend_3bar":"MIXED","projected_rvol":0.584904},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":2097.0,"sell_vol":120.0,"unclassified_vol":0.0,"imbalance":0.891746,"bid":7.72,"ask":7.73,"spread_pct":0.12945,"quote_size_imbalance":null,"quote_age_s":1.978226},"context":{"vwap":7.724634,"price_vs_vwap_pct":0.004744,"ema9":7.730814,"ema20":7.733524,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-1.088348,"dist_to_hod_atr":4.199002,"atr":0.020243,"spread_atr":0.494,"own_change_pct":-0.121456,"rel_strength_pct":{"SPY":-0.124469,"IWM":-0.100362}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.602563},"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":"5b50545d0fc2","ts":"2026-09-15T16:17:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.6161,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":4.154,"trend":"flat","recent_slope_pct":-0.0393,"volatility":"low"},"price":9.82,"volume":{"bars":167,"last_bar_volume":2729.0,"baseline_avg":6921.65,"bar_rvol":0.39427,"raw_accel":0.382472,"smooth_accel":-0.443455,"accel_momentum":-1.212095,"rvol_3bar":[1.859016,0.282897,0.39427],"trend_3bar":"MIXED","projected_rvol":0.158922},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1327.0,"sell_vol":458.0,"unclassified_vol":0.0,"imbalance":0.486835,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":0.495194},"context":{"vwap":9.616113,"price_vs_vwap_pct":2.120268,"ema9":9.815408,"ema20":9.791116,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":7.185964,"atr":0.052881,"spread_atr":0.567313,"own_change_pct":0.16703,"rel_strength_pct":{"SPY":0.173636,"IWM":0.181093}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.191944},"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":"e9317c0e527e","ts":"2026-09-15T16:17:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.3449,"target":8.5586,"target_label":"premarket_high","reward_risk":1.37,"pos_in_5d_range_pct":61.5,"room_to_5d_high_atr":0.93},"price":8.435,"vwap":8.3308,"ext_from_open_pct":1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.914,"trend":"flat","recent_slope_pct":0.08,"volatility":"medium"},"price":8.435,"volume":{"bars":167,"last_bar_volume":411.0,"baseline_avg":1013.15,"bar_rvol":0.405665,"raw_accel":-0.737044,"smooth_accel":-0.171746,"accel_momentum":0.122792,"rvol_3bar":[0.036989,1.585997,0.405665],"trend_3bar":"MIXED","projected_rvol":6.899275},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1867.0,"sell_vol":698.0,"unclassified_vol":0.0,"imbalance":0.45575,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.162049},"context":{"vwap":8.329765,"price_vs_vwap_pct":1.263357,"ema9":8.430709,"ema20":8.43769,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.764706,"dist_to_hod_atr":3.10194,"atr":0.020955,"spread_atr":0.477222,"own_change_pct":0.028487,"rel_strength_pct":{"SPY":0.035093,"IWM":0.042549}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.184882},"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":"ae7a7556b35d","ts":"2026-09-15T16:17:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":482.4,"room_to_5d_high_atr":-5.51},"price":9.8449,"vwap":9.6162,"ext_from_open_pct":4.18,"max_ext_allowed_pct":4.0,"volume_pace":4.148,"trend":"flat","recent_slope_pct":0.0114,"volatility":"low"},"price":9.8449,"volume":{"bars":167,"last_bar_volume":2729.0,"baseline_avg":6921.65,"bar_rvol":0.39427,"raw_accel":0.382472,"smooth_accel":-0.443455,"accel_momentum":-1.212095,"rvol_3bar":[1.859016,0.282897,0.39427],"trend_3bar":"MIXED","projected_rvol":0.093908},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":95.0,"sell_vol":230.0,"unclassified_vol":0.0,"imbalance":-0.415385,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":0.419083},"context":{"vwap":9.616113,"price_vs_vwap_pct":2.379208,"ema9":9.815408,"ema20":9.791116,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.481373,"dist_to_hod_atr":6.715094,"atr":0.052881,"spread_atr":0.567313,"own_change_pct":0.16703,"rel_strength_pct":{"SPY":0.173636,"IWM":0.181093}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.163774},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7505f35a806e","ts":"2026-09-15T16:17:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3398,"target":8.5586,"target_label":"premarket_high","reward_risk":1.43,"pos_in_5d_range_pct":60.9,"room_to_5d_high_atr":0.94},"price":8.4299,"vwap":8.3308,"ext_from_open_pct":1.2,"max_ext_allowed_pct":3.0,"volume_pace":0.913,"trend":"flat","recent_slope_pct":0.0679,"volatility":"medium"},"price":8.4299,"volume":{"bars":167,"last_bar_volume":411.0,"baseline_avg":1013.15,"bar_rvol":0.405665,"raw_accel":-0.737044,"smooth_accel":-0.171746,"accel_momentum":0.122792,"rvol_3bar":[0.036989,1.585997,0.405665],"trend_3bar":"MIXED","projected_rvol":4.623205},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1642.0,"sell_vol":700.0,"unclassified_vol":0.0,"imbalance":0.40222,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.676016},"context":{"vwap":8.329765,"price_vs_vwap_pct":1.202131,"ema9":8.430709,"ema20":8.43769,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.824706,"dist_to_hod_atr":3.345323,"atr":0.020955,"spread_atr":0.477222,"own_change_pct":0.028487,"rel_strength_pct":{"SPY":0.035093,"IWM":0.042549}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.163167},"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":"e1fc1af4020d","ts":"2026-09-15T16:17:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.64,"pos_in_5d_range_pct":479.7,"room_to_5d_high_atr":-5.47},"price":9.835,"vwap":9.6162,"ext_from_open_pct":4.07,"max_ext_allowed_pct":5.0,"volume_pace":4.146,"trend":"flat","recent_slope_pct":-0.0087,"volatility":"low"},"price":9.835,"volume":{"bars":167,"last_bar_volume":2729.0,"baseline_avg":6921.65,"bar_rvol":0.39427,"raw_accel":0.382472,"smooth_accel":-0.443455,"accel_momentum":-1.212095,"rvol_3bar":[1.859016,0.282897,0.39427],"trend_3bar":"MIXED","projected_rvol":0.107489},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":153.0,"sell_vol":60.0,"unclassified_vol":0.0,"imbalance":0.43662,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":4.990873},"context":{"vwap":9.616113,"price_vs_vwap_pct":2.276256,"ema9":9.815408,"ema20":9.791116,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.578431,"dist_to_hod_atr":6.902307,"atr":0.052881,"spread_atr":0.567313,"own_change_pct":0.16703,"rel_strength_pct":{"SPY":0.173636,"IWM":0.181093}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.172146},"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":"264f8776edb0","ts":"2026-09-15T16:17:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.3449,"target":8.5586,"target_label":"premarket_high","reward_risk":1.37,"pos_in_5d_range_pct":61.5,"room_to_5d_high_atr":0.93},"price":8.435,"vwap":8.3308,"ext_from_open_pct":1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.08,"volatility":"medium"},"price":8.435,"volume":{"bars":167,"last_bar_volume":411.0,"baseline_avg":1013.15,"bar_rvol":0.405665,"raw_accel":-0.737044,"smooth_accel":-0.171746,"accel_momentum":0.122792,"rvol_3bar":[0.036989,1.585997,0.405665],"trend_3bar":"MIXED","projected_rvol":3.497014},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":296.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.966777,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":3.570773},"context":{"vwap":8.329765,"price_vs_vwap_pct":1.263357,"ema9":8.430709,"ema20":8.43769,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.764706,"dist_to_hod_atr":3.10194,"atr":0.020955,"spread_atr":0.477222,"own_change_pct":0.028487,"rel_strength_pct":{"SPY":0.035093,"IWM":0.042549}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.392188},"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":"6f27d58e061e","ts":"2026-09-15T16:17:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":482.7,"room_to_5d_high_atr":-5.51},"price":9.846,"vwap":9.6163,"ext_from_open_pct":4.19,"max_ext_allowed_pct":4.0,"volume_pace":4.144,"trend":"flat","recent_slope_pct":0.0136,"volatility":"low"},"price":9.846,"volume":{"bars":167,"last_bar_volume":2729.0,"baseline_avg":6921.65,"bar_rvol":0.39427,"raw_accel":0.382472,"smooth_accel":-0.443455,"accel_momentum":-1.212095,"rvol_3bar":[1.859016,0.282897,0.39427],"trend_3bar":"MIXED","projected_rvol":0.218638},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":444.0,"sell_vol":416.0,"unclassified_vol":0.0,"imbalance":0.032558,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":7.960772},"context":{"vwap":9.616113,"price_vs_vwap_pct":2.390647,"ema9":9.815408,"ema20":9.791116,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.470588,"dist_to_hod_atr":6.694293,"atr":0.052881,"spread_atr":0.567313,"own_change_pct":0.16703,"rel_strength_pct":{"SPY":0.173636,"IWM":0.181093}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.012837},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cd866cbca084","ts":"2026-09-15T16:17:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3398,"target":8.5586,"target_label":"premarket_high","reward_risk":1.43,"pos_in_5d_range_pct":60.9,"room_to_5d_high_atr":0.94},"price":8.4299,"vwap":8.3308,"ext_from_open_pct":1.2,"max_ext_allowed_pct":4.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":0.0679,"volatility":"medium"},"price":8.4299,"volume":{"bars":167,"last_bar_volume":411.0,"baseline_avg":1013.15,"bar_rvol":0.405665,"raw_accel":-0.737044,"smooth_accel":-0.171746,"accel_momentum":0.122792,"rvol_3bar":[0.036989,1.585997,0.405665],"trend_3bar":"MIXED","projected_rvol":2.798796},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":30.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.818182,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":13.570773},"context":{"vwap":8.329765,"price_vs_vwap_pct":1.202131,"ema9":8.430709,"ema20":8.43769,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.824706,"dist_to_hod_atr":3.345323,"atr":0.020955,"spread_atr":0.477222,"own_change_pct":0.028487,"rel_strength_pct":{"SPY":0.035093,"IWM":0.042549}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.331908},"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":"9515d84ed0ad","ts":"2026-09-15T16:17:55+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4162,"target":9.6156,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":5.7,"room_to_5d_high_atr":3.22},"price":9.5676,"vwap":9.5634,"ext_from_open_pct":-1.87,"max_ext_allowed_pct":4.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":0.0724,"volatility":"high"},"price":9.5676,"volume":{"bars":167,"last_bar_volume":3094.0,"baseline_avg":13222.8,"bar_rvol":0.23399,"raw_accel":-0.702386,"smooth_accel":0.096338,"accel_momentum":0.755425,"rvol_3bar":[0.131362,0.733973,0.23399],"trend_3bar":"MIXED","projected_rvol":0.838139},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2727.0,"sell_vol":196.0,"unclassified_vol":0.0,"imbalance":0.865891,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":5.1176},"context":{"vwap":9.563382,"price_vs_vwap_pct":0.04411,"ema9":9.548746,"ema20":9.54005,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.669379,"dist_to_hod_atr":9.796946,"atr":0.026784,"spread_atr":0.373359,"own_change_pct":0.104712,"rel_strength_pct":{"SPY":0.111319,"IWM":0.118775}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.20261},"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":"9f63a1bc4335","ts":"2026-09-15T16:18:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":480.5,"room_to_5d_high_atr":-5.48},"price":9.8378,"vwap":9.6163,"ext_from_open_pct":4.1,"max_ext_allowed_pct":5.0,"volume_pace":4.136,"trend":"flat","recent_slope_pct":0.0015,"volatility":"low"},"price":9.8378,"volume":{"bars":168,"last_bar_volume":1178.0,"baseline_avg":7041.35,"bar_rvol":0.167297,"raw_accel":-0.56834,"smooth_accel":-0.8338,"accel_momentum":-0.390344,"rvol_3bar":[0.282897,0.39427,0.167297],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":351.0,"sell_vol":515.0,"unclassified_vol":0.0,"imbalance":-0.189376,"bid":9.82,"ask":9.84,"spread_pct":0.203459,"quote_size_imbalance":null,"quote_age_s":0.023979},"context":{"vwap":9.616276,"price_vs_vwap_pct":2.303633,"ema9":9.821506,"ema20":9.796334,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.55098,"dist_to_hod_atr":7.067797,"atr":0.051247,"spread_atr":0.39027,"own_change_pct":0.16175,"rel_strength_pct":{"SPY":0.138625,"IWM":0.12307}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.031682},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b7f45c93011a","ts":"2026-09-15T16:18:05+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.407,"target":9.6156,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.24},"price":9.5584,"vwap":9.5634,"ext_from_open_pct":-1.97,"max_ext_allowed_pct":3.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":0.0778,"volatility":"high"},"price":9.5584,"volume":{"bars":168,"last_bar_volume":10160.0,"baseline_avg":11941.45,"bar_rvol":0.850818,"raw_accel":2.283775,"smooth_accel":1.07529,"accel_momentum":0.978952,"rvol_3bar":[0.733973,0.23399,0.850818],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":2606.0,"sell_vol":280.0,"unclassified_vol":0.0,"imbalance":0.80596,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.184617},"context":{"vwap":9.563368,"price_vs_vwap_pct":-0.051947,"ema9":9.551997,"ema20":9.542427,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.76297,"dist_to_hod_atr":10.327273,"atr":0.026299,"spread_atr":0.380238,"own_change_pct":0.099419,"rel_strength_pct":{"SPY":0.076294,"IWM":0.060739}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.685725},"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":"27e5e2f6014c","ts":"2026-09-15T16:18:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.6165,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":4.137,"trend":"flat","recent_slope_pct":-0.0143,"volatility":"low"},"price":9.83,"volume":{"bars":168,"last_bar_volume":1178.0,"baseline_avg":7041.35,"bar_rvol":0.167297,"raw_accel":-0.56834,"smooth_accel":-0.8338,"accel_momentum":-0.390344,"rvol_3bar":[0.282897,0.39427,0.167297],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":235.0,"sell_vol":1733.0,"unclassified_vol":0.0,"imbalance":-0.761179,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":0.747751},"context":{"vwap":9.616276,"price_vs_vwap_pct":2.22252,"ema9":9.821506,"ema20":9.796334,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":7.220002,"atr":0.051247,"spread_atr":0.585406,"own_change_pct":0.16175,"rel_strength_pct":{"SPY":0.138625,"IWM":0.12307}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.127343},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1bd2ec553245","ts":"2026-09-15T16:18:15+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4136,"target":9.6156,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5634,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":0.0916,"volatility":"high"},"price":9.565,"volume":{"bars":168,"last_bar_volume":10160.0,"baseline_avg":11941.45,"bar_rvol":0.850818,"raw_accel":2.283775,"smooth_accel":1.07529,"accel_momentum":0.978952,"rvol_3bar":[0.733973,0.23399,0.850818],"trend_3bar":"MIXED","projected_rvol":0.267639},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":2.0,"sell_vol":834.0,"unclassified_vol":0.0,"imbalance":-0.995215,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.953198},"context":{"vwap":9.563368,"price_vs_vwap_pct":0.017066,"ema9":9.551997,"ema20":9.542427,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":10.076316,"atr":0.026299,"spread_atr":0.380238,"own_change_pct":0.099419,"rel_strength_pct":{"SPY":0.076294,"IWM":0.060739}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.846747},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6cb765583868","ts":"2026-09-15T16:18:20+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4086,"target":9.6156,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":3.24},"price":9.56,"vwap":9.5634,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":3.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":0.0811,"volatility":"high"},"price":9.56,"volume":{"bars":168,"last_bar_volume":10160.0,"baseline_avg":11941.45,"bar_rvol":0.850818,"raw_accel":2.283775,"smooth_accel":1.07529,"accel_momentum":0.978952,"rvol_3bar":[0.733973,0.23399,0.850818],"trend_3bar":"MIXED","projected_rvol":0.22334},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":2.0,"sell_vol":889.0,"unclassified_vol":0.0,"imbalance":-0.995511,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.25628},"context":{"vwap":9.563368,"price_vs_vwap_pct":-0.035217,"ema9":9.551997,"ema20":9.542427,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.746694,"dist_to_hod_atr":10.266435,"atr":0.026299,"spread_atr":0.380238,"own_change_pct":0.099419,"rel_strength_pct":{"SPY":0.076294,"IWM":0.060739}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.846998},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4fb0189e4106","ts":"2026-09-15T16:18:50+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4136,"target":9.6156,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5634,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0916,"volatility":"high"},"price":9.565,"volume":{"bars":168,"last_bar_volume":10160.0,"baseline_avg":11941.45,"bar_rvol":0.850818,"raw_accel":2.283775,"smooth_accel":1.07529,"accel_momentum":0.978952,"rvol_3bar":[0.733973,0.23399,0.850818],"trend_3bar":"MIXED","projected_rvol":0.156061},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":0.0,"sell_vol":664.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.268594},"context":{"vwap":9.563368,"price_vs_vwap_pct":0.017066,"ema9":9.551997,"ema20":9.542427,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":10.076316,"atr":0.026299,"spread_atr":0.380238,"own_change_pct":0.099419,"rel_strength_pct":{"SPY":0.076294,"IWM":0.060739}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.850818},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9efd90ce202f","ts":"2026-09-15T16:19:00+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.55 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4035,"target":9.6156,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":5.1,"room_to_5d_high_atr":3.25},"price":9.5549,"vwap":9.5634,"ext_from_open_pct":-2.0,"max_ext_allowed_pct":3.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0705,"volatility":"high"},"price":9.5549,"volume":{"bars":168,"last_bar_volume":10160.0,"baseline_avg":11941.45,"bar_rvol":0.850818,"raw_accel":2.283775,"smooth_accel":1.07529,"accel_momentum":0.978952,"rvol_3bar":[0.733973,0.23399,0.850818],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":0.0,"sell_vol":658.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.813416},"context":{"vwap":9.563368,"price_vs_vwap_pct":-0.088545,"ema9":9.551997,"ema20":9.542427,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.798576,"dist_to_hod_atr":10.460357,"atr":0.026299,"spread_atr":0.380238,"own_change_pct":0.099419,"rel_strength_pct":{"SPY":0.077618,"IWM":0.067774}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.850818},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"379a69c1fc42","ts":"2026-09-15T16:19:15+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4136,"target":9.6156,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5634,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":0.0392,"volatility":"high"},"price":9.565,"volume":{"bars":169,"last_bar_volume":1571.0,"baseline_avg":11561.5,"bar_rvol":0.135882,"raw_accel":-0.845374,"smooth_accel":0.054185,"accel_momentum":-1.021105,"rvol_3bar":[0.23399,0.850818,0.135882],"trend_3bar":"MIXED","projected_rvol":0.054318},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":0.0,"sell_vol":775.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.667214},"context":{"vwap":9.563364,"price_vs_vwap_pct":0.017106,"ema9":9.552578,"ema20":9.543614,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":10.459814,"atr":0.025335,"spread_atr":0.39471,"own_change_pct":0.0817,"rel_strength_pct":{"SPY":0.059899,"IWM":0.050055}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.135882},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a6c536a8f589","ts":"2026-09-15T16:19:20+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.55 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4014,"target":9.6156,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":5.0,"room_to_5d_high_atr":3.25},"price":9.5528,"vwap":9.5634,"ext_from_open_pct":-2.02,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0137,"volatility":"high"},"price":9.5528,"volume":{"bars":169,"last_bar_volume":1571.0,"baseline_avg":11561.5,"bar_rvol":0.135882,"raw_accel":-0.845374,"smooth_accel":0.054185,"accel_momentum":-1.021105,"rvol_3bar":[0.23399,0.850818,0.135882],"trend_3bar":"MIXED","projected_rvol":0.043074},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":0.0,"sell_vol":184.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.300846},"context":{"vwap":9.563364,"price_vs_vwap_pct":-0.110464,"ema9":9.552578,"ema20":9.543614,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.819939,"dist_to_hod_atr":10.94136,"atr":0.025335,"spread_atr":0.39471,"own_change_pct":0.0817,"rel_strength_pct":{"SPY":0.059899,"IWM":0.050055}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.135882},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"55ad90c1210f","ts":"2026-09-15T16:19:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.6167,"ext_from_open_pct":4.23,"max_ext_allowed_pct":5.0,"volume_pace":4.112,"trend":"flat","recent_slope_pct":0.0152,"volatility":"low"},"price":9.85,"volume":{"bars":169,"last_bar_volume":3374.0,"baseline_avg":6779.15,"bar_rvol":0.497703,"raw_accel":0.99081,"smooth_accel":-0.770771,"accel_momentum":0.063029,"rvol_3bar":[0.39427,0.167297,0.497703],"trend_3bar":"MIXED","projected_rvol":0.007081},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":20.0,"sell_vol":234.0,"unclassified_vol":0.0,"imbalance":-0.84252,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":6.586279},"context":{"vwap":9.616733,"price_vs_vwap_pct":2.425642,"ema9":9.823205,"ema20":9.79954,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":7.03917,"atr":0.049722,"spread_atr":0.603357,"own_change_pct":-0.069128,"rel_strength_pct":{"SPY":-0.09093,"IWM":-0.100774}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.419324},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9769c98164bb","ts":"2026-09-15T16:19:35+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4186,"target":9.6156,"target_label":"ceiling","reward_risk":0.3,"pos_in_5d_range_pct":5.8,"room_to_5d_high_atr":3.22},"price":9.57,"vwap":9.5634,"ext_from_open_pct":-1.85,"max_ext_allowed_pct":4.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0497,"volatility":"high"},"price":9.57,"volume":{"bars":169,"last_bar_volume":1571.0,"baseline_avg":11561.5,"bar_rvol":0.135882,"raw_accel":-0.845374,"smooth_accel":0.054185,"accel_momentum":-1.021105,"rvol_3bar":[0.23399,0.850818,0.135882],"trend_3bar":"MIXED","projected_rvol":1.232761},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":8002.0,"sell_vol":262.0,"unclassified_vol":0.0,"imbalance":0.936592,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.404285},"context":{"vwap":9.563364,"price_vs_vwap_pct":0.069389,"ema9":9.552578,"ema20":9.543614,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.644964,"dist_to_hod_atr":10.262459,"atr":0.025335,"spread_atr":0.39471,"own_change_pct":0.0817,"rel_strength_pct":{"SPY":0.059899,"IWM":0.050055}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.127266},"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":"0d6b638dc77d","ts":"2026-09-15T16:19:55+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4046,"target":9.6156,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":5.1,"room_to_5d_high_atr":3.24},"price":9.556,"vwap":9.5634,"ext_from_open_pct":-1.99,"max_ext_allowed_pct":4.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0204,"volatility":"high"},"price":9.556,"volume":{"bars":169,"last_bar_volume":1571.0,"baseline_avg":11561.5,"bar_rvol":0.135882,"raw_accel":-0.845374,"smooth_accel":0.054185,"accel_momentum":-1.021105,"rvol_3bar":[0.23399,0.850818,0.135882],"trend_3bar":"MIXED","projected_rvol":0.784768},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":8002.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.99925,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.8763},"context":{"vwap":9.563364,"price_vs_vwap_pct":-0.077003,"ema9":9.552578,"ema20":9.543614,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.787386,"dist_to_hod_atr":10.815053,"atr":0.025335,"spread_atr":0.39471,"own_change_pct":0.0817,"rel_strength_pct":{"SPY":0.059899,"IWM":0.050055}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.13578},"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":"0c2542ccac64","ts":"2026-09-15T16:20:00+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.4159,"target":9.6156,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":5.7,"room_to_5d_high_atr":3.23},"price":9.5673,"vwap":9.5634,"ext_from_open_pct":-1.87,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.044,"volatility":"high"},"price":9.5673,"volume":{"bars":169,"last_bar_volume":1571.0,"baseline_avg":11561.5,"bar_rvol":0.135882,"raw_accel":-0.845374,"smooth_accel":0.054185,"accel_momentum":-1.021105,"rvol_3bar":[0.23399,0.850818,0.135882],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":8062.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.967781,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.20774},"context":{"vwap":9.563364,"price_vs_vwap_pct":0.041156,"ema9":9.552578,"ema20":9.543614,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.672431,"dist_to_hod_atr":10.36903,"atr":0.025335,"spread_atr":0.39471,"own_change_pct":0.0817,"rel_strength_pct":{"SPY":0.042059,"IWM":0.018405}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.131504},"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":"bbd3eb5309c9","ts":"2026-09-15T16:20:05+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":9.416,"target":9.87,"target_label":"premarket_high","reward_risk":2.0,"pos_in_5d_range_pct":5.7,"room_to_5d_high_atr":3.23},"price":9.5674,"vwap":9.5634,"ext_from_open_pct":-1.87,"max_ext_allowed_pct":3.0,"volume_pace":0.819,"trend":"flat","recent_slope_pct":0.0179,"volatility":"high"},"price":9.5674,"volume":{"bars":170,"last_bar_volume":8506.0,"baseline_avg":11074.75,"bar_rvol":0.768053,"raw_accel":2.072214,"smooth_accel":0.307553,"accel_momentum":0.253368,"rvol_3bar":[0.850818,0.135882,0.768053],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":160.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":0.028939,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":4.123817},"context":{"vwap":9.563364,"price_vs_vwap_pct":0.042204,"ema9":9.555522,"ema20":9.54587,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.671414,"dist_to_hod_atr":10.602275,"atr":0.024768,"spread_atr":0.403742,"own_change_pct":0.371385,"rel_strength_pct":{"SPY":0.331743,"IWM":0.308089}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.022227},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ee519aa2881d","ts":"2026-09-15T16:20:15+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4186,"target":9.87,"target_label":"premarket_high","reward_risk":1.98,"pos_in_5d_range_pct":5.8,"room_to_5d_high_atr":3.22},"price":9.57,"vwap":9.5634,"ext_from_open_pct":-1.85,"max_ext_allowed_pct":4.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0233,"volatility":"high"},"price":9.57,"volume":{"bars":170,"last_bar_volume":8506.0,"baseline_avg":11074.75,"bar_rvol":0.768053,"raw_accel":2.072214,"smooth_accel":0.307553,"accel_momentum":0.253368,"rvol_3bar":[0.850818,0.135882,0.768053],"trend_3bar":"MIXED","projected_rvol":2.141087},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":5962.0,"sell_vol":158.0,"unclassified_vol":0.0,"imbalance":0.948366,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.238761},"context":{"vwap":9.563364,"price_vs_vwap_pct":0.069391,"ema9":9.555522,"ema20":9.54587,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.644964,"dist_to_hod_atr":10.497302,"atr":0.024768,"spread_atr":0.403742,"own_change_pct":0.371385,"rel_strength_pct":{"SPY":0.331743,"IWM":0.308089}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.728396},"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":"b2e4da5abe84","ts":"2026-09-15T16:20:20+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3339,"target":8.48,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":60.2,"room_to_5d_high_atr":0.96},"price":8.424,"vwap":8.331,"ext_from_open_pct":1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":-0.0026,"volatility":"medium"},"price":8.424,"volume":{"bars":170,"last_bar_volume":113.0,"baseline_avg":946.0,"bar_rvol":0.11945,"raw_accel":-0.619529,"smooth_accel":0.380408,"accel_momentum":-0.450444,"rvol_3bar":[2.683148,0.318311,0.11945],"trend_3bar":"DECELERATING","projected_rvol":0.317125},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":3.0,"sell_vol":106.0,"unclassified_vol":0.0,"imbalance":-0.944954,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":36.546955},"context":{"vwap":8.330936,"price_vs_vwap_pct":1.117086,"ema9":8.430301,"ema20":8.435608,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.894118,"dist_to_hod_atr":4.032873,"atr":0.018845,"spread_atr":0.530641,"own_change_pct":0.282996,"rel_strength_pct":{"SPY":0.243355,"IWM":0.219701}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.112875},"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":"ac6d747d71e4","ts":"2026-09-15T16:20:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.3499,"target":8.5586,"target_label":"premarket_high","reward_risk":1.32,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.92},"price":8.44,"vwap":8.3311,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0353,"volatility":"medium"},"price":8.44,"volume":{"bars":170,"last_bar_volume":113.0,"baseline_avg":946.0,"bar_rvol":0.11945,"raw_accel":-0.619529,"smooth_accel":0.380408,"accel_momentum":-0.450444,"rvol_3bar":[2.683148,0.318311,0.11945],"trend_3bar":"DECELERATING","projected_rvol":0.739958},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":250.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.428571,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":46.546955},"context":{"vwap":8.330936,"price_vs_vwap_pct":1.309141,"ema9":8.430301,"ema20":8.435608,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.705882,"dist_to_hod_atr":3.183847,"atr":0.018845,"spread_atr":0.530641,"own_change_pct":0.282996,"rel_strength_pct":{"SPY":0.243355,"IWM":0.219701}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.051193},"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":"9faa04caf0b6","ts":"2026-09-15T16:20:35+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":9.4136,"target":9.87,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5634,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0129,"volatility":"high"},"price":9.565,"volume":{"bars":170,"last_bar_volume":8506.0,"baseline_avg":11074.75,"bar_rvol":0.768053,"raw_accel":2.072214,"smooth_accel":0.307553,"accel_momentum":0.253368,"rvol_3bar":[0.850818,0.135882,0.768053],"trend_3bar":"MIXED","projected_rvol":1.423779},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":7841.0,"sell_vol":1238.0,"unclassified_vol":0.0,"imbalance":0.727283,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":2.082796},"context":{"vwap":9.563364,"price_vs_vwap_pct":0.017108,"ema9":9.555522,"ema20":9.54587,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":10.699173,"atr":0.024768,"spread_atr":0.403742,"own_change_pct":0.371385,"rel_strength_pct":{"SPY":0.331743,"IWM":0.308089}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.558592},"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":"002c45bb82ca","ts":"2026-09-15T16:20:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.87,"vwap":9.6183,"ext_from_open_pct":4.44,"max_ext_allowed_pct":4.0,"volume_pace":4.109,"trend":"flat","recent_slope_pct":0.0702,"volatility":"low"},"price":9.87,"volume":{"bars":170,"last_bar_volume":7957.0,"baseline_avg":4729.8,"bar_rvol":1.682312,"raw_accel":1.358328,"smooth_accel":-0.250644,"accel_momentum":0.520127,"rvol_3bar":[0.167297,0.497703,1.682312],"trend_3bar":"ACCELERATING","projected_rvol":0.943486},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2345.0,"sell_vol":593.0,"unclassified_vol":0.0,"imbalance":0.596324,"bid":9.85,"ask":9.88,"spread_pct":0.304105,"quote_size_imbalance":null,"quote_age_s":0.92852},"context":{"vwap":9.617858,"price_vs_vwap_pct":2.621601,"ema9":9.827564,"ema20":9.80387,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.235294,"dist_to_hod_atr":6.83146,"atr":0.048306,"spread_atr":0.621042,"own_change_pct":0.050813,"rel_strength_pct":{"SPY":0.011171,"IWM":-0.012483}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.003203},"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":"77d90e909551","ts":"2026-09-15T16:20:45+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4186,"target":9.87,"target_label":"premarket_high","reward_risk":1.98,"pos_in_5d_range_pct":5.8,"room_to_5d_high_atr":3.22},"price":9.57,"vwap":9.5634,"ext_from_open_pct":-1.85,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0233,"volatility":"high"},"price":9.57,"volume":{"bars":170,"last_bar_volume":8506.0,"baseline_avg":11074.75,"bar_rvol":0.768053,"raw_accel":2.072214,"smooth_accel":0.307553,"accel_momentum":0.253368,"rvol_3bar":[0.850818,0.135882,0.768053],"trend_3bar":"MIXED","projected_rvol":1.351182},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":4055.0,"sell_vol":1240.0,"unclassified_vol":0.0,"imbalance":0.531634,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.019558},"context":{"vwap":9.563364,"price_vs_vwap_pct":0.069391,"ema9":9.555522,"ema20":9.54587,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.644964,"dist_to_hod_atr":10.497302,"atr":0.024768,"spread_atr":0.403742,"own_change_pct":0.371385,"rel_strength_pct":{"SPY":0.331743,"IWM":0.308089}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.408323},"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":"9c4abffa53fe","ts":"2026-09-15T16:21:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":485.1,"room_to_5d_high_atr":-5.55},"price":9.855,"vwap":9.6184,"ext_from_open_pct":4.29,"max_ext_allowed_pct":5.0,"volume_pace":4.1,"trend":"flat","recent_slope_pct":0.0388,"volatility":"low"},"price":9.855,"volume":{"bars":171,"last_bar_volume":3703.0,"baseline_avg":4684.7,"bar_rvol":0.790445,"raw_accel":-0.534624,"smooth_accel":1.556368,"accel_momentum":1.807012,"rvol_3bar":[0.497703,1.682312,0.790445],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":117.0,"sell_vol":877.0,"unclassified_vol":0.0,"imbalance":-0.764588,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":5.855712},"context":{"vwap":9.618387,"price_vs_vwap_pct":2.460003,"ema9":9.832051,"ema20":9.808263,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.382353,"dist_to_hod_atr":7.198458,"atr":0.047927,"spread_atr":0.625953,"own_change_pct":0.101626,"rel_strength_pct":{"SPY":0.059712,"IWM":0.041845}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.604365},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a85fa1c4f3c1","ts":"2026-09-15T16:21:10+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4089,"target":9.87,"target_label":"premarket_high","reward_risk":2.05,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":3.24},"price":9.5603,"vwap":9.5634,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.823,"trend":"flat","recent_slope_pct":0.0112,"volatility":"high"},"price":9.5603,"volume":{"bars":171,"last_bar_volume":22327.0,"baseline_avg":10560.35,"bar_rvol":2.114229,"raw_accel":1.624853,"smooth_accel":0.370148,"accel_momentum":0.062595,"rvol_3bar":[0.135882,0.768053,2.114229],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":11893.0,"sell_vol":4733.0,"unclassified_vol":0.0,"imbalance":0.430651,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.235121},"context":{"vwap":9.563428,"price_vs_vwap_pct":-0.032708,"ema9":9.559418,"ema20":9.548644,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.743642,"dist_to_hod_atr":10.932069,"atr":0.024671,"spread_atr":0.405342,"own_change_pct":0.327965,"rel_strength_pct":{"SPY":0.286051,"IWM":0.268184}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.910494},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02db149edf4a","ts":"2026-09-15T16:21:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says WATCH; stop 7.69, target 7.83 (premarket_high), R:R 0.63; R:R 0.63 < 2.0 at 7.78; breakout: 1-min close > 7.77 on >= 15067 sh","plan":{"state":"WATCH","setup":"","stop":7.6871,"target":7.83,"target_label":"premarket_high","reward_risk":0.63,"pos_in_5d_range_pct":57.8,"room_to_5d_high_atr":0.65},"price":7.775,"vwap":7.7256,"ext_from_open_pct":0.97,"max_ext_allowed_pct":4.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":0.1206,"volatility":"medium"},"price":7.775,"volume":{"bars":171,"last_bar_volume":22171.0,"baseline_avg":8174.9,"bar_rvol":2.712082,"raw_accel":-0.232067,"smooth_accel":1.205224,"accel_momentum":-0.879254,"rvol_3bar":[2.705446,3.852343,2.712082],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":26022.0,"sell_vol":1128.0,"unclassified_vol":0.0,"imbalance":0.916906,"bid":7.77,"ask":7.78,"spread_pct":0.128617,"quote_size_imbalance":null,"quote_age_s":0.335928},"context":{"vwap":7.725333,"price_vs_vwap_pct":0.642905,"ema9":7.742915,"ema20":7.738797,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.448143,"dist_to_hod_atr":1.725774,"atr":0.020281,"spread_atr":0.493078,"own_change_pct":0.373868,"rel_strength_pct":{"SPY":0.331954,"IWM":0.314087}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.486725},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8636e69010f8","ts":"2026-09-15T16:21:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":484.7,"room_to_5d_high_atr":-5.54},"price":9.8535,"vwap":9.6185,"ext_from_open_pct":4.27,"max_ext_allowed_pct":4.0,"volume_pace":4.099,"trend":"flat","recent_slope_pct":0.0358,"volatility":"low"},"price":9.8535,"volume":{"bars":171,"last_bar_volume":3703.0,"baseline_avg":4684.7,"bar_rvol":0.790445,"raw_accel":-0.534624,"smooth_accel":1.556368,"accel_momentum":1.807012,"rvol_3bar":[0.497703,1.682312,0.790445],"trend_3bar":"MIXED","projected_rvol":0.483275},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":101.0,"sell_vol":479.0,"unclassified_vol":0.0,"imbalance":-0.651724,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":2.742503},"context":{"vwap":9.618387,"price_vs_vwap_pct":2.444408,"ema9":9.832051,"ema20":9.808263,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.397059,"dist_to_hod_atr":7.229755,"atr":0.047927,"spread_atr":0.625953,"own_change_pct":0.101626,"rel_strength_pct":{"SPY":0.059712,"IWM":0.041845}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.515152},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a04b84f7d0c7","ts":"2026-09-15T16:21:15+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4286,"target":9.87,"target_label":"premarket_high","reward_risk":1.92,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.2},"price":9.58,"vwap":9.5634,"ext_from_open_pct":-1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0524,"volatility":"high"},"price":9.58,"volume":{"bars":171,"last_bar_volume":22327.0,"baseline_avg":10560.35,"bar_rvol":2.114229,"raw_accel":1.624853,"smooth_accel":0.370148,"accel_momentum":0.062595,"rvol_3bar":[0.135882,0.768053,2.114229],"trend_3bar":"ACCELERATING","projected_rvol":1.446922},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":10164.0,"sell_vol":4760.0,"unclassified_vol":0.0,"imbalance":0.362101,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":0.503879},"context":{"vwap":9.563428,"price_vs_vwap_pct":0.173285,"ema9":9.559418,"ema20":9.548644,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.543235,"dist_to_hod_atr":10.133546,"atr":0.024671,"spread_atr":0.405342,"own_change_pct":0.327965,"rel_strength_pct":{"SPY":0.286051,"IWM":0.268184}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.765565},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"13202cd2cedc","ts":"2026-09-15T16:21:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 75.0s, plan says PASS; stop 7.66, target 7.83 (premarket_high), R:R 0.91; target 0.08 away > ~0.06 reachable in 214 min","plan":{"state":"PASS","setup":"","stop":7.662,"target":7.83,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":53.2,"room_to_5d_high_atr":0.73},"price":7.7499,"vwap":7.7256,"ext_from_open_pct":0.65,"max_ext_allowed_pct":4.0,"volume_pace":0.564,"trend":"flat","recent_slope_pct":0.0559,"volatility":"medium"},"price":7.7499,"volume":{"bars":171,"last_bar_volume":22171.0,"baseline_avg":8174.9,"bar_rvol":2.712082,"raw_accel":-0.232067,"smooth_accel":1.205224,"accel_momentum":-0.879254,"rvol_3bar":[2.705446,3.852343,2.712082],"trend_3bar":"MIXED","projected_rvol":9.235098},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":29147.0,"sell_vol":1304.0,"unclassified_vol":0.0,"imbalance":0.914354,"bid":7.78,"ask":7.79,"spread_pct":0.128452,"quote_size_imbalance":null,"quote_age_s":0.876813},"context":{"vwap":7.725333,"price_vs_vwap_pct":0.318,"ema9":7.742915,"ema20":7.738797,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.769526,"dist_to_hod_atr":2.9634,"atr":0.020281,"spread_atr":0.493078,"own_change_pct":0.373868,"rel_strength_pct":{"SPY":0.331954,"IWM":0.314087}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.479804},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"69d611529515","ts":"2026-09-15T16:21:20+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":5.8714,"target":6.03,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":103.3,"room_to_5d_high_atr":-0.07},"price":5.9545,"vwap":5.9464,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":1.455,"trend":"flat","recent_slope_pct":0.0657,"volatility":"medium"},"price":5.9545,"volume":{"bars":171,"last_bar_volume":29509.0,"baseline_avg":41157.95,"bar_rvol":0.71697,"raw_accel":1.867879,"smooth_accel":-0.846684,"accel_momentum":-0.104517,"rvol_3bar":[0.17143,0.157073,0.71697],"trend_3bar":"MIXED","projected_rvol":2.712599},"flow":{"window_s":30,"trades":234,"trade_rate":7.8,"buy_vol":28175.0,"sell_vol":13326.0,"unclassified_vol":0.0,"imbalance":0.357799,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":3.702016},"context":{"vwap":5.946368,"price_vs_vwap_pct":0.136753,"ema9":5.935551,"ema20":5.939257,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.902801,"dist_to_hod_atr":6.386493,"atr":0.018085,"spread_atr":0.552943,"own_change_pct":0.168634,"rel_strength_pct":{"SPY":0.12672,"IWM":0.108853}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.256531},"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":"3a18a1c01da7","ts":"2026-09-15T16:21:30+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4101,"target":9.87,"target_label":"premarket_high","reward_risk":2.04,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.23},"price":9.5615,"vwap":9.5634,"ext_from_open_pct":-1.93,"max_ext_allowed_pct":4.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0137,"volatility":"high"},"price":9.5615,"volume":{"bars":171,"last_bar_volume":22327.0,"baseline_avg":10560.35,"bar_rvol":2.114229,"raw_accel":1.624853,"smooth_accel":0.370148,"accel_momentum":0.062595,"rvol_3bar":[0.135882,0.768053,2.114229],"trend_3bar":"ACCELERATING","projected_rvol":1.462262},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":7664.0,"sell_vol":57.0,"unclassified_vol":0.0,"imbalance":0.985235,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":3.500142},"context":{"vwap":9.563428,"price_vs_vwap_pct":-0.02016,"ema9":9.559418,"ema20":9.548644,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.731434,"dist_to_hod_atr":10.883428,"atr":0.024671,"spread_atr":0.405342,"own_change_pct":0.327965,"rel_strength_pct":{"SPY":0.286051,"IWM":0.268184}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.083013},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3105dd319cd8","ts":"2026-09-15T16:21:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3364,"target":8.48,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":60.5,"room_to_5d_high_atr":0.95},"price":8.4265,"vwap":8.3316,"ext_from_open_pct":1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0103,"volatility":"medium"},"price":8.4265,"volume":{"bars":171,"last_bar_volume":394.0,"baseline_avg":921.0,"bar_rvol":0.427796,"raw_accel":0.711183,"smooth_accel":-0.814747,"accel_momentum":-1.195154,"rvol_3bar":[0.318311,0.11945,0.427796],"trend_3bar":"MIXED","projected_rvol":2.614549},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1011.0,"sell_vol":193.0,"unclassified_vol":0.0,"imbalance":0.679402,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":1.624094},"context":{"vwap":8.331108,"price_vs_vwap_pct":1.14501,"ema9":8.432161,"ema20":8.435988,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.864706,"dist_to_hod_atr":3.942731,"atr":0.018642,"spread_atr":0.536426,"own_change_pct":0.013035,"rel_strength_pct":{"SPY":-0.028878,"IWM":-0.046746}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.290645},"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":"260d5566c104","ts":"2026-09-15T16:21:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9464,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.459,"trend":"flat","recent_slope_pct":0.0842,"volatility":"medium"},"price":5.96,"volume":{"bars":171,"last_bar_volume":29509.0,"baseline_avg":41157.95,"bar_rvol":0.71697,"raw_accel":1.867879,"smooth_accel":-0.846684,"accel_momentum":-0.104517,"rvol_3bar":[0.17143,0.157073,0.71697],"trend_3bar":"MIXED","projected_rvol":4.841391},"flow":{"window_s":30,"trades":336,"trade_rate":11.2,"buy_vol":54212.0,"sell_vol":59546.0,"unclassified_vol":0.0,"imbalance":-0.046889,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.04415},"context":{"vwap":5.946368,"price_vs_vwap_pct":0.229247,"ema9":5.935551,"ema20":5.939257,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":6.082374,"atr":0.018085,"spread_atr":0.552943,"own_change_pct":0.168634,"rel_strength_pct":{"SPY":0.12672,"IWM":0.108853}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.033618},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1f0e81a0a1d8","ts":"2026-09-15T16:21:35+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4336,"target":9.87,"target_label":"premarket_high","reward_risk":1.88,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.2},"price":9.585,"vwap":9.5635,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0628,"volatility":"high"},"price":9.585,"volume":{"bars":171,"last_bar_volume":22327.0,"baseline_avg":10560.35,"bar_rvol":2.114229,"raw_accel":1.624853,"smooth_accel":0.370148,"accel_momentum":0.062595,"rvol_3bar":[0.135882,0.768053,2.114229],"trend_3bar":"ACCELERATING","projected_rvol":1.254504},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":7671.0,"sell_vol":57.0,"unclassified_vol":0.0,"imbalance":0.985248,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":0.667126},"context":{"vwap":9.563428,"price_vs_vwap_pct":0.225568,"ema9":9.559418,"ema20":9.548644,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.49237,"dist_to_hod_atr":9.930875,"atr":0.024671,"spread_atr":0.405342,"own_change_pct":0.327965,"rel_strength_pct":{"SPY":0.286051,"IWM":0.268184}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.083041},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"30a6a9cd4d14","ts":"2026-09-15T16:21:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says WATCH; stop 7.70, target 7.83 (premarket_high), R:R 0.51; R:R 0.51 < 2.0 at 7.79; breakout: 1-min close > 7.77 on >= 15067 sh","plan":{"state":"WATCH","setup":"","stop":7.6971,"target":7.83,"target_label":"premarket_high","reward_risk":0.51,"pos_in_5d_range_pct":59.6,"room_to_5d_high_atr":0.63},"price":7.785,"vwap":7.7257,"ext_from_open_pct":1.1,"max_ext_allowed_pct":4.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":0.1463,"volatility":"medium"},"price":7.785,"volume":{"bars":171,"last_bar_volume":22171.0,"baseline_avg":8174.9,"bar_rvol":2.712082,"raw_accel":-0.232067,"smooth_accel":1.205224,"accel_momentum":-0.879254,"rvol_3bar":[2.705446,3.852343,2.712082],"trend_3bar":"MIXED","projected_rvol":3.983063},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":17660.0,"sell_vol":1133.0,"unclassified_vol":0.0,"imbalance":0.879423,"bid":7.78,"ask":7.79,"spread_pct":0.128452,"quote_size_imbalance":null,"quote_age_s":0.179802},"context":{"vwap":7.725333,"price_vs_vwap_pct":0.772349,"ema9":7.742915,"ema20":7.738797,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.320102,"dist_to_hod_atr":1.232696,"atr":0.020281,"spread_atr":0.493078,"own_change_pct":0.373868,"rel_strength_pct":{"SPY":0.331954,"IWM":0.314087}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.385068},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e83e1367cd0a","ts":"2026-09-15T16:21:40+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4102,"target":9.87,"target_label":"premarket_high","reward_risk":2.04,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.23},"price":9.5616,"vwap":9.5634,"ext_from_open_pct":-1.93,"max_ext_allowed_pct":3.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0139,"volatility":"high"},"price":9.5616,"volume":{"bars":171,"last_bar_volume":22327.0,"baseline_avg":10560.35,"bar_rvol":2.114229,"raw_accel":1.624853,"smooth_accel":0.370148,"accel_momentum":0.062595,"rvol_3bar":[0.135882,0.768053,2.114229],"trend_3bar":"ACCELERATING","projected_rvol":1.108486},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":4171.0,"sell_vol":108.0,"unclassified_vol":0.0,"imbalance":0.949521,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":0.010239},"context":{"vwap":9.563428,"price_vs_vwap_pct":-0.019114,"ema9":9.559418,"ema20":9.548644,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.730417,"dist_to_hod_atr":10.879375,"atr":0.024671,"spread_atr":0.405342,"own_change_pct":0.327965,"rel_strength_pct":{"SPY":0.286051,"IWM":0.268184}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.007505},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"06ce92eb5f8d","ts":"2026-09-15T16:21:45+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4206,"target":9.87,"target_label":"premarket_high","reward_risk":1.97,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.22},"price":9.572,"vwap":9.5635,"ext_from_open_pct":-1.83,"max_ext_allowed_pct":3.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":0.0356,"volatility":"high"},"price":9.572,"volume":{"bars":171,"last_bar_volume":22327.0,"baseline_avg":10560.35,"bar_rvol":2.114229,"raw_accel":1.624853,"smooth_accel":0.370148,"accel_momentum":0.062595,"rvol_3bar":[0.135882,0.768053,2.114229],"trend_3bar":"ACCELERATING","projected_rvol":2.374921},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":9830.0,"sell_vol":5160.0,"unclassified_vol":0.0,"imbalance":0.311541,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.675303},"context":{"vwap":9.563428,"price_vs_vwap_pct":0.089633,"ema9":9.559418,"ema20":9.548644,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.624619,"dist_to_hod_atr":10.457819,"atr":0.024671,"spread_atr":0.405342,"own_change_pct":0.327965,"rel_strength_pct":{"SPY":0.286051,"IWM":0.268184}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.658669},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c07b32dc6d3","ts":"2026-09-15T16:21:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.3497,"target":8.5586,"target_label":"premarket_high","reward_risk":1.32,"pos_in_5d_range_pct":62.0,"room_to_5d_high_atr":0.92},"price":8.4398,"vwap":8.3316,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0419,"volatility":"medium"},"price":8.4398,"volume":{"bars":171,"last_bar_volume":394.0,"baseline_avg":921.0,"bar_rvol":0.427796,"raw_accel":0.711183,"smooth_accel":-0.814747,"accel_momentum":-1.195154,"rvol_3bar":[0.318311,0.11945,0.427796],"trend_3bar":"MIXED","projected_rvol":1.744481},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":995.0,"sell_vol":193.0,"unclassified_vol":0.0,"imbalance":0.675084,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":14.12066},"context":{"vwap":8.331108,"price_vs_vwap_pct":1.304652,"ema9":8.432161,"ema20":8.435988,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.708235,"dist_to_hod_atr":3.229284,"atr":0.018642,"spread_atr":0.536426,"own_change_pct":0.013035,"rel_strength_pct":{"SPY":-0.028878,"IWM":-0.046746}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.288798},"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":"e0f352ce0c85","ts":"2026-09-15T16:21:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.6186,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":4.088,"trend":"flat","recent_slope_pct":0.049,"volatility":"low"},"price":9.86,"volume":{"bars":171,"last_bar_volume":3703.0,"baseline_avg":4684.7,"bar_rvol":0.790445,"raw_accel":-0.534624,"smooth_accel":1.556368,"accel_momentum":1.807012,"rvol_3bar":[0.497703,1.682312,0.790445],"trend_3bar":"MIXED","projected_rvol":0.441095},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":143.0,"sell_vol":777.0,"unclassified_vol":0.0,"imbalance":-0.68913,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":2.607443},"context":{"vwap":9.618387,"price_vs_vwap_pct":2.511987,"ema9":9.832051,"ema20":9.808263,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.094132,"atr":0.047927,"spread_atr":0.625953,"own_change_pct":0.101626,"rel_strength_pct":{"SPY":0.059712,"IWM":0.041845}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.54472},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a63e79db940a","ts":"2026-09-15T16:21:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.343,"target":8.5586,"target_label":"premarket_high","reward_risk":1.39,"pos_in_5d_range_pct":61.3,"room_to_5d_high_atr":0.93},"price":8.4331,"vwap":8.3316,"ext_from_open_pct":1.24,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.026,"volatility":"medium"},"price":8.4331,"volume":{"bars":171,"last_bar_volume":394.0,"baseline_avg":921.0,"bar_rvol":0.427796,"raw_accel":0.711183,"smooth_accel":-0.814747,"accel_momentum":-1.195154,"rvol_3bar":[0.318311,0.11945,0.427796],"trend_3bar":"MIXED","projected_rvol":1.606515},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":995.0,"sell_vol":221.0,"unclassified_vol":0.0,"imbalance":0.636513,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":1.086125},"context":{"vwap":8.331108,"price_vs_vwap_pct":1.224231,"ema9":8.432161,"ema20":8.435988,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.787059,"dist_to_hod_atr":3.58869,"atr":0.018642,"spread_atr":0.536426,"own_change_pct":0.013035,"rel_strength_pct":{"SPY":-0.028878,"IWM":-0.046746}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.272298},"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":"fbcc2d4a4340","ts":"2026-09-15T16:21:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 115.0s, plan says PASS; stop 7.66, target 7.83 (premarket_high), R:R 0.89; target 0.08 away > ~0.06 reachable in 213 min","plan":{"state":"PASS","setup":"","stop":7.6642,"target":7.83,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":53.6,"room_to_5d_high_atr":0.72},"price":7.7521,"vwap":7.7257,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":0.0616,"volatility":"medium"},"price":7.7521,"volume":{"bars":171,"last_bar_volume":22171.0,"baseline_avg":8174.9,"bar_rvol":2.712082,"raw_accel":-0.232067,"smooth_accel":1.205224,"accel_momentum":-0.879254,"rvol_3bar":[2.705446,3.852343,2.712082],"trend_3bar":"MIXED","projected_rvol":3.081005},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1181.0,"sell_vol":2980.0,"unclassified_vol":0.0,"imbalance":-0.432348,"bid":7.79,"ask":7.8,"spread_pct":0.128287,"quote_size_imbalance":null,"quote_age_s":1.798467},"context":{"vwap":7.725333,"price_vs_vwap_pct":0.346478,"ema9":7.742915,"ema20":7.738797,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.741357,"dist_to_hod_atr":2.854923,"atr":0.020281,"spread_atr":0.493078,"own_change_pct":0.373868,"rel_strength_pct":{"SPY":0.331954,"IWM":0.314087}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.172563},"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":"7332b70a636c","ts":"2026-09-15T16:22:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 120.0s, plan says WATCH; stop 7.70, target 7.83 (premarket_high), R:R 0.44; R:R 0.44 < 2.0 at 7.79; breakout: 1-min close > 7.77 on >= 15067 sh","plan":{"state":"WATCH","setup":"","stop":7.7,"target":7.83,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":60.6,"room_to_5d_high_atr":0.61},"price":7.79,"vwap":7.7259,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":0.1592,"volatility":"medium"},"price":7.79,"volume":{"bars":171,"last_bar_volume":22171.0,"baseline_avg":8174.9,"bar_rvol":2.712082,"raw_accel":-0.232067,"smooth_accel":1.205224,"accel_momentum":-0.879254,"rvol_3bar":[2.705446,3.852343,2.712082],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1148.0,"sell_vol":4800.0,"unclassified_vol":0.0,"imbalance":-0.613988,"bid":7.79,"ask":7.8,"spread_pct":0.128287,"quote_size_imbalance":null,"quote_age_s":0.888104},"context":{"vwap":7.725333,"price_vs_vwap_pct":0.837071,"ema9":7.742915,"ema20":7.738797,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.256082,"dist_to_hod_atr":0.986156,"atr":0.020281,"spread_atr":0.493078,"own_change_pct":0.373868,"rel_strength_pct":{"SPY":0.314405,"IWM":0.28948}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.665186},"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":"0ac486db8ff1","ts":"2026-09-15T16:22:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 125.0s, plan says PASS; stop 7.66, target 7.83 (premarket_high), R:R 0.96; target 0.08 away > ~0.07 reachable in 213 min","plan":{"state":"PASS","setup":"","stop":7.6581,"target":7.83,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":52.5,"room_to_5d_high_atr":0.74},"price":7.746,"vwap":7.7259,"ext_from_open_pct":0.6,"max_ext_allowed_pct":3.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":0.0541,"volatility":"medium"},"price":7.746,"volume":{"bars":172,"last_bar_volume":24913.0,"baseline_avg":8886.75,"bar_rvol":2.803387,"raw_accel":0.123675,"smooth_accel":1.055282,"accel_momentum":-0.149942,"rvol_3bar":[3.852343,2.712082,2.803387],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1219.0,"sell_vol":4820.0,"unclassified_vol":0.0,"imbalance":-0.596291,"bid":7.79,"ask":7.8,"spread_pct":0.128287,"quote_size_imbalance":null,"quote_age_s":2.803241},"context":{"vwap":7.725881,"price_vs_vwap_pct":0.260408,"ema9":7.752332,"ema20":7.743673,"ema_stack":false,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.819462,"dist_to_hod_atr":2.779589,"atr":0.023025,"spread_atr":0.434311,"own_change_pct":0.776197,"rel_strength_pct":{"SPY":0.716734,"IWM":0.691808}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.671634},"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":"d7d8a4b2e533","ts":"2026-09-15T16:22:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 130.0s, plan says WATCH; stop 7.70, target 7.83 (premarket_high), R:R 0.33; broke ceiling 7.76 but R:R 0.33 < 2.0; R:R 0.33 < 2.0 at 7.80; breakout: 1-min close > 7.77 on >= 14650 sh","plan":{"state":"WATCH","setup":"","stop":7.7,"target":7.83,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":61.9,"room_to_5d_high_atr":0.59},"price":7.7976,"vwap":7.7259,"ext_from_open_pct":1.27,"max_ext_allowed_pct":3.0,"volume_pace":0.563,"trend":"flat","recent_slope_pct":0.1869,"volatility":"medium"},"price":7.7976,"volume":{"bars":172,"last_bar_volume":24913.0,"baseline_avg":8886.75,"bar_rvol":2.803387,"raw_accel":0.123675,"smooth_accel":1.055282,"accel_momentum":-0.149942,"rvol_3bar":[3.852343,2.712082,2.803387],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":702.0,"sell_vol":4107.0,"unclassified_vol":0.0,"imbalance":-0.708047,"bid":7.79,"ask":7.8,"spread_pct":0.128287,"quote_size_imbalance":null,"quote_age_s":1.540603},"context":{"vwap":7.725881,"price_vs_vwap_pct":0.928293,"ema9":7.752332,"ema20":7.743673,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.158771,"dist_to_hod_atr":0.538545,"atr":0.023025,"spread_atr":0.434311,"own_change_pct":0.776197,"rel_strength_pct":{"SPY":0.716734,"IWM":0.691808}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.984931},"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":"af313fd0320e","ts":"2026-09-15T16:22:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.6188,"ext_from_open_pct":4.34,"max_ext_allowed_pct":4.0,"volume_pace":4.081,"trend":"flat","recent_slope_pct":0.0711,"volatility":"low"},"price":9.86,"volume":{"bars":172,"last_bar_volume":2279.0,"baseline_avg":4613.05,"bar_rvol":0.494033,"raw_accel":-0.384553,"smooth_accel":0.914435,"accel_momentum":-0.641933,"rvol_3bar":[1.682312,0.790445,0.494033],"trend_3bar":"DECELERATING","projected_rvol":0.48818},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":775.0,"sell_vol":596.0,"unclassified_vol":0.0,"imbalance":0.130562,"bid":9.85,"ask":9.87,"spread_pct":0.20284,"quote_size_imbalance":null,"quote_age_s":0.858897},"context":{"vwap":9.618721,"price_vs_vwap_pct":2.508436,"ema9":9.836641,"ema20":9.812714,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.077539,"atr":0.048039,"spread_atr":0.416326,"own_change_pct":0.203355,"rel_strength_pct":{"SPY":0.143893,"IWM":0.118967}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.064502},"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":"a0827bb46f24","ts":"2026-09-15T16:22:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.3549,"target":8.5586,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":62.6,"room_to_5d_high_atr":0.9},"price":8.445,"vwap":8.3328,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":0.0454,"volatility":"medium"},"price":8.445,"volume":{"bars":172,"last_bar_volume":1233.0,"baseline_avg":920.65,"bar_rvol":1.339271,"raw_accel":2.129442,"smooth_accel":-0.433962,"accel_momentum":0.380784,"rvol_3bar":[0.11945,0.427796,1.339271],"trend_3bar":"ACCELERATING","projected_rvol":11.292022},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":2599.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.978683,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":10.139503},"context":{"vwap":8.331635,"price_vs_vwap_pct":1.360659,"ema9":8.432348,"ema20":8.435713,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.647059,"dist_to_hod_atr":3.009638,"atr":0.018275,"spread_atr":0.547207,"own_change_pct":0.067637,"rel_strength_pct":{"SPY":0.008174,"IWM":-0.016752}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.310722},"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":"1be76c2e88d1","ts":"2026-09-15T16:22:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9464,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.454,"trend":"flat","recent_slope_pct":0.1185,"volatility":"medium"},"price":5.95,"volume":{"bars":172,"last_bar_volume":128479.0,"baseline_avg":42075.05,"bar_rvol":3.053567,"raw_accel":3.353892,"smooth_accel":-0.229106,"accel_momentum":0.617578,"rvol_3bar":[0.157073,0.71697,3.053567],"trend_3bar":"ACCELERATING","projected_rvol":0.151016},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":7494.0,"sell_vol":1395.0,"unclassified_vol":0.0,"imbalance":0.686129,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":5.306832},"context":{"vwap":5.946404,"price_vs_vwap_pct":0.06047,"ema9":5.940441,"ema20":5.941233,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.217488,"atr":0.0193,"spread_atr":0.518124,"own_change_pct":0.42123,"rel_strength_pct":{"SPY":0.361767,"IWM":0.336842}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.095141},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0d3f519d2f33","ts":"2026-09-15T16:22:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 140.0s, plan says PASS; stop 7.67, target 7.83 (premarket_high), R:R 0.85; target 0.07 away > ~0.07 reachable in 213 min","plan":{"state":"PASS","setup":"","stop":7.6674,"target":7.83,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":54.2,"room_to_5d_high_atr":0.71},"price":7.7553,"vwap":7.7259,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":0.562,"trend":"flat","recent_slope_pct":0.0781,"volatility":"medium"},"price":7.7553,"volume":{"bars":172,"last_bar_volume":24913.0,"baseline_avg":8886.75,"bar_rvol":2.803387,"raw_accel":0.123675,"smooth_accel":1.055282,"accel_momentum":-0.149942,"rvol_3bar":[3.852343,2.712082,2.803387],"trend_3bar":"MIXED","projected_rvol":0.183982},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":508.0,"sell_vol":2262.0,"unclassified_vol":0.0,"imbalance":-0.633213,"bid":7.79,"ask":7.8,"spread_pct":0.128287,"quote_size_imbalance":null,"quote_age_s":0.240605},"context":{"vwap":7.725881,"price_vs_vwap_pct":0.380782,"ema9":7.752332,"ema20":7.743673,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.700384,"dist_to_hod_atr":2.37568,"atr":0.023025,"spread_atr":0.434311,"own_change_pct":0.776197,"rel_strength_pct":{"SPY":0.716734,"IWM":0.691808}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.775141},"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":"7dcc4aa7170b","ts":"2026-09-15T16:22:25+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 5.87, target 6.03 (premarket_high), R:R 0.90; R:R 0.90 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 108221 sh","plan":{"state":"WATCH","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.453,"trend":"flat","recent_slope_pct":0.1353,"volatility":"medium"},"price":5.955,"volume":{"bars":172,"last_bar_volume":128479.0,"baseline_avg":42075.05,"bar_rvol":3.053567,"raw_accel":3.353892,"smooth_accel":-0.229106,"accel_momentum":0.617578,"rvol_3bar":[0.157073,0.71697,3.053567],"trend_3bar":"ACCELERATING","projected_rvol":0.122125},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1286.0,"sell_vol":1243.0,"unclassified_vol":0.0,"imbalance":0.017003,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.2685},"context":{"vwap":5.946404,"price_vs_vwap_pct":0.144554,"ema9":5.940441,"ema20":5.941233,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.958426,"atr":0.0193,"spread_atr":0.518124,"own_change_pct":0.42123,"rel_strength_pct":{"SPY":0.361767,"IWM":0.336842}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.051919},"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":"84b2d051a430","ts":"2026-09-15T16:22:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.96; target 0.08 away > ~0.08 reachable in 212 min","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9464,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.452,"trend":"flat","recent_slope_pct":0.1185,"volatility":"medium"},"price":5.95,"volume":{"bars":172,"last_bar_volume":128479.0,"baseline_avg":42075.05,"bar_rvol":3.053567,"raw_accel":3.353892,"smooth_accel":-0.229106,"accel_momentum":0.617578,"rvol_3bar":[0.157073,0.71697,3.053567],"trend_3bar":"ACCELERATING","projected_rvol":0.111372},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1067.0,"sell_vol":1276.0,"unclassified_vol":0.0,"imbalance":-0.089202,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.666082},"context":{"vwap":5.946404,"price_vs_vwap_pct":0.06047,"ema9":5.940441,"ema20":5.941233,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.217488,"atr":0.0193,"spread_atr":0.518124,"own_change_pct":0.42123,"rel_strength_pct":{"SPY":0.361767,"IWM":0.336842}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.272384},"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":"e2f40dd38211","ts":"2026-09-15T16:22:30+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says WATCH; stop 7.70, target 7.83 (premarket_high), R:R 0.37; broke ceiling 7.76 but R:R 0.37 < 2.0; R:R 0.37 < 2.0 at 7.79; breakout: 1-min close > 7.77 on >= 14650 sh","plan":{"state":"WATCH","setup":"","stop":7.7,"target":7.83,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":61.5,"room_to_5d_high_atr":0.6},"price":7.795,"vwap":7.7259,"ext_from_open_pct":1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.562,"trend":"flat","recent_slope_pct":0.1802,"volatility":"medium"},"price":7.795,"volume":{"bars":172,"last_bar_volume":24913.0,"baseline_avg":8886.75,"bar_rvol":2.803387,"raw_accel":0.123675,"smooth_accel":1.055282,"accel_momentum":-0.149942,"rvol_3bar":[3.852343,2.712082,2.803387],"trend_3bar":"MIXED","projected_rvol":0.125805},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":123.0,"sell_vol":436.0,"unclassified_vol":0.0,"imbalance":-0.559928,"bid":7.79,"ask":7.8,"spread_pct":0.128287,"quote_size_imbalance":null,"quote_age_s":0.285253},"context":{"vwap":7.725881,"price_vs_vwap_pct":0.89464,"ema9":7.752332,"ema20":7.743673,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.192061,"dist_to_hod_atr":0.651466,"atr":0.023025,"spread_atr":0.434311,"own_change_pct":0.776197,"rel_strength_pct":{"SPY":0.716734,"IWM":0.691808}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.569696},"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":"fa2c4f0ff3d2","ts":"2026-09-15T16:22:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says WATCH; stop 5.87, target 6.03 (premarket_high), R:R 0.90; R:R 0.90 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 108221 sh","plan":{"state":"WATCH","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.451,"trend":"flat","recent_slope_pct":0.1353,"volatility":"medium"},"price":5.955,"volume":{"bars":172,"last_bar_volume":128479.0,"baseline_avg":42075.05,"bar_rvol":3.053567,"raw_accel":3.353892,"smooth_accel":-0.229106,"accel_momentum":0.617578,"rvol_3bar":[0.157073,0.71697,3.053567],"trend_3bar":"ACCELERATING","projected_rvol":0.139073},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1342.0,"sell_vol":705.0,"unclassified_vol":0.0,"imbalance":0.311187,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.239964},"context":{"vwap":5.946404,"price_vs_vwap_pct":0.144554,"ema9":5.940441,"ema20":5.941233,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.958426,"atr":0.0193,"spread_atr":0.518124,"own_change_pct":0.42123,"rel_strength_pct":{"SPY":0.361767,"IWM":0.336842}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.950231},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"756bd82523a6","ts":"2026-09-15T16:22:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.6188,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":4.067,"trend":"flat","recent_slope_pct":0.0711,"volatility":"low"},"price":9.86,"volume":{"bars":172,"last_bar_volume":2279.0,"baseline_avg":4613.05,"bar_rvol":0.494033,"raw_accel":-0.384553,"smooth_accel":0.914435,"accel_momentum":-0.641933,"rvol_3bar":[1.682312,0.790445,0.494033],"trend_3bar":"DECELERATING","projected_rvol":0.186254},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":100.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.724138,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":0.938422},"context":{"vwap":9.618721,"price_vs_vwap_pct":2.508436,"ema9":9.836641,"ema20":9.812714,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.077539,"atr":0.048039,"spread_atr":0.624489,"own_change_pct":0.203355,"rel_strength_pct":{"SPY":0.143893,"IWM":0.118967}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.357748},"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":"cb4be6d73507","ts":"2026-09-15T16:22:50+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8532,"target":6.03,"target_label":"premarket_high","reward_risk":1.13,"pos_in_5d_range_pct":100.9,"room_to_5d_high_atr":-0.02},"price":5.9363,"vwap":5.9464,"ext_from_open_pct":0.45,"max_ext_allowed_pct":3.0,"volume_pace":1.45,"trend":"flat","recent_slope_pct":0.0724,"volatility":"medium"},"price":5.9363,"volume":{"bars":172,"last_bar_volume":128479.0,"baseline_avg":42075.05,"bar_rvol":3.053567,"raw_accel":3.353892,"smooth_accel":-0.229106,"accel_momentum":0.617578,"rvol_3bar":[0.157073,0.71697,3.053567],"trend_3bar":"ACCELERATING","projected_rvol":0.157461},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1572.0,"sell_vol":1831.0,"unclassified_vol":0.0,"imbalance":-0.076109,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":2.92088},"context":{"vwap":5.946404,"price_vs_vwap_pct":-0.169922,"ema9":5.940441,"ema20":5.941233,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.202636,"dist_to_hod_atr":6.927318,"atr":0.0193,"spread_atr":0.518124,"own_change_pct":0.42123,"rel_strength_pct":{"SPY":0.361767,"IWM":0.336842}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.232405},"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":"755ea8dd1ccd","ts":"2026-09-15T16:22:55+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.449,"trend":"flat","recent_slope_pct":0.1353,"volatility":"medium"},"price":5.955,"volume":{"bars":172,"last_bar_volume":128479.0,"baseline_avg":42075.05,"bar_rvol":3.053567,"raw_accel":3.353892,"smooth_accel":-0.229106,"accel_momentum":0.617578,"rvol_3bar":[0.157073,0.71697,3.053567],"trend_3bar":"ACCELERATING","projected_rvol":0.146128},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1565.0,"sell_vol":1930.0,"unclassified_vol":0.0,"imbalance":-0.104435,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":2.959614},"context":{"vwap":5.946404,"price_vs_vwap_pct":0.144554,"ema9":5.940441,"ema20":5.941233,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.958426,"atr":0.0193,"spread_atr":0.518124,"own_change_pct":0.42123,"rel_strength_pct":{"SPY":0.361767,"IWM":0.336842}},"vas":{"raw":2,"score":5.6,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.318899},"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":"64b640c6f4b8","ts":"2026-09-15T16:23:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9464,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.448,"trend":"flat","recent_slope_pct":0.0938,"volatility":"medium"},"price":5.95,"volume":{"bars":173,"last_bar_volume":6119.0,"baseline_avg":46524.9,"bar_rvol":0.131521,"raw_accel":-0.952374,"smooth_accel":1.569753,"accel_momentum":1.798859,"rvol_3bar":[0.71697,3.053567,0.131521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1959.0,"sell_vol":1920.0,"unclassified_vol":0.0,"imbalance":0.010054,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.024969},"context":{"vwap":5.946406,"price_vs_vwap_pct":0.060448,"ema9":5.943353,"ema20":5.942544,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.117875,"atr":0.019615,"spread_atr":0.509823,"own_change_pct":0.252525,"rel_strength_pct":{"SPY":0.194396,"IWM":0.168165}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.001322},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d92035dc4bdd","ts":"2026-09-15T16:23:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 185.0s, plan says PASS; stop 7.70, target 7.83 (premarket_high), R:R 0.30; R:R 0.30 < 2.0 at 7.80; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.7,"target":7.83,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":62.4,"room_to_5d_high_atr":0.58},"price":7.8,"vwap":7.7264,"ext_from_open_pct":1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.565,"trend":"flat","recent_slope_pct":0.1428,"volatility":"medium"},"price":7.8,"volume":{"bars":173,"last_bar_volume":21100.0,"baseline_avg":9989.0,"bar_rvol":2.112324,"raw_accel":-0.153053,"smooth_accel":0.112899,"accel_momentum":-0.942383,"rvol_3bar":[2.712082,2.803387,2.112324],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":3331.0,"sell_vol":17584.0,"unclassified_vol":0.0,"imbalance":-0.681473,"bid":7.79,"ask":7.8,"spread_pct":0.128287,"quote_size_imbalance":null,"quote_age_s":0.961635},"context":{"vwap":7.72635,"price_vs_vwap_pct":0.953231,"ema9":7.759866,"ema20":7.748085,"ema_stack":true,"ema_warm":true,"hod":7.81,"dist_to_hod_pct":-0.128041,"dist_to_hod_atr":0.396236,"atr":0.025237,"spread_atr":0.396236,"own_change_pct":0.675911,"rel_strength_pct":{"SPY":0.617782,"IWM":0.591551}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.439491},"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":"d5887292f72e","ts":"2026-09-15T16:23:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.448,"trend":"flat","recent_slope_pct":0.1106,"volatility":"medium"},"price":5.955,"volume":{"bars":173,"last_bar_volume":6119.0,"baseline_avg":46524.9,"bar_rvol":0.131521,"raw_accel":-0.952374,"smooth_accel":1.569753,"accel_momentum":1.798859,"rvol_3bar":[0.71697,3.053567,0.131521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":765.0,"sell_vol":10241.0,"unclassified_vol":0.0,"imbalance":-0.860985,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":4.514566},"context":{"vwap":5.946406,"price_vs_vwap_pct":0.144532,"ema9":5.943353,"ema20":5.942544,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.862963,"atr":0.019615,"spread_atr":0.509823,"own_change_pct":0.252525,"rel_strength_pct":{"SPY":0.194396,"IWM":0.168165}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.113238},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8e3fc3a8f811","ts":"2026-09-15T16:23:30+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1045.0s, plan says WATCH; stop 8.25, target 8.59 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.44","plan":{"state":"WATCH","setup":"","stop":8.2538,"target":8.59,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":3.83},"price":8.445,"vwap":8.3534,"ext_from_open_pct":0.9,"max_ext_allowed_pct":4.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":0.1401,"volatility":"high"},"price":8.445,"volume":{"bars":173,"last_bar_volume":70277.0,"baseline_avg":60241.25,"bar_rvol":1.166593,"raw_accel":-0.448406,"smooth_accel":0.561878,"accel_momentum":0.397698,"rvol_3bar":[0.504186,2.204809,1.166593],"trend_3bar":"MIXED","projected_rvol":0.54554},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":15557.0,"sell_vol":875.0,"unclassified_vol":0.0,"imbalance":0.8935,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.011448},"context":{"vwap":8.353297,"price_vs_vwap_pct":1.097805,"ema9":8.403173,"ema20":8.384958,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.859384,"dist_to_hod_atr":5.932693,"atr":0.026969,"spread_atr":0.370793,"own_change_pct":0.51221,"rel_strength_pct":{"SPY":0.45408,"IWM":0.42785}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.042351},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"239496d435a7","ts":"2026-09-15T16:23:35+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7092,"target":13.8,"target_label":"premarket_high","reward_risk":5.03,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.19},"price":12.89,"vwap":12.8545,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":4.0,"volume_pace":0.815,"trend":"flat","recent_slope_pct":0.1119,"volatility":"medium"},"price":12.89,"volume":{"bars":173,"last_bar_volume":129.0,"baseline_avg":649.15,"bar_rvol":0.198721,"raw_accel":-0.766304,"smooth_accel":-0.080285,"accel_momentum":0.156409,"rvol_3bar":[0.558704,0.882776,0.198721],"trend_3bar":"MIXED","projected_rvol":0.963898},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":233.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.276712,"bid":12.88,"ask":12.91,"spread_pct":0.232648,"quote_size_imbalance":null,"quote_age_s":1.734445},"context":{"vwap":12.854468,"price_vs_vwap_pct":0.276415,"ema9":12.819612,"ema20":12.784426,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.155522,"dist_to_hod_atr":10.039649,"atr":0.041834,"spread_atr":0.717118,"own_change_pct":0.194932,"rel_strength_pct":{"SPY":0.136802,"IWM":0.110572}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.054989},"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":"b7114f4cfed5","ts":"2026-09-15T16:23:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.3517,"target":10.64,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":22.5,"room_to_5d_high_atr":1.69},"price":10.4999,"vwap":10.4711,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":0.1662,"volatility":"medium"},"price":10.4999,"volume":{"bars":173,"last_bar_volume":26311.0,"baseline_avg":10913.45,"bar_rvol":2.410878,"raw_accel":0.507103,"smooth_accel":1.125112,"accel_momentum":-0.367229,"rvol_3bar":[1.045237,1.698885,2.410878],"trend_3bar":"ACCELERATING","projected_rvol":1.726153},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":5861.0,"sell_vol":1727.0,"unclassified_vol":0.0,"imbalance":0.544808,"bid":10.49,"ask":10.5,"spread_pct":0.095283,"quote_size_imbalance":null,"quote_age_s":1.333753},"context":{"vwap":10.471124,"price_vs_vwap_pct":0.274811,"ema9":10.424712,"ema20":10.412454,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.582185,"dist_to_hod_atr":12.35576,"atr":0.031572,"spread_atr":0.316733,"own_change_pct":0.383877,"rel_strength_pct":{"SPY":0.325748,"IWM":0.299517}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.313465},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"acf55d650f69","ts":"2026-09-15T16:23:35+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1050.0s, plan says PASS; stop 8.21, target 8.59 (premarket_high), R:R 1.00; target 0.19 away > ~0.15 reachable in 211 min","plan":{"state":"PASS","setup":"","stop":8.207,"target":8.59,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.89},"price":8.3982,"vwap":8.3534,"ext_from_open_pct":0.34,"max_ext_allowed_pct":4.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":0.029,"volatility":"high"},"price":8.3982,"volume":{"bars":173,"last_bar_volume":70277.0,"baseline_avg":60241.25,"bar_rvol":1.166593,"raw_accel":-0.448406,"smooth_accel":0.561878,"accel_momentum":0.397698,"rvol_3bar":[0.504186,2.204809,1.166593],"trend_3bar":"MIXED","projected_rvol":0.791418},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":24395.0,"sell_vol":2382.0,"unclassified_vol":0.0,"imbalance":0.822086,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.964806},"context":{"vwap":8.353297,"price_vs_vwap_pct":0.537547,"ema9":8.403173,"ema20":8.384958,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.403254,"dist_to_hod_atr":7.668005,"atr":0.026969,"spread_atr":0.370793,"own_change_pct":0.51221,"rel_strength_pct":{"SPY":0.45408,"IWM":0.42785}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.95904},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b32860b5230c","ts":"2026-09-15T16:23:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.44 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.2955,"target":10.51,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":1.78},"price":10.4437,"vwap":10.4711,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":0.0587,"volatility":"medium"},"price":10.4437,"volume":{"bars":173,"last_bar_volume":26311.0,"baseline_avg":10913.45,"bar_rvol":2.410878,"raw_accel":0.507103,"smooth_accel":1.125112,"accel_momentum":-0.367229,"rvol_3bar":[1.045237,1.698885,2.410878],"trend_3bar":"ACCELERATING","projected_rvol":1.729197},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":6223.0,"sell_vol":2806.0,"unclassified_vol":0.0,"imbalance":0.378447,"bid":10.49,"ask":10.5,"spread_pct":0.095283,"quote_size_imbalance":null,"quote_age_s":0.036999},"context":{"vwap":10.471124,"price_vs_vwap_pct":-0.261903,"ema9":10.424712,"ema20":10.412454,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-4.098255,"dist_to_hod_atr":14.135801,"atr":0.031572,"spread_atr":0.316733,"own_change_pct":0.383877,"rel_strength_pct":{"SPY":0.325748,"IWM":0.299517}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.91239},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d6f3b05c8d1c","ts":"2026-09-15T16:23:40+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":9.2071,"target":9.48,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.29},"price":9.36,"vwap":9.3452,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":0.1343,"volatility":"high"},"price":9.36,"volume":{"bars":173,"last_bar_volume":4435.0,"baseline_avg":4361.6,"bar_rvol":1.016829,"raw_accel":-0.064938,"smooth_accel":-0.045253,"accel_momentum":-0.16863,"rvol_3bar":[0.362719,1.108929,1.016829],"trend_3bar":"MIXED","projected_rvol":1.101545},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":2109.0,"sell_vol":980.0,"unclassified_vol":0.0,"imbalance":0.36549,"bid":9.35,"ask":9.36,"spread_pct":0.106895,"quote_size_imbalance":null,"quote_age_s":0.003922},"context":{"vwap":9.345191,"price_vs_vwap_pct":0.158462,"ema9":9.321676,"ema20":9.31566,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.783841,"dist_to_hod_atr":8.751013,"atr":0.019426,"spread_atr":0.514765,"own_change_pct":0.397298,"rel_strength_pct":{"SPY":0.339169,"IWM":0.312938}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.371641},"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":"884b5630b0bb","ts":"2026-09-15T16:23:40+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1055.0s, plan says WATCH; stop 8.25, target 8.59 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.44","plan":{"state":"WATCH","setup":"","stop":8.2541,"target":8.59,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":3.82},"price":8.4453,"vwap":8.3535,"ext_from_open_pct":0.9,"max_ext_allowed_pct":4.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":0.1408,"volatility":"high"},"price":8.4453,"volume":{"bars":173,"last_bar_volume":70277.0,"baseline_avg":60241.25,"bar_rvol":1.166593,"raw_accel":-0.448406,"smooth_accel":0.561878,"accel_momentum":0.397698,"rvol_3bar":[0.504186,2.204809,1.166593],"trend_3bar":"MIXED","projected_rvol":0.72135},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":25195.0,"sell_vol":2582.0,"unclassified_vol":0.0,"imbalance":0.814091,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.102304},"context":{"vwap":8.353297,"price_vs_vwap_pct":1.101396,"ema9":8.403173,"ema20":8.384958,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.855898,"dist_to_hod_atr":5.921569,"atr":0.026969,"spread_atr":0.370793,"own_change_pct":0.51221,"rel_strength_pct":{"SPY":0.45408,"IWM":0.42785}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.949712},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"032789e3a85a","ts":"2026-09-15T16:23:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.3468,"target":10.64,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":22.1,"room_to_5d_high_atr":1.69},"price":10.495,"vwap":10.4711,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":0.1569,"volatility":"medium"},"price":10.495,"volume":{"bars":173,"last_bar_volume":26311.0,"baseline_avg":10913.45,"bar_rvol":2.410878,"raw_accel":0.507103,"smooth_accel":1.125112,"accel_momentum":-0.367229,"rvol_3bar":[1.045237,1.698885,2.410878],"trend_3bar":"ACCELERATING","projected_rvol":1.547815},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":6225.0,"sell_vol":2855.0,"unclassified_vol":0.0,"imbalance":0.371145,"bid":10.49,"ask":10.5,"spread_pct":0.095283,"quote_size_imbalance":null,"quote_age_s":0.402304},"context":{"vwap":10.471124,"price_vs_vwap_pct":0.228016,"ema9":10.424712,"ema20":10.412454,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.627181,"dist_to_hod_atr":12.51096,"atr":0.031572,"spread_atr":0.316733,"own_change_pct":0.383877,"rel_strength_pct":{"SPY":0.325748,"IWM":0.299517}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.894786},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"76446379bf34","ts":"2026-09-15T16:23:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":9.1927,"target":9.48,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":5.0,"room_to_5d_high_atr":3.31},"price":9.3456,"vwap":9.3452,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":0.1034,"volatility":"high"},"price":9.3456,"volume":{"bars":173,"last_bar_volume":4435.0,"baseline_avg":4361.6,"bar_rvol":1.016829,"raw_accel":-0.064938,"smooth_accel":-0.045253,"accel_momentum":-0.16863,"rvol_3bar":[0.362719,1.108929,1.016829],"trend_3bar":"MIXED","projected_rvol":1.01339},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":2004.0,"sell_vol":1081.0,"unclassified_vol":0.0,"imbalance":0.29919,"bid":9.35,"ask":9.36,"spread_pct":0.106895,"quote_size_imbalance":null,"quote_age_s":0.635711},"context":{"vwap":9.345191,"price_vs_vwap_pct":0.004372,"ema9":9.321676,"ema20":9.31566,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.934942,"dist_to_hod_atr":9.492275,"atr":0.019426,"spread_atr":0.514765,"own_change_pct":0.397298,"rel_strength_pct":{"SPY":0.339169,"IWM":0.312938}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.304225},"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":"aea12e7c36ba","ts":"2026-09-15T16:23:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.96; target 0.08 away > ~0.08 reachable in 211 min","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9464,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.45,"trend":"flat","recent_slope_pct":0.0938,"volatility":"medium"},"price":5.95,"volume":{"bars":173,"last_bar_volume":6119.0,"baseline_avg":46524.9,"bar_rvol":0.131521,"raw_accel":-0.952374,"smooth_accel":1.569753,"accel_momentum":1.798859,"rvol_3bar":[0.71697,3.053567,0.131521],"trend_3bar":"MIXED","projected_rvol":3.021995},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":99820.0,"sell_vol":6870.0,"unclassified_vol":0.0,"imbalance":0.871216,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":1.412517},"context":{"vwap":5.946406,"price_vs_vwap_pct":0.060448,"ema9":5.943353,"ema20":5.942544,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.117875,"atr":0.019615,"spread_atr":0.509823,"own_change_pct":0.252525,"rel_strength_pct":{"SPY":0.194396,"IWM":0.168165}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.114583},"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":"24071c485725","ts":"2026-09-15T16:23:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.43 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.2836,"target":10.51,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":17.2,"room_to_5d_high_atr":1.8},"price":10.4318,"vwap":10.4711,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":0.0359,"volatility":"medium"},"price":10.4318,"volume":{"bars":173,"last_bar_volume":26311.0,"baseline_avg":10913.45,"bar_rvol":2.410878,"raw_accel":0.507103,"smooth_accel":1.125112,"accel_momentum":-0.367229,"rvol_3bar":[1.045237,1.698885,2.410878],"trend_3bar":"ACCELERATING","projected_rvol":1.414035},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":6275.0,"sell_vol":2995.0,"unclassified_vol":0.0,"imbalance":0.35383,"bid":10.49,"ask":10.5,"spread_pct":0.095283,"quote_size_imbalance":null,"quote_age_s":2.203091},"context":{"vwap":10.471124,"price_vs_vwap_pct":-0.375549,"ema9":10.424712,"ema20":10.412454,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-4.20753,"dist_to_hod_atr":14.512713,"atr":0.031572,"spread_atr":0.316733,"own_change_pct":0.383877,"rel_strength_pct":{"SPY":0.325748,"IWM":0.299517}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.85304},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a2cd143296ba","ts":"2026-09-15T16:23:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.3368,"target":10.64,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":1.71},"price":10.485,"vwap":10.4711,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":0.1378,"volatility":"medium"},"price":10.485,"volume":{"bars":173,"last_bar_volume":26311.0,"baseline_avg":10913.45,"bar_rvol":2.410878,"raw_accel":0.507103,"smooth_accel":1.125112,"accel_momentum":-0.367229,"rvol_3bar":[1.045237,1.698885,2.410878],"trend_3bar":"ACCELERATING","projected_rvol":1.417134},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":2219.0,"sell_vol":2951.0,"unclassified_vol":0.0,"imbalance":-0.141586,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.033362},"context":{"vwap":10.471124,"price_vs_vwap_pct":0.132515,"ema9":10.424712,"ema20":10.412454,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.719008,"dist_to_hod_atr":12.827693,"atr":0.031572,"spread_atr":0.316733,"own_change_pct":0.383877,"rel_strength_pct":{"SPY":0.325748,"IWM":0.299517}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.341347},"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":"2695b8955226","ts":"2026-09-15T16:23:55+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1070.0s, plan says PASS; stop 8.25, target 8.59 (premarket_high), R:R 0.78; target 0.15 away > ~0.15 reachable in 211 min","plan":{"state":"PASS","setup":"","stop":8.2499,"target":8.59,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.83},"price":8.4411,"vwap":8.3536,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.789,"trend":"flat","recent_slope_pct":0.1309,"volatility":"high"},"price":8.4411,"volume":{"bars":173,"last_bar_volume":70277.0,"baseline_avg":60241.25,"bar_rvol":1.166593,"raw_accel":-0.448406,"smooth_accel":0.561878,"accel_momentum":0.397698,"rvol_3bar":[0.504186,2.204809,1.166593],"trend_3bar":"MIXED","projected_rvol":0.833811},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":19307.0,"sell_vol":10952.0,"unclassified_vol":0.0,"imbalance":0.276116,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.077466},"context":{"vwap":8.353297,"price_vs_vwap_pct":1.051117,"ema9":8.403173,"ema20":8.384958,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.904707,"dist_to_hod_atr":6.077302,"atr":0.026969,"spread_atr":0.370793,"own_change_pct":0.51221,"rel_strength_pct":{"SPY":0.45408,"IWM":0.42785}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.322115},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fe36298965c0","ts":"2026-09-15T16:24:00+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says WATCH; stop 5.87, target 6.03 (premarket_high), R:R 0.90; R:R 0.90 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 107971 sh","plan":{"state":"WATCH","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.45,"trend":"flat","recent_slope_pct":0.1106,"volatility":"medium"},"price":5.955,"volume":{"bars":173,"last_bar_volume":6119.0,"baseline_avg":46524.9,"bar_rvol":0.131521,"raw_accel":-0.952374,"smooth_accel":1.569753,"accel_momentum":1.798859,"rvol_3bar":[0.71697,3.053567,0.131521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":103451.0,"sell_vol":6480.0,"unclassified_vol":0.0,"imbalance":0.882108,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":2.490944},"context":{"vwap":5.946406,"price_vs_vwap_pct":0.144532,"ema9":5.943353,"ema20":5.942544,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.862963,"atr":0.019615,"spread_atr":0.509823,"own_change_pct":0.252525,"rel_strength_pct":{"SPY":0.173925,"IWM":0.117195}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.116016},"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":"8ae72ef0df34","ts":"2026-09-15T16:24:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.858,"target":6.03,"target_label":"premarket_high","reward_risk":1.07,"pos_in_5d_range_pct":101.5,"room_to_5d_high_atr":-0.03},"price":5.9411,"vwap":5.9464,"ext_from_open_pct":0.53,"max_ext_allowed_pct":3.0,"volume_pace":1.449,"trend":"flat","recent_slope_pct":-0.0047,"volatility":"medium"},"price":5.9411,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":103475.0,"sell_vol":6990.0,"unclassified_vol":0.0,"imbalance":0.873444,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":1.993785},"context":{"vwap":5.946433,"price_vs_vwap_pct":-0.089689,"ema9":5.945682,"ema20":5.94373,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.123558,"dist_to_hod_atr":6.493924,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.342985,"IWM":0.286255}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.330909},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"22dc2654eb51","ts":"2026-09-15T16:24:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.3549,"target":8.5586,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":62.6,"room_to_5d_high_atr":0.9},"price":8.445,"vwap":8.3342,"ext_from_open_pct":1.38,"max_ext_allowed_pct":4.0,"volume_pace":0.907,"trend":"flat","recent_slope_pct":0.032,"volatility":"medium"},"price":8.445,"volume":{"bars":174,"last_bar_volume":2477.0,"baseline_avg":1080.3,"bar_rvol":2.292882,"raw_accel":-0.203537,"smooth_accel":7.482587,"accel_momentum":6.776175,"rvol_3bar":[1.339271,3.186639,2.292882],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":5.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.25,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.365891},"context":{"vwap":8.334217,"price_vs_vwap_pct":1.329256,"ema9":8.437155,"ema20":8.43748,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.647059,"dist_to_hod_atr":3.202318,"atr":0.017175,"spread_atr":0.58224,"own_change_pct":0.282476,"rel_strength_pct":{"SPY":0.203876,"IWM":0.147146}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.57322},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aeb97f695b13","ts":"2026-09-15T16:24:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.45 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.2971,"target":10.64,"target_label":"premarket_high","reward_risk":1.31,"pos_in_5d_range_pct":18.2,"room_to_5d_high_atr":1.78},"price":10.4453,"vwap":10.4711,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":0.0906,"volatility":"medium"},"price":10.4453,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1362.0,"sell_vol":2020.0,"unclassified_vol":0.0,"imbalance":-0.194559,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.145909},"context":{"vwap":10.471122,"price_vs_vwap_pct":-0.246597,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-4.083563,"dist_to_hod_atr":12.85419,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.727076,"IWM":0.670346}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.252967},"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":"e11c7c6b3223","ts":"2026-09-15T16:24:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1080.0s, plan says WATCH; stop 8.26, target 8.59 (premarket_high), R:R 0.74; R:R 0.74 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.257,"target":8.59,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":6.8,"room_to_5d_high_atr":3.82},"price":8.4482,"vwap":8.3537,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":0.1377,"volatility":"high"},"price":8.4482,"volume":{"bars":174,"last_bar_volume":55023.0,"baseline_avg":62198.4,"bar_rvol":0.884637,"raw_accel":-0.217055,"smooth_accel":1.228771,"accel_momentum":0.666893,"rvol_3bar":[2.204809,1.166593,0.884637],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":9997.0,"sell_vol":28649.0,"unclassified_vol":0.0,"imbalance":-0.482637,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.02667},"context":{"vwap":8.353618,"price_vs_vwap_pct":1.132232,"ema9":8.410538,"ema20":8.3902,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.822196,"dist_to_hod_atr":5.455273,"atr":0.028743,"spread_atr":0.347913,"own_change_pct":0.536033,"rel_strength_pct":{"SPY":0.457433,"IWM":0.400703}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.426959},"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":"bb60bbafef61","ts":"2026-09-15T16:24:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.448,"trend":"flat","recent_slope_pct":0.042,"volatility":"medium"},"price":5.955,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":103256.0,"sell_vol":5893.0,"unclassified_vol":0.0,"imbalance":0.892019,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.882321},"context":{"vwap":5.946433,"price_vs_vwap_pct":0.144065,"ema9":5.945682,"ema20":5.94373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.793649,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.342985,"IWM":0.286255}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.38048},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2f69b773cc8a","ts":"2026-09-15T16:24:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3592,"target":8.5586,"target_label":"premarket_high","reward_risk":1.21,"pos_in_5d_range_pct":63.1,"room_to_5d_high_atr":0.89},"price":8.4493,"vwap":8.3342,"ext_from_open_pct":1.43,"max_ext_allowed_pct":4.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":0.0422,"volatility":"medium"},"price":8.4493,"volume":{"bars":174,"last_bar_volume":2477.0,"baseline_avg":1080.3,"bar_rvol":2.292882,"raw_accel":-0.203537,"smooth_accel":7.482587,"accel_momentum":6.776175,"rvol_3bar":[1.339271,3.186639,2.292882],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":11.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.571429,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":4.623081},"context":{"vwap":8.334217,"price_vs_vwap_pct":1.380851,"ema9":8.437155,"ema20":8.43748,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.596471,"dist_to_hod_atr":2.951955,"atr":0.017175,"spread_atr":0.58224,"own_change_pct":0.282476,"rel_strength_pct":{"SPY":0.203876,"IWM":0.147146}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.310218},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8fb3fdd7523","ts":"2026-09-15T16:24:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.329,"target":10.64,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":1.72},"price":10.4772,"vwap":10.4711,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":0.1516,"volatility":"medium"},"price":10.4772,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":895.0,"sell_vol":969.0,"unclassified_vol":0.0,"imbalance":-0.0397,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.227309},"context":{"vwap":10.471122,"price_vs_vwap_pct":0.05805,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.790634,"dist_to_hod_atr":11.93211,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.727076,"IWM":0.670346}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.051617},"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":"d7ff7a950203","ts":"2026-09-15T16:24:10+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1085.0s, plan says PASS; stop 8.21, target 8.59 (premarket_high), R:R 0.97; target 0.19 away > ~0.15 reachable in 211 min","plan":{"state":"PASS","setup":"","stop":8.2125,"target":8.59,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.88},"price":8.4037,"vwap":8.3538,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.791,"trend":"flat","recent_slope_pct":0.0322,"volatility":"high"},"price":8.4037,"volume":{"bars":174,"last_bar_volume":55023.0,"baseline_avg":62198.4,"bar_rvol":0.884637,"raw_accel":-0.217055,"smooth_accel":1.228771,"accel_momentum":0.666893,"rvol_3bar":[2.204809,1.166593,0.884637],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":23569.0,"sell_vol":39864.0,"unclassified_vol":0.0,"imbalance":-0.256885,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.550056},"context":{"vwap":8.353618,"price_vs_vwap_pct":0.599529,"ema9":8.410538,"ema20":8.3902,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.339338,"dist_to_hod_atr":7.003485,"atr":0.028743,"spread_atr":0.347913,"own_change_pct":0.536033,"rel_strength_pct":{"SPY":0.457433,"IWM":0.400703}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.22725},"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":"f8b4ffb69f05","ts":"2026-09-15T16:24:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.3549,"target":8.5586,"target_label":"premarket_high","reward_risk":1.26,"pos_in_5d_range_pct":62.6,"room_to_5d_high_atr":0.9},"price":8.445,"vwap":8.3342,"ext_from_open_pct":1.38,"max_ext_allowed_pct":4.0,"volume_pace":0.906,"trend":"flat","recent_slope_pct":0.032,"volatility":"medium"},"price":8.445,"volume":{"bars":174,"last_bar_volume":2477.0,"baseline_avg":1080.3,"bar_rvol":2.292882,"raw_accel":-0.203537,"smooth_accel":7.482587,"accel_momentum":6.776175,"rvol_3bar":[1.339271,3.186639,2.292882],"trend_3bar":"MIXED","projected_rvol":0.059243},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":11.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.375,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.880684},"context":{"vwap":8.334217,"price_vs_vwap_pct":1.329256,"ema9":8.437155,"ema20":8.43748,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.647059,"dist_to_hod_atr":3.202318,"atr":0.017175,"spread_atr":0.58224,"own_change_pct":0.282476,"rel_strength_pct":{"SPY":0.203876,"IWM":0.147146}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.859831},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fb4952285eac","ts":"2026-09-15T16:24:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.47 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.3177,"target":10.64,"target_label":"premarket_high","reward_risk":1.17,"pos_in_5d_range_pct":19.8,"room_to_5d_high_atr":1.74},"price":10.4659,"vwap":10.4711,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":0.13,"volatility":"medium"},"price":10.4659,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":0.086366},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":875.0,"sell_vol":1026.0,"unclassified_vol":0.0,"imbalance":-0.079432,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":1.003937},"context":{"vwap":10.471122,"price_vs_vwap_pct":-0.049866,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.894399,"dist_to_hod_atr":12.25874,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.727076,"IWM":0.670346}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.103278},"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":"d6c529dc7e9a","ts":"2026-09-15T16:24:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":490.5,"room_to_5d_high_atr":-5.63},"price":9.875,"vwap":9.6198,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":4.048,"trend":"flat","recent_slope_pct":0.076,"volatility":"low"},"price":9.875,"volume":{"bars":174,"last_bar_volume":3899.0,"baseline_avg":4547.6,"bar_rvol":0.857375,"raw_accel":2.429501,"smooth_accel":-0.530797,"accel_momentum":-0.079042,"rvol_3bar":[0.494033,0.185633,0.857375],"trend_3bar":"MIXED","projected_rvol":1.540373},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":421.0,"sell_vol":2133.0,"unclassified_vol":0.0,"imbalance":-0.670321,"bid":9.87,"ask":9.88,"spread_pct":0.101266,"quote_size_imbalance":null,"quote_age_s":9.247254},"context":{"vwap":9.619476,"price_vs_vwap_pct":2.656324,"ema9":9.84905,"ema20":9.823197,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.186275,"dist_to_hod_atr":7.048222,"atr":0.046111,"spread_atr":0.216868,"own_change_pct":0.508647,"rel_strength_pct":{"SPY":0.430047,"IWM":0.373317}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.574717},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0f1e64b1946f","ts":"2026-09-15T16:24:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9464,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.447,"trend":"flat","recent_slope_pct":0.0252,"volatility":"medium"},"price":5.95,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":0.5757},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":12398.0,"sell_vol":2806.0,"unclassified_vol":0.0,"imbalance":0.630887,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.707054},"context":{"vwap":5.946433,"price_vs_vwap_pct":0.059981,"ema9":5.945682,"ema20":5.94373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.045546,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.342985,"IWM":0.286255}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.68361},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e6269509e0a6","ts":"2026-09-15T16:24:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.3291,"target":10.64,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":1.72},"price":10.4773,"vwap":10.4711,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":0.1518,"volatility":"medium"},"price":10.4773,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":0.089269},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":825.0,"sell_vol":975.0,"unclassified_vol":0.0,"imbalance":-0.083333,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.19417},"context":{"vwap":10.471122,"price_vs_vwap_pct":0.059005,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.789715,"dist_to_hod_atr":11.92922,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.727076,"IWM":0.670346}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.10835},"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":"5b581d4d9dd4","ts":"2026-09-15T16:24:25+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8586,"target":6.03,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":101.6,"room_to_5d_high_atr":-0.04},"price":5.9417,"vwap":5.9464,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":1.449,"trend":"flat","recent_slope_pct":-0.0027,"volatility":"medium"},"price":5.9417,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":1.785915},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":22010.0,"sell_vol":12868.0,"unclassified_vol":0.0,"imbalance":0.262114,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.232529},"context":{"vwap":5.946433,"price_vs_vwap_pct":-0.079598,"ema9":5.945682,"ema20":5.94373,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.113674,"dist_to_hod_atr":6.463697,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.342985,"IWM":0.286255}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.699487},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3bb7125d4669","ts":"2026-09-15T16:24:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8684,"target":6.03,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":102.9,"room_to_5d_high_atr":-0.06},"price":5.9515,"vwap":5.9464,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.448,"trend":"flat","recent_slope_pct":0.0302,"volatility":"medium"},"price":5.9515,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":1.529322},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":22271.0,"sell_vol":13113.0,"unclassified_vol":0.0,"imbalance":0.258818,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.074997},"context":{"vwap":5.946433,"price_vs_vwap_pct":0.085206,"ema9":5.945682,"ema20":5.94373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.952224,"dist_to_hod_atr":5.969977,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.342985,"IWM":0.286255}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.690691},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4108f9e78e48","ts":"2026-09-15T16:24:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.45 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.299,"target":10.64,"target_label":"premarket_high","reward_risk":1.3,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":1.77},"price":10.4472,"vwap":10.4711,"ext_from_open_pct":0.36,"max_ext_allowed_pct":3.0,"volume_pace":0.951,"trend":"flat","recent_slope_pct":0.0943,"volatility":"medium"},"price":10.4472,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":0.293571},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":557.0,"sell_vol":1061.0,"unclassified_vol":0.0,"imbalance":-0.311496,"bid":10.47,"ask":10.48,"spread_pct":0.095465,"quote_size_imbalance":null,"quote_age_s":1.070122},"context":{"vwap":10.471122,"price_vs_vwap_pct":-0.228452,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-4.066116,"dist_to_hod_atr":12.79927,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.727076,"IWM":0.670346}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.405007},"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":"cff1b269ca88","ts":"2026-09-15T16:24:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.94,"target_label":"ceiling","reward_risk":0.32,"pos_in_5d_range_pct":490.5,"room_to_5d_high_atr":-5.63},"price":9.875,"vwap":9.6201,"ext_from_open_pct":4.5,"max_ext_allowed_pct":5.0,"volume_pace":4.045,"trend":"flat","recent_slope_pct":0.076,"volatility":"low"},"price":9.875,"volume":{"bars":174,"last_bar_volume":3899.0,"baseline_avg":4547.6,"bar_rvol":0.857375,"raw_accel":2.429501,"smooth_accel":-0.530797,"accel_momentum":-0.079042,"rvol_3bar":[0.494033,0.185633,0.857375],"trend_3bar":"MIXED","projected_rvol":1.317398},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":548.0,"sell_vol":3203.0,"unclassified_vol":0.0,"imbalance":-0.707811,"bid":9.87,"ask":9.88,"spread_pct":0.101266,"quote_size_imbalance":null,"quote_age_s":7.669234},"context":{"vwap":9.619476,"price_vs_vwap_pct":2.656324,"ema9":9.84905,"ema20":9.823197,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.186275,"dist_to_hod_atr":7.048222,"atr":0.046111,"spread_atr":0.216868,"own_change_pct":0.508647,"rel_strength_pct":{"SPY":0.430047,"IWM":0.373317}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.60686},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5eea47fe4579","ts":"2026-09-15T16:24:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8712,"target":6.03,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":103.3,"room_to_5d_high_atr":-0.07},"price":5.9543,"vwap":5.9464,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.446,"trend":"flat","recent_slope_pct":0.0396,"volatility":"medium"},"price":5.9543,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":1.103569},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":15977.0,"sell_vol":13523.0,"unclassified_vol":0.0,"imbalance":0.083186,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.611899},"context":{"vwap":5.946433,"price_vs_vwap_pct":0.132293,"ema9":5.945682,"ema20":5.94373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.906096,"dist_to_hod_atr":5.828914,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.342985,"IWM":0.286255}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.221995},"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":"8ba0356ac253","ts":"2026-09-15T16:24:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.96; target 0.08 away > ~0.08 reachable in 210 min","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9464,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.446,"trend":"flat","recent_slope_pct":0.0252,"volatility":"medium"},"price":5.95,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":1.006671},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":16120.0,"sell_vol":13819.0,"unclassified_vol":0.0,"imbalance":0.076856,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":2.465958},"context":{"vwap":5.946433,"price_vs_vwap_pct":0.059981,"ema9":5.945682,"ema20":5.94373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.045546,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.342985,"IWM":0.286255}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.205102},"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":"5cc4254262a1","ts":"2026-09-15T16:24:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says WATCH; stop 8.36, target 8.56 (premarket_high), R:R 1.21; R:R 1.21 < 2.0 at 8.45; breakout: 1-min close > 8.49 on >= 2079 sh","plan":{"state":"WATCH","setup":"","stop":8.3599,"target":8.5586,"target_label":"premarket_high","reward_risk":1.21,"pos_in_5d_range_pct":63.2,"room_to_5d_high_atr":0.89},"price":8.45,"vwap":8.3345,"ext_from_open_pct":1.44,"max_ext_allowed_pct":4.0,"volume_pace":0.905,"trend":"flat","recent_slope_pct":0.0438,"volatility":"medium"},"price":8.45,"volume":{"bars":174,"last_bar_volume":2477.0,"baseline_avg":1080.3,"bar_rvol":2.292882,"raw_accel":-0.203537,"smooth_accel":7.482587,"accel_momentum":6.776175,"rvol_3bar":[1.339271,3.186639,2.292882],"trend_3bar":"MIXED","projected_rvol":0.620939},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":470.0,"sell_vol":73.0,"unclassified_vol":0.0,"imbalance":0.731123,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.027955},"context":{"vwap":8.334217,"price_vs_vwap_pct":1.38925,"ema9":8.437155,"ema20":8.43748,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":2.911199,"atr":0.017175,"spread_atr":0.58224,"own_change_pct":0.282476,"rel_strength_pct":{"SPY":0.203876,"IWM":0.147146}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.676379},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b2432ed4a1ff","ts":"2026-09-15T16:24:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.3409,"target":10.64,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":21.6,"room_to_5d_high_atr":1.7},"price":10.4891,"vwap":10.4711,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":0.1743,"volatility":"medium"},"price":10.4891,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":0.60866},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":3579.0,"sell_vol":1684.0,"unclassified_vol":0.0,"imbalance":0.360061,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.470541},"context":{"vwap":10.471122,"price_vs_vwap_pct":0.171696,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.681359,"dist_to_hod_atr":11.588137,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.727076,"IWM":0.670346}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.468152},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d0fe52310271","ts":"2026-09-15T16:24:50+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1125.0s, plan says WATCH; stop 8.26, target 8.59 (premarket_high), R:R 0.73; R:R 0.73 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.2588,"target":8.59,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":6.9,"room_to_5d_high_atr":3.82},"price":8.45,"vwap":8.3543,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.142,"volatility":"high"},"price":8.45,"volume":{"bars":174,"last_bar_volume":55023.0,"baseline_avg":62198.4,"bar_rvol":0.884637,"raw_accel":-0.217055,"smooth_accel":1.228771,"accel_momentum":0.666893,"rvol_3bar":[2.204809,1.166593,0.884637],"trend_3bar":"DECELERATING","projected_rvol":2.222276},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":35447.0,"sell_vol":38288.0,"unclassified_vol":0.0,"imbalance":-0.03853,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.176422},"context":{"vwap":8.353618,"price_vs_vwap_pct":1.15378,"ema9":8.410538,"ema20":8.3902,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.801278,"dist_to_hod_atr":5.392649,"atr":0.028743,"spread_atr":0.347913,"own_change_pct":0.536033,"rel_strength_pct":{"SPY":0.457433,"IWM":0.400703}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.034085},"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":"5dd8c15bea26","ts":"2026-09-15T16:24:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.45 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.3014,"target":10.64,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":18.6,"room_to_5d_high_atr":1.77},"price":10.4496,"vwap":10.4711,"ext_from_open_pct":0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":0.0989,"volatility":"medium"},"price":10.4496,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":0.563224},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":3147.0,"sell_vol":1109.0,"unclassified_vol":0.0,"imbalance":0.478853,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.131893},"context":{"vwap":10.471122,"price_vs_vwap_pct":-0.205532,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-4.044077,"dist_to_hod_atr":12.729897,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.727076,"IWM":0.670346}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.622606},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"855a5515d0c4","ts":"2026-09-15T16:25:00+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 105561 sh","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9464,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.444,"trend":"flat","recent_slope_pct":0.0588,"volatility":"medium"},"price":5.96,"volume":{"bars":174,"last_bar_volume":123489.0,"baseline_avg":46274.1,"bar_rvol":2.668642,"raw_accel":9.674567,"smooth_accel":4.896166,"accel_momentum":3.326413,"rvol_3bar":[3.053567,0.131521,2.668642],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":942.0,"sell_vol":2771.0,"unclassified_vol":0.0,"imbalance":-0.492594,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.386831},"context":{"vwap":5.946433,"price_vs_vwap_pct":0.228149,"ema9":5.945682,"ema20":5.94373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.541751,"atr":0.019849,"spread_atr":0.503796,"own_change_pct":0.421585,"rel_strength_pct":{"SPY":0.345635,"IWM":0.26696}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.314556},"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":"431e6abb9ad4","ts":"2026-09-15T16:25:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":10.3419,"target":10.64,"target_label":"premarket_high","reward_risk":1.01,"pos_in_5d_range_pct":21.7,"room_to_5d_high_atr":1.7},"price":10.4901,"vwap":10.4711,"ext_from_open_pct":0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":0.1762,"volatility":"medium"},"price":10.4901,"volume":{"bars":174,"last_bar_volume":14332.0,"baseline_avg":11022.9,"bar_rvol":1.300202,"raw_accel":-0.455285,"smooth_accel":0.848173,"accel_momentum":-0.27694,"rvol_3bar":[1.698885,2.410878,1.300202],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3439.0,"sell_vol":2885.0,"unclassified_vol":0.0,"imbalance":0.087603,"bid":10.49,"ask":10.5,"spread_pct":0.095283,"quote_size_imbalance":null,"quote_age_s":0.396154},"context":{"vwap":10.471122,"price_vs_vwap_pct":0.181246,"ema9":10.43677,"ema20":10.419363,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.672176,"dist_to_hod_atr":11.559232,"atr":0.034596,"spread_atr":0.289053,"own_change_pct":0.805676,"rel_strength_pct":{"SPY":0.729727,"IWM":0.651052}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.113901},"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":"d76163e0489d","ts":"2026-09-15T16:25:00+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1135.0s, plan says PASS; stop 8.24, target 8.59 (premarket_high), R:R 0.84; target 0.16 away > ~0.15 reachable in 210 min","plan":{"state":"PASS","setup":"","stop":8.2373,"target":8.59,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":6.2,"room_to_5d_high_atr":3.85},"price":8.4285,"vwap":8.3543,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.091,"volatility":"high"},"price":8.4285,"volume":{"bars":174,"last_bar_volume":55023.0,"baseline_avg":62198.4,"bar_rvol":0.884637,"raw_accel":-0.217055,"smooth_accel":1.228771,"accel_momentum":0.666893,"rvol_3bar":[2.204809,1.166593,0.884637],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":25124.0,"sell_vol":39109.0,"unclassified_vol":0.0,"imbalance":-0.217723,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":1.551369},"context":{"vwap":8.353618,"price_vs_vwap_pct":0.896406,"ema9":8.410538,"ema20":8.3902,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.051133,"dist_to_hod_atr":6.140661,"atr":0.028743,"spread_atr":0.347913,"own_change_pct":0.536033,"rel_strength_pct":{"SPY":0.460084,"IWM":0.381409}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.192606},"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":"3602bc14ff45","ts":"2026-09-15T16:25:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.90; target 0.07 away > ~0.07 reachable in 210 min","plan":{"state":"PASS","setup":"","stop":5.8721,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.9552,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.444,"trend":"flat","recent_slope_pct":-0.0077,"volatility":"medium"},"price":5.9552,"volume":{"bars":175,"last_bar_volume":39097.0,"baseline_avg":49606.65,"bar_rvol":0.78814,"raw_accel":-0.683397,"smooth_accel":0.024653,"accel_momentum":-4.871514,"rvol_3bar":[0.131521,2.668642,0.78814],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":559.0,"sell_vol":700.0,"unclassified_vol":0.0,"imbalance":-0.111994,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":3.805834},"context":{"vwap":5.946448,"price_vs_vwap_pct":0.147179,"ema9":5.948546,"ema20":5.94528,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.891269,"dist_to_hod_atr":5.803398,"atr":0.019782,"spread_atr":0.505522,"own_change_pct":0.512682,"rel_strength_pct":{"SPY":0.436732,"IWM":0.358057}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.088267},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cd006a544a23","ts":"2026-09-15T16:25:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.3468,"target":10.64,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":22.1,"room_to_5d_high_atr":1.69},"price":10.495,"vwap":10.4711,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.949,"trend":"flat","recent_slope_pct":0.1531,"volatility":"medium"},"price":10.495,"volume":{"bars":175,"last_bar_volume":7942.0,"baseline_avg":11481.1,"bar_rvol":0.691746,"raw_accel":-0.445855,"smooth_accel":0.171005,"accel_momentum":-0.677167,"rvol_3bar":[2.410878,1.300202,0.691746],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3398.0,"sell_vol":2623.0,"unclassified_vol":0.0,"imbalance":0.128716,"bid":10.49,"ask":10.5,"spread_pct":0.095283,"quote_size_imbalance":null,"quote_age_s":0.250319},"context":{"vwap":10.471125,"price_vs_vwap_pct":0.228007,"ema9":10.447436,"ema20":10.4261,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.627181,"dist_to_hod_atr":10.825214,"atr":0.036489,"spread_atr":0.274056,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.49738,"IWM":0.418705}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.089039},"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":"af08caa4e37a","ts":"2026-09-15T16:25:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1957,"target":9.48,"target_label":"premarket_high","reward_risk":0.86,"pos_in_5d_range_pct":5.1,"room_to_5d_high_atr":3.31},"price":9.3486,"vwap":9.3452,"ext_from_open_pct":-0.01,"max_ext_allowed_pct":3.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.0727,"volatility":"high"},"price":9.3486,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":11496.0,"sell_vol":4151.0,"unclassified_vol":0.0,"imbalance":0.469419,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":3.712778},"context":{"vwap":9.34519,"price_vs_vwap_pct":0.036493,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.903463,"dist_to_hod_atr":8.088177,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.387978,"IWM":0.309303}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.397354},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"053656e2f54d","ts":"2026-09-15T16:25:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.85; R:R 0.85 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 96993 sh","plan":{"state":"WATCH","setup":"","stop":5.8759,"target":6.03,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":103.9,"room_to_5d_high_atr":-0.09},"price":5.959,"vwap":5.9464,"ext_from_open_pct":0.83,"max_ext_allowed_pct":3.0,"volume_pace":1.443,"trend":"flat","recent_slope_pct":0.005,"volatility":"medium"},"price":5.959,"volume":{"bars":175,"last_bar_volume":39097.0,"baseline_avg":49606.65,"bar_rvol":0.78814,"raw_accel":-0.683397,"smooth_accel":0.024653,"accel_momentum":-4.871514,"rvol_3bar":[0.131521,2.668642,0.78814],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":904.0,"sell_vol":707.0,"unclassified_vol":0.0,"imbalance":0.122284,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":8.805834},"context":{"vwap":5.946448,"price_vs_vwap_pct":0.211082,"ema9":5.948546,"ema20":5.94528,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.828666,"dist_to_hod_atr":5.6113,"atr":0.019782,"spread_atr":0.505522,"own_change_pct":0.512682,"rel_strength_pct":{"SPY":0.436732,"IWM":0.358057}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.096377},"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":"3ad42a9639ac","ts":"2026-09-15T16:25:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.45 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.3042,"target":10.64,"target_label":"premarket_high","reward_risk":1.27,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":1.77},"price":10.4524,"vwap":10.4711,"ext_from_open_pct":0.41,"max_ext_allowed_pct":3.0,"volume_pace":0.949,"trend":"flat","recent_slope_pct":0.0718,"volatility":"medium"},"price":10.4524,"volume":{"bars":175,"last_bar_volume":7942.0,"baseline_avg":11481.1,"bar_rvol":0.691746,"raw_accel":-0.445855,"smooth_accel":0.171005,"accel_momentum":-0.677167,"rvol_3bar":[2.410878,1.300202,0.691746],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":3749.0,"sell_vol":4137.0,"unclassified_vol":0.0,"imbalance":-0.049201,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.121676},"context":{"vwap":10.471125,"price_vs_vwap_pct":-0.178826,"ema9":10.447436,"ema20":10.4261,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-4.018365,"dist_to_hod_atr":11.992693,"atr":0.036489,"spread_atr":0.274056,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.49738,"IWM":0.418705}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.034035},"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":"fc9161a4d7cc","ts":"2026-09-15T16:25:10+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1823,"target":9.48,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":4.5,"room_to_5d_high_atr":3.33},"price":9.3352,"vwap":9.3452,"ext_from_open_pct":-0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.044,"volatility":"high"},"price":9.3352,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":122,"trade_rate":4.066667,"buy_vol":11592.0,"sell_vol":4171.0,"unclassified_vol":0.0,"imbalance":0.470786,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":2.811185},"context":{"vwap":9.34519,"price_vs_vwap_pct":-0.106896,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-2.044071,"dist_to_hod_atr":8.685649,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.387978,"IWM":0.309303}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.401423},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e8ef14891a97","ts":"2026-09-15T16:25:10+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1145.0s, plan says WATCH; stop 8.26, target 8.59 (premarket_high), R:R 0.73; R:R 0.73 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.2588,"target":8.59,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":6.9,"room_to_5d_high_atr":3.82},"price":8.45,"vwap":8.3546,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":0.0592,"volatility":"high"},"price":8.45,"volume":{"bars":175,"last_bar_volume":123520.0,"baseline_avg":62196.75,"bar_rvol":1.985956,"raw_accel":1.244879,"smooth_accel":0.203942,"accel_momentum":-1.024829,"rvol_3bar":[1.166593,0.884637,1.985956],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":149,"trade_rate":4.966667,"buy_vol":15974.0,"sell_vol":41474.0,"unclassified_vol":0.0,"imbalance":-0.44388,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.023643},"context":{"vwap":8.354309,"price_vs_vwap_pct":1.145412,"ema9":8.41413,"ema20":8.393848,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.801278,"dist_to_hod_atr":5.167198,"atr":0.029997,"spread_atr":0.333368,"own_change_pct":0.279595,"rel_strength_pct":{"SPY":0.203646,"IWM":0.124971}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.881525},"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":"3de7e5f7cba4","ts":"2026-09-15T16:25:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.96; target 0.08 away > ~0.07 reachable in 210 min","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9464,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.442,"trend":"flat","recent_slope_pct":-0.0252,"volatility":"medium"},"price":5.95,"volume":{"bars":175,"last_bar_volume":39097.0,"baseline_avg":49606.65,"bar_rvol":0.78814,"raw_accel":-0.683397,"smooth_accel":0.024653,"accel_momentum":-4.871514,"rvol_3bar":[0.131521,2.668642,0.78814],"trend_3bar":"MIXED","projected_rvol":0.236581},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":979.0,"sell_vol":2752.0,"unclassified_vol":0.0,"imbalance":-0.475208,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":3.317984},"context":{"vwap":5.946448,"price_vs_vwap_pct":0.059731,"ema9":5.948546,"ema20":5.94528,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.06627,"atr":0.019782,"spread_atr":0.505522,"own_change_pct":0.512682,"rel_strength_pct":{"SPY":0.436732,"IWM":0.358057}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.37453},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8ec99cf942d7","ts":"2026-09-15T16:25:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says PASS; stop 8.35, target 8.56 (premarket_high), R:R 1.31; target 0.12 away > ~0.11 reachable in 210 min","plan":{"state":"PASS","setup":"","stop":8.3501,"target":8.5586,"target_label":"premarket_high","reward_risk":1.31,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.92},"price":8.4402,"vwap":8.3345,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0259,"volatility":"medium"},"price":8.4402,"volume":{"bars":175,"last_bar_volume":560.0,"baseline_avg":1196.6,"bar_rvol":0.467993,"raw_accel":-0.77392,"smooth_accel":2.532759,"accel_momentum":-4.949828,"rvol_3bar":[3.186639,2.292882,0.467993],"trend_3bar":"DECELERATING","projected_rvol":0.086913},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":468.0,"sell_vol":29.0,"unclassified_vol":0.0,"imbalance":0.8833,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":2.88118},"context":{"vwap":8.334477,"price_vs_vwap_pct":1.268504,"ema9":8.439504,"ema20":8.438567,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.703529,"dist_to_hod_atr":3.667494,"atr":0.016305,"spread_atr":0.613293,"own_change_pct":0.179041,"rel_strength_pct":{"SPY":0.103092,"IWM":0.024417}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.413378},"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":"2e9282247afe","ts":"2026-09-15T16:25:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.3368,"target":10.64,"target_label":"premarket_high","reward_risk":1.05,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":1.71},"price":10.485,"vwap":10.4711,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":0.949,"trend":"flat","recent_slope_pct":0.134,"volatility":"medium"},"price":10.485,"volume":{"bars":175,"last_bar_volume":7942.0,"baseline_avg":11481.1,"bar_rvol":0.691746,"raw_accel":-0.445855,"smooth_accel":0.171005,"accel_momentum":-0.677167,"rvol_3bar":[2.410878,1.300202,0.691746],"trend_3bar":"DECELERATING","projected_rvol":0.83337},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":2210.0,"sell_vol":4126.0,"unclassified_vol":0.0,"imbalance":-0.302399,"bid":10.48,"ask":10.49,"spread_pct":0.095374,"quote_size_imbalance":null,"quote_age_s":0.334674},"context":{"vwap":10.471125,"price_vs_vwap_pct":0.132506,"ema9":10.447436,"ema20":10.4261,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.719008,"dist_to_hod_atr":11.09927,"atr":0.036489,"spread_atr":0.274056,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.49738,"IWM":0.418705}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.209183},"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":"fac48e42d6df","ts":"2026-09-15T16:25:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.2024,"target":9.48,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.29},"price":9.3553,"vwap":9.3452,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.087,"volatility":"high"},"price":9.3553,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":3.314217},"flow":{"window_s":30,"trades":122,"trade_rate":4.066667,"buy_vol":11839.0,"sell_vol":4131.0,"unclassified_vol":0.0,"imbalance":0.482655,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.747919},"context":{"vwap":9.34519,"price_vs_vwap_pct":0.108187,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.833158,"dist_to_hod_atr":7.78944,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.387978,"IWM":0.309303}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.436754},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a79d57af48c6","ts":"2026-09-15T16:25:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.67,"target":10.1201,"target_label":"clear air (typical 60-min move)","reward_risk":0.96,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.6204,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":4.034,"trend":"flat","recent_slope_pct":0.1215,"volatility":"low"},"price":9.9,"volume":{"bars":175,"last_bar_volume":5276.0,"baseline_avg":4464.65,"bar_rvol":1.181728,"raw_accel":0.353167,"smooth_accel":-0.27893,"accel_momentum":0.251867,"rvol_3bar":[0.185633,0.857375,1.181728],"trend_3bar":"ACCELERATING","projected_rvol":0.352099},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1461.0,"sell_vol":341.0,"unclassified_vol":0.0,"imbalance":0.621532,"bid":9.89,"ask":9.91,"spread_pct":0.20202,"quote_size_imbalance":null,"quote_age_s":1.62941},"context":{"vwap":9.620316,"price_vs_vwap_pct":2.907226,"ema9":9.85724,"ema20":9.829559,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":6.638826,"atr":0.045189,"spread_atr":0.442588,"own_change_pct":0.457085,"rel_strength_pct":{"SPY":0.381135,"IWM":0.30246}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.734481},"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":"ee907bc67cbf","ts":"2026-09-15T16:25:20+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.35 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1921,"target":9.48,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":4.9,"room_to_5d_high_atr":3.31},"price":9.345,"vwap":9.3452,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.065,"volatility":"high"},"price":9.345,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":2.528176},"flow":{"window_s":30,"trades":124,"trade_rate":4.133333,"buy_vol":11766.0,"sell_vol":4166.0,"unclassified_vol":0.0,"imbalance":0.477027,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":5.747919},"context":{"vwap":9.34519,"price_vs_vwap_pct":-0.00203,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.941238,"dist_to_hod_atr":8.248692,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.387978,"IWM":0.309303}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.420002},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2af701ac56a4","ts":"2026-09-15T16:25:25+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 96993 sh","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9464,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.441,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":5.96,"volume":{"bars":175,"last_bar_volume":39097.0,"baseline_avg":49606.65,"bar_rvol":0.78814,"raw_accel":-0.683397,"smooth_accel":0.024653,"accel_momentum":-4.871514,"rvol_3bar":[0.131521,2.668642,0.78814],"trend_3bar":"MIXED","projected_rvol":0.156173},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":842.0,"sell_vol":2473.0,"unclassified_vol":0.0,"imbalance":-0.492006,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.84649},"context":{"vwap":5.946448,"price_vs_vwap_pct":0.227899,"ema9":5.948546,"ema20":5.94528,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.560747,"atr":0.019782,"spread_atr":0.505522,"own_change_pct":0.512682,"rel_strength_pct":{"SPY":0.436732,"IWM":0.358057}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.38777},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e51d2385772f","ts":"2026-09-15T16:25:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.2023,"target":9.48,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.29},"price":9.3552,"vwap":9.3452,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.598,"trend":"flat","recent_slope_pct":0.0868,"volatility":"high"},"price":9.3552,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":2.683613},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":11865.0,"sell_vol":5163.0,"unclassified_vol":0.0,"imbalance":0.393587,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":1.438609},"context":{"vwap":9.34519,"price_vs_vwap_pct":0.107117,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.834208,"dist_to_hod_atr":7.793899,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.387978,"IWM":0.309303}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.171619},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"be722d6e6c11","ts":"2026-09-15T16:25:25+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1160.0s, plan says PASS; stop 8.25, target 8.59 (premarket_high), R:R 0.78; target 0.15 away > ~0.15 reachable in 210 min","plan":{"state":"PASS","setup":"","stop":8.2488,"target":8.59,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.83},"price":8.44,"vwap":8.3547,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":0.0355,"volatility":"high"},"price":8.44,"volume":{"bars":175,"last_bar_volume":123520.0,"baseline_avg":62196.75,"bar_rvol":1.985956,"raw_accel":1.244879,"smooth_accel":0.203942,"accel_momentum":-1.024829,"rvol_3bar":[1.166593,0.884637,1.985956],"trend_3bar":"MIXED","projected_rvol":2.599969},"flow":{"window_s":30,"trades":172,"trade_rate":5.733333,"buy_vol":24841.0,"sell_vol":50741.0,"unclassified_vol":0.0,"imbalance":-0.342674,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.051235},"context":{"vwap":8.354309,"price_vs_vwap_pct":1.025714,"ema9":8.41413,"ema20":8.393848,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.91749,"dist_to_hod_atr":5.500565,"atr":0.029997,"spread_atr":0.333368,"own_change_pct":0.279595,"rel_strength_pct":{"SPY":0.203646,"IWM":0.124971}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.680536},"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":"59ab93dc7ba6","ts":"2026-09-15T16:25:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.90; target 0.08 away > ~0.07 reachable in 210 min","plan":{"state":"PASS","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9464,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.441,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"medium"},"price":5.955,"volume":{"bars":175,"last_bar_volume":39097.0,"baseline_avg":49606.65,"bar_rvol":0.78814,"raw_accel":-0.683397,"smooth_accel":0.024653,"accel_momentum":-4.871514,"rvol_3bar":[0.131521,2.668642,0.78814],"trend_3bar":"MIXED","projected_rvol":0.232106},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2954.0,"sell_vol":2803.0,"unclassified_vol":0.0,"imbalance":0.026229,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.390524},"context":{"vwap":5.946448,"price_vs_vwap_pct":0.143815,"ema9":5.948546,"ema20":5.94528,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.813509,"atr":0.019782,"spread_atr":0.505522,"own_change_pct":0.512682,"rel_strength_pct":{"SPY":0.436732,"IWM":0.358057}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.020672},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"45885a2765fc","ts":"2026-09-15T16:25:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.46 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.3068,"target":10.64,"target_label":"premarket_high","reward_risk":1.25,"pos_in_5d_range_pct":19.0,"room_to_5d_high_atr":1.76},"price":10.455,"vwap":10.4711,"ext_from_open_pct":0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":0.0767,"volatility":"medium"},"price":10.455,"volume":{"bars":175,"last_bar_volume":7942.0,"baseline_avg":11481.1,"bar_rvol":0.691746,"raw_accel":-0.445855,"smooth_accel":0.171005,"accel_momentum":-0.677167,"rvol_3bar":[2.410878,1.300202,0.691746],"trend_3bar":"DECELERATING","projected_rvol":0.721783},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":1499.0,"sell_vol":3322.0,"unclassified_vol":0.0,"imbalance":-0.378137,"bid":10.47,"ask":10.48,"spread_pct":0.095465,"quote_size_imbalance":null,"quote_age_s":0.705595},"context":{"vwap":10.471125,"price_vs_vwap_pct":-0.153996,"ema9":10.447436,"ema20":10.4261,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.99449,"dist_to_hod_atr":11.921438,"atr":0.036489,"spread_atr":0.274056,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.49738,"IWM":0.418705}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.261575},"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":"174ccb2ba894","ts":"2026-09-15T16:25:35+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1833,"target":9.48,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":4.5,"room_to_5d_high_atr":3.33},"price":9.3362,"vwap":9.3452,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.0462,"volatility":"high"},"price":9.3362,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":2.26342},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":538.0,"sell_vol":2070.0,"unclassified_vol":0.0,"imbalance":-0.587423,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.706217},"context":{"vwap":9.34519,"price_vs_vwap_pct":-0.096196,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-2.033578,"dist_to_hod_atr":8.641062,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.387978,"IWM":0.309303}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.748626},"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":"4be45df1367d","ts":"2026-09-15T16:25:35+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1912,"target":5.43,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":0.0,"room_to_5d_high_atr":2.0},"price":5.24,"vwap":5.2347,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":4.0,"volume_pace":0.88,"trend":"flat","recent_slope_pct":0.0736,"volatility":"medium"},"price":5.24,"volume":{"bars":175,"last_bar_volume":157.0,"baseline_avg":2462.1,"bar_rvol":0.063767,"raw_accel":-0.744933,"smooth_accel":-0.859827,"accel_momentum":-1.363245,"rvol_3bar":[0.455231,0.160323,0.063767],"trend_3bar":"DECELERATING","projected_rvol":0.391304},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":304.0,"sell_vol":58.0,"unclassified_vol":0.0,"imbalance":0.679558,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":0.305897},"context":{"vwap":5.234687,"price_vs_vwap_pct":0.101501,"ema9":5.226791,"ema20":5.224087,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.052729,"dist_to_hod_atr":16.288127,"atr":0.01013,"spread_atr":0.987159,"own_change_pct":0.252786,"rel_strength_pct":{"SPY":0.176837,"IWM":0.098162}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.043333},"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":"61f9673f6d3a","ts":"2026-09-15T16:25:35+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1170.0s, plan says WATCH; stop 8.25, target 8.59 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.2538,"target":8.59,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":3.83},"price":8.445,"vwap":8.3548,"ext_from_open_pct":0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0473,"volatility":"high"},"price":8.445,"volume":{"bars":175,"last_bar_volume":123520.0,"baseline_avg":62196.75,"bar_rvol":1.985956,"raw_accel":1.244879,"smooth_accel":0.203942,"accel_momentum":-1.024829,"rvol_3bar":[1.166593,0.884637,1.985956],"trend_3bar":"MIXED","projected_rvol":2.041016},"flow":{"window_s":30,"trades":119,"trade_rate":3.966667,"buy_vol":18166.0,"sell_vol":32774.0,"unclassified_vol":0.0,"imbalance":-0.286769,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.36705},"context":{"vwap":8.354309,"price_vs_vwap_pct":1.085563,"ema9":8.41413,"ema20":8.393848,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.859384,"dist_to_hod_atr":5.333882,"atr":0.029997,"spread_atr":0.333368,"own_change_pct":0.279595,"rel_strength_pct":{"SPY":0.203646,"IWM":0.124971}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.56951},"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":"9556b6ceaf38","ts":"2026-09-15T16:25:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.2015,"target":9.48,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.3},"price":9.3544,"vwap":9.3452,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.0851,"volatility":"high"},"price":9.3544,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":1.981821},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":435.0,"sell_vol":2037.0,"unclassified_vol":0.0,"imbalance":-0.648058,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.862671},"context":{"vwap":9.34519,"price_vs_vwap_pct":0.098557,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.842602,"dist_to_hod_atr":7.829569,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.387978,"IWM":0.309303}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.929122},"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":"c9040bc5cdac","ts":"2026-09-15T16:25:40+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":5.1859,"target":5.275,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":-1.4,"room_to_5d_high_atr":2.02},"price":5.2347,"vwap":5.2347,"ext_from_open_pct":-1.79,"max_ext_allowed_pct":3.0,"volume_pace":0.88,"trend":"flat","recent_slope_pct":0.0533,"volatility":"medium"},"price":5.2347,"volume":{"bars":175,"last_bar_volume":157.0,"baseline_avg":2462.1,"bar_rvol":0.063767,"raw_accel":-0.744933,"smooth_accel":-0.859827,"accel_momentum":-1.363245,"rvol_3bar":[0.455231,0.160323,0.063767],"trend_3bar":"DECELERATING","projected_rvol":0.466066},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":403.0,"sell_vol":145.0,"unclassified_vol":0.0,"imbalance":0.470803,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":2.682835},"context":{"vwap":5.234687,"price_vs_vwap_pct":0.000254,"ema9":5.226791,"ema20":5.224087,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.150786,"dist_to_hod_atr":16.811321,"atr":0.01013,"spread_atr":0.987159,"own_change_pct":0.252786,"rel_strength_pct":{"SPY":0.176837,"IWM":0.098162}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.030022},"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":"56034f54f2e4","ts":"2026-09-15T16:25:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 75.0s, plan says WATCH; stop 5.87, target 6.03 (premarket_high), R:R 0.87; R:R 0.87 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 96993 sh","plan":{"state":"WATCH","setup":"","stop":5.8747,"target":6.03,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":103.8,"room_to_5d_high_atr":-0.08},"price":5.9578,"vwap":5.9465,"ext_from_open_pct":0.81,"max_ext_allowed_pct":4.0,"volume_pace":1.439,"trend":"flat","recent_slope_pct":0.001,"volatility":"medium"},"price":5.9578,"volume":{"bars":175,"last_bar_volume":39097.0,"baseline_avg":49606.65,"bar_rvol":0.78814,"raw_accel":-0.683397,"smooth_accel":0.024653,"accel_momentum":-4.871514,"rvol_3bar":[0.131521,2.668642,0.78814],"trend_3bar":"MIXED","projected_rvol":0.456794},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":8252.0,"sell_vol":5809.0,"unclassified_vol":0.0,"imbalance":0.173743,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":14.481103},"context":{"vwap":5.946448,"price_vs_vwap_pct":0.190902,"ema9":5.948546,"ema20":5.94528,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.848435,"dist_to_hod_atr":5.671962,"atr":0.019782,"spread_atr":0.505522,"own_change_pct":0.512682,"rel_strength_pct":{"SPY":0.436732,"IWM":0.358057}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.136934},"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":"eca96f44ebc5","ts":"2026-09-15T16:25:45+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1180.0s, plan says PASS; stop 8.24, target 8.59 (premarket_high), R:R 0.82; target 0.16 away > ~0.15 reachable in 209 min","plan":{"state":"PASS","setup":"","stop":8.2415,"target":8.59,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.84},"price":8.4327,"vwap":8.3548,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0181,"volatility":"high"},"price":8.4327,"volume":{"bars":175,"last_bar_volume":123520.0,"baseline_avg":62196.75,"bar_rvol":1.985956,"raw_accel":1.244879,"smooth_accel":0.203942,"accel_momentum":-1.024829,"rvol_3bar":[1.166593,0.884637,1.985956],"trend_3bar":"MIXED","projected_rvol":1.600341},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":7173.0,"sell_vol":10727.0,"unclassified_vol":0.0,"imbalance":-0.198547,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.715152},"context":{"vwap":8.354309,"price_vs_vwap_pct":0.938334,"ema9":8.41413,"ema20":8.393848,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.002324,"dist_to_hod_atr":5.743924,"atr":0.029997,"spread_atr":0.333368,"own_change_pct":0.279595,"rel_strength_pct":{"SPY":0.203646,"IWM":0.124971}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.394307},"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":"4524177e2462","ts":"2026-09-15T16:25:50+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.3378,"target":10.64,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":1.71},"price":10.486,"vwap":10.4711,"ext_from_open_pct":0.73,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.1359,"volatility":"medium"},"price":10.486,"volume":{"bars":175,"last_bar_volume":7942.0,"baseline_avg":11481.1,"bar_rvol":0.691746,"raw_accel":-0.445855,"smooth_accel":0.171005,"accel_momentum":-0.677167,"rvol_3bar":[2.410878,1.300202,0.691746],"trend_3bar":"DECELERATING","projected_rvol":0.523225},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":794.0,"sell_vol":1682.0,"unclassified_vol":0.0,"imbalance":-0.358643,"bid":10.47,"ask":10.48,"spread_pct":0.095465,"quote_size_imbalance":null,"quote_age_s":1.443731},"context":{"vwap":10.471125,"price_vs_vwap_pct":0.142056,"ema9":10.447436,"ema20":10.4261,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.709826,"dist_to_hod_atr":11.071864,"atr":0.036489,"spread_atr":0.274056,"own_change_pct":0.57333,"rel_strength_pct":{"SPY":0.49738,"IWM":0.418705}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.24809},"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":"c7e1da0e5281","ts":"2026-09-15T16:25:50+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1185.0s, plan says WATCH; stop 8.25, target 8.59 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.2538,"target":8.59,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":3.83},"price":8.445,"vwap":8.3548,"ext_from_open_pct":0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.0473,"volatility":"high"},"price":8.445,"volume":{"bars":175,"last_bar_volume":123520.0,"baseline_avg":62196.75,"bar_rvol":1.985956,"raw_accel":1.244879,"smooth_accel":0.203942,"accel_momentum":-1.024829,"rvol_3bar":[1.166593,0.884637,1.985956],"trend_3bar":"MIXED","projected_rvol":1.444378},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":6130.0,"sell_vol":1926.0,"unclassified_vol":0.0,"imbalance":0.521847,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":1.594675},"context":{"vwap":8.354309,"price_vs_vwap_pct":1.085563,"ema9":8.41413,"ema20":8.393848,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.859384,"dist_to_hod_atr":5.333882,"atr":0.029997,"spread_atr":0.333368,"own_change_pct":0.279595,"rel_strength_pct":{"SPY":0.203646,"IWM":0.124971}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.036365},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a58add2c8a57","ts":"2026-09-15T16:25:55+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.92; target 0.08 away > ~0.07 reachable in 209 min","plan":{"state":"PASS","setup":"","stop":5.8707,"target":6.03,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":103.2,"room_to_5d_high_atr":-0.07},"price":5.9538,"vwap":5.9465,"ext_from_open_pct":0.74,"max_ext_allowed_pct":4.0,"volume_pace":1.44,"trend":"flat","recent_slope_pct":-0.0124,"volatility":"medium"},"price":5.9538,"volume":{"bars":175,"last_bar_volume":39097.0,"baseline_avg":49606.65,"bar_rvol":0.78814,"raw_accel":-0.683397,"smooth_accel":0.024653,"accel_momentum":-4.871514,"rvol_3bar":[0.131521,2.668642,0.78814],"trend_3bar":"MIXED","projected_rvol":0.852818},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":21660.0,"sell_vol":13892.0,"unclassified_vol":0.0,"imbalance":0.218497,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":6.958971},"context":{"vwap":5.946448,"price_vs_vwap_pct":0.123635,"ema9":5.948546,"ema20":5.94528,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.914333,"dist_to_hod_atr":5.874171,"atr":0.019782,"spread_atr":0.505522,"own_change_pct":0.512682,"rel_strength_pct":{"SPY":0.436732,"IWM":0.358057}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.172206},"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":"abbe9defabf0","ts":"2026-09-15T16:25:55+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1190.0s, plan says PASS; stop 8.24, target 8.59 (premarket_high), R:R 0.82; target 0.16 away > ~0.15 reachable in 209 min","plan":{"state":"PASS","setup":"","stop":8.2419,"target":8.59,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.84},"price":8.4331,"vwap":8.3548,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.0191,"volatility":"high"},"price":8.4331,"volume":{"bars":175,"last_bar_volume":123520.0,"baseline_avg":62196.75,"bar_rvol":1.985956,"raw_accel":1.244879,"smooth_accel":0.203942,"accel_momentum":-1.024829,"rvol_3bar":[1.166593,0.884637,1.985956],"trend_3bar":"MIXED","projected_rvol":1.457141},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":13766.0,"sell_vol":1932.0,"unclassified_vol":0.0,"imbalance":0.753854,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.00095},"context":{"vwap":8.354309,"price_vs_vwap_pct":0.943122,"ema9":8.41413,"ema20":8.393848,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.997676,"dist_to_hod_atr":5.730589,"atr":0.029997,"spread_atr":0.333368,"own_change_pct":0.279595,"rel_strength_pct":{"SPY":0.203646,"IWM":0.124971}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.497121},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bbb2e68ddbd9","ts":"2026-09-15T16:26:00+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1871,"target":9.48,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":4.7,"room_to_5d_high_atr":3.32},"price":9.34,"vwap":9.3452,"ext_from_open_pct":-0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":0.0543,"volatility":"high"},"price":9.34,"volume":{"bars":175,"last_bar_volume":13444.0,"baseline_avg":4516.3,"bar_rvol":2.976773,"raw_accel":1.754918,"smooth_accel":1.023922,"accel_momentum":0.346756,"rvol_3bar":[1.016829,1.103211,2.976773],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":79.0,"sell_vol":225.0,"unclassified_vol":0.0,"imbalance":-0.480263,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.646078},"context":{"vwap":9.34519,"price_vs_vwap_pct":-0.055533,"ema9":9.330169,"ema20":9.32091,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.993704,"dist_to_hod_atr":8.471629,"atr":0.022428,"spread_atr":0.445875,"own_change_pct":0.463927,"rel_strength_pct":{"SPY":0.395245,"IWM":0.319835}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.429634},"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":"b7cc328d1737","ts":"2026-09-15T16:26:00+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1195.0s, plan says WATCH; stop 8.26, target 8.59 (premarket_high), R:R 0.73; R:R 0.73 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.2588,"target":8.59,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":6.9,"room_to_5d_high_atr":3.82},"price":8.45,"vwap":8.3548,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":0.0592,"volatility":"high"},"price":8.45,"volume":{"bars":175,"last_bar_volume":123520.0,"baseline_avg":62196.75,"bar_rvol":1.985956,"raw_accel":1.244879,"smooth_accel":0.203942,"accel_momentum":-1.024829,"rvol_3bar":[1.166593,0.884637,1.985956],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":13416.0,"sell_vol":1858.0,"unclassified_vol":0.0,"imbalance":0.756711,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.04426},"context":{"vwap":8.354309,"price_vs_vwap_pct":1.145412,"ema9":8.41413,"ema20":8.393848,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.801278,"dist_to_hod_atr":5.167198,"atr":0.029997,"spread_atr":0.333368,"own_change_pct":0.279595,"rel_strength_pct":{"SPY":0.210913,"IWM":0.135503}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.502794},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5e26ad9d6e10","ts":"2026-09-15T16:26:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.9499,"target_label":"ceiling","reward_risk":0.25,"pos_in_5d_range_pct":495.8,"room_to_5d_high_atr":-5.7},"price":9.8946,"vwap":9.6253,"ext_from_open_pct":4.7,"max_ext_allowed_pct":4.0,"volume_pace":4.084,"trend":"flat","recent_slope_pct":0.1133,"volatility":"low"},"price":9.8946,"volume":{"bars":176,"last_bar_volume":27458.0,"baseline_avg":4718.75,"bar_rvol":5.818914,"raw_accel":4.204321,"smooth_accel":4.341645,"accel_momentum":4.620574,"rvol_3bar":[0.857375,1.181728,5.818914],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":12880.0,"sell_vol":8243.0,"unclassified_vol":0.0,"imbalance":0.219524,"bid":9.93,"ask":9.95,"spread_pct":0.201207,"quote_size_imbalance":null,"quote_age_s":1.580545},"context":{"vwap":9.625115,"price_vs_vwap_pct":2.79981,"ema9":9.870352,"ema20":9.838439,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.994118,"dist_to_hod_atr":6.285306,"atr":0.04859,"spread_atr":0.411611,"own_change_pct":0.739086,"rel_strength_pct":{"SPY":0.670404,"IWM":0.594994}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.27739},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"423067eab907","ts":"2026-09-15T16:26:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1965,"target":9.48,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":5.1,"room_to_5d_high_atr":3.3},"price":9.3494,"vwap":9.3452,"ext_from_open_pct":-0.01,"max_ext_allowed_pct":3.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":0.0063,"volatility":"high"},"price":9.3494,"volume":{"bars":176,"last_bar_volume":6167.0,"baseline_avg":4911.4,"bar_rvol":1.25565,"raw_accel":-0.541282,"smooth_accel":1.276115,"accel_momentum":0.252193,"rvol_3bar":[1.103211,2.976773,1.25565],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":153.0,"sell_vol":136.0,"unclassified_vol":0.0,"imbalance":0.058824,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":2.995987},"context":{"vwap":9.345185,"price_vs_vwap_pct":0.045107,"ema9":9.332135,"ema20":9.322728,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.895068,"dist_to_hod_atr":8.078952,"atr":0.022354,"spread_atr":0.44734,"own_change_pct":0.203841,"rel_strength_pct":{"SPY":0.135159,"IWM":0.059749}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.073862},"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":"11cd88faaf37","ts":"2026-09-15T16:26:10+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3278,"target":5.5297,"target_label":"premarket_high","reward_risk":2.24,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":2.01},"price":5.39,"vwap":5.3894,"ext_from_open_pct":-1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":0.0494,"volatility":"medium"},"price":5.39,"volume":{"bars":176,"last_bar_volume":59883.0,"baseline_avg":34567.7,"bar_rvol":1.73234,"raw_accel":-0.447701,"smooth_accel":0.248502,"accel_momentum":-0.333998,"rvol_3bar":[1.622977,3.488432,1.73234],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":9812.0,"sell_vol":6040.0,"unclassified_vol":0.0,"imbalance":0.237951,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":3.479448},"context":{"vwap":5.389386,"price_vs_vwap_pct":0.011391,"ema9":5.385867,"ema20":5.38522,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.882883,"dist_to_hod_atr":11.175969,"atr":0.014316,"spread_atr":0.698498,"own_change_pct":0.27907,"rel_strength_pct":{"SPY":0.210388,"IWM":0.134978}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.412212},"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":"2384147796a6","ts":"2026-09-15T16:26:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.67,"target":10.16,"target_label":"clear air (typical 60-min move)","reward_risk":0.81,"pos_in_5d_range_pct":508.1,"room_to_5d_high_atr":-5.88},"price":9.94,"vwap":9.6253,"ext_from_open_pct":5.19,"max_ext_allowed_pct":5.0,"volume_pace":4.082,"trend":"flat","recent_slope_pct":0.2049,"volatility":"low"},"price":9.94,"volume":{"bars":176,"last_bar_volume":27458.0,"baseline_avg":4718.75,"bar_rvol":5.818914,"raw_accel":4.204321,"smooth_accel":4.341645,"accel_momentum":4.620574,"rvol_3bar":[0.857375,1.181728,5.818914],"trend_3bar":"ACCELERATING","projected_rvol":1.009589},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":11885.0,"sell_vol":8070.0,"unclassified_vol":0.0,"imbalance":0.19118,"bid":9.93,"ask":9.95,"spread_pct":0.201207,"quote_size_imbalance":null,"quote_age_s":0.711357},"context":{"vwap":9.625115,"price_vs_vwap_pct":3.271492,"ema9":9.870352,"ema20":9.838439,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.54902,"dist_to_hod_atr":5.350948,"atr":0.04859,"spread_atr":0.411611,"own_change_pct":0.739086,"rel_strength_pct":{"SPY":0.670404,"IWM":0.594994}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.112461},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"be8907e96648","ts":"2026-09-15T16:26:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 105.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 94931 sh","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9465,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":1.438,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":5.96,"volume":{"bars":176,"last_bar_volume":49700.0,"baseline_avg":49360.6,"bar_rvol":1.006876,"raw_accel":0.271197,"smooth_accel":0.293583,"accel_momentum":0.26893,"rvol_3bar":[2.668642,0.78814,1.006876],"trend_3bar":"MIXED","projected_rvol":0.869844},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":21552.0,"sell_vol":21887.0,"unclassified_vol":0.0,"imbalance":-0.007712,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.160503},"context":{"vwap":5.946459,"price_vs_vwap_pct":0.227712,"ema9":5.948837,"ema20":5.945729,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.600821,"atr":0.01964,"spread_atr":0.509166,"own_change_pct":0.16835,"rel_strength_pct":{"SPY":0.099668,"IWM":0.024258}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.007765},"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":"3648dbbd23e2","ts":"2026-09-15T16:26:15+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1210.0s, plan says PASS; stop 8.23, target 8.59 (premarket_high), R:R 0.87; target 0.17 away > ~0.15 reachable in 209 min","plan":{"state":"PASS","setup":"","stop":8.2324,"target":8.59,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.85},"price":8.4236,"vwap":8.3551,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":-0.0223,"volatility":"high"},"price":8.4236,"volume":{"bars":176,"last_bar_volume":83652.0,"baseline_avg":65355.05,"bar_rvol":1.279962,"raw_accel":-0.322766,"smooth_accel":0.144631,"accel_momentum":-0.059311,"rvol_3bar":[0.884637,1.985956,1.279962],"trend_3bar":"MIXED","projected_rvol":2.908237},"flow":{"window_s":30,"trades":189,"trade_rate":6.3,"buy_vol":44322.0,"sell_vol":12195.0,"unclassified_vol":0.0,"imbalance":0.568448,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.198483},"context":{"vwap":8.354843,"price_vs_vwap_pct":0.822958,"ema9":8.421304,"ema20":8.399195,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-2.108077,"dist_to_hod_atr":5.869737,"atr":0.030904,"spread_atr":0.32358,"own_change_pct":0.595238,"rel_strength_pct":{"SPY":0.526556,"IWM":0.451146}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.727593},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dc53f7413f43","ts":"2026-09-15T16:26:20+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1848,"target":9.48,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":4.6,"room_to_5d_high_atr":3.32},"price":9.3377,"vwap":9.3452,"ext_from_open_pct":-0.13,"max_ext_allowed_pct":3.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":-0.0187,"volatility":"high"},"price":9.3377,"volume":{"bars":176,"last_bar_volume":6167.0,"baseline_avg":4911.4,"bar_rvol":1.25565,"raw_accel":-0.541282,"smooth_accel":1.276115,"accel_momentum":0.252193,"rvol_3bar":[1.103211,2.976773,1.25565],"trend_3bar":"MIXED","projected_rvol":0.306023},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":131.0,"sell_vol":515.0,"unclassified_vol":0.0,"imbalance":-0.594427,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":2.284907},"context":{"vwap":9.345185,"price_vs_vwap_pct":-0.080091,"ema9":9.332135,"ema20":9.322728,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-2.017838,"dist_to_hod_atr":8.602339,"atr":0.022354,"spread_atr":0.44734,"own_change_pct":0.203841,"rel_strength_pct":{"SPY":0.135159,"IWM":0.059749}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.746393},"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":"b0013cef17d2","ts":"2026-09-15T16:26:25+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 115.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.97; target 0.08 away > ~0.07 reachable in 209 min","plan":{"state":"PASS","setup":"","stop":5.8666,"target":6.03,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.9497,"vwap":5.9465,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":1.437,"trend":"flat","recent_slope_pct":-0.0262,"volatility":"medium"},"price":5.9497,"volume":{"bars":176,"last_bar_volume":49700.0,"baseline_avg":49360.6,"bar_rvol":1.006876,"raw_accel":0.271197,"smooth_accel":0.293583,"accel_momentum":0.26893,"rvol_3bar":[2.668642,0.78814,1.006876],"trend_3bar":"MIXED","projected_rvol":0.588615},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":9176.0,"sell_vol":13850.0,"unclassified_vol":0.0,"imbalance":-0.202988,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":4.964379},"context":{"vwap":5.946459,"price_vs_vwap_pct":0.0545,"ema9":5.948837,"ema20":5.945729,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.981878,"dist_to_hod_atr":6.125262,"atr":0.01964,"spread_atr":0.509166,"own_change_pct":0.16835,"rel_strength_pct":{"SPY":0.099668,"IWM":0.024258}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.204384},"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":"cb2700515ba8","ts":"2026-09-15T16:26:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1971,"target":9.48,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.35,"vwap":9.3452,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":0.0076,"volatility":"high"},"price":9.35,"volume":{"bars":176,"last_bar_volume":6167.0,"baseline_avg":4911.4,"bar_rvol":1.25565,"raw_accel":-0.541282,"smooth_accel":1.276115,"accel_momentum":0.252193,"rvol_3bar":[1.103211,2.976773,1.25565],"trend_3bar":"MIXED","projected_rvol":0.466181},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":484.0,"sell_vol":615.0,"unclassified_vol":0.0,"imbalance":-0.119199,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":2.181637},"context":{"vwap":9.345185,"price_vs_vwap_pct":0.051527,"ema9":9.332135,"ema20":9.322728,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.888772,"dist_to_hod_atr":8.052112,"atr":0.022354,"spread_atr":0.44734,"own_change_pct":0.203841,"rel_strength_pct":{"SPY":0.135159,"IWM":0.059749}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.149673},"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":"6d45ceba959b","ts":"2026-09-15T16:26:25+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1220.0s, plan says WATCH; stop 8.27, target 8.59 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 8.46; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.2738,"target":8.59,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.8},"price":8.465,"vwap":8.3554,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":0.0758,"volatility":"high"},"price":8.465,"volume":{"bars":176,"last_bar_volume":83652.0,"baseline_avg":65355.05,"bar_rvol":1.279962,"raw_accel":-0.322766,"smooth_accel":0.144631,"accel_momentum":-0.059311,"rvol_3bar":[0.884637,1.985956,1.279962],"trend_3bar":"MIXED","projected_rvol":2.542261},"flow":{"window_s":30,"trades":232,"trade_rate":7.733333,"buy_vol":46516.0,"sell_vol":23288.0,"unclassified_vol":0.0,"imbalance":0.33276,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.325959},"context":{"vwap":8.354843,"price_vs_vwap_pct":1.318479,"ema9":8.421304,"ema20":8.399195,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.626961,"dist_to_hod_atr":4.530117,"atr":0.030904,"spread_atr":0.32358,"own_change_pct":0.595238,"rel_strength_pct":{"SPY":0.526556,"IWM":0.451146}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.425921},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1e2bba8bd3e5","ts":"2026-09-15T16:26:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 120.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 94931 sh","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9465,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.437,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":5.96,"volume":{"bars":176,"last_bar_volume":49700.0,"baseline_avg":49360.6,"bar_rvol":1.006876,"raw_accel":0.271197,"smooth_accel":0.293583,"accel_momentum":0.26893,"rvol_3bar":[2.668642,0.78814,1.006876],"trend_3bar":"MIXED","projected_rvol":0.500278},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":3826.0,"sell_vol":8521.0,"unclassified_vol":0.0,"imbalance":-0.380254,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":2.711533},"context":{"vwap":5.946459,"price_vs_vwap_pct":0.227712,"ema9":5.948837,"ema20":5.945729,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.600821,"atr":0.01964,"spread_atr":0.509166,"own_change_pct":0.16835,"rel_strength_pct":{"SPY":0.099668,"IWM":0.024258}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.382869},"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":"998b66c4398e","ts":"2026-09-15T16:26:30+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.35 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1921,"target":9.48,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":4.9,"room_to_5d_high_atr":3.31},"price":9.345,"vwap":9.3452,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":-0.0031,"volatility":"high"},"price":9.345,"volume":{"bars":176,"last_bar_volume":6167.0,"baseline_avg":4911.4,"bar_rvol":1.25565,"raw_accel":-0.541282,"smooth_accel":1.276115,"accel_momentum":0.252193,"rvol_3bar":[1.103211,2.976773,1.25565],"trend_3bar":"MIXED","projected_rvol":0.40518},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":464.0,"sell_vol":531.0,"unclassified_vol":0.0,"imbalance":-0.067337,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":1.211125},"context":{"vwap":9.345185,"price_vs_vwap_pct":-0.001976,"ema9":9.332135,"ema20":9.322728,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.941238,"dist_to_hod_atr":8.275781,"atr":0.022354,"spread_atr":0.44734,"own_change_pct":0.203841,"rel_strength_pct":{"SPY":0.135159,"IWM":0.059749}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.084551},"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":"8b63270c6525","ts":"2026-09-15T16:26:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says WATCH; stop 8.36, target 8.56 (premarket_high), R:R 1.15; R:R 1.15 < 2.0 at 8.46; breakout: 1-min close > 8.49 on >= 1925 sh","plan":{"state":"WATCH","setup":"","stop":8.3649,"target":8.5586,"target_label":"premarket_high","reward_risk":1.15,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.87},"price":8.455,"vwap":8.3351,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":0.0335,"volatility":"medium"},"price":8.455,"volume":{"bars":176,"last_bar_volume":160.0,"baseline_avg":1204.2,"bar_rvol":0.132868,"raw_accel":-0.714286,"smooth_accel":-0.3251,"accel_momentum":-2.857859,"rvol_3bar":[2.292882,0.467993,0.132868],"trend_3bar":"DECELERATING","projected_rvol":1.805111},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":867.0,"sell_vol":382.0,"unclassified_vol":0.0,"imbalance":0.388311,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":1.1219},"context":{"vwap":8.33455,"price_vs_vwap_pct":1.445188,"ema9":8.441603,"ema20":8.439656,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":2.840777,"atr":0.015841,"spread_atr":0.631284,"own_change_pct":0.123229,"rel_strength_pct":{"SPY":0.054546,"IWM":-0.020864}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.051594},"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":"ae37140067c0","ts":"2026-09-15T16:26:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.199,"target":9.48,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":3.3},"price":9.3519,"vwap":9.3452,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.0117,"volatility":"high"},"price":9.3519,"volume":{"bars":176,"last_bar_volume":6167.0,"baseline_avg":4911.4,"bar_rvol":1.25565,"raw_accel":-0.541282,"smooth_accel":1.276115,"accel_momentum":0.252193,"rvol_3bar":[1.103211,2.976773,1.25565],"trend_3bar":"MIXED","projected_rvol":2.594779},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":6826.0,"sell_vol":520.0,"unclassified_vol":0.0,"imbalance":0.858426,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.296922},"context":{"vwap":9.345185,"price_vs_vwap_pct":0.071859,"ema9":9.332135,"ema20":9.322728,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.868835,"dist_to_hod_atr":7.967117,"atr":0.022354,"spread_atr":0.44734,"own_change_pct":0.203841,"rel_strength_pct":{"SPY":0.135159,"IWM":0.059749}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.077883},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7c6417090d7b","ts":"2026-09-15T16:26:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 130.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.90; target 0.08 away > ~0.07 reachable in 208 min","plan":{"state":"PASS","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9465,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.435,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"medium"},"price":5.955,"volume":{"bars":176,"last_bar_volume":49700.0,"baseline_avg":49360.6,"bar_rvol":1.006876,"raw_accel":0.271197,"smooth_accel":0.293583,"accel_momentum":0.26893,"rvol_3bar":[2.668642,0.78814,1.006876],"trend_3bar":"MIXED","projected_rvol":0.395569},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":1802.0,"sell_vol":1009.0,"unclassified_vol":0.0,"imbalance":0.282106,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.981922},"context":{"vwap":5.946459,"price_vs_vwap_pct":0.143629,"ema9":5.948837,"ema20":5.945729,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.855404,"atr":0.01964,"spread_atr":0.509166,"own_change_pct":0.16835,"rel_strength_pct":{"SPY":0.099668,"IWM":0.024258}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.284046},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"17ffd1aa35ca","ts":"2026-09-15T16:26:40+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1873,"target":9.48,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":4.7,"room_to_5d_high_atr":3.32},"price":9.3402,"vwap":9.3452,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":-0.0134,"volatility":"high"},"price":9.3402,"volume":{"bars":176,"last_bar_volume":6167.0,"baseline_avg":4911.4,"bar_rvol":1.25565,"raw_accel":-0.541282,"smooth_accel":1.276115,"accel_momentum":0.252193,"rvol_3bar":[1.103211,2.976773,1.25565],"trend_3bar":"MIXED","projected_rvol":2.705949},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":7126.0,"sell_vol":1645.0,"unclassified_vol":0.0,"imbalance":0.6249,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":3.487103},"context":{"vwap":9.345185,"price_vs_vwap_pct":-0.05334,"ema9":9.332135,"ema20":9.322728,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.991605,"dist_to_hod_atr":8.490504,"atr":0.022354,"spread_atr":0.44734,"own_change_pct":0.203841,"rel_strength_pct":{"SPY":0.135159,"IWM":0.059749}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.784656},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f75bc6dc577c","ts":"2026-09-15T16:26:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 135.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 94931 sh","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9465,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.435,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":5.96,"volume":{"bars":176,"last_bar_volume":49700.0,"baseline_avg":49360.6,"bar_rvol":1.006876,"raw_accel":0.271197,"smooth_accel":0.293583,"accel_momentum":0.26893,"rvol_3bar":[2.668642,0.78814,1.006876],"trend_3bar":"MIXED","projected_rvol":0.35999},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1785.0,"sell_vol":808.0,"unclassified_vol":0.0,"imbalance":0.376784,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.773749},"context":{"vwap":5.946459,"price_vs_vwap_pct":0.227712,"ema9":5.948837,"ema20":5.945729,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.600821,"atr":0.01964,"spread_atr":0.509166,"own_change_pct":0.16835,"rel_strength_pct":{"SPY":0.099668,"IWM":0.024258}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.379374},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f7d42068150b","ts":"2026-09-15T16:26:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 140.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.95; target 0.08 away > ~0.07 reachable in 208 min","plan":{"state":"PASS","setup":"","stop":5.8678,"target":6.03,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":102.8,"room_to_5d_high_atr":-0.06},"price":5.9509,"vwap":5.9465,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":1.434,"trend":"flat","recent_slope_pct":-0.0222,"volatility":"medium"},"price":5.9509,"volume":{"bars":176,"last_bar_volume":49700.0,"baseline_avg":49360.6,"bar_rvol":1.006876,"raw_accel":0.271197,"smooth_accel":0.293583,"accel_momentum":0.26893,"rvol_3bar":[2.668642,0.78814,1.006876],"trend_3bar":"MIXED","projected_rvol":0.355133},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1043.0,"sell_vol":1883.0,"unclassified_vol":0.0,"imbalance":-0.287081,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":1.541331},"context":{"vwap":5.946459,"price_vs_vwap_pct":0.07468,"ema9":5.948837,"ema20":5.945729,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.962109,"dist_to_hod_atr":6.064162,"atr":0.01964,"spread_atr":0.509166,"own_change_pct":0.16835,"rel_strength_pct":{"SPY":0.099668,"IWM":0.024258}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.289055},"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":"4d7b45cff7b2","ts":"2026-09-15T16:26:50+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1245.0s, plan says PASS; stop 8.25, target 8.59 (premarket_high), R:R 0.78; target 0.15 away > ~0.15 reachable in 208 min","plan":{"state":"PASS","setup":"","stop":8.2506,"target":8.59,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.83},"price":8.4418,"vwap":8.3557,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0209,"volatility":"high"},"price":8.4418,"volume":{"bars":176,"last_bar_volume":83652.0,"baseline_avg":65355.05,"bar_rvol":1.279962,"raw_accel":-0.322766,"smooth_accel":0.144631,"accel_momentum":-0.059311,"rvol_3bar":[0.884637,1.985956,1.279962],"trend_3bar":"MIXED","projected_rvol":2.284928},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":23675.0,"sell_vol":31883.0,"unclassified_vol":0.0,"imbalance":-0.147737,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.808654},"context":{"vwap":8.354843,"price_vs_vwap_pct":1.040796,"ema9":8.421304,"ema20":8.399195,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.896572,"dist_to_hod_atr":5.280822,"atr":0.030904,"spread_atr":0.32358,"own_change_pct":0.595238,"rel_strength_pct":{"SPY":0.526556,"IWM":0.451146}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.189098},"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":"bc910684c29c","ts":"2026-09-15T16:26:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1971,"target":9.48,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.35,"vwap":9.3452,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.0076,"volatility":"high"},"price":9.35,"volume":{"bars":176,"last_bar_volume":6167.0,"baseline_avg":4911.4,"bar_rvol":1.25565,"raw_accel":-0.541282,"smooth_accel":1.276115,"accel_momentum":0.252193,"rvol_3bar":[1.103211,2.976773,1.25565],"trend_3bar":"MIXED","projected_rvol":2.173644},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":7679.0,"sell_vol":1153.0,"unclassified_vol":0.0,"imbalance":0.738904,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":2.781478},"context":{"vwap":9.345185,"price_vs_vwap_pct":0.051527,"ema9":9.332135,"ema20":9.322728,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.888772,"dist_to_hod_atr":8.052112,"atr":0.022354,"spread_atr":0.44734,"own_change_pct":0.203841,"rel_strength_pct":{"SPY":0.135159,"IWM":0.059749}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.927805},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"44458d51dee5","ts":"2026-09-15T16:26:55+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1250.0s, plan says WATCH; stop 8.27, target 8.59 (premarket_high), R:R 0.66; R:R 0.66 < 2.0 at 8.46; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.46","plan":{"state":"WATCH","setup":"","stop":8.2731,"target":8.59,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.8},"price":8.4643,"vwap":8.3558,"ext_from_open_pct":1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.0741,"volatility":"high"},"price":8.4643,"volume":{"bars":176,"last_bar_volume":83652.0,"baseline_avg":65355.05,"bar_rvol":1.279962,"raw_accel":-0.322766,"smooth_accel":0.144631,"accel_momentum":-0.059311,"rvol_3bar":[0.884637,1.985956,1.279962],"trend_3bar":"MIXED","projected_rvol":2.085387},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":23887.0,"sell_vol":31817.0,"unclassified_vol":0.0,"imbalance":-0.14236,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.371047},"context":{"vwap":8.354843,"price_vs_vwap_pct":1.3101,"ema9":8.421304,"ema20":8.399195,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.635096,"dist_to_hod_atr":4.552768,"atr":0.030904,"spread_atr":0.32358,"own_change_pct":0.595238,"rel_strength_pct":{"SPY":0.526556,"IWM":0.451146}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.182215},"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":"6d2d319230cf","ts":"2026-09-15T16:27:00+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 175.0s, plan says PASS; stop 8.35, target 8.56 (premarket_high), R:R 1.29; target 0.12 away > ~0.11 reachable in 208 min","plan":{"state":"PASS","setup":"","stop":8.3521,"target":8.5586,"target_label":"premarket_high","reward_risk":1.29,"pos_in_5d_range_pct":62.3,"room_to_5d_high_atr":0.91},"price":8.4422,"vwap":8.3353,"ext_from_open_pct":1.35,"max_ext_allowed_pct":4.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0032,"volatility":"medium"},"price":8.4422,"volume":{"bars":176,"last_bar_volume":160.0,"baseline_avg":1204.2,"bar_rvol":0.132868,"raw_accel":-0.714286,"smooth_accel":-0.3251,"accel_momentum":-2.857859,"rvol_3bar":[2.292882,0.467993,0.132868],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1088.0,"sell_vol":345.0,"unclassified_vol":0.0,"imbalance":0.518493,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.173026},"context":{"vwap":8.33455,"price_vs_vwap_pct":1.291611,"ema9":8.441603,"ema20":8.439656,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.68,"dist_to_hod_atr":3.64882,"atr":0.015841,"spread_atr":0.631284,"own_change_pct":0.123229,"rel_strength_pct":{"SPY":0.063141,"IWM":0.000266}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.068891},"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":"1da307a2ec5f","ts":"2026-09-15T16:27:00+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3239,"target":5.5297,"target_label":"premarket_high","reward_risk":2.31,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":2.02},"price":5.3861,"vwap":5.3895,"ext_from_open_pct":-1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.724,"trend":"flat","recent_slope_pct":0.0349,"volatility":"medium"},"price":5.3861,"volume":{"bars":176,"last_bar_volume":59883.0,"baseline_avg":34567.7,"bar_rvol":1.73234,"raw_accel":-0.447701,"smooth_accel":0.248502,"accel_momentum":-0.333998,"rvol_3bar":[1.622977,3.488432,1.73234],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":9473.0,"sell_vol":9103.0,"unclassified_vol":0.0,"imbalance":0.019918,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":0.599617},"context":{"vwap":5.389386,"price_vs_vwap_pct":-0.060973,"ema9":5.385867,"ema20":5.38522,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.953153,"dist_to_hod_atr":11.448384,"atr":0.014316,"spread_atr":0.698498,"own_change_pct":0.27907,"rel_strength_pct":{"SPY":0.218982,"IWM":0.156107}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.034505},"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":"b1fe78b39639","ts":"2026-09-15T16:27:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.47 below VWAP $10.47","plan":{"state":"PASS","setup":"","stop":10.3179,"target":10.64,"target_label":"premarket_high","reward_risk":1.17,"pos_in_5d_range_pct":19.9,"room_to_5d_high_atr":1.74},"price":10.4661,"vwap":10.4715,"ext_from_open_pct":0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":0.0211,"volatility":"medium"},"price":10.4661,"volume":{"bars":177,"last_bar_volume":35851.0,"baseline_avg":10890.1,"bar_rvol":3.292073,"raw_accel":5.426062,"smooth_accel":-0.150238,"accel_momentum":0.337965,"rvol_3bar":[0.691746,0.482965,3.292073],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":6136.0,"sell_vol":655.0,"unclassified_vol":0.0,"imbalance":0.807098,"bid":10.54,"ask":10.55,"spread_pct":0.094832,"quote_size_imbalance":null,"quote_age_s":1.629287},"context":{"vwap":10.471526,"price_vs_vwap_pct":-0.051821,"ema9":10.472359,"ema20":10.442113,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.892562,"dist_to_hod_atr":10.033594,"atr":0.042248,"spread_atr":0.236697,"own_change_pct":1.151497,"rel_strength_pct":{"SPY":1.091409,"IWM":1.028535}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.657024},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c351f74a02f","ts":"2026-09-15T16:27:05+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1916,"target":9.48,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":4.9,"room_to_5d_high_atr":3.31},"price":9.3445,"vwap":9.3452,"ext_from_open_pct":-0.06,"max_ext_allowed_pct":4.0,"volume_pace":0.597,"trend":"flat","recent_slope_pct":0.019,"volatility":"high"},"price":9.3445,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2623.0,"sell_vol":1143.0,"unclassified_vol":0.0,"imbalance":0.39299,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.584489},"context":{"vwap":9.3452,"price_vs_vwap_pct":-0.007486,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.946485,"dist_to_hod_atr":8.448083,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.291949,"IWM":0.229075}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.870865},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"998f6eb8d575","ts":"2026-09-15T16:27:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 160.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 92392 sh","plan":{"state":"WATCH","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9465,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.432,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.96,"volume":{"bars":177,"last_bar_volume":20825.0,"baseline_avg":51127.9,"bar_rvol":0.407312,"raw_accel":-0.580986,"smooth_accel":-0.575252,"accel_momentum":-0.868835,"rvol_3bar":[0.78814,1.006876,0.407312],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":7523.0,"sell_vol":1998.0,"unclassified_vol":0.0,"imbalance":0.580296,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":9.997657},"context":{"vwap":5.946465,"price_vs_vwap_pct":0.227614,"ema9":5.949069,"ema20":5.946136,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.707515,"atr":0.019273,"spread_atr":0.518865,"own_change_pct":-0.167785,"rel_strength_pct":{"SPY":-0.227873,"IWM":-0.290748}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.236362},"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":"b3ff16485486","ts":"2026-09-15T16:27:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1972,"target":9.48,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.3501,"vwap":9.3452,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":0.031,"volatility":"high"},"price":9.3501,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2323.0,"sell_vol":18.0,"unclassified_vol":0.0,"imbalance":0.984622,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.011514},"context":{"vwap":9.3452,"price_vs_vwap_pct":0.052437,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.887723,"dist_to_hod_atr":8.193047,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.291949,"IWM":0.229075}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.181922},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08e5d7d60e22","ts":"2026-09-15T16:27:10+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3378,"target":5.5297,"target_label":"premarket_high","reward_risk":2.08,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":1.97},"price":5.4,"vwap":5.3895,"ext_from_open_pct":-1.1,"max_ext_allowed_pct":4.0,"volume_pace":0.724,"trend":"flat","recent_slope_pct":0.0458,"volatility":"medium"},"price":5.4,"volume":{"bars":177,"last_bar_volume":68950.0,"baseline_avg":33449.95,"bar_rvol":2.061289,"raw_accel":0.151412,"smooth_accel":0.582659,"accel_momentum":0.334157,"rvol_3bar":[3.488432,1.73234,2.061289],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":4172.0,"sell_vol":466.0,"unclassified_vol":0.0,"imbalance":0.799051,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":0.318632},"context":{"vwap":5.389507,"price_vs_vwap_pct":0.194684,"ema9":5.385914,"ema20":5.385303,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.702703,"dist_to_hod_atr":8.322975,"atr":0.018022,"spread_atr":0.554865,"own_change_pct":0.141303,"rel_strength_pct":{"SPY":0.081216,"IWM":0.018341}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.647075},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f15336800fad","ts":"2026-09-15T16:27:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 165.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.96; target 0.08 away > ~0.07 reachable in 208 min","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9465,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.431,"trend":"flat","recent_slope_pct":-0.0336,"volatility":"medium"},"price":5.95,"volume":{"bars":177,"last_bar_volume":20825.0,"baseline_avg":51127.9,"bar_rvol":0.407312,"raw_accel":-0.580986,"smooth_accel":-0.575252,"accel_momentum":-0.868835,"rvol_3bar":[0.78814,1.006876,0.407312],"trend_3bar":"MIXED","projected_rvol":0.160773},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":7515.0,"sell_vol":2038.0,"unclassified_vol":0.0,"imbalance":0.573328,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.574054},"context":{"vwap":5.946465,"price_vs_vwap_pct":0.059447,"ema9":5.949069,"ema20":5.946136,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.22638,"atr":0.019273,"spread_atr":0.518865,"own_change_pct":-0.167785,"rel_strength_pct":{"SPY":-0.227873,"IWM":-0.290748}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.233523},"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":"c4ab43030f20","ts":"2026-09-15T16:27:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":26.4,"room_to_5d_high_atr":1.6},"price":10.55,"vwap":10.4716,"ext_from_open_pct":1.34,"max_ext_allowed_pct":4.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":0.1807,"volatility":"medium"},"price":10.55,"volume":{"bars":177,"last_bar_volume":35851.0,"baseline_avg":10890.1,"bar_rvol":3.292073,"raw_accel":5.426062,"smooth_accel":-0.150238,"accel_momentum":0.337965,"rvol_3bar":[0.691746,0.482965,3.292073],"trend_3bar":"MIXED","projected_rvol":1.05527},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":4429.0,"sell_vol":609.0,"unclassified_vol":0.0,"imbalance":0.758237,"bid":10.54,"ask":10.55,"spread_pct":0.094832,"quote_size_imbalance":null,"quote_age_s":1.971379},"context":{"vwap":10.471526,"price_vs_vwap_pct":0.749399,"ema9":10.472359,"ema20":10.442113,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.12213,"dist_to_hod_atr":8.047705,"atr":0.042248,"spread_atr":0.236697,"own_change_pct":1.151497,"rel_strength_pct":{"SPY":1.091409,"IWM":1.028535}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.496173},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4e3b4dd5f603","ts":"2026-09-15T16:27:20+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1874,"target":9.48,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":4.7,"room_to_5d_high_atr":3.32},"price":9.3403,"vwap":9.3452,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":0.0101,"volatility":"high"},"price":9.3403,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":0.154356},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1510.0,"sell_vol":163.0,"unclassified_vol":0.0,"imbalance":0.80514,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":6.943991},"context":{"vwap":9.3452,"price_vs_vwap_pct":-0.052429,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.990556,"dist_to_hod_atr":8.639361,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.291949,"IWM":0.229075}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.784191},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2d53ff47a834","ts":"2026-09-15T16:27:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 200.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.87; R:R 0.87 < 2.0 at 8.48; breakout: 1-min close > 8.49 on >= 1962 sh","plan":{"state":"WATCH","setup":"","stop":8.3899,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.8},"price":8.48,"vwap":8.3358,"ext_from_open_pct":1.8,"max_ext_allowed_pct":4.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":0.0647,"volatility":"medium"},"price":8.48,"volume":{"bars":177,"last_bar_volume":1533.0,"baseline_avg":1190.2,"bar_rvol":1.288019,"raw_accel":4.152075,"smooth_accel":-0.669648,"accel_momentum":-0.344548,"rvol_3bar":[0.467993,0.132868,1.288019],"trend_3bar":"MIXED","projected_rvol":1.837002},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":813.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":0.778993,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":3.110991},"context":{"vwap":8.335262,"price_vs_vwap_pct":1.736453,"ema9":8.441723,"ema20":8.439898,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.235294,"dist_to_hod_atr":1.214068,"atr":0.016474,"spread_atr":0.607034,"own_change_pct":0.107908,"rel_strength_pct":{"SPY":0.04782,"IWM":-0.015054}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.003358},"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":"78533743b2c1","ts":"2026-09-15T16:27:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says PASS; stop 8.36, target 8.56 (premarket_high), R:R 1.23; target 0.11 away > ~0.11 reachable in 208 min","plan":{"state":"PASS","setup":"","stop":8.3577,"target":8.5586,"target_label":"premarket_high","reward_risk":1.23,"pos_in_5d_range_pct":63.0,"room_to_5d_high_atr":0.89},"price":8.4478,"vwap":8.3357,"ext_from_open_pct":1.41,"max_ext_allowed_pct":4.0,"volume_pace":0.901,"trend":"flat","recent_slope_pct":-0.0115,"volatility":"medium"},"price":8.4478,"volume":{"bars":177,"last_bar_volume":1533.0,"baseline_avg":1190.2,"bar_rvol":1.288019,"raw_accel":4.152075,"smooth_accel":-0.669648,"accel_momentum":-0.344548,"rvol_3bar":[0.467993,0.132868,1.288019],"trend_3bar":"MIXED","projected_rvol":1.540917},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":813.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":0.773173,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":1.434617},"context":{"vwap":8.335262,"price_vs_vwap_pct":1.350142,"ema9":8.441723,"ema20":8.439898,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.614118,"dist_to_hod_atr":3.168717,"atr":0.016474,"spread_atr":0.607034,"own_change_pct":0.107908,"rel_strength_pct":{"SPY":0.04782,"IWM":-0.015054}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.995862},"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":"9f090d06946b","ts":"2026-09-15T16:27:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1923,"target":9.48,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":4.9,"room_to_5d_high_atr":3.31},"price":9.3452,"vwap":9.3452,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":0.0205,"volatility":"high"},"price":9.3452,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":0.114382},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":135.0,"sell_vol":154.0,"unclassified_vol":0.0,"imbalance":-0.065744,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":4.009544},"context":{"vwap":9.3452,"price_vs_vwap_pct":4e-06,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.93914,"dist_to_hod_atr":8.416204,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.291949,"IWM":0.229075}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.145689},"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":"afcb205065f6","ts":"2026-09-15T16:27:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 185.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.84; R:R 0.84 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 92392 sh","plan":{"state":"WATCH","setup":"","stop":5.8768,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.0,"room_to_5d_high_atr":-0.09},"price":5.9599,"vwap":5.9465,"ext_from_open_pct":0.84,"max_ext_allowed_pct":4.0,"volume_pace":1.429,"trend":"flat","recent_slope_pct":-0.0003,"volatility":"medium"},"price":5.9599,"volume":{"bars":177,"last_bar_volume":20825.0,"baseline_avg":51127.9,"bar_rvol":0.407312,"raw_accel":-0.580986,"smooth_accel":-0.575252,"accel_momentum":-0.868835,"rvol_3bar":[0.78814,1.006876,0.407312],"trend_3bar":"MIXED","projected_rvol":0.268738},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":5329.0,"sell_vol":1466.0,"unclassified_vol":0.0,"imbalance":0.568506,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":2.77999},"context":{"vwap":5.946465,"price_vs_vwap_pct":0.225932,"ema9":5.949069,"ema20":5.946136,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.813839,"dist_to_hod_atr":5.712704,"atr":0.019273,"spread_atr":0.518865,"own_change_pct":-0.167785,"rel_strength_pct":{"SPY":-0.227873,"IWM":-0.290748}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.231559},"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":"bf225c34fad1","ts":"2026-09-15T16:27:40+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.35 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.1921,"target":9.48,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":4.9,"room_to_5d_high_atr":3.31},"price":9.345,"vwap":9.3452,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":0.0201,"volatility":"high"},"price":9.345,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":0.103003},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":187.0,"sell_vol":157.0,"unclassified_vol":0.0,"imbalance":0.087209,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":2.301287},"context":{"vwap":9.3452,"price_vs_vwap_pct":-0.002136,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.941238,"dist_to_hod_atr":8.425312,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.291949,"IWM":0.229075}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.193256},"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":"db93cb28eaa4","ts":"2026-09-15T16:27:45+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8834,"target":12.59,"target_label":"prev_day_high","reward_risk":2.34,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":2.12},"price":12.095,"vwap":12.0902,"ext_from_open_pct":-3.16,"max_ext_allowed_pct":3.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":12.095,"volume":{"bars":177,"last_bar_volume":192.0,"baseline_avg":1166.0,"bar_rvol":0.164666,"raw_accel":-0.341338,"smooth_accel":-0.840375,"accel_momentum":-0.725717,"rvol_3bar":[0.292776,0.244581,0.164666],"trend_3bar":"DECELERATING","projected_rvol":0.240137},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":104.0,"sell_vol":103.0,"unclassified_vol":0.0,"imbalance":0.004831,"bid":12.07,"ask":12.12,"spread_pct":0.413394,"quote_size_imbalance":null,"quote_age_s":3.911426},"context":{"vwap":12.090199,"price_vs_vwap_pct":0.039709,"ema9":12.063837,"ema20":12.031749,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.235946,"dist_to_hod_atr":10.60095,"atr":0.050467,"spread_atr":0.990743,"own_change_pct":0.863834,"rel_strength_pct":{"SPY":0.803746,"IWM":0.740871}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.000795},"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":"0ce6a916cd33","ts":"2026-09-15T16:27:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1974,"target":9.48,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.3503,"vwap":9.3452,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.595,"trend":"flat","recent_slope_pct":0.0315,"volatility":"high"},"price":9.3503,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":0.092086},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":85.0,"sell_vol":157.0,"unclassified_vol":0.0,"imbalance":-0.297521,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.044235},"context":{"vwap":9.3452,"price_vs_vwap_pct":0.054577,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.885624,"dist_to_hod_atr":8.183938,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.291949,"IWM":0.229075}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.659306},"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":"6bae2ba36ab9","ts":"2026-09-15T16:27:55+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.34 below VWAP $9.35","plan":{"state":"PASS","setup":"","stop":9.19,"target":9.48,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":4.8,"room_to_5d_high_atr":3.31},"price":9.3429,"vwap":9.3452,"ext_from_open_pct":-0.08,"max_ext_allowed_pct":4.0,"volume_pace":0.594,"trend":"flat","recent_slope_pct":0.0156,"volatility":"high"},"price":9.3429,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":0.164503},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":390.0,"sell_vol":111.0,"unclassified_vol":0.0,"imbalance":0.556886,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.087891},"context":{"vwap":9.3452,"price_vs_vwap_pct":-0.024608,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.963274,"dist_to_hod_atr":8.520951,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.291949,"IWM":0.229075}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.23406},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8bbf7659ee30","ts":"2026-09-15T16:27:55+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.39 below VWAP $5.39","plan":{"state":"PASS","setup":"","stop":5.3244,"target":5.5297,"target_label":"premarket_high","reward_risk":2.3,"pos_in_5d_range_pct":6.8,"room_to_5d_high_atr":2.02},"price":5.3866,"vwap":5.3895,"ext_from_open_pct":-1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":-0.0039,"volatility":"medium"},"price":5.3866,"volume":{"bars":177,"last_bar_volume":68950.0,"baseline_avg":33449.95,"bar_rvol":2.061289,"raw_accel":0.151412,"smooth_accel":0.582659,"accel_momentum":0.334157,"rvol_3bar":[3.488432,1.73234,2.061289],"trend_3bar":"MIXED","projected_rvol":0.399414},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":4190.0,"sell_vol":3150.0,"unclassified_vol":0.0,"imbalance":0.141689,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":1.048819},"context":{"vwap":5.389507,"price_vs_vwap_pct":-0.053947,"ema9":5.385914,"ema20":5.385303,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.944144,"dist_to_hod_atr":9.066495,"atr":0.018022,"spread_atr":0.554865,"own_change_pct":0.141303,"rel_strength_pct":{"SPY":0.081216,"IWM":0.018341}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.292063},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bc2d3b8400a2","ts":"2026-09-15T16:28:00+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 235.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.87; R:R 0.87 < 2.0 at 8.48; breakout: 1-min close > 8.49 on >= 1962 sh","plan":{"state":"WATCH","setup":"","stop":8.3899,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.8},"price":8.48,"vwap":8.3358,"ext_from_open_pct":1.8,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0647,"volatility":"medium"},"price":8.48,"volume":{"bars":177,"last_bar_volume":1533.0,"baseline_avg":1190.2,"bar_rvol":1.288019,"raw_accel":4.152075,"smooth_accel":-0.669648,"accel_momentum":-0.344548,"rvol_3bar":[0.467993,0.132868,1.288019],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":20.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":3.32834},"context":{"vwap":8.335262,"price_vs_vwap_pct":1.736453,"ema9":8.441723,"ema20":8.439898,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.235294,"dist_to_hod_atr":1.214068,"atr":0.016474,"spread_atr":0.607034,"own_change_pct":0.107908,"rel_strength_pct":{"SPY":0.059055,"IWM":0.018351}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.288019},"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":"a40a321091f8","ts":"2026-09-15T16:28:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.1971,"target":9.48,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.35,"vwap":9.3452,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.594,"trend":"flat","recent_slope_pct":0.0308,"volatility":"high"},"price":9.35,"volume":{"bars":177,"last_bar_volume":11198.0,"baseline_avg":5053.25,"bar_rvol":2.216,"raw_accel":0.815794,"smooth_accel":1.191564,"accel_momentum":-0.084552,"rvol_3bar":[2.976773,1.25565,2.216],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":463.0,"sell_vol":111.0,"unclassified_vol":0.0,"imbalance":0.61324,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.472758},"context":{"vwap":9.3452,"price_vs_vwap_pct":0.051367,"ema9":9.335708,"ema20":9.325325,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.888772,"dist_to_hod_atr":8.197601,"atr":0.021958,"spread_atr":0.455422,"own_change_pct":0.352037,"rel_strength_pct":{"SPY":0.303184,"IWM":0.26248}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.358941},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ef920515ec41","ts":"2026-09-15T16:28:00+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1315.0s, plan says PASS; stop 8.25, target 8.59 (premarket_high), R:R 0.80; target 0.15 away > ~0.15 reachable in 207 min","plan":{"state":"PASS","setup":"","stop":8.2463,"target":8.59,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.84},"price":8.4375,"vwap":8.3563,"ext_from_open_pct":0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0159,"volatility":"high"},"price":8.4375,"volume":{"bars":177,"last_bar_volume":144111.0,"baseline_avg":66045.45,"bar_rvol":2.181997,"raw_accel":0.722744,"smooth_accel":0.39008,"accel_momentum":0.245449,"rvol_3bar":[1.985956,1.279962,2.181997],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":170,"trade_rate":5.666667,"buy_vol":24877.0,"sell_vol":24108.0,"unclassified_vol":0.0,"imbalance":0.015699,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.475159},"context":{"vwap":8.355847,"price_vs_vwap_pct":0.97719,"ema9":8.426423,"ema20":8.403739,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.946543,"dist_to_hod_atr":5.169119,"atr":0.032404,"spread_atr":0.308604,"own_change_pct":0.315903,"rel_strength_pct":{"SPY":0.26705,"IWM":0.226346}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.034254},"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":"ded2a3616b5f","ts":"2026-09-15T16:28:00+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.3354,"target":5.5297,"target_label":"premarket_high","reward_risk":2.12,"pos_in_5d_range_pct":8.8,"room_to_5d_high_atr":1.98},"price":5.3976,"vwap":5.3895,"ext_from_open_pct":-1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.721,"trend":"flat","recent_slope_pct":0.0369,"volatility":"medium"},"price":5.3976,"volume":{"bars":177,"last_bar_volume":68950.0,"baseline_avg":33449.95,"bar_rvol":2.061289,"raw_accel":0.151412,"smooth_accel":0.582659,"accel_momentum":0.334157,"rvol_3bar":[3.488432,1.73234,2.061289],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":4220.0,"sell_vol":3154.0,"unclassified_vol":0.0,"imbalance":0.144562,"bid":5.39,"ask":5.4,"spread_pct":0.185357,"quote_size_imbalance":null,"quote_age_s":1.557507},"context":{"vwap":5.389507,"price_vs_vwap_pct":0.150153,"ema9":5.385914,"ema20":5.385303,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.745946,"dist_to_hod_atr":8.456143,"atr":0.018022,"spread_atr":0.554865,"own_change_pct":0.141303,"rel_strength_pct":{"SPY":0.09245,"IWM":0.051746}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.297984},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bd44ee018fc1","ts":"2026-09-15T16:28:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says PASS; stop 10.33, target 10.64 (premarket_high), R:R 1.10; R:R 1.10 < 2.0 at 10.48; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.3288,"target":10.64,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":1.72},"price":10.477,"vwap":10.4717,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.0307,"volatility":"medium"},"price":10.477,"volume":{"bars":178,"last_bar_volume":14850.0,"baseline_avg":12344.95,"bar_rvol":1.202921,"raw_accel":-0.585786,"smooth_accel":0.158382,"accel_momentum":0.308621,"rvol_3bar":[0.482965,3.292073,1.202921],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":3078.0,"sell_vol":3641.0,"unclassified_vol":0.0,"imbalance":-0.083792,"bid":10.57,"ask":10.58,"spread_pct":0.094563,"quote_size_imbalance":null,"quote_age_s":3.705313},"context":{"vwap":10.471722,"price_vs_vwap_pct":0.0504,"ema9":10.484567,"ema20":10.450807,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.79247,"dist_to_hod_atr":8.719322,"atr":0.047366,"spread_atr":0.211122,"own_change_pct":0.701721,"rel_strength_pct":{"SPY":0.652868,"IWM":0.612164}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.100795},"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":"8ca6120ce54d","ts":"2026-09-15T16:28:10+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1325.0s, plan says WATCH; stop 8.26, target 8.59 (premarket_high), R:R 0.71; R:R 0.71 < 2.0 at 8.45; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.49","plan":{"state":"WATCH","setup":"","stop":8.2631,"target":8.59,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":7.0,"room_to_5d_high_atr":3.81},"price":8.4543,"vwap":8.3565,"ext_from_open_pct":1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0463,"volatility":"high"},"price":8.4543,"volume":{"bars":178,"last_bar_volume":66884.0,"baseline_avg":72249.6,"bar_rvol":0.925735,"raw_accel":-0.535886,"smooth_accel":0.184177,"accel_momentum":-0.205903,"rvol_3bar":[1.279962,2.181997,0.925735],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3246.0,"sell_vol":22707.0,"unclassified_vol":0.0,"imbalance":-0.749856,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.443694},"context":{"vwap":8.356312,"price_vs_vwap_pct":1.172624,"ema9":8.428639,"ema20":8.406954,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.751307,"dist_to_hod_atr":4.48558,"atr":0.033597,"spread_atr":0.29765,"own_change_pct":-0.005926,"rel_strength_pct":{"SPY":-0.054779,"IWM":-0.095483}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.694168},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"53a5b67c7dcb","ts":"2026-09-15T16:28:15+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1330.0s, plan says PASS; stop 8.25, target 8.59 (premarket_high), R:R 0.79; target 0.15 away > ~0.15 reachable in 207 min","plan":{"state":"PASS","setup":"","stop":8.2486,"target":8.59,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.83},"price":8.4398,"vwap":8.3565,"ext_from_open_pct":0.83,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.012,"volatility":"high"},"price":8.4398,"volume":{"bars":178,"last_bar_volume":66884.0,"baseline_avg":72249.6,"bar_rvol":0.925735,"raw_accel":-0.535886,"smooth_accel":0.184177,"accel_momentum":-0.205903,"rvol_3bar":[1.279962,2.181997,0.925735],"trend_3bar":"MIXED","projected_rvol":1.404686},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":3427.0,"sell_vol":26057.0,"unclassified_vol":0.0,"imbalance":-0.767535,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.245926},"context":{"vwap":8.356312,"price_vs_vwap_pct":0.999102,"ema9":8.428639,"ema20":8.406954,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.919814,"dist_to_hod_atr":4.917172,"atr":0.033597,"spread_atr":0.29765,"own_change_pct":-0.005926,"rel_strength_pct":{"SPY":-0.054779,"IWM":-0.095483}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.710534},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"850ef4740bc0","ts":"2026-09-15T16:28:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 230.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 207 min","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9465,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.427,"trend":"flat","recent_slope_pct":0.0336,"volatility":"medium"},"price":5.96,"volume":{"bars":178,"last_bar_volume":56700.0,"baseline_avg":46724.2,"bar_rvol":1.213504,"raw_accel":1.722689,"smooth_accel":-0.245873,"accel_momentum":0.329379,"rvol_3bar":[1.006876,0.407312,1.213504],"trend_3bar":"MIXED","projected_rvol":0.305366},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":12681.0,"sell_vol":1865.0,"unclassified_vol":0.0,"imbalance":0.743572,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":2.851787},"context":{"vwap":5.946515,"price_vs_vwap_pct":0.226778,"ema9":5.953255,"ema20":5.948409,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.692175,"atr":0.019325,"spread_atr":0.51747,"own_change_pct":0.251889,"rel_strength_pct":{"SPY":0.203036,"IWM":0.162332}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.902328},"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":"78f1e18790ac","ts":"2026-09-15T16:28:20+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1867,"target":5.43,"target_label":"prev_day_high","reward_risk":3.98,"pos_in_5d_range_pct":-1.2,"room_to_5d_high_atr":2.02},"price":5.2355,"vwap":5.2347,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":4.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0099,"volatility":"medium"},"price":5.2355,"volume":{"bars":178,"last_bar_volume":715.0,"baseline_avg":2436.4,"bar_rvol":0.293466,"raw_accel":-0.457511,"smooth_accel":0.740275,"accel_momentum":1.526561,"rvol_3bar":[0.360208,0.544032,0.293466],"trend_3bar":"MIXED","projected_rvol":0.783123},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":536.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.685535,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":0.981092},"context":{"vwap":5.234686,"price_vs_vwap_pct":0.015546,"ema9":5.229981,"ema20":5.226443,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.135985,"dist_to_hod_atr":17.452994,"atr":0.009712,"spread_atr":1.029675,"own_change_pct":0.162658,"rel_strength_pct":{"SPY":0.113804,"IWM":0.073101}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.201181},"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":"8265c373c1fe","ts":"2026-09-15T16:28:20+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1335.0s, plan says WATCH; stop 8.27, target 8.59 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 8.46; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.49","plan":{"state":"WATCH","setup":"","stop":8.2738,"target":8.59,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.8},"price":8.465,"vwap":8.3566,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0716,"volatility":"high"},"price":8.465,"volume":{"bars":178,"last_bar_volume":66884.0,"baseline_avg":72249.6,"bar_rvol":0.925735,"raw_accel":-0.535886,"smooth_accel":0.184177,"accel_momentum":-0.205903,"rvol_3bar":[1.279962,2.181997,0.925735],"trend_3bar":"MIXED","projected_rvol":1.676687},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":5543.0,"sell_vol":38774.0,"unclassified_vol":0.0,"imbalance":-0.749848,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.390968},"context":{"vwap":8.356312,"price_vs_vwap_pct":1.300671,"ema9":8.428639,"ema20":8.406954,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.626961,"dist_to_hod_atr":4.167095,"atr":0.033597,"spread_atr":0.29765,"own_change_pct":-0.005926,"rel_strength_pct":{"SPY":-0.054779,"IWM":-0.095483}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.69416},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"acbdf72acc76","ts":"2026-09-15T16:28:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10319 sh","plan":{"state":"WATCH","setup":"","stop":9.2121,"target":9.48,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3452,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0321,"volatility":"high"},"price":9.365,"volume":{"bars":178,"last_bar_volume":863.0,"baseline_avg":5424.25,"bar_rvol":0.1591,"raw_accel":-0.922933,"smooth_accel":-0.199086,"accel_momentum":-1.39065,"rvol_3bar":[1.25565,2.216,0.1591],"trend_3bar":"MIXED","projected_rvol":0.977389},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2212.0,"sell_vol":98.0,"unclassified_vol":0.0,"imbalance":0.915152,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.074349},"context":{"vwap":9.345201,"price_vs_vwap_pct":0.211866,"ema9":9.338566,"ema20":9.327675,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.800118,"atr":0.021154,"spread_atr":0.472734,"own_change_pct":0.00107,"rel_strength_pct":{"SPY":-0.047784,"IWM":-0.088487}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.145601},"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":"90c3afc9c445","ts":"2026-09-15T16:28:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.82; target 0.13 away > ~0.12 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":9.2019,"target":9.48,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.3},"price":9.3548,"vwap":9.3452,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0103,"volatility":"high"},"price":9.3548,"volume":{"bars":178,"last_bar_volume":863.0,"baseline_avg":5424.25,"bar_rvol":0.1591,"raw_accel":-0.922933,"smooth_accel":-0.199086,"accel_momentum":-1.39065,"rvol_3bar":[1.25565,2.216,0.1591],"trend_3bar":"MIXED","projected_rvol":1.112412},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2511.0,"sell_vol":506.0,"unclassified_vol":0.0,"imbalance":0.664567,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.341886},"context":{"vwap":9.345201,"price_vs_vwap_pct":0.102719,"ema9":9.338566,"ema20":9.327675,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.838405,"dist_to_hod_atr":8.282307,"atr":0.021154,"spread_atr":0.472734,"own_change_pct":0.00107,"rel_strength_pct":{"SPY":-0.047784,"IWM":-0.088487}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.105733},"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":"f1030c43327f","ts":"2026-09-15T16:28:30+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1345.0s, plan says PASS; stop 8.25, target 8.59 (premarket_high), R:R 0.78; target 0.15 away > ~0.15 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":8.2499,"target":8.59,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.83},"price":8.4411,"vwap":8.3567,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":0.015,"volatility":"high"},"price":8.4411,"volume":{"bars":178,"last_bar_volume":66884.0,"baseline_avg":72249.6,"bar_rvol":0.925735,"raw_accel":-0.535886,"smooth_accel":0.184177,"accel_momentum":-0.205903,"rvol_3bar":[1.279962,2.181997,0.925735],"trend_3bar":"MIXED","projected_rvol":1.550154},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":5574.0,"sell_vol":50425.0,"unclassified_vol":0.0,"imbalance":-0.800925,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.250975},"context":{"vwap":8.356312,"price_vs_vwap_pct":1.014659,"ema9":8.428639,"ema20":8.406954,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.904707,"dist_to_hod_atr":4.878478,"atr":0.033597,"spread_atr":0.29765,"own_change_pct":-0.005926,"rel_strength_pct":{"SPY":-0.054779,"IWM":-0.095483}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.741445},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4e4601bfcea3","ts":"2026-09-15T16:28:35+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1350.0s, plan says WATCH; stop 8.26, target 8.59 (premarket_high), R:R 0.70; R:R 0.70 < 2.0 at 8.46; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.49","plan":{"state":"WATCH","setup":"","stop":8.2645,"target":8.59,"target_label":"premarket_high","reward_risk":0.7,"pos_in_5d_range_pct":7.0,"room_to_5d_high_atr":3.81},"price":8.4557,"vwap":8.3568,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0496,"volatility":"high"},"price":8.4557,"volume":{"bars":178,"last_bar_volume":66884.0,"baseline_avg":72249.6,"bar_rvol":0.925735,"raw_accel":-0.535886,"smooth_accel":0.184177,"accel_momentum":-0.205903,"rvol_3bar":[1.279962,2.181997,0.925735],"trend_3bar":"MIXED","projected_rvol":1.412603},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":6731.0,"sell_vol":32219.0,"unclassified_vol":0.0,"imbalance":-0.654377,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.540802},"context":{"vwap":8.356312,"price_vs_vwap_pct":1.189378,"ema9":8.428639,"ema20":8.406954,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.735038,"dist_to_hod_atr":4.443909,"atr":0.033597,"spread_atr":0.29765,"own_change_pct":-0.005926,"rel_strength_pct":{"SPY":-0.054779,"IWM":-0.095483}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.60578},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ad8d1c0055a2","ts":"2026-09-15T16:28:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 250.0s, plan says WATCH; stop 5.89, target 6.03 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 5.97; breakout: 1-min close > 5.98 on >= 92342 sh","plan":{"state":"WATCH","setup":"","stop":5.8869,"target":6.03,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.12},"price":5.97,"vwap":5.9465,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":1.425,"trend":"flat","recent_slope_pct":0.0671,"volatility":"medium"},"price":5.97,"volume":{"bars":178,"last_bar_volume":56700.0,"baseline_avg":46724.2,"bar_rvol":1.213504,"raw_accel":1.722689,"smooth_accel":-0.245873,"accel_momentum":0.329379,"rvol_3bar":[1.006876,0.407312,1.213504],"trend_3bar":"MIXED","projected_rvol":0.329829},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":5700.0,"sell_vol":3432.0,"unclassified_vol":0.0,"imbalance":0.248357,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.873349},"context":{"vwap":5.946515,"price_vs_vwap_pct":0.394944,"ema9":5.953255,"ema20":5.948409,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.647446,"dist_to_hod_atr":5.174704,"atr":0.019325,"spread_atr":0.51747,"own_change_pct":0.251889,"rel_strength_pct":{"SPY":0.203036,"IWM":0.162332}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.301383},"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":"79f0128c0d13","ts":"2026-09-15T16:28:45+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8747,"target":12.59,"target_label":"prev_day_high","reward_risk":2.38,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":2.13},"price":12.0863,"vwap":12.0902,"ext_from_open_pct":-3.23,"max_ext_allowed_pct":3.0,"volume_pace":0.635,"trend":"flat","recent_slope_pct":0.0164,"volatility":"high"},"price":12.0863,"volume":{"bars":178,"last_bar_volume":211.0,"baseline_avg":1016.95,"bar_rvol":0.207483,"raw_accel":-0.170067,"smooth_accel":-0.784582,"accel_momentum":0.055793,"rvol_3bar":[0.244581,0.164666,0.207483],"trend_3bar":"MIXED","projected_rvol":0.199289},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":66.0,"sell_vol":86.0,"unclassified_vol":0.0,"imbalance":-0.131579,"bid":12.07,"ask":12.12,"spread_pct":0.413394,"quote_size_imbalance":null,"quote_age_s":17.815983},"context":{"vwap":12.090203,"price_vs_vwap_pct":-0.032281,"ema9":12.070509,"ema20":12.037983,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.30483,"dist_to_hod_atr":10.780468,"atr":0.050434,"spread_atr":0.991399,"own_change_pct":0.435876,"rel_strength_pct":{"SPY":0.387023,"IWM":0.346319}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.0273},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"edfd0981f804","ts":"2026-09-15T16:28:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10319 sh","plan":{"state":"WATCH","setup":"","stop":9.2121,"target":9.48,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3452,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0321,"volatility":"high"},"price":9.365,"volume":{"bars":178,"last_bar_volume":863.0,"baseline_avg":5424.25,"bar_rvol":0.1591,"raw_accel":-0.922933,"smooth_accel":-0.199086,"accel_momentum":-1.39065,"rvol_3bar":[1.25565,2.216,0.1591],"trend_3bar":"MIXED","projected_rvol":0.83477},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":2273.0,"sell_vol":474.0,"unclassified_vol":0.0,"imbalance":0.654896,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.987236},"context":{"vwap":9.345201,"price_vs_vwap_pct":0.211866,"ema9":9.338566,"ema20":9.327675,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.800118,"atr":0.021154,"spread_atr":0.472734,"own_change_pct":0.00107,"rel_strength_pct":{"SPY":-0.047784,"IWM":-0.088487}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.104194},"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":"9329afe8e9c7","ts":"2026-09-15T16:28:50+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8834,"target":12.59,"target_label":"prev_day_high","reward_risk":2.34,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":2.12},"price":12.095,"vwap":12.0902,"ext_from_open_pct":-3.16,"max_ext_allowed_pct":3.0,"volume_pace":0.635,"trend":"flat","recent_slope_pct":0.0308,"volatility":"high"},"price":12.095,"volume":{"bars":178,"last_bar_volume":211.0,"baseline_avg":1016.95,"bar_rvol":0.207483,"raw_accel":-0.170067,"smooth_accel":-0.784582,"accel_momentum":0.055793,"rvol_3bar":[0.244581,0.164666,0.207483],"trend_3bar":"MIXED","projected_rvol":0.18054},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":67.0,"sell_vol":86.0,"unclassified_vol":0.0,"imbalance":-0.124183,"bid":12.07,"ask":12.12,"spread_pct":0.413394,"quote_size_imbalance":null,"quote_age_s":22.815983},"context":{"vwap":12.090203,"price_vs_vwap_pct":0.039678,"ema9":12.070509,"ema20":12.037983,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.235946,"dist_to_hod_atr":10.607965,"atr":0.050434,"spread_atr":0.991399,"own_change_pct":0.435876,"rel_strength_pct":{"SPY":0.387023,"IWM":0.346319}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.025766},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a8f011cde8d","ts":"2026-09-15T16:28:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 260.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9465,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.424,"trend":"flat","recent_slope_pct":0.0336,"volatility":"medium"},"price":5.96,"volume":{"bars":178,"last_bar_volume":56700.0,"baseline_avg":46724.2,"bar_rvol":1.213504,"raw_accel":1.722689,"smooth_accel":-0.245873,"accel_momentum":0.329379,"rvol_3bar":[1.006876,0.407312,1.213504],"trend_3bar":"MIXED","projected_rvol":0.379178},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":3938.0,"sell_vol":6070.0,"unclassified_vol":0.0,"imbalance":-0.21303,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.03884},"context":{"vwap":5.946515,"price_vs_vwap_pct":0.226778,"ema9":5.953255,"ema20":5.948409,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.692175,"atr":0.019325,"spread_atr":0.51747,"own_change_pct":0.251889,"rel_strength_pct":{"SPY":0.203036,"IWM":0.162332}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.258512},"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":"5881c89d776d","ts":"2026-09-15T16:28:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says PASS; stop 9.21, target 9.48 (premarket_high), R:R 0.78; target 0.12 away > ~0.12 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":9.2071,"target":9.48,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.29},"price":9.36,"vwap":9.3452,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0214,"volatility":"high"},"price":9.36,"volume":{"bars":178,"last_bar_volume":863.0,"baseline_avg":5424.25,"bar_rvol":0.1591,"raw_accel":-0.922933,"smooth_accel":-0.199086,"accel_momentum":-1.39065,"rvol_3bar":[1.25565,2.216,0.1591],"trend_3bar":"MIXED","projected_rvol":0.775628},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1588.0,"sell_vol":574.0,"unclassified_vol":0.0,"imbalance":0.46901,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.540019},"context":{"vwap":9.345201,"price_vs_vwap_pct":0.158363,"ema9":9.338566,"ema20":9.327675,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.783841,"dist_to_hod_atr":8.036485,"atr":0.021154,"spread_atr":0.472734,"own_change_pct":0.00107,"rel_strength_pct":{"SPY":-0.047784,"IWM":-0.088487}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.07462},"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":"6c2a63ac5238","ts":"2026-09-15T16:28:55+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 265.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 5.97; breakout: 1-min close > 5.98 on >= 92342 sh","plan":{"state":"WATCH","setup":"","stop":5.8842,"target":6.03,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":105.0,"room_to_5d_high_atr":-0.11},"price":5.9673,"vwap":5.9465,"ext_from_open_pct":0.97,"max_ext_allowed_pct":3.0,"volume_pace":1.424,"trend":"flat","recent_slope_pct":0.0581,"volatility":"medium"},"price":5.9673,"volume":{"bars":178,"last_bar_volume":56700.0,"baseline_avg":46724.2,"bar_rvol":1.213504,"raw_accel":1.722689,"smooth_accel":-0.245873,"accel_momentum":0.329379,"rvol_3bar":[1.006876,0.407312,1.213504],"trend_3bar":"MIXED","projected_rvol":0.645381},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":5993.0,"sell_vol":16622.0,"unclassified_vol":0.0,"imbalance":-0.469998,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.137608},"context":{"vwap":5.946515,"price_vs_vwap_pct":0.349539,"ema9":5.953255,"ema20":5.948409,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.691928,"dist_to_hod_atr":5.314421,"atr":0.019325,"spread_atr":0.51747,"own_change_pct":0.251889,"rel_strength_pct":{"SPY":0.203036,"IWM":0.162332}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.570344},"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":"5dff42584d95","ts":"2026-09-15T16:28:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10319 sh","plan":{"state":"WATCH","setup":"","stop":9.2121,"target":9.48,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3452,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.0321,"volatility":"high"},"price":9.365,"volume":{"bars":178,"last_bar_volume":863.0,"baseline_avg":5424.25,"bar_rvol":0.1591,"raw_accel":-0.922933,"smooth_accel":-0.199086,"accel_momentum":-1.39065,"rvol_3bar":[1.25565,2.216,0.1591],"trend_3bar":"MIXED","projected_rvol":0.7381},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":760.0,"sell_vol":701.0,"unclassified_vol":0.0,"imbalance":0.040383,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.401397},"context":{"vwap":9.345201,"price_vs_vwap_pct":0.211866,"ema9":9.338566,"ema20":9.327675,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.800118,"atr":0.021154,"spread_atr":0.472734,"own_change_pct":0.00107,"rel_strength_pct":{"SPY":-0.047784,"IWM":-0.088487}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.006425},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3511de818f54","ts":"2026-09-15T16:28:55+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1370.0s, plan says PASS; stop 8.25, target 8.59 (premarket_high), R:R 0.77; target 0.15 away > ~0.15 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":8.2508,"target":8.59,"target_label":"premarket_high","reward_risk":0.77,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.83},"price":8.442,"vwap":8.3569,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0172,"volatility":"high"},"price":8.442,"volume":{"bars":178,"last_bar_volume":66884.0,"baseline_avg":72249.6,"bar_rvol":0.925735,"raw_accel":-0.535886,"smooth_accel":0.184177,"accel_momentum":-0.205903,"rvol_3bar":[1.279962,2.181997,0.925735],"trend_3bar":"MIXED","projected_rvol":1.208643},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":1711.0,"sell_vol":22811.0,"unclassified_vol":0.0,"imbalance":-0.860452,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.1787},"context":{"vwap":8.356312,"price_vs_vwap_pct":1.02543,"ema9":8.428639,"ema20":8.406954,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.894248,"dist_to_hod_atr":4.851689,"atr":0.033597,"spread_atr":0.29765,"own_change_pct":-0.005926,"rel_strength_pct":{"SPY":-0.054779,"IWM":-0.095483}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.796551},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a0ccaed7a7bc","ts":"2026-09-15T16:29:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.84; target 0.13 away > ~0.12 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":9.1988,"target":9.48,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.3517,"vwap":9.3452,"ext_from_open_pct":0.02,"max_ext_allowed_pct":3.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.0036,"volatility":"high"},"price":9.3517,"volume":{"bars":178,"last_bar_volume":863.0,"baseline_avg":5424.25,"bar_rvol":0.1591,"raw_accel":-0.922933,"smooth_accel":-0.199086,"accel_momentum":-1.39065,"rvol_3bar":[1.25565,2.216,0.1591],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":377.0,"sell_vol":398.0,"unclassified_vol":0.0,"imbalance":-0.027097,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":1.136692},"context":{"vwap":9.345201,"price_vs_vwap_pct":0.069547,"ema9":9.338566,"ema20":9.327675,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.870934,"dist_to_hod_atr":8.428855,"atr":0.021154,"spread_atr":0.472734,"own_change_pct":0.00107,"rel_strength_pct":{"SPY":-0.026637,"IWM":-0.067382}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.004311},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9684d93b3a8d","ts":"2026-09-15T16:29:00+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 1375.0s, plan says WATCH; stop 8.28, target 8.59 (premarket_high), R:R 0.60; R:R 0.60 < 2.0 at 8.47; pullback: buy 8.36-8.42 holding + reclaim/fading selling/support; breakout: 1-min close > 8.49","plan":{"state":"WATCH","setup":"","stop":8.2838,"target":8.59,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.79},"price":8.475,"vwap":8.357,"ext_from_open_pct":1.25,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0953,"volatility":"high"},"price":8.475,"volume":{"bars":178,"last_bar_volume":66884.0,"baseline_avg":72249.6,"bar_rvol":0.925735,"raw_accel":-0.535886,"smooth_accel":0.184177,"accel_momentum":-0.205903,"rvol_3bar":[1.279962,2.181997,0.925735],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":1798.0,"sell_vol":30651.0,"unclassified_vol":0.0,"imbalance":-0.88918,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.521071},"context":{"vwap":8.356312,"price_vs_vwap_pct":1.420341,"ema9":8.428639,"ema20":8.406954,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-1.51075,"dist_to_hod_atr":3.869445,"atr":0.033597,"spread_atr":0.29765,"own_change_pct":-0.005926,"rel_strength_pct":{"SPY":-0.033632,"IWM":-0.074377}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.823145},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"154555ce3e8c","ts":"2026-09-15T16:29:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.95,"target_label":"ceiling","reward_risk":0.18,"pos_in_5d_range_pct":499.1,"room_to_5d_high_atr":-5.75},"price":9.9068,"vwap":9.6306,"ext_from_open_pct":4.83,"max_ext_allowed_pct":4.0,"volume_pace":4.09,"trend":"flat","recent_slope_pct":-0.0423,"volatility":"low"},"price":9.9068,"volume":{"bars":179,"last_bar_volume":11697.0,"baseline_avg":6490.25,"bar_rvol":1.802242,"raw_accel":2.222314,"smooth_accel":-0.216908,"accel_momentum":-3.639155,"rvol_3bar":[2.329698,0.569742,1.802242],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":780.0,"sell_vol":5831.0,"unclassified_vol":0.0,"imbalance":-0.76403,"bid":9.89,"ask":9.91,"spread_pct":0.20202,"quote_size_imbalance":null,"quote_age_s":0.77164},"context":{"vwap":9.630232,"price_vs_vwap_pct":2.871869,"ema9":9.898388,"ema20":9.861734,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.87451,"dist_to_hod_atr":6.252591,"atr":0.046893,"spread_atr":0.426507,"own_change_pct":0.404858,"rel_strength_pct":{"SPY":0.377152,"IWM":0.336407}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.376966},"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":"8abf023aaf75","ts":"2026-09-15T16:29:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10337 sh","plan":{"state":"WATCH","setup":"","stop":9.2121,"target":9.48,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3453,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0553,"volatility":"high"},"price":9.365,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":482.0,"sell_vol":3497.0,"unclassified_vol":0.0,"imbalance":-0.757728,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":3.274412},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.21165,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.798894,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.547083},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b83c9ccf6d5b","ts":"2026-09-15T16:29:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.67,"target":10.15,"target_label":"clear air (typical 60-min move)","reward_risk":0.78,"pos_in_5d_range_pct":508.1,"room_to_5d_high_atr":-5.88},"price":9.94,"vwap":9.6317,"ext_from_open_pct":5.19,"max_ext_allowed_pct":4.0,"volume_pace":4.102,"trend":"flat","recent_slope_pct":0.0246,"volatility":"low"},"price":9.94,"volume":{"bars":179,"last_bar_volume":11697.0,"baseline_avg":6490.25,"bar_rvol":1.802242,"raw_accel":2.222314,"smooth_accel":-0.216908,"accel_momentum":-3.639155,"rvol_3bar":[2.329698,0.569742,1.802242],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":1853.0,"sell_vol":10631.0,"unclassified_vol":0.0,"imbalance":-0.70314,"bid":9.92,"ask":9.94,"spread_pct":0.20141,"quote_size_imbalance":null,"quote_age_s":0.514177},"context":{"vwap":9.630232,"price_vs_vwap_pct":3.216616,"ema9":9.898388,"ema20":9.861734,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.54902,"dist_to_hod_atr":5.54459,"atr":0.046893,"spread_atr":0.426507,"own_change_pct":0.404858,"rel_strength_pct":{"SPY":0.377152,"IWM":0.336407}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.267228},"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":"99f445a66be2","ts":"2026-09-15T16:29:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 280.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.90; target 0.07 away > ~0.07 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":5.8722,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.9553,"vwap":5.9466,"ext_from_open_pct":0.77,"max_ext_allowed_pct":3.0,"volume_pace":1.424,"trend":"flat","recent_slope_pct":0.0394,"volatility":"medium"},"price":5.9553,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":9033.0,"sell_vol":29438.0,"unclassified_vol":0.0,"imbalance":-0.5304,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.79427},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.147356,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.889621,"dist_to_hod_atr":6.013735,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.306166},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3e19ddf8a9dd","ts":"2026-09-15T16:29:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.83; target 0.13 away > ~0.12 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":9.1996,"target":9.48,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":3.3},"price":9.3525,"vwap":9.3453,"ext_from_open_pct":0.03,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0286,"volatility":"high"},"price":9.3525,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":582.0,"sell_vol":3502.0,"unclassified_vol":0.0,"imbalance":-0.714985,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":2.996862},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.077892,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.862539,"dist_to_hod_atr":8.38972,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.516222},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7958424c213b","ts":"2026-09-15T16:29:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 75.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10337 sh","plan":{"state":"WATCH","setup":"","stop":9.2121,"target":9.48,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3453,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0553,"volatility":"high"},"price":9.365,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":3.218553},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1132.0,"sell_vol":3490.0,"unclassified_vol":0.0,"imbalance":-0.510169,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":4.319308},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.21165,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.798894,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.368344},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d8d3a2de9d17","ts":"2026-09-15T16:29:20+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.59,"target_label":"prev_day_high","reward_risk":2.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0902,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.635,"trend":"flat","recent_slope_pct":0.0146,"volatility":"high"},"price":12.09,"volume":{"bars":179,"last_bar_volume":154.0,"baseline_avg":981.9,"bar_rvol":0.156839,"raw_accel":-0.372645,"smooth_accel":-0.814085,"accel_momentum":-0.029504,"rvol_3bar":[0.164666,0.207483,0.156839],"trend_3bar":"MIXED","projected_rvol":2.135655},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":383.0,"sell_vol":317.0,"unclassified_vol":0.0,"imbalance":0.094286,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":0.280954},"context":{"vwap":12.090207,"price_vs_vwap_pct":-0.00171,"ema9":12.075947,"ema20":12.04367,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.128457,"atr":0.048524,"spread_atr":0.618248,"own_change_pct":-0.101569,"rel_strength_pct":{"SPY":-0.129275,"IWM":-0.17002}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.014788},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2a372ea73594","ts":"2026-09-15T16:29:20+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 290.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.78; R:R 0.78 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 90225 sh","plan":{"state":"WATCH","setup":"","stop":5.8819,"target":6.03,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":104.7,"room_to_5d_high_atr":-0.11},"price":5.965,"vwap":5.9466,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":1.422,"trend":"flat","recent_slope_pct":0.072,"volatility":"medium"},"price":5.965,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":1.430428},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":9194.0,"sell_vol":26778.0,"unclassified_vol":0.0,"imbalance":-0.488825,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.351899},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.310476,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.729819,"dist_to_hod_atr":5.505163,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.282167},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b47cd94d9130","ts":"2026-09-15T16:29:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 80.0s, plan says PASS; stop 9.21, target 9.48 (premarket_high), R:R 0.79; target 0.12 away > ~0.12 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":9.2061,"target":9.48,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.29},"price":9.359,"vwap":9.3453,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.593,"trend":"flat","recent_slope_pct":0.0425,"volatility":"high"},"price":9.359,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":2.47789},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1232.0,"sell_vol":3392.0,"unclassified_vol":0.0,"imbalance":-0.467128,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.354685},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.147447,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.794334,"dist_to_hod_atr":8.08249,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.337268},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0408f5436696","ts":"2026-09-15T16:29:25+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8871,"target":12.59,"target_label":"prev_day_high","reward_risk":2.32,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":2.12},"price":12.0987,"vwap":12.0902,"ext_from_open_pct":-3.13,"max_ext_allowed_pct":3.0,"volume_pace":0.635,"trend":"flat","recent_slope_pct":0.029,"volatility":"high"},"price":12.0987,"volume":{"bars":179,"last_bar_volume":154.0,"baseline_avg":981.9,"bar_rvol":0.156839,"raw_accel":-0.372645,"smooth_accel":-0.814085,"accel_momentum":-0.029504,"rvol_3bar":[0.164666,0.207483,0.156839],"trend_3bar":"MIXED","projected_rvol":2.001833},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":392.0,"sell_vol":427.0,"unclassified_vol":0.0,"imbalance":-0.042735,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":5.280954},"context":{"vwap":12.090207,"price_vs_vwap_pct":0.070249,"ema9":12.075947,"ema20":12.04367,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.206651,"dist_to_hod_atr":10.949166,"atr":0.048524,"spread_atr":0.618248,"own_change_pct":-0.101569,"rel_strength_pct":{"SPY":-0.129275,"IWM":-0.17002}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.006703},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7803396b2fd9","ts":"2026-09-15T16:29:25+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 295.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 206 min","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9466,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.422,"trend":"flat","recent_slope_pct":0.0552,"volatility":"medium"},"price":5.96,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":1.220379},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":7908.0,"sell_vol":16711.0,"unclassified_vol":0.0,"imbalance":-0.357569,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":5.351899},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.226394,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.767313,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.206402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fe1d19f0a84f","ts":"2026-09-15T16:29:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10337 sh","plan":{"state":"WATCH","setup":"","stop":9.2121,"target":9.48,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3453,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.0553,"volatility":"high"},"price":9.365,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":2.14362},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1243.0,"sell_vol":3570.0,"unclassified_vol":0.0,"imbalance":-0.483482,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":3.610553},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.21165,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.798894,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.349076},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d149faf9fe07","ts":"2026-09-15T16:29:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.78; R:R 0.78 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 90225 sh","plan":{"state":"WATCH","setup":"","stop":5.8819,"target":6.03,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":104.7,"room_to_5d_high_atr":-0.11},"price":5.965,"vwap":5.9466,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":1.421,"trend":"flat","recent_slope_pct":0.072,"volatility":"medium"},"price":5.965,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":1.032813},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":8166.0,"sell_vol":16691.0,"unclassified_vol":0.0,"imbalance":-0.342962,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":1.094182},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.310476,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.729819,"dist_to_hod_atr":5.505163,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.19797},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2c9bd18abc84","ts":"2026-09-15T16:29:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 305.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9466,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.421,"trend":"flat","recent_slope_pct":0.0552,"volatility":"medium"},"price":5.96,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":0.887868},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":2450.0,"sell_vol":11761.0,"unclassified_vol":0.0,"imbalance":-0.655197,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":1.036898},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.226394,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.767313,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.378203},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7f044b54c140","ts":"2026-09-15T16:29:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 310.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.78; R:R 0.78 < 2.0 at 5.96; breakout: 1-min close > 5.98 on >= 90225 sh","plan":{"state":"WATCH","setup":"","stop":5.8819,"target":6.03,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":104.7,"room_to_5d_high_atr":-0.11},"price":5.965,"vwap":5.9466,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":1.42,"trend":"flat","recent_slope_pct":0.072,"volatility":"medium"},"price":5.965,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":0.805928},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":2467.0,"sell_vol":2435.0,"unclassified_vol":0.0,"imbalance":0.006528,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.352935},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.310476,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.729819,"dist_to_hod_atr":5.505163,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.003768},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8414c5f2204d","ts":"2026-09-15T16:29:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 100.0s, plan says PASS; stop 9.19, target 9.48 (premarket_high), R:R 0.87; target 0.13 away > ~0.12 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":9.1943,"target":9.48,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":5.0,"room_to_5d_high_atr":3.31},"price":9.3472,"vwap":9.3453,"ext_from_open_pct":-0.03,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.0172,"volatility":"high"},"price":9.3472,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":1.470569},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1041.0,"sell_vol":482.0,"unclassified_vol":0.0,"imbalance":0.367039,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.499466},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.021179,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.918153,"dist_to_hod_atr":8.64023,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.265003},"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":"38e32b7ed49b","ts":"2026-09-15T16:29:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 105.0s, plan says WATCH; stop 9.22, target 9.48 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10337 sh","plan":{"state":"WATCH","setup":"","stop":9.2171,"target":9.48,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.37,"vwap":9.3453,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.066,"volatility":"high"},"price":9.37,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":1.332559},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":541.0,"sell_vol":482.0,"unclassified_vol":0.0,"imbalance":0.057674,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":1.161134},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.265154,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.678909,"dist_to_hod_atr":7.562564,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.04164},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6a40c020faab","ts":"2026-09-15T16:29:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 320.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9466,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.419,"trend":"flat","recent_slope_pct":0.0552,"volatility":"medium"},"price":5.96,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":0.723946},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":1532.0,"sell_vol":4556.0,"unclassified_vol":0.0,"imbalance":-0.496715,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":4.820978},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.226394,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.767313,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.286722},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9ee744cc3a1f","ts":"2026-09-15T16:29:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 110.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.83; target 0.13 away > ~0.12 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":9.2002,"target":9.48,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":3.3},"price":9.3531,"vwap":9.3453,"ext_from_open_pct":0.03,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0298,"volatility":"high"},"price":9.3531,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":1.236774},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":541.0,"sell_vol":534.0,"unclassified_vol":0.0,"imbalance":0.006512,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.42389},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.084313,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.856243,"dist_to_hod_atr":8.36136,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.004701},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"30e7a4992b07","ts":"2026-09-15T16:29:55+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 325.0s, plan says WATCH; stop 5.89, target 6.03 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 5.97; breakout: 1-min close > 5.98 on >= 90225 sh","plan":{"state":"WATCH","setup":"","stop":5.8869,"target":6.03,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.12},"price":5.97,"vwap":5.9466,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":1.418,"trend":"flat","recent_slope_pct":0.0887,"volatility":"medium"},"price":5.97,"volume":{"bars":179,"last_bar_volume":27785.0,"baseline_avg":48134.55,"bar_rvol":0.577236,"raw_accel":-0.509965,"smooth_accel":-0.503924,"accel_momentum":-0.258051,"rvol_3bar":[0.407312,1.213504,0.577236],"trend_3bar":"MIXED","projected_rvol":0.67581},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1290.0,"sell_vol":4053.0,"unclassified_vol":0.0,"imbalance":-0.517125,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.286394},"context":{"vwap":5.946537,"price_vs_vwap_pct":0.394559,"ema9":5.955184,"ema20":5.949789,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.647446,"dist_to_hod_atr":5.243012,"atr":0.019073,"spread_atr":0.524301,"own_change_pct":0.132662,"rel_strength_pct":{"SPY":0.104955,"IWM":0.064211}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.298503},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4d1e0a43e8b8","ts":"2026-09-15T16:29:55+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 350.0s, plan says PASS; stop 8.36, target 8.56 (premarket_high), R:R 1.16; target 0.10 away > ~0.10 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":8.3636,"target":8.5586,"target_label":"premarket_high","reward_risk":1.16,"pos_in_5d_range_pct":63.6,"room_to_5d_high_atr":0.88},"price":8.4537,"vwap":8.3368,"ext_from_open_pct":1.48,"max_ext_allowed_pct":4.0,"volume_pace":0.896,"trend":"flat","recent_slope_pct":0.046,"volatility":"medium"},"price":8.4537,"volume":{"bars":179,"last_bar_volume":142.0,"baseline_avg":1128.8,"bar_rvol":0.125797,"raw_accel":-0.848453,"smooth_accel":-0.182984,"accel_momentum":0.389165,"rvol_3bar":[1.288019,0.747835,0.125797],"trend_3bar":"DECELERATING","projected_rvol":1.762773},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":713.0,"sell_vol":1089.0,"unclassified_vol":0.0,"imbalance":-0.208657,"bid":8.48,"ask":8.49,"spread_pct":0.117855,"quote_size_imbalance":null,"quote_age_s":0.985368},"context":{"vwap":8.335843,"price_vs_vwap_pct":1.413854,"ema9":8.454242,"ema20":8.446573,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.544706,"dist_to_hod_atr":2.4363,"atr":0.019004,"spread_atr":0.526199,"own_change_pct":0.288781,"rel_strength_pct":{"SPY":0.261075,"IWM":0.22033}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.026248},"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":"30536af89517","ts":"2026-09-15T16:29:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 115.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.78; R:R 0.78 < 2.0 at 9.36; breakout: 1-min close > 9.38 on >= 10337 sh","plan":{"state":"WATCH","setup":"","stop":9.2081,"target":9.48,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":5.7,"room_to_5d_high_atr":3.28},"price":9.361,"vwap":9.3453,"ext_from_open_pct":0.12,"max_ext_allowed_pct":4.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0467,"volatility":"high"},"price":9.361,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":1.239828},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1070.0,"sell_vol":208.0,"unclassified_vol":0.0,"imbalance":0.674491,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":2.216166},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.168848,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.773347,"dist_to_hod_atr":7.987958,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.171584,"IWM":0.13084}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.486985},"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":"4cf29fb160af","ts":"2026-09-15T16:30:00+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 355.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.82; R:R 0.82 < 2.0 at 8.48; pullback: buy 8.44-8.47 holding + reclaim/fading selling/support; breakout: 1-min close > 8.49 ","plan":{"state":"WATCH","setup":"","stop":8.3949,"target":8.5586,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":67.2,"room_to_5d_high_atr":0.79},"price":8.485,"vwap":8.3371,"ext_from_open_pct":1.86,"max_ext_allowed_pct":4.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":0.1199,"volatility":"medium"},"price":8.485,"volume":{"bars":179,"last_bar_volume":142.0,"baseline_avg":1128.8,"bar_rvol":0.125797,"raw_accel":-0.848453,"smooth_accel":-0.182984,"accel_momentum":0.389165,"rvol_3bar":[1.288019,0.747835,0.125797],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":931.0,"sell_vol":1089.0,"unclassified_vol":0.0,"imbalance":-0.078218,"bid":8.48,"ask":8.49,"spread_pct":0.117855,"quote_size_imbalance":null,"quote_age_s":1.359072},"context":{"vwap":8.335843,"price_vs_vwap_pct":1.789341,"ema9":8.454242,"ema20":8.446573,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.176471,"dist_to_hod_atr":0.789298,"atr":0.019004,"spread_atr":0.526199,"own_change_pct":0.288781,"rel_strength_pct":{"SPY":0.29934,"IWM":0.274746}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.00984},"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":"d6fcaf87136c","ts":"2026-09-15T16:30:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 120.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.84; target 0.13 away > ~0.12 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":9.1992,"target":9.48,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":3.3},"price":9.3521,"vwap":9.3453,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":0.0277,"volatility":"high"},"price":9.3521,"volume":{"bars":179,"last_bar_volume":3792.0,"baseline_avg":5252.05,"bar_rvol":0.722004,"raw_accel":1.888015,"smooth_accel":-0.352701,"accel_momentum":-0.153615,"rvol_3bar":[2.216,0.1591,0.722004],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2195.0,"sell_vol":297.0,"unclassified_vol":0.0,"imbalance":0.761637,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.980133},"context":{"vwap":9.345221,"price_vs_vwap_pct":0.073612,"ema9":9.341193,"ema20":9.329963,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.866737,"dist_to_hod_atr":8.408626,"atr":0.021157,"spread_atr":0.47266,"own_change_pct":0.199291,"rel_strength_pct":{"SPY":0.20985,"IWM":0.185256}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.549905},"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":"4909001e8563","ts":"2026-09-15T16:30:05+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.59,"target_label":"prev_day_high","reward_risk":2.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0902,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.0472,"volatility":"high"},"price":12.09,"volume":{"bars":180,"last_bar_volume":954.0,"baseline_avg":966.25,"bar_rvol":0.987322,"raw_accel":2.949288,"smooth_accel":0.579641,"accel_momentum":1.393726,"rvol_3bar":[0.207483,0.156839,0.987322],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":23.0,"sell_vol":50.0,"unclassified_vol":0.0,"imbalance":-0.369863,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":45.280954},"context":{"vwap":12.090223,"price_vs_vwap_pct":-0.001846,"ema9":12.080778,"ema20":12.049044,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.052386,"atr":0.048858,"spread_atr":0.614021,"own_change_pct":0.08354,"rel_strength_pct":{"SPY":0.094099,"IWM":0.069505}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.365174},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fd54a09e7cd7","ts":"2026-09-15T16:30:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 335.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9466,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":1.418,"trend":"flat","recent_slope_pct":0.0327,"volatility":"medium"},"price":5.96,"volume":{"bars":180,"last_bar_volume":36770.0,"baseline_avg":47676.15,"bar_rvol":0.771245,"raw_accel":0.323376,"smooth_accel":0.106119,"accel_momentum":0.610043,"rvol_3bar":[1.213504,0.577236,0.771245],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":11295.0,"sell_vol":5966.0,"unclassified_vol":0.0,"imbalance":0.308731,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":2.466014},"context":{"vwap":5.946572,"price_vs_vwap_pct":0.225804,"ema9":5.958047,"ema20":5.951666,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.863337,"atr":0.018761,"spread_atr":0.533031,"own_change_pct":0.159396,"rel_strength_pct":{"SPY":0.169955,"IWM":0.145361}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.238107},"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":"45170015f234","ts":"2026-09-15T16:30:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 170.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.22; R:R 0.22 < 2.0 at 10.59; breakout: 1-min close > 10.60 on >= 26061 sh","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.22,"pos_in_5d_range_pct":29.5,"room_to_5d_high_atr":1.53},"price":10.59,"vwap":10.4723,"ext_from_open_pct":1.73,"max_ext_allowed_pct":4.0,"volume_pace":0.942,"trend":"flat","recent_slope_pct":0.1198,"volatility":"medium"},"price":10.59,"volume":{"bars":180,"last_bar_volume":13902.0,"baseline_avg":12667.95,"bar_rvol":1.097415,"raw_accel":-0.084793,"smooth_accel":-0.109981,"accel_momentum":-1.475651,"rvol_3bar":[1.202921,1.246799,1.097415],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":4666.0,"sell_vol":603.0,"unclassified_vol":0.0,"imbalance":0.771114,"bid":10.58,"ask":10.59,"spread_pct":0.094473,"quote_size_imbalance":null,"quote_age_s":0.04895},"context":{"vwap":10.472272,"price_vs_vwap_pct":1.124184,"ema9":10.518219,"ema20":10.473864,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.754821,"dist_to_hod_atr":5.443908,"atr":0.055107,"spread_atr":0.181464,"own_change_pct":0.856999,"rel_strength_pct":{"SPY":0.867557,"IWM":0.842963}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.846232},"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":"2ded35e1c34b","ts":"2026-09-15T16:30:10+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9084,"target":12.59,"target_label":"prev_day_high","reward_risk":2.22,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":2.09},"price":12.12,"vwap":12.0902,"ext_from_open_pct":-2.96,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0024,"volatility":"high"},"price":12.12,"volume":{"bars":180,"last_bar_volume":954.0,"baseline_avg":966.25,"bar_rvol":0.987322,"raw_accel":2.949288,"smooth_accel":0.579641,"accel_momentum":1.393726,"rvol_3bar":[0.207483,0.156839,0.987322],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":20.0,"sell_vol":60.0,"unclassified_vol":0.0,"imbalance":-0.5,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":50.280954},"context":{"vwap":12.090223,"price_vs_vwap_pct":0.246289,"ema9":12.080778,"ema20":12.049044,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.038005,"dist_to_hod_atr":10.438365,"atr":0.048858,"spread_atr":0.614021,"own_change_pct":0.08354,"rel_strength_pct":{"SPY":0.094099,"IWM":0.069505}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.493661},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b600ef1ac90b","ts":"2026-09-15T16:30:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 340.0s, plan says WATCH; stop 5.89, target 6.03 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 5.97; breakout: 1-min close > 5.98 on >= 89095 sh","plan":{"state":"WATCH","setup":"","stop":5.8869,"target":6.03,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.12},"price":5.97,"vwap":5.9466,"ext_from_open_pct":1.02,"max_ext_allowed_pct":4.0,"volume_pace":1.417,"trend":"flat","recent_slope_pct":0.0662,"volatility":"medium"},"price":5.97,"volume":{"bars":180,"last_bar_volume":36770.0,"baseline_avg":47676.15,"bar_rvol":0.771245,"raw_accel":0.323376,"smooth_accel":0.106119,"accel_momentum":0.610043,"rvol_3bar":[1.213504,0.577236,0.771245],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":11525.0,"sell_vol":5129.0,"unclassified_vol":0.0,"imbalance":0.384052,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.169563},"context":{"vwap":5.946572,"price_vs_vwap_pct":0.393969,"ema9":5.958047,"ema20":5.951666,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.647446,"dist_to_hod_atr":5.330306,"atr":0.018761,"spread_atr":0.533031,"own_change_pct":0.159396,"rel_strength_pct":{"SPY":0.169955,"IWM":0.145361}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.296198},"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":"88fb9a4a41d8","ts":"2026-09-15T16:30:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 175.0s, plan says PASS; stop 10.36, target 10.64 (premarket_high), R:R 0.50; R:R 0.50 < 2.0 at 10.55; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":26.1,"room_to_5d_high_atr":1.61},"price":10.5468,"vwap":10.4723,"ext_from_open_pct":1.31,"max_ext_allowed_pct":4.0,"volume_pace":0.942,"trend":"flat","recent_slope_pct":0.0381,"volatility":"medium"},"price":10.5468,"volume":{"bars":180,"last_bar_volume":13902.0,"baseline_avg":12667.95,"bar_rvol":1.097415,"raw_accel":-0.084793,"smooth_accel":-0.109981,"accel_momentum":-1.475651,"rvol_3bar":[1.202921,1.246799,1.097415],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3943.0,"sell_vol":445.0,"unclassified_vol":0.0,"imbalance":0.797174,"bid":10.58,"ask":10.59,"spread_pct":0.094473,"quote_size_imbalance":null,"quote_age_s":1.928814},"context":{"vwap":10.472272,"price_vs_vwap_pct":0.711666,"ema9":10.518219,"ema20":10.473864,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.151515,"dist_to_hod_atr":6.22783,"atr":0.055107,"spread_atr":0.181464,"own_change_pct":0.856999,"rel_strength_pct":{"SPY":0.867557,"IWM":0.842963}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.874831},"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":"b2812ba69f18","ts":"2026-09-15T16:30:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 130.0s, plan says WATCH; stop 9.23, target 9.48 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 9.38; breakout: 1-min close > 9.38 on >= 10415 sh","plan":{"state":"WATCH","setup":"","stop":9.2271,"target":9.48,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.25},"price":9.38,"vwap":9.3453,"ext_from_open_pct":0.32,"max_ext_allowed_pct":4.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0664,"volatility":"high"},"price":9.38,"volume":{"bars":180,"last_bar_volume":7424.0,"baseline_avg":5297.9,"bar_rvol":1.40131,"raw_accel":0.957806,"smooth_accel":-0.607939,"accel_momentum":-0.255238,"rvol_3bar":[0.1591,0.722004,1.40131],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":2225.0,"sell_vol":184.0,"unclassified_vol":0.0,"imbalance":0.84724,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":1.103711},"context":{"vwap":9.345282,"price_vs_vwap_pct":0.371507,"ema9":9.343374,"ema20":9.332072,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.573977,"dist_to_hod_atr":6.934378,"atr":0.021631,"spread_atr":0.462292,"own_change_pct":-0.030999,"rel_strength_pct":{"SPY":-0.020441,"IWM":-0.045035}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.187245},"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":"868f37811483","ts":"2026-09-15T16:30:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 345.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.83; target 0.07 away > ~0.07 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":5.8779,"target":6.03,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":104.2,"room_to_5d_high_atr":-0.09},"price":5.961,"vwap":5.9466,"ext_from_open_pct":0.86,"max_ext_allowed_pct":4.0,"volume_pace":1.417,"trend":"flat","recent_slope_pct":0.0361,"volatility":"medium"},"price":5.961,"volume":{"bars":180,"last_bar_volume":36770.0,"baseline_avg":47676.15,"bar_rvol":0.771245,"raw_accel":0.323376,"smooth_accel":0.106119,"accel_momentum":0.610043,"rvol_3bar":[1.213504,0.577236,0.771245],"trend_3bar":"MIXED","projected_rvol":0.513296},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":11542.0,"sell_vol":5396.0,"unclassified_vol":0.0,"imbalance":0.362853,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":0.244679},"context":{"vwap":5.946572,"price_vs_vwap_pct":0.242621,"ema9":5.958047,"ema20":5.951666,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.795717,"dist_to_hod_atr":5.810034,"atr":0.018761,"spread_atr":0.533031,"own_change_pct":0.159396,"rel_strength_pct":{"SPY":0.169955,"IWM":0.145361}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.279848},"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":"017f7cefb637","ts":"2026-09-15T16:30:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 180.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.26; R:R 0.26 < 2.0 at 10.58; breakout: 1-min close > 10.60 on >= 26061 sh","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.26,"pos_in_5d_range_pct":28.9,"room_to_5d_high_atr":1.55},"price":10.5824,"vwap":10.4723,"ext_from_open_pct":1.66,"max_ext_allowed_pct":4.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":0.1054,"volatility":"medium"},"price":10.5824,"volume":{"bars":180,"last_bar_volume":13902.0,"baseline_avg":12667.95,"bar_rvol":1.097415,"raw_accel":-0.084793,"smooth_accel":-0.109981,"accel_momentum":-1.475651,"rvol_3bar":[1.202921,1.246799,1.097415],"trend_3bar":"MIXED","projected_rvol":0.192612},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":2300.0,"sell_vol":462.0,"unclassified_vol":0.0,"imbalance":0.66546,"bid":10.58,"ask":10.59,"spread_pct":0.094473,"quote_size_imbalance":null,"quote_age_s":0.467158},"context":{"vwap":10.472272,"price_vs_vwap_pct":1.051612,"ema9":10.518219,"ema20":10.473864,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.82461,"dist_to_hod_atr":5.58182,"atr":0.055107,"spread_atr":0.181464,"own_change_pct":0.856999,"rel_strength_pct":{"SPY":0.867557,"IWM":0.842963}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.730286},"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":"5d375778d739","ts":"2026-09-15T16:30:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 135.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.85; target 0.13 away > ~0.12 reachable in 205 min","plan":{"state":"PASS","setup":"","stop":9.1976,"target":9.48,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.3505,"vwap":9.3453,"ext_from_open_pct":0.01,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0033,"volatility":"high"},"price":9.3505,"volume":{"bars":180,"last_bar_volume":7424.0,"baseline_avg":5297.9,"bar_rvol":1.40131,"raw_accel":0.957806,"smooth_accel":-0.607939,"accel_momentum":-0.255238,"rvol_3bar":[0.1591,0.722004,1.40131],"trend_3bar":"ACCELERATING","projected_rvol":0.313332},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":2125.0,"sell_vol":465.0,"unclassified_vol":0.0,"imbalance":0.640927,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":3.53596},"context":{"vwap":9.345282,"price_vs_vwap_pct":0.05584,"ema9":9.343374,"ema20":9.332072,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.883526,"dist_to_hod_atr":8.298139,"atr":0.021631,"spread_atr":0.462292,"own_change_pct":-0.030999,"rel_strength_pct":{"SPY":-0.020441,"IWM":-0.045035}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.898137},"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":"6d687d7d1860","ts":"2026-09-15T16:30:20+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 185.0s, plan says PASS; stop 10.36, target 10.64 (premarket_high), R:R 0.49; R:R 0.49 < 2.0 at 10.55; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":26.2,"room_to_5d_high_atr":1.6},"price":10.5476,"vwap":10.4723,"ext_from_open_pct":1.32,"max_ext_allowed_pct":3.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":0.0396,"volatility":"medium"},"price":10.5476,"volume":{"bars":180,"last_bar_volume":13902.0,"baseline_avg":12667.95,"bar_rvol":1.097415,"raw_accel":-0.084793,"smooth_accel":-0.109981,"accel_momentum":-1.475651,"rvol_3bar":[1.202921,1.246799,1.097415],"trend_3bar":"MIXED","projected_rvol":0.430772},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3128.0,"sell_vol":658.0,"unclassified_vol":0.0,"imbalance":0.652404,"bid":10.58,"ask":10.59,"spread_pct":0.094473,"quote_size_imbalance":null,"quote_age_s":2.434812},"context":{"vwap":10.472272,"price_vs_vwap_pct":0.719306,"ema9":10.518219,"ema20":10.473864,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.144169,"dist_to_hod_atr":6.213313,"atr":0.055107,"spread_atr":0.181464,"own_change_pct":0.856999,"rel_strength_pct":{"SPY":0.867557,"IWM":0.842963}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.715958},"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":"46a24d1273df","ts":"2026-09-15T16:30:25+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 190.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.24; R:R 0.24 < 2.0 at 10.59; breakout: 1-min close > 10.60 on >= 26061 sh","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.24,"pos_in_5d_range_pct":29.1,"room_to_5d_high_atr":1.54},"price":10.585,"vwap":10.4723,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":0.1104,"volatility":"medium"},"price":10.585,"volume":{"bars":180,"last_bar_volume":13902.0,"baseline_avg":12667.95,"bar_rvol":1.097415,"raw_accel":-0.084793,"smooth_accel":-0.109981,"accel_momentum":-1.475651,"rvol_3bar":[1.202921,1.246799,1.097415],"trend_3bar":"MIXED","projected_rvol":0.453554},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":3155.0,"sell_vol":800.0,"unclassified_vol":0.0,"imbalance":0.595449,"bid":10.58,"ask":10.59,"spread_pct":0.094473,"quote_size_imbalance":null,"quote_age_s":0.063734},"context":{"vwap":10.472272,"price_vs_vwap_pct":1.076439,"ema9":10.518219,"ema20":10.473864,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.800735,"dist_to_hod_atr":5.534639,"atr":0.055107,"spread_atr":0.181464,"own_change_pct":0.856999,"rel_strength_pct":{"SPY":0.867557,"IWM":0.842963}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.653455},"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":"e92503cee208","ts":"2026-09-15T16:30:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says WATCH; stop 9.21, target 9.48 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10415 sh","plan":{"state":"WATCH","setup":"","stop":9.2128,"target":9.48,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.3657,"vwap":9.3453,"ext_from_open_pct":0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0358,"volatility":"high"},"price":9.3657,"volume":{"bars":180,"last_bar_volume":7424.0,"baseline_avg":5297.9,"bar_rvol":1.40131,"raw_accel":0.957806,"smooth_accel":-0.607939,"accel_momentum":-0.255238,"rvol_3bar":[0.1591,0.722004,1.40131],"trend_3bar":"ACCELERATING","projected_rvol":0.308047},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":1611.0,"sell_vol":524.0,"unclassified_vol":0.0,"imbalance":0.509133,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.527146},"context":{"vwap":9.345282,"price_vs_vwap_pct":0.218489,"ema9":9.343374,"ema20":9.332072,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.724029,"dist_to_hod_atr":7.595455,"atr":0.021631,"spread_atr":0.462292,"own_change_pct":-0.030999,"rel_strength_pct":{"SPY":-0.020441,"IWM":-0.045035}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.713454},"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":"c8b0607207f4","ts":"2026-09-15T16:30:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 360.0s, plan says WATCH; stop 5.89, target 6.03 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 5.97; breakout: 1-min close > 5.98 on >= 89095 sh","plan":{"state":"WATCH","setup":"","stop":5.8869,"target":6.03,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":105.4,"room_to_5d_high_atr":-0.12},"price":5.97,"vwap":5.9466,"ext_from_open_pct":1.02,"max_ext_allowed_pct":3.0,"volume_pace":1.415,"trend":"flat","recent_slope_pct":0.0662,"volatility":"medium"},"price":5.97,"volume":{"bars":180,"last_bar_volume":36770.0,"baseline_avg":47676.15,"bar_rvol":0.771245,"raw_accel":0.323376,"smooth_accel":0.106119,"accel_momentum":0.610043,"rvol_3bar":[1.213504,0.577236,0.771245],"trend_3bar":"MIXED","projected_rvol":0.277413},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":5418.0,"sell_vol":1195.0,"unclassified_vol":0.0,"imbalance":0.638591,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":1.200889},"context":{"vwap":5.946572,"price_vs_vwap_pct":0.393969,"ema9":5.958047,"ema20":5.951666,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.647446,"dist_to_hod_atr":5.330306,"atr":0.018761,"spread_atr":0.533031,"own_change_pct":0.159396,"rel_strength_pct":{"SPY":0.169955,"IWM":0.145361}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.49251},"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":"db511cda4537","ts":"2026-09-15T16:30:35+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 200.0s, plan says PASS; stop 10.36, target 10.64 (premarket_high), R:R 0.90; R:R 0.90 < 2.0 at 10.51; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.3581,"target":10.64,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":1.67},"price":10.5063,"vwap":10.4723,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":-0.0387,"volatility":"medium"},"price":10.5063,"volume":{"bars":180,"last_bar_volume":13902.0,"baseline_avg":12667.95,"bar_rvol":1.097415,"raw_accel":-0.084793,"smooth_accel":-0.109981,"accel_momentum":-1.475651,"rvol_3bar":[1.202921,1.246799,1.097415],"trend_3bar":"MIXED","projected_rvol":0.669451},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":3174.0,"sell_vol":1313.0,"unclassified_vol":0.0,"imbalance":0.414754,"bid":10.58,"ask":10.59,"spread_pct":0.094473,"quote_size_imbalance":null,"quote_age_s":0.589633},"context":{"vwap":10.472272,"price_vs_vwap_pct":0.324931,"ema9":10.518219,"ema20":10.473864,"ema_stack":false,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-3.523416,"dist_to_hod_atr":6.962758,"atr":0.055107,"spread_atr":0.181464,"own_change_pct":0.856999,"rel_strength_pct":{"SPY":0.867557,"IWM":0.842963}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.455157},"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":"871d0bc6d344","ts":"2026-09-15T16:30:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 155.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.82; target 0.13 away > ~0.12 reachable in 204 min","plan":{"state":"PASS","setup":"","stop":9.2015,"target":9.48,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.3},"price":9.3544,"vwap":9.3453,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0117,"volatility":"high"},"price":9.3544,"volume":{"bars":180,"last_bar_volume":7424.0,"baseline_avg":5297.9,"bar_rvol":1.40131,"raw_accel":0.957806,"smooth_accel":-0.607939,"accel_momentum":-0.255238,"rvol_3bar":[0.1591,0.722004,1.40131],"trend_3bar":"ACCELERATING","projected_rvol":0.30384},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":487.0,"sell_vol":452.0,"unclassified_vol":0.0,"imbalance":0.037274,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.540631},"context":{"vwap":9.345282,"price_vs_vwap_pct":0.097572,"ema9":9.343374,"ema20":9.332072,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.842602,"dist_to_hod_atr":8.117845,"atr":0.021631,"spread_atr":0.462292,"own_change_pct":-0.030999,"rel_strength_pct":{"SPY":-0.020441,"IWM":-0.045035}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.052232},"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":"15e8127e1ab2","ts":"2026-09-15T16:30:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.26; R:R 0.26 < 2.0 at 10.58; breakout: 1-min close > 10.60 on >= 26061 sh","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.26,"pos_in_5d_range_pct":28.9,"room_to_5d_high_atr":1.55},"price":10.5823,"vwap":10.4724,"ext_from_open_pct":1.66,"max_ext_allowed_pct":3.0,"volume_pace":0.94,"trend":"flat","recent_slope_pct":0.1053,"volatility":"medium"},"price":10.5823,"volume":{"bars":180,"last_bar_volume":13902.0,"baseline_avg":12667.95,"bar_rvol":1.097415,"raw_accel":-0.084793,"smooth_accel":-0.109981,"accel_momentum":-1.475651,"rvol_3bar":[1.202921,1.246799,1.097415],"trend_3bar":"MIXED","projected_rvol":0.585888},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":3173.0,"sell_vol":1313.0,"unclassified_vol":0.0,"imbalance":0.414623,"bid":10.58,"ask":10.59,"spread_pct":0.094473,"quote_size_imbalance":null,"quote_age_s":0.440581},"context":{"vwap":10.472272,"price_vs_vwap_pct":1.050657,"ema9":10.518219,"ema20":10.473864,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.825528,"dist_to_hod_atr":5.583635,"atr":0.055107,"spread_atr":0.181464,"own_change_pct":0.856999,"rel_strength_pct":{"SPY":0.867557,"IWM":0.842963}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.455014},"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":"3bf9d7c8024c","ts":"2026-09-15T16:30:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 160.0s, plan says WATCH; stop 9.22, target 9.48 (premarket_high), R:R 0.72; R:R 0.72 < 2.0 at 9.37; breakout: 1-min close > 9.38 on >= 10415 sh","plan":{"state":"WATCH","setup":"","stop":9.2171,"target":9.48,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.37,"vwap":9.3453,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.045,"volatility":"high"},"price":9.37,"volume":{"bars":180,"last_bar_volume":7424.0,"baseline_avg":5297.9,"bar_rvol":1.40131,"raw_accel":0.957806,"smooth_accel":-0.607939,"accel_momentum":-0.255238,"rvol_3bar":[0.1591,0.722004,1.40131],"trend_3bar":"ACCELERATING","projected_rvol":1.186602},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":1080.0,"sell_vol":2977.0,"unclassified_vol":0.0,"imbalance":-0.467587,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.059559},"context":{"vwap":9.345282,"price_vs_vwap_pct":0.264501,"ema9":9.343374,"ema20":9.332072,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.678909,"dist_to_hod_atr":7.39667,"atr":0.021631,"spread_atr":0.462292,"own_change_pct":-0.030999,"rel_strength_pct":{"SPY":-0.020441,"IWM":-0.045035}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.655234},"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":"a8dafffab312","ts":"2026-09-15T16:30:45+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.59,"target_label":"prev_day_high","reward_risk":2.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0903,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":4.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.0472,"volatility":"high"},"price":12.09,"volume":{"bars":180,"last_bar_volume":954.0,"baseline_avg":966.25,"bar_rvol":0.987322,"raw_accel":2.949288,"smooth_accel":0.579641,"accel_momentum":1.393726,"rvol_3bar":[0.207483,0.156839,0.987322],"trend_3bar":"MIXED","projected_rvol":1.672445},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":891.0,"sell_vol":262.0,"unclassified_vol":0.0,"imbalance":0.545533,"bid":12.09,"ask":12.11,"spread_pct":0.165289,"quote_size_imbalance":null,"quote_age_s":9.742479},"context":{"vwap":12.090223,"price_vs_vwap_pct":-0.001846,"ema9":12.080778,"ema20":12.049044,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.052386,"atr":0.048858,"spread_atr":0.409348,"own_change_pct":0.08354,"rel_strength_pct":{"SPY":0.094099,"IWM":0.069505}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.538617},"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":"e98ac56e935b","ts":"2026-09-15T16:30:50+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9013,"target":12.59,"target_label":"prev_day_high","reward_risk":2.25,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":2.1},"price":12.1129,"vwap":12.0903,"ext_from_open_pct":-3.02,"max_ext_allowed_pct":3.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.0093,"volatility":"high"},"price":12.1129,"volume":{"bars":180,"last_bar_volume":954.0,"baseline_avg":966.25,"bar_rvol":0.987322,"raw_accel":2.949288,"smooth_accel":0.579641,"accel_momentum":1.393726,"rvol_3bar":[0.207483,0.156839,0.987322],"trend_3bar":"MIXED","projected_rvol":1.538732},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":887.0,"sell_vol":263.0,"unclassified_vol":0.0,"imbalance":0.542609,"bid":12.09,"ask":12.11,"spread_pct":0.165289,"quote_size_imbalance":null,"quote_age_s":1.870382},"context":{"vwap":12.090223,"price_vs_vwap_pct":0.187563,"ema9":12.080778,"ema20":12.049044,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.09422,"dist_to_hod_atr":10.583683,"atr":0.048858,"spread_atr":0.409348,"own_change_pct":0.08354,"rel_strength_pct":{"SPY":0.094099,"IWM":0.069505}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.53573},"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":"67e4bffa1bf3","ts":"2026-09-15T16:31:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 185.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.80; target 0.12 away > ~0.12 reachable in 204 min","plan":{"state":"PASS","setup":"","stop":9.2049,"target":9.48,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3578,"vwap":9.3454,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.591,"trend":"flat","recent_slope_pct":0.0362,"volatility":"high"},"price":9.3578,"volume":{"bars":181,"last_bar_volume":6844.0,"baseline_avg":5090.15,"bar_rvol":1.344558,"raw_accel":-0.078125,"smooth_accel":-0.009217,"accel_momentum":0.598723,"rvol_3bar":[0.722004,1.40131,1.344558],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":1438.0,"sell_vol":4482.0,"unclassified_vol":0.0,"imbalance":-0.514189,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.30378},"context":{"vwap":9.345375,"price_vs_vwap_pct":0.132956,"ema9":9.3487,"ema20":9.335684,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.806925,"dist_to_hod_atr":7.754071,"atr":0.022208,"spread_atr":0.450295,"own_change_pct":0.321199,"rel_strength_pct":{"SPY":0.350237,"IWM":0.279086}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.691357},"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":"02f18db28c78","ts":"2026-09-15T16:31:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 380.0s, plan says WATCH; stop 7.24, target 7.47 (prev_day_high), R:R 1.19; R:R 1.19 < 2.0 at 7.34; breakout: 1-min close > 7.36 on >= 297697 sh","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":1.19,"pos_in_5d_range_pct":39.9,"room_to_5d_high_atr":1.28},"price":7.345,"vwap":7.2235,"ext_from_open_pct":2.73,"max_ext_allowed_pct":4.0,"volume_pace":0.746,"trend":"flat","recent_slope_pct":0.1231,"volatility":"medium"},"price":7.345,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":261,"trade_rate":8.7,"buy_vol":146440.0,"sell_vol":55526.0,"unclassified_vol":0.0,"imbalance":0.450145,"bid":7.34,"ask":7.35,"spread_pct":0.136147,"quote_size_imbalance":null,"quote_age_s":0.079888},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.683126,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":-0.068027,"dist_to_hod_atr":0.154667,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.519305},"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":"a2c650c01df0","ts":"2026-09-15T16:31:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 185.0s, plan says WATCH; stop 5.37, target 5.53 (premarket_high), R:R 1.13; R:R 1.13 < 2.0 at 5.45; breakout: 1-min close > 5.46 on >= 67973 sh","plan":{"state":"WATCH","setup":"","stop":5.37,"target":5.5297,"target_label":"premarket_high","reward_risk":1.13,"pos_in_5d_range_pct":17.6,"room_to_5d_high_atr":1.79},"price":5.445,"vwap":5.3907,"ext_from_open_pct":-0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.738,"trend":"flat","recent_slope_pct":0.2723,"volatility":"medium"},"price":5.445,"volume":{"bars":181,"last_bar_volume":226870.0,"baseline_avg":43677.5,"bar_rvol":5.194208,"raw_accel":11.846546,"smooth_accel":1.871135,"accel_momentum":2.06776,"rvol_3bar":[4.481095,0.409149,5.194208],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":160,"trade_rate":5.333333,"buy_vol":37827.0,"sell_vol":43828.0,"unclassified_vol":0.0,"imbalance":-0.073492,"bid":5.44,"ask":5.45,"spread_pct":0.183655,"quote_size_imbalance":null,"quote_age_s":1.973654},"context":{"vwap":5.390709,"price_vs_vwap_pct":1.007127,"ema9":5.405986,"ema20":5.395814,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.891892,"dist_to_hod_atr":4.580335,"atr":0.022924,"spread_atr":0.436222,"own_change_pct":1.020408,"rel_strength_pct":{"SPY":1.049446,"IWM":0.978296}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.381733},"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":"62ec1521cc43","ts":"2026-09-15T16:31:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 400.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.85; target 0.07 away > ~0.07 reachable in 204 min","plan":{"state":"PASS","setup":"","stop":5.8764,"target":6.03,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":104.0,"room_to_5d_high_atr":-0.09},"price":5.9595,"vwap":5.9467,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":1.416,"trend":"flat","recent_slope_pct":-0.0233,"volatility":"medium"},"price":5.9595,"volume":{"bars":181,"last_bar_volume":90533.0,"baseline_avg":49082.7,"bar_rvol":1.844499,"raw_accel":1.462143,"smooth_accel":0.219006,"accel_momentum":0.112886,"rvol_3bar":[0.577236,0.771245,1.844499],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":23301.0,"sell_vol":2165.0,"unclassified_vol":0.0,"imbalance":0.829969,"bid":5.97,"ask":5.98,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":4.656961},"context":{"vwap":5.946676,"price_vs_vwap_pct":0.215646,"ema9":5.960438,"ema20":5.953412,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.820428,"dist_to_hod_atr":5.787755,"atr":0.019092,"spread_atr":0.523779,"own_change_pct":0.336134,"rel_strength_pct":{"SPY":0.365172,"IWM":0.294022}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.530878},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"20048bdf9ec1","ts":"2026-09-15T16:31:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 190.0s, plan says WATCH; stop 9.23, target 9.48 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 9.38; breakout: 1-min close > 9.39 on >= 10425 sh","plan":{"state":"WATCH","setup":"","stop":9.2271,"target":9.48,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.25},"price":9.38,"vwap":9.3454,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0836,"volatility":"high"},"price":9.38,"volume":{"bars":181,"last_bar_volume":6844.0,"baseline_avg":5090.15,"bar_rvol":1.344558,"raw_accel":-0.078125,"smooth_accel":-0.009217,"accel_momentum":0.598723,"rvol_3bar":[0.722004,1.40131,1.344558],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1008.0,"sell_vol":1971.0,"unclassified_vol":0.0,"imbalance":-0.323263,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":0.040731},"context":{"vwap":9.345375,"price_vs_vwap_pct":0.370507,"ema9":9.3487,"ema20":9.335684,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.573977,"dist_to_hod_atr":6.754418,"atr":0.022208,"spread_atr":0.450295,"own_change_pct":0.321199,"rel_strength_pct":{"SPY":0.350237,"IWM":0.279086}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.434646},"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":"b438cf758917","ts":"2026-09-15T16:31:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 405.0s, plan says WATCH; stop 5.90, target 6.03 (premarket_high), R:R 0.60; R:R 0.60 < 2.0 at 5.98; breakout: 1-min close > 5.99 on >= 90259 sh","plan":{"state":"WATCH","setup":"","stop":5.8969,"target":6.03,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":106.8,"room_to_5d_high_atr":-0.15},"price":5.98,"vwap":5.9467,"ext_from_open_pct":1.18,"max_ext_allowed_pct":3.0,"volume_pace":1.415,"trend":"flat","recent_slope_pct":0.0454,"volatility":"medium"},"price":5.98,"volume":{"bars":181,"last_bar_volume":90533.0,"baseline_avg":49082.7,"bar_rvol":1.844499,"raw_accel":1.462143,"smooth_accel":0.219006,"accel_momentum":0.112886,"rvol_3bar":[0.577236,0.771245,1.844499],"trend_3bar":"ACCELERATING","projected_rvol":0.134304},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":2220.0,"sell_vol":2163.0,"unclassified_vol":0.0,"imbalance":0.013005,"bid":5.97,"ask":5.98,"spread_pct":0.167364,"quote_size_imbalance":null,"quote_age_s":9.656961},"context":{"vwap":5.946676,"price_vs_vwap_pct":0.560377,"ema9":5.960438,"ema20":5.953412,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.482702,"dist_to_hod_atr":4.714009,"atr":0.019092,"spread_atr":0.523779,"own_change_pct":0.336134,"rel_strength_pct":{"SPY":0.365172,"IWM":0.294022}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.023987},"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":"fbd3c7c7a87c","ts":"2026-09-15T16:31:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 195.0s, plan says PASS; stop 9.21, target 9.48 (premarket_high), R:R 0.80; target 0.12 away > ~0.12 reachable in 204 min","plan":{"state":"PASS","setup":"","stop":9.2052,"target":9.48,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3581,"vwap":9.3454,"ext_from_open_pct":0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0369,"volatility":"high"},"price":9.3581,"volume":{"bars":181,"last_bar_volume":6844.0,"baseline_avg":5090.15,"bar_rvol":1.344558,"raw_accel":-0.078125,"smooth_accel":-0.009217,"accel_momentum":0.598723,"rvol_3bar":[0.722004,1.40131,1.344558],"trend_3bar":"MIXED","projected_rvol":0.290758},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1005.0,"sell_vol":1712.0,"unclassified_vol":0.0,"imbalance":-0.260213,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":2.416487},"context":{"vwap":9.345375,"price_vs_vwap_pct":0.136166,"ema9":9.3487,"ema20":9.335684,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.803778,"dist_to_hod_atr":7.740563,"atr":0.022208,"spread_atr":0.450295,"own_change_pct":0.321199,"rel_strength_pct":{"SPY":0.350237,"IWM":0.279086}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.349872},"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":"b70761787cc0","ts":"2026-09-15T16:31:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 390.0s, plan says PASS; stop 7.24, target 7.47 (prev_day_high), R:R 1.25; target 0.13 away > ~0.13 reachable in 204 min","plan":{"state":"PASS","setup":"","stop":7.2356,"target":7.47,"target_label":"prev_day_high","reward_risk":1.25,"pos_in_5d_range_pct":39.3,"room_to_5d_high_atr":1.29},"price":7.34,"vwap":7.2236,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.746,"trend":"flat","recent_slope_pct":0.1094,"volatility":"medium"},"price":7.34,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":1.0124},"flow":{"window_s":30,"trades":282,"trade_rate":9.4,"buy_vol":157672.0,"sell_vol":63329.0,"unclassified_vol":0.0,"imbalance":0.426889,"bid":7.34,"ask":7.35,"spread_pct":0.136147,"quote_size_imbalance":null,"quote_age_s":0.114497},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.613907,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":-0.136054,"dist_to_hod_atr":0.309335,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.492476},"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":"4295eca6591b","ts":"2026-09-15T16:31:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 200.0s, plan says WATCH; stop 9.22, target 9.48 (premarket_high), R:R 0.71; R:R 0.71 < 2.0 at 9.37; breakout: 1-min close > 9.39 on >= 10425 sh","plan":{"state":"WATCH","setup":"","stop":9.2186,"target":9.48,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":6.2,"room_to_5d_high_atr":3.27},"price":9.3715,"vwap":9.3454,"ext_from_open_pct":0.23,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0655,"volatility":"high"},"price":9.3715,"volume":{"bars":181,"last_bar_volume":6844.0,"baseline_avg":5090.15,"bar_rvol":1.344558,"raw_accel":-0.078125,"smooth_accel":-0.009217,"accel_momentum":0.598723,"rvol_3bar":[0.722004,1.40131,1.344558],"trend_3bar":"MIXED","projected_rvol":0.222783},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":979.0,"sell_vol":1612.0,"unclassified_vol":0.0,"imbalance":-0.244307,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":7.416487},"context":{"vwap":9.345375,"price_vs_vwap_pct":0.279552,"ema9":9.3487,"ema20":9.335684,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.663169,"dist_to_hod_atr":7.137168,"atr":0.022208,"spread_atr":0.450295,"own_change_pct":0.321199,"rel_strength_pct":{"SPY":0.350237,"IWM":0.279086}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.328485},"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":"3ee27fff3560","ts":"2026-09-15T16:31:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 395.0s, plan says WATCH; stop 7.24, target 7.47 (prev_day_high), R:R 1.19; R:R 1.19 < 2.0 at 7.34; breakout: 1-min close > 7.36 on >= 297697 sh","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":1.19,"pos_in_5d_range_pct":39.9,"room_to_5d_high_atr":1.28},"price":7.345,"vwap":7.2237,"ext_from_open_pct":2.73,"max_ext_allowed_pct":4.0,"volume_pace":0.746,"trend":"flat","recent_slope_pct":0.1231,"volatility":"medium"},"price":7.345,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":1.327642},"flow":{"window_s":30,"trades":201,"trade_rate":6.7,"buy_vol":122552.0,"sell_vol":71451.0,"unclassified_vol":0.0,"imbalance":0.263403,"bid":7.34,"ask":7.35,"spread_pct":0.136147,"quote_size_imbalance":null,"quote_age_s":0.54671},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.683126,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":-0.068027,"dist_to_hod_atr":0.154667,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.303872},"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":"2f5b7808476f","ts":"2026-09-15T16:31:25+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 250.0s, plan says PASS; stop 10.36, target 10.94 (prev_day_high), R:R 1.05; target 0.29 away > ~0.21 reachable in 204 min","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.935,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":33.4,"room_to_5d_high_atr":1.45},"price":10.64,"vwap":10.4735,"ext_from_open_pct":2.21,"max_ext_allowed_pct":3.0,"volume_pace":0.945,"trend":"flat","recent_slope_pct":0.1831,"volatility":"medium"},"price":10.64,"volume":{"bars":181,"last_bar_volume":16473.0,"baseline_avg":12544.45,"bar_rvol":1.31317,"raw_accel":0.184937,"smooth_accel":-0.190387,"accel_momentum":-0.080406,"rvol_3bar":[1.246799,1.097415,1.31317],"trend_3bar":"MIXED","projected_rvol":5.426017},"flow":{"window_s":30,"trades":179,"trade_rate":5.966667,"buy_vol":23723.0,"sell_vol":14610.0,"unclassified_vol":0.0,"imbalance":0.237733,"bid":10.63,"ask":10.64,"spread_pct":0.094029,"quote_size_imbalance":null,"quote_age_s":0.164712},"context":{"vwap":10.472586,"price_vs_vwap_pct":1.598592,"ema9":10.525795,"ema20":10.481696,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.295684,"dist_to_hod_atr":4.295548,"atr":0.0582,"spread_atr":0.171822,"own_change_pct":0.774224,"rel_strength_pct":{"SPY":0.803262,"IWM":0.732112}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.312183},"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":"bbe3a9756729","ts":"2026-09-15T16:31:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.82; target 0.13 away > ~0.12 reachable in 204 min","plan":{"state":"PASS","setup":"","stop":9.2012,"target":9.48,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.3},"price":9.3541,"vwap":9.3454,"ext_from_open_pct":0.04,"max_ext_allowed_pct":3.0,"volume_pace":0.59,"trend":"flat","recent_slope_pct":0.0283,"volatility":"high"},"price":9.3541,"volume":{"bars":181,"last_bar_volume":6844.0,"baseline_avg":5090.15,"bar_rvol":1.344558,"raw_accel":-0.078125,"smooth_accel":-0.009217,"accel_momentum":0.598723,"rvol_3bar":[0.722004,1.40131,1.344558],"trend_3bar":"MIXED","projected_rvol":0.226319},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":959.0,"sell_vol":1711.0,"unclassified_vol":0.0,"imbalance":-0.281648,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":0.309197},"context":{"vwap":9.345375,"price_vs_vwap_pct":0.093364,"ema9":9.3487,"ema20":9.335684,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.84575,"dist_to_hod_atr":7.92068,"atr":0.022208,"spread_atr":0.450295,"own_change_pct":0.321199,"rel_strength_pct":{"SPY":0.350237,"IWM":0.279086}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.378692},"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":"ab7e07d75f84","ts":"2026-09-15T16:31:25+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2241,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.748,"trend":"flat","recent_slope_pct":0.1911,"volatility":"medium"},"price":7.37,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":2.087578},"flow":{"window_s":30,"trades":285,"trade_rate":9.5,"buy_vol":143399.0,"sell_vol":82468.0,"unclassified_vol":0.0,"imbalance":0.269765,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.308037},"context":{"vwap":7.223421,"price_vs_vwap_pct":2.029223,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":0.272109,"dist_to_hod_atr":-0.61867,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.311211},"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":"dd2253e3795d","ts":"2026-09-15T16:31:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 255.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.05; R:R 0.05 < 2.0 at 10.63; breakout: 1-min close > 10.61 on >= 26235 sh","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.05,"pos_in_5d_range_pct":32.4,"room_to_5d_high_atr":1.47},"price":10.6273,"vwap":10.4736,"ext_from_open_pct":2.09,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.1592,"volatility":"medium"},"price":10.6273,"volume":{"bars":181,"last_bar_volume":16473.0,"baseline_avg":12544.45,"bar_rvol":1.31317,"raw_accel":0.184937,"smooth_accel":-0.190387,"accel_momentum":-0.080406,"rvol_3bar":[1.246799,1.097415,1.31317],"trend_3bar":"MIXED","projected_rvol":5.51176},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":16684.0,"sell_vol":17887.0,"unclassified_vol":0.0,"imbalance":-0.034798,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.662833},"context":{"vwap":10.472586,"price_vs_vwap_pct":1.477323,"ema9":10.525795,"ema20":10.481696,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.412305,"dist_to_hod_atr":4.513761,"atr":0.0582,"spread_atr":0.171822,"own_change_pct":0.774224,"rel_strength_pct":{"SPY":0.803262,"IWM":0.732112}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.045696},"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":"26b6fe61080d","ts":"2026-09-15T16:31:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 210.0s, plan says WATCH; stop 9.23, target 9.48 (premarket_high), R:R 0.62; R:R 0.62 < 2.0 at 9.38; breakout: 1-min close > 9.39 on >= 10425 sh","plan":{"state":"WATCH","setup":"","stop":9.2321,"target":9.48,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":6.8,"room_to_5d_high_atr":3.25},"price":9.385,"vwap":9.3454,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.589,"trend":"flat","recent_slope_pct":0.0943,"volatility":"high"},"price":9.385,"volume":{"bars":181,"last_bar_volume":6844.0,"baseline_avg":5090.15,"bar_rvol":1.344558,"raw_accel":-0.078125,"smooth_accel":-0.009217,"accel_momentum":0.598723,"rvol_3bar":[0.722004,1.40131,1.344558],"trend_3bar":"MIXED","projected_rvol":0.195672},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":301.0,"sell_vol":197.0,"unclassified_vol":0.0,"imbalance":0.208835,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":0.670973},"context":{"vwap":9.345375,"price_vs_vwap_pct":0.424009,"ema9":9.3487,"ema20":9.335684,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.521511,"dist_to_hod_atr":6.52927,"atr":0.022208,"spread_atr":0.450295,"own_change_pct":0.321199,"rel_strength_pct":{"SPY":0.350237,"IWM":0.279086}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.280791},"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":"098f89296e1a","ts":"2026-09-15T16:31:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2242,"ext_from_open_pct":3.01,"max_ext_allowed_pct":4.0,"volume_pace":0.748,"trend":"flat","recent_slope_pct":0.1775,"volatility":"medium"},"price":7.365,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":1.949435},"flow":{"window_s":30,"trades":245,"trade_rate":8.166667,"buy_vol":133368.0,"sell_vol":52379.0,"unclassified_vol":0.0,"imbalance":0.436018,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.50445},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.960003,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":0.204082,"dist_to_hod_atr":-0.464002,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.503007},"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":"ea7472b628b1","ts":"2026-09-15T16:31:35+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 260.0s, plan says PASS; stop 10.36, target 10.94 (prev_day_high), R:R 1.13; target 0.30 away > ~0.21 reachable in 203 min","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.935,"target_label":"prev_day_high","reward_risk":1.13,"pos_in_5d_range_pct":32.6,"room_to_5d_high_atr":1.47},"price":10.63,"vwap":10.4736,"ext_from_open_pct":2.11,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.1643,"volatility":"medium"},"price":10.63,"volume":{"bars":181,"last_bar_volume":16473.0,"baseline_avg":12544.45,"bar_rvol":1.31317,"raw_accel":0.184937,"smooth_accel":-0.190387,"accel_momentum":-0.080406,"rvol_3bar":[1.246799,1.097415,1.31317],"trend_3bar":"MIXED","projected_rvol":4.731472},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":16482.0,"sell_vol":17727.0,"unclassified_vol":0.0,"imbalance":-0.036394,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.415016},"context":{"vwap":10.472586,"price_vs_vwap_pct":1.503104,"ema9":10.525795,"ema20":10.481696,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.387511,"dist_to_hod_atr":4.467369,"atr":0.0582,"spread_atr":0.171822,"own_change_pct":0.774224,"rel_strength_pct":{"SPY":0.803262,"IWM":0.732112}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.047791},"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":"1915bdd2d22b","ts":"2026-09-15T16:31:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 265.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.04; R:R 0.04 < 2.0 at 10.63; breakout: 1-min close > 10.61 on >= 26235 sh","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.04,"pos_in_5d_range_pct":32.4,"room_to_5d_high_atr":1.47},"price":10.628,"vwap":10.4736,"ext_from_open_pct":2.09,"max_ext_allowed_pct":3.0,"volume_pace":0.945,"trend":"flat","recent_slope_pct":0.1605,"volatility":"medium"},"price":10.628,"volume":{"bars":181,"last_bar_volume":16473.0,"baseline_avg":12544.45,"bar_rvol":1.31317,"raw_accel":0.184937,"smooth_accel":-0.190387,"accel_momentum":-0.080406,"rvol_3bar":[1.246799,1.097415,1.31317],"trend_3bar":"MIXED","projected_rvol":4.199945},"flow":{"window_s":30,"trades":119,"trade_rate":3.966667,"buy_vol":15867.0,"sell_vol":12015.0,"unclassified_vol":0.0,"imbalance":0.138154,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.107864},"context":{"vwap":10.472586,"price_vs_vwap_pct":1.484007,"ema9":10.525795,"ema20":10.481696,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.405877,"dist_to_hod_atr":4.501734,"atr":0.0582,"spread_atr":0.171822,"own_change_pct":0.774224,"rel_strength_pct":{"SPY":0.803262,"IWM":0.732112}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.181419},"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":"8c3bce90872d","ts":"2026-09-15T16:31:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2246,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.75,"trend":"flat","recent_slope_pct":0.1775,"volatility":"medium"},"price":7.365,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":2.313747},"flow":{"window_s":30,"trades":233,"trade_rate":7.766667,"buy_vol":160631.0,"sell_vol":106690.0,"unclassified_vol":0.0,"imbalance":0.201784,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.088715},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.960003,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":0.204082,"dist_to_hod_atr":-0.464002,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.232785},"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":"ec933f48a6f9","ts":"2026-09-15T16:31:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.67,"target":10.1263,"target_label":"clear air (typical 60-min move)","reward_risk":0.85,"pos_in_5d_range_pct":501.7,"room_to_5d_high_atr":-5.79},"price":9.9163,"vwap":9.6373,"ext_from_open_pct":4.93,"max_ext_allowed_pct":5.0,"volume_pace":4.122,"trend":"flat","recent_slope_pct":-0.0272,"volatility":"low"},"price":9.9163,"volume":{"bars":181,"last_bar_volume":8748.0,"baseline_avg":8324.5,"bar_rvol":1.050874,"raw_accel":-0.701962,"smooth_accel":0.120343,"accel_momentum":0.151041,"rvol_3bar":[1.802242,4.207901,1.050874],"trend_3bar":"MIXED","projected_rvol":0.471219},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1061.0,"sell_vol":1460.0,"unclassified_vol":0.0,"imbalance":-0.158271,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":0.165366},"context":{"vwap":9.636841,"price_vs_vwap_pct":2.8999,"ema9":9.910025,"ema20":9.874231,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.781373,"dist_to_hod_atr":5.916176,"atr":0.047953,"spread_atr":0.417073,"own_change_pct":0.092716,"rel_strength_pct":{"SPY":0.121754,"IWM":0.050603}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.166322},"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":"3374f4175a1c","ts":"2026-09-15T16:31:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 435.0s, plan says PASS; stop 5.88, target 6.03 (premarket_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 203 min","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9467,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.414,"trend":"flat","recent_slope_pct":-0.0216,"volatility":"medium"},"price":5.96,"volume":{"bars":181,"last_bar_volume":90533.0,"baseline_avg":49082.7,"bar_rvol":1.844499,"raw_accel":1.462143,"smooth_accel":0.219006,"accel_momentum":0.112886,"rvol_3bar":[0.577236,0.771245,1.844499],"trend_3bar":"ACCELERATING","projected_rvol":1.156796},"flow":{"window_s":30,"trades":155,"trade_rate":5.166667,"buy_vol":11798.0,"sell_vol":29138.0,"unclassified_vol":0.0,"imbalance":-0.423588,"bid":5.96,"ask":5.97,"spread_pct":0.167645,"quote_size_imbalance":null,"quote_age_s":4.016655},"context":{"vwap":5.946676,"price_vs_vwap_pct":0.224054,"ema9":5.960438,"ema20":5.953412,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.761566,"atr":0.019092,"spread_atr":0.523779,"own_change_pct":0.336134,"rel_strength_pct":{"SPY":0.365172,"IWM":0.294022}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.781308},"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":"b56171db6207","ts":"2026-09-15T16:31:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 270.0s, plan says PASS; stop 10.36, target 10.94 (prev_day_high), R:R 1.09; target 0.30 away > ~0.21 reachable in 203 min","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.935,"target_label":"prev_day_high","reward_risk":1.09,"pos_in_5d_range_pct":33.0,"room_to_5d_high_atr":1.46},"price":10.635,"vwap":10.4738,"ext_from_open_pct":2.16,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.1737,"volatility":"medium"},"price":10.635,"volume":{"bars":181,"last_bar_volume":16473.0,"baseline_avg":12544.45,"bar_rvol":1.31317,"raw_accel":0.184937,"smooth_accel":-0.190387,"accel_momentum":-0.080406,"rvol_3bar":[1.246799,1.097415,1.31317],"trend_3bar":"MIXED","projected_rvol":4.235392},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":18077.0,"sell_vol":13878.0,"unclassified_vol":0.0,"imbalance":0.131404,"bid":10.63,"ask":10.64,"spread_pct":0.094029,"quote_size_imbalance":null,"quote_age_s":0.05694},"context":{"vwap":10.472586,"price_vs_vwap_pct":1.550848,"ema9":10.525795,"ema20":10.481696,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.341598,"dist_to_hod_atr":4.381459,"atr":0.0582,"spread_atr":0.171822,"own_change_pct":0.774224,"rel_strength_pct":{"SPY":0.803262,"IWM":0.732112}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.172555},"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":"79f26135e5ec","ts":"2026-09-15T16:31:45+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2248,"ext_from_open_pct":2.94,"max_ext_allowed_pct":4.0,"volume_pace":0.751,"trend":"flat","recent_slope_pct":0.1639,"volatility":"medium"},"price":7.36,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":2.446452},"flow":{"window_s":30,"trades":263,"trade_rate":8.766667,"buy_vol":178701.0,"sell_vol":122723.0,"unclassified_vol":0.0,"imbalance":0.185712,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.202431},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.890784,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":0.136054,"dist_to_hod_atr":-0.309335,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.214244},"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":"f44f653b174c","ts":"2026-09-15T16:31:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.67,"target":10.12,"target_label":"clear air (typical 60-min move)","reward_risk":0.88,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6373,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":4.12,"trend":"flat","recent_slope_pct":-0.0399,"volatility":"low"},"price":9.91,"volume":{"bars":181,"last_bar_volume":8748.0,"baseline_avg":8324.5,"bar_rvol":1.050874,"raw_accel":-0.701962,"smooth_accel":0.120343,"accel_momentum":0.151041,"rvol_3bar":[1.802242,4.207901,1.050874],"trend_3bar":"MIXED","projected_rvol":0.425539},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":973.0,"sell_vol":1072.0,"unclassified_vol":0.0,"imbalance":-0.048411,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":5.165366},"context":{"vwap":9.636841,"price_vs_vwap_pct":2.834525,"ema9":9.910025,"ema20":9.874231,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.047553,"atr":0.047953,"spread_atr":0.417073,"own_change_pct":0.092716,"rel_strength_pct":{"SPY":0.121754,"IWM":0.050603}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.050874},"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":"e9e97babba34","ts":"2026-09-15T16:31:50+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2249,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.751,"trend":"flat","recent_slope_pct":0.1775,"volatility":"medium"},"price":7.365,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":2.313252},"flow":{"window_s":30,"trades":274,"trade_rate":9.133333,"buy_vol":169497.0,"sell_vol":113523.0,"unclassified_vol":0.0,"imbalance":0.197774,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.675972},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.960003,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":0.204082,"dist_to_hod_atr":-0.464002,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.854587,"IWM":0.783437}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.22816},"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":"72644886902c","ts":"2026-09-15T16:31:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.67,"target":10.1299,"target_label":"clear air (typical 60-min move)","reward_risk":0.84,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.9199,"vwap":9.6373,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":4.119,"trend":"flat","recent_slope_pct":-0.0199,"volatility":"low"},"price":9.9199,"volume":{"bars":181,"last_bar_volume":8748.0,"baseline_avg":8324.5,"bar_rvol":1.050874,"raw_accel":-0.701962,"smooth_accel":0.120343,"accel_momentum":0.151041,"rvol_3bar":[1.802242,4.207901,1.050874],"trend_3bar":"MIXED","projected_rvol":0.401138},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":801.0,"sell_vol":628.0,"unclassified_vol":0.0,"imbalance":0.121064,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":10.165366},"context":{"vwap":9.636841,"price_vs_vwap_pct":2.937256,"ema9":9.910025,"ema20":9.874231,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.746078,"dist_to_hod_atr":5.841102,"atr":0.047953,"spread_atr":0.417073,"own_change_pct":0.092716,"rel_strength_pct":{"SPY":0.121754,"IWM":0.050603}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.127223},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8a28d7b3454b","ts":"2026-09-15T16:32:00+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.82,"pos_in_5d_range_pct":42.3,"room_to_5d_high_atr":1.23},"price":7.3667,"vwap":7.2251,"ext_from_open_pct":3.03,"max_ext_allowed_pct":4.0,"volume_pace":0.752,"trend":"flat","recent_slope_pct":0.1822,"volatility":"medium"},"price":7.3667,"volume":{"bars":181,"last_bar_volume":219843.0,"baseline_avg":190564.95,"bar_rvol":1.153638,"raw_accel":3.614553,"smooth_accel":-0.254186,"accel_momentum":0.097635,"rvol_3bar":[1.144878,0.109535,1.153638],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":211,"trade_rate":7.033333,"buy_vol":131906.0,"sell_vol":111402.0,"unclassified_vol":0.0,"imbalance":0.084272,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.610387},"context":{"vwap":7.223421,"price_vs_vwap_pct":1.983538,"ema9":7.305943,"ema20":7.289549,"ema_stack":true,"ema_warm":true,"hod":7.35,"dist_to_hod_pct":0.227211,"dist_to_hod_atr":-0.516589,"atr":0.032327,"spread_atr":0.309335,"own_change_pct":0.825549,"rel_strength_pct":{"SPY":0.840067,"IWM":0.785197}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.097219},"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":"a786d4120e8e","ts":"2026-09-15T16:32:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.3699,"vwap":7.2252,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.752,"trend":"flat","recent_slope_pct":0.1588,"volatility":"medium"},"price":7.3699,"volume":{"bars":182,"last_bar_volume":429055.0,"baseline_avg":194404.7,"bar_rvol":2.20702,"raw_accel":0.951643,"smooth_accel":-0.125631,"accel_momentum":0.128555,"rvol_3bar":[0.109535,1.153638,2.20702],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":90879.0,"sell_vol":90452.0,"unclassified_vol":0.0,"imbalance":0.002355,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.292871},"context":{"vwap":7.225149,"price_vs_vwap_pct":2.00343,"ema9":7.318094,"ema20":7.296896,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.001357,"dist_to_hod_atr":0.002804,"atr":0.035661,"spread_atr":0.280417,"own_change_pct":1.284149,"rel_strength_pct":{"SPY":1.298667,"IWM":1.243797}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.005197},"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":"1f40b1cf8137","ts":"2026-09-15T16:32:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says PASS; stop 9.85, target 10.12 (clear air (typical 60-min move)), R:R 3.27; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.12,"target_label":"clear air (typical 60-min move)","reward_risk":3.27,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6374,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":4.114,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"low"},"price":9.91,"volume":{"bars":182,"last_bar_volume":3229.0,"baseline_avg":8473.7,"bar_rvol":0.381061,"raw_accel":-0.630887,"smooth_accel":0.440687,"accel_momentum":0.320345,"rvol_3bar":[4.207901,1.050874,0.381061],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":274.0,"sell_vol":284.0,"unclassified_vol":0.0,"imbalance":-0.017921,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":2.87692},"context":{"vwap":9.637377,"price_vs_vwap_pct":2.82881,"ema9":9.91202,"ema20":9.87859,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.213722,"atr":0.046671,"spread_atr":0.428533,"own_change_pct":-0.100705,"rel_strength_pct":{"SPY":-0.086187,"IWM":-0.141057}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.006829},"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":"44b799845b10","ts":"2026-09-15T16:32:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 295.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.10; breakout of ceiling 10.60 but last 5 bars not sloping up (0.135% <= 0.177%); R:R 0.10 < 2.0 at 10.61; breakout: 1-min","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":31.4,"room_to_5d_high_atr":1.49},"price":10.6146,"vwap":10.474,"ext_from_open_pct":1.97,"max_ext_allowed_pct":4.0,"volume_pace":0.945,"trend":"flat","recent_slope_pct":0.1351,"volatility":"medium"},"price":10.6146,"volume":{"bars":182,"last_bar_volume":42937.0,"baseline_avg":12685.85,"bar_rvol":3.384637,"raw_accel":1.606508,"smooth_accel":0.112625,"accel_momentum":0.303013,"rvol_3bar":[1.097415,1.31317,3.384637],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":6984.0,"sell_vol":2880.0,"unclassified_vol":0.0,"imbalance":0.416058,"bid":10.64,"ask":10.65,"spread_pct":0.093941,"quote_size_imbalance":null,"quote_age_s":0.108338},"context":{"vwap":10.473916,"price_vs_vwap_pct":1.34318,"ema9":10.549656,"ema20":10.497259,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.528926,"dist_to_hod_atr":4.341416,"atr":0.063436,"spread_atr":0.15764,"own_change_pct":0.901422,"rel_strength_pct":{"SPY":0.91594,"IWM":0.86107}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.408207},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0ea0ff375800","ts":"2026-09-15T16:32:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2252,"ext_from_open_pct":2.94,"max_ext_allowed_pct":4.0,"volume_pace":0.752,"trend":"flat","recent_slope_pct":0.1319,"volatility":"medium"},"price":7.36,"volume":{"bars":182,"last_bar_volume":429055.0,"baseline_avg":194404.7,"bar_rvol":2.20702,"raw_accel":0.951643,"smooth_accel":-0.125631,"accel_momentum":0.128555,"rvol_3bar":[0.109535,1.153638,2.20702],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":199,"trade_rate":6.633333,"buy_vol":83996.0,"sell_vol":73359.0,"unclassified_vol":0.0,"imbalance":0.067599,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.012173},"context":{"vwap":7.225149,"price_vs_vwap_pct":1.866408,"ema9":7.318094,"ema20":7.296896,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.280417,"atr":0.035661,"spread_atr":0.280417,"own_change_pct":1.284149,"rel_strength_pct":{"SPY":1.298667,"IWM":1.243797}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.149192},"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":"584c2fff5bf5","ts":"2026-09-15T16:32:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 30.0s, plan says WATCH; stop 9.86, target 10.13 (clear air (typical 60-min move)), R:R 3.27; breakout: 1-min close > 9.98 on >= 9344 sh","plan":{"state":"WATCH","setup":"","stop":9.8558,"target":10.13,"target_label":"clear air (typical 60-min move)","reward_risk":3.27,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6374,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":4.112,"trend":"flat","recent_slope_pct":-0.0092,"volatility":"low"},"price":9.92,"volume":{"bars":182,"last_bar_volume":3229.0,"baseline_avg":8473.7,"bar_rvol":0.381061,"raw_accel":-0.630887,"smooth_accel":0.440687,"accel_momentum":0.320345,"rvol_3bar":[4.207901,1.050874,0.381061],"trend_3bar":"DECELERATING","projected_rvol":0.123677},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":274.0,"sell_vol":275.0,"unclassified_vol":0.0,"imbalance":-0.001821,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":4.052618},"context":{"vwap":9.637377,"price_vs_vwap_pct":2.932572,"ema9":9.91202,"ema20":9.87859,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":5.999456,"atr":0.046671,"spread_atr":0.428533,"own_change_pct":-0.100705,"rel_strength_pct":{"SPY":-0.086187,"IWM":-0.141057}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.000694},"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":"69e42c726b2b","ts":"2026-09-15T16:32:15+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 255.0s, plan says PASS; stop 5.35, target 5.53 (premarket_high), R:R 1.84; target 0.11 away > ~0.10 reachable in 203 min","plan":{"state":"PASS","setup":"","stop":5.3533,"target":5.5297,"target_label":"premarket_high","reward_risk":1.84,"pos_in_5d_range_pct":12.1,"room_to_5d_high_atr":1.91},"price":5.4155,"vwap":5.3914,"ext_from_open_pct":-0.82,"max_ext_allowed_pct":4.0,"volume_pace":0.744,"trend":"flat","recent_slope_pct":0.1412,"volatility":"medium"},"price":5.4155,"volume":{"bars":182,"last_bar_volume":98742.0,"baseline_avg":54110.95,"bar_rvol":1.824806,"raw_accel":-0.564764,"smooth_accel":0.419083,"accel_momentum":-1.452051,"rvol_3bar":[0.409149,5.194208,1.824806],"trend_3bar":"MIXED","projected_rvol":3.610508},"flow":{"window_s":30,"trades":165,"trade_rate":5.5,"buy_vol":59753.0,"sell_vol":8795.0,"unclassified_vol":0.0,"imbalance":0.743391,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":3.204749},"context":{"vwap":5.391184,"price_vs_vwap_pct":0.451025,"ema9":5.415789,"ema20":5.401451,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.423423,"dist_to_hod_atr":5.352273,"atr":0.02513,"spread_atr":0.397939,"own_change_pct":1.279219,"rel_strength_pct":{"SPY":1.293737,"IWM":1.238866}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.356545},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c614e26807dc","ts":"2026-09-15T16:32:20+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says PASS; stop 9.85, target 10.12 (clear air (typical 60-min move)), R:R 3.27; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.12,"target_label":"clear air (typical 60-min move)","reward_risk":3.27,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6375,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":4.111,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"low"},"price":9.91,"volume":{"bars":182,"last_bar_volume":3229.0,"baseline_avg":8473.7,"bar_rvol":0.381061,"raw_accel":-0.630887,"smooth_accel":0.440687,"accel_momentum":0.320345,"rvol_3bar":[4.207901,1.050874,0.381061],"trend_3bar":"DECELERATING","projected_rvol":0.173478},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":474.0,"sell_vol":293.0,"unclassified_vol":0.0,"imbalance":0.235984,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":2.460489},"context":{"vwap":9.637377,"price_vs_vwap_pct":2.82881,"ema9":9.91202,"ema20":9.87859,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.213722,"atr":0.046671,"spread_atr":0.428533,"own_change_pct":-0.100705,"rel_strength_pct":{"SPY":-0.086187,"IWM":-0.141057}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.089925},"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":"d78bb18f4892","ts":"2026-09-15T16:32:20+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 305.0s, plan says PASS; stop 10.36, target 10.94 (prev_day_high), R:R 1.09; target 0.30 away > ~0.21 reachable in 203 min","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.935,"target_label":"prev_day_high","reward_risk":1.09,"pos_in_5d_range_pct":33.0,"room_to_5d_high_atr":1.46},"price":10.635,"vwap":10.4741,"ext_from_open_pct":2.16,"max_ext_allowed_pct":3.0,"volume_pace":0.944,"trend":"flat","recent_slope_pct":0.1735,"volatility":"medium"},"price":10.635,"volume":{"bars":182,"last_bar_volume":42937.0,"baseline_avg":12685.85,"bar_rvol":3.384637,"raw_accel":1.606508,"smooth_accel":0.112625,"accel_momentum":0.303013,"rvol_3bar":[1.097415,1.31317,3.384637],"trend_3bar":"ACCELERATING","projected_rvol":0.984246},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4440.0,"sell_vol":2620.0,"unclassified_vol":0.0,"imbalance":0.25779,"bid":10.63,"ask":10.64,"spread_pct":0.094029,"quote_size_imbalance":null,"quote_age_s":0.383397},"context":{"vwap":10.473916,"price_vs_vwap_pct":1.53795,"ema9":10.549656,"ema20":10.497259,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.341598,"dist_to_hod_atr":4.019829,"atr":0.063436,"spread_atr":0.15764,"own_change_pct":0.901422,"rel_strength_pct":{"SPY":0.91594,"IWM":0.86107}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.872527},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"77c0621368cc","ts":"2026-09-15T16:32:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2255,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.753,"trend":"flat","recent_slope_pct":0.1591,"volatility":"medium"},"price":7.37,"volume":{"bars":182,"last_bar_volume":429055.0,"baseline_avg":194404.7,"bar_rvol":2.20702,"raw_accel":0.951643,"smooth_accel":-0.125631,"accel_momentum":0.128555,"rvol_3bar":[0.109535,1.153638,2.20702],"trend_3bar":"ACCELERATING","projected_rvol":1.350214},"flow":{"window_s":30,"trades":168,"trade_rate":5.6,"buy_vol":68842.0,"sell_vol":80355.0,"unclassified_vol":0.0,"imbalance":-0.077166,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.287849},"context":{"vwap":7.225149,"price_vs_vwap_pct":2.004814,"ema9":7.318094,"ema20":7.296896,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.035661,"spread_atr":0.280417,"own_change_pct":1.284149,"rel_strength_pct":{"SPY":1.298667,"IWM":1.243797}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.170308},"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":"44b5178254fc","ts":"2026-09-15T16:32:20+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 260.0s, plan says WATCH; stop 5.37, target 5.53 (premarket_high), R:R 0.78; R:R 0.78 < 2.0 at 5.46; breakout: 1-min close > 5.47 on >= 69278 sh","plan":{"state":"WATCH","setup":"","stop":5.37,"target":5.5297,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":1.73},"price":5.4599,"vwap":5.3918,"ext_from_open_pct":-0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.748,"trend":"flat","recent_slope_pct":0.3043,"volatility":"medium"},"price":5.4599,"volume":{"bars":182,"last_bar_volume":98742.0,"baseline_avg":54110.95,"bar_rvol":1.824806,"raw_accel":-0.564764,"smooth_accel":0.419083,"accel_momentum":-1.452051,"rvol_3bar":[0.409149,5.194208,1.824806],"trend_3bar":"MIXED","projected_rvol":6.201536},"flow":{"window_s":30,"trades":251,"trade_rate":8.366667,"buy_vol":55115.0,"sell_vol":67431.0,"unclassified_vol":0.0,"imbalance":-0.100501,"bid":5.45,"ask":5.46,"spread_pct":0.183318,"quote_size_imbalance":null,"quote_age_s":0.313358},"context":{"vwap":5.391184,"price_vs_vwap_pct":1.274592,"ema9":5.415789,"ema20":5.401451,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.623423,"dist_to_hod_atr":3.585426,"atr":0.02513,"spread_atr":0.397939,"own_change_pct":1.279219,"rel_strength_pct":{"SPY":1.293737,"IWM":1.238866}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.183395},"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":"0d3bba1f9158","ts":"2026-09-15T16:32:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 265.0s, plan says PASS; stop 9.20, target 9.48 (premarket_high), R:R 0.80; target 0.12 away > ~0.12 reachable in 203 min","plan":{"state":"PASS","setup":"","stop":9.2043,"target":9.48,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3572,"vwap":9.3455,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.588,"trend":"flat","recent_slope_pct":0.0414,"volatility":"high"},"price":9.3572,"volume":{"bars":182,"last_bar_volume":4351.0,"baseline_avg":5305.95,"bar_rvol":0.820023,"raw_accel":-0.364261,"smooth_accel":0.174478,"accel_momentum":0.183695,"rvol_3bar":[1.40131,1.344558,0.820023],"trend_3bar":"DECELERATING","projected_rvol":0.400758},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":104.0,"sell_vol":1388.0,"unclassified_vol":0.0,"imbalance":-0.86059,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":1.090905},"context":{"vwap":9.345454,"price_vs_vwap_pct":0.125682,"ema9":9.35494,"ema20":9.339895,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.813221,"dist_to_hod_atr":7.432259,"atr":0.02325,"spread_atr":0.430108,"own_change_pct":0.319786,"rel_strength_pct":{"SPY":0.334304,"IWM":0.279434}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.705703},"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":"840720ebc908","ts":"2026-09-15T16:32:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 480.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 5.97; breakout: 1-min close > 5.99 on >= 87692 sh","plan":{"state":"WATCH","setup":"","stop":5.8836,"target":6.03,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":105.0,"room_to_5d_high_atr":-0.11},"price":5.9667,"vwap":5.9467,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.411,"trend":"flat","recent_slope_pct":-0.0116,"volatility":"medium"},"price":5.9667,"volume":{"bars":182,"last_bar_volume":74467.0,"baseline_avg":50319.05,"bar_rvol":1.479897,"raw_accel":-0.17746,"smooth_accel":0.915962,"accel_momentum":0.696957,"rvol_3bar":[0.771245,1.844499,1.479897],"trend_3bar":"MIXED","projected_rvol":0.200997},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2369.0,"sell_vol":2688.0,"unclassified_vol":0.0,"imbalance":-0.063081,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.35136},"context":{"vwap":5.94674,"price_vs_vwap_pct":0.33565,"ema9":5.95935,"ema20":5.953563,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.701812,"dist_to_hod_atr":5.293628,"atr":0.019514,"spread_atr":0.512452,"own_change_pct":0.084034,"rel_strength_pct":{"SPY":0.098552,"IWM":0.043681}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.093353},"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":"5fcc1dbb206c","ts":"2026-09-15T16:32:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 315.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.15; breakout of ceiling 10.60 but last 5 bars not sloping up (0.114% <= 0.185%); R:R 0.15 < 2.0 at 10.60; breakout: 1-min","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.15,"pos_in_5d_range_pct":30.5,"room_to_5d_high_atr":1.51},"price":10.6032,"vwap":10.4743,"ext_from_open_pct":1.86,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.1136,"volatility":"medium"},"price":10.6032,"volume":{"bars":182,"last_bar_volume":42937.0,"baseline_avg":12685.85,"bar_rvol":3.384637,"raw_accel":1.606508,"smooth_accel":0.112625,"accel_momentum":0.303013,"rvol_3bar":[1.097415,1.31317,3.384637],"trend_3bar":"ACCELERATING","projected_rvol":2.099662},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":5959.0,"sell_vol":7359.0,"unclassified_vol":0.0,"imbalance":-0.105121,"bid":10.63,"ask":10.64,"spread_pct":0.094029,"quote_size_imbalance":null,"quote_age_s":0.030017},"context":{"vwap":10.473916,"price_vs_vwap_pct":1.234338,"ema9":10.549656,"ema20":10.497259,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.633609,"dist_to_hod_atr":4.521126,"atr":0.063436,"spread_atr":0.15764,"own_change_pct":0.901422,"rel_strength_pct":{"SPY":0.91594,"IWM":0.86107}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.355796},"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":"9cd19b3ab32f","ts":"2026-09-15T16:32:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 270.0s, plan says WATCH; stop 9.23, target 9.48 (premarket_high), R:R 0.62; R:R 0.62 < 2.0 at 9.38; breakout: 1-min close > 9.40 on >= 10361 sh","plan":{"state":"WATCH","setup":"","stop":9.2321,"target":9.48,"target_label":"premarket_high","reward_risk":0.62,"pos_in_5d_range_pct":6.8,"room_to_5d_high_atr":3.25},"price":9.385,"vwap":9.3455,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.588,"trend":"flat","recent_slope_pct":0.1008,"volatility":"high"},"price":9.385,"volume":{"bars":182,"last_bar_volume":4351.0,"baseline_avg":5305.95,"bar_rvol":0.820023,"raw_accel":-0.364261,"smooth_accel":0.174478,"accel_momentum":0.183695,"rvol_3bar":[1.40131,1.344558,0.820023],"trend_3bar":"DECELERATING","projected_rvol":0.644936},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":104.0,"sell_vol":1607.0,"unclassified_vol":0.0,"imbalance":-0.878434,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":2.225369},"context":{"vwap":9.345454,"price_vs_vwap_pct":0.423153,"ema9":9.35494,"ema20":9.339895,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.521511,"dist_to_hod_atr":6.23656,"atr":0.02325,"spread_atr":0.430108,"own_change_pct":0.319786,"rel_strength_pct":{"SPY":0.334304,"IWM":0.279434}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.720336},"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":"9a4cc1ce58cb","ts":"2026-09-15T16:32:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says WATCH; stop 9.84, target 10.13 (clear air (typical 60-min move)), R:R 2.63; breakout: 1-min close > 9.98 on >= 9344 sh","plan":{"state":"WATCH","setup":"","stop":9.84,"target":10.13,"target_label":"clear air (typical 60-min move)","reward_risk":2.63,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6376,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":4.107,"trend":"flat","recent_slope_pct":-0.0092,"volatility":"low"},"price":9.92,"volume":{"bars":182,"last_bar_volume":3229.0,"baseline_avg":8473.7,"bar_rvol":0.381061,"raw_accel":-0.630887,"smooth_accel":0.440687,"accel_momentum":0.320345,"rvol_3bar":[4.207901,1.050874,0.381061],"trend_3bar":"DECELERATING","projected_rvol":0.22274},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":886.0,"sell_vol":215.0,"unclassified_vol":0.0,"imbalance":0.609446,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":4.990306},"context":{"vwap":9.637377,"price_vs_vwap_pct":2.932572,"ema9":9.91202,"ema20":9.87859,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":5.999456,"atr":0.046671,"spread_atr":0.857065,"own_change_pct":-0.100705,"rel_strength_pct":{"SPY":-0.086187,"IWM":-0.141057}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.232236},"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":"b17ace540518","ts":"2026-09-15T16:32:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 485.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.90; target 0.08 away > ~0.06 reachable in 202 min","plan":{"state":"PASS","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9467,"ext_from_open_pct":0.76,"max_ext_allowed_pct":3.0,"volume_pace":1.41,"trend":"flat","recent_slope_pct":-0.0508,"volatility":"medium"},"price":5.955,"volume":{"bars":182,"last_bar_volume":74467.0,"baseline_avg":50319.05,"bar_rvol":1.479897,"raw_accel":-0.17746,"smooth_accel":0.915962,"accel_momentum":0.696957,"rvol_3bar":[0.771245,1.844499,1.479897],"trend_3bar":"MIXED","projected_rvol":0.173817},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1271.0,"sell_vol":2569.0,"unclassified_vol":0.0,"imbalance":-0.338021,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.131696},"context":{"vwap":5.94674,"price_vs_vwap_pct":0.138903,"ema9":5.95935,"ema20":5.953563,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.893196,"atr":0.019514,"spread_atr":0.512452,"own_change_pct":0.084034,"rel_strength_pct":{"SPY":0.098552,"IWM":0.043681}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.500236},"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":"32902f504a11","ts":"2026-09-15T16:32:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.84,"target":10.13,"target_label":"clear air (typical 60-min move)","reward_risk":2.63,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6377,"ext_from_open_pct":4.97,"max_ext_allowed_pct":4.0,"volume_pace":4.107,"trend":"flat","recent_slope_pct":-0.0092,"volatility":"low"},"price":9.92,"volume":{"bars":182,"last_bar_volume":3229.0,"baseline_avg":8473.7,"bar_rvol":0.381061,"raw_accel":-0.630887,"smooth_accel":0.440687,"accel_momentum":0.320345,"rvol_3bar":[4.207901,1.050874,0.381061],"trend_3bar":"DECELERATING","projected_rvol":0.380766},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":1930.0,"sell_vol":59.0,"unclassified_vol":0.0,"imbalance":0.940674,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":9.990306},"context":{"vwap":9.637377,"price_vs_vwap_pct":2.932572,"ema9":9.91202,"ema20":9.87859,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":5.999456,"atr":0.046671,"spread_atr":0.857065,"own_change_pct":-0.100705,"rel_strength_pct":{"SPY":-0.086187,"IWM":-0.141057}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.358454},"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":"cd73f591cd3b","ts":"2026-09-15T16:32:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 325.0s, plan says PASS; stop 10.36, target 10.94 (prev_day_high), R:R 1.09; target 0.30 away > ~0.21 reachable in 202 min","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.935,"target_label":"prev_day_high","reward_risk":1.09,"pos_in_5d_range_pct":33.0,"room_to_5d_high_atr":1.46},"price":10.635,"vwap":10.4746,"ext_from_open_pct":2.16,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":0.1735,"volatility":"medium"},"price":10.635,"volume":{"bars":182,"last_bar_volume":42937.0,"baseline_avg":12685.85,"bar_rvol":3.384637,"raw_accel":1.606508,"smooth_accel":0.112625,"accel_momentum":0.303013,"rvol_3bar":[1.097415,1.31317,3.384637],"trend_3bar":"ACCELERATING","projected_rvol":2.464991},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":4995.0,"sell_vol":13801.0,"unclassified_vol":0.0,"imbalance":-0.468504,"bid":10.63,"ask":10.64,"spread_pct":0.094029,"quote_size_imbalance":null,"quote_age_s":0.080902},"context":{"vwap":10.473916,"price_vs_vwap_pct":1.53795,"ema9":10.549656,"ema20":10.497259,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.341598,"dist_to_hod_atr":4.019829,"atr":0.063436,"spread_atr":0.15764,"own_change_pct":0.901422,"rel_strength_pct":{"SPY":0.91594,"IWM":0.86107}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.585716},"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":"940f5e663e7e","ts":"2026-09-15T16:32:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8241,"target":10.1141,"target_label":"clear air (typical 60-min move)","reward_risk":2.63,"pos_in_5d_range_pct":498.4,"room_to_5d_high_atr":-5.74},"price":9.9041,"vwap":9.6377,"ext_from_open_pct":4.81,"max_ext_allowed_pct":4.0,"volume_pace":4.105,"trend":"flat","recent_slope_pct":-0.0412,"volatility":"low"},"price":9.9041,"volume":{"bars":182,"last_bar_volume":3229.0,"baseline_avg":8473.7,"bar_rvol":0.381061,"raw_accel":-0.630887,"smooth_accel":0.440687,"accel_momentum":0.320345,"rvol_3bar":[4.207901,1.050874,0.381061],"trend_3bar":"DECELERATING","projected_rvol":0.342078},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":1830.0,"sell_vol":82.0,"unclassified_vol":0.0,"imbalance":0.914226,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":14.990306},"context":{"vwap":9.637377,"price_vs_vwap_pct":2.76759,"ema9":9.91202,"ema20":9.87859,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.90098,"dist_to_hod_atr":6.340139,"atr":0.046671,"spread_atr":0.857065,"own_change_pct":-0.100705,"rel_strength_pct":{"SPY":-0.086187,"IWM":-0.141057}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.348376},"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":"83544019e072","ts":"2026-09-15T16:32:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 330.0s, plan says WATCH; stop 10.36, target 10.64 (premarket_high), R:R 0.06; breakout of ceiling 10.60 but last 5 bars not sloping up (0.155% <= 0.184%); R:R 0.06 < 2.0 at 10.62; breakout: 1-min","plan":{"state":"WATCH","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.06,"pos_in_5d_range_pct":32.2,"room_to_5d_high_atr":1.47},"price":10.625,"vwap":10.4748,"ext_from_open_pct":2.07,"max_ext_allowed_pct":3.0,"volume_pace":0.947,"trend":"flat","recent_slope_pct":0.1547,"volatility":"medium"},"price":10.625,"volume":{"bars":182,"last_bar_volume":42937.0,"baseline_avg":12685.85,"bar_rvol":3.384637,"raw_accel":1.606508,"smooth_accel":0.112625,"accel_momentum":0.303013,"rvol_3bar":[1.097415,1.31317,3.384637],"trend_3bar":"ACCELERATING","projected_rvol":2.874804},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":6197.0,"sell_vol":18753.0,"unclassified_vol":0.0,"imbalance":-0.503246,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":1.525949},"context":{"vwap":10.473916,"price_vs_vwap_pct":1.442475,"ema9":10.549656,"ema20":10.497259,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.433425,"dist_to_hod_atr":4.17747,"atr":0.063436,"spread_atr":0.15764,"own_change_pct":0.901422,"rel_strength_pct":{"SPY":0.91594,"IWM":0.86107}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.703307},"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":"65477cfe9194","ts":"2026-09-15T16:32:45+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2262,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.756,"trend":"flat","recent_slope_pct":0.1319,"volatility":"medium"},"price":7.36,"volume":{"bars":182,"last_bar_volume":429055.0,"baseline_avg":194404.7,"bar_rvol":2.20702,"raw_accel":0.951643,"smooth_accel":-0.125631,"accel_momentum":0.128555,"rvol_3bar":[0.109535,1.153638,2.20702],"trend_3bar":"ACCELERATING","projected_rvol":1.787474},"flow":{"window_s":30,"trades":205,"trade_rate":6.833333,"buy_vol":84658.0,"sell_vol":145791.0,"unclassified_vol":0.0,"imbalance":-0.265278,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.355286},"context":{"vwap":7.225149,"price_vs_vwap_pct":1.866408,"ema9":7.318094,"ema20":7.296896,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.280417,"atr":0.035661,"spread_atr":0.280417,"own_change_pct":1.284149,"rel_strength_pct":{"SPY":1.298667,"IWM":1.243797}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.585473},"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":"ee9af2dc7dc4","ts":"2026-09-15T16:32:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 500.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.75; R:R 0.75 < 2.0 at 5.97; breakout: 1-min close > 5.99 on >= 87692 sh","plan":{"state":"WATCH","setup":"","stop":5.8844,"target":6.03,"target_label":"premarket_high","reward_risk":0.75,"pos_in_5d_range_pct":105.1,"room_to_5d_high_atr":-0.11},"price":5.9675,"vwap":5.9467,"ext_from_open_pct":0.97,"max_ext_allowed_pct":4.0,"volume_pace":1.409,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"medium"},"price":5.9675,"volume":{"bars":182,"last_bar_volume":74467.0,"baseline_avg":50319.05,"bar_rvol":1.479897,"raw_accel":-0.17746,"smooth_accel":0.915962,"accel_momentum":0.696957,"rvol_3bar":[0.771245,1.844499,1.479897],"trend_3bar":"MIXED","projected_rvol":0.157658},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1710.0,"sell_vol":335.0,"unclassified_vol":0.0,"imbalance":0.672372,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.045723},"context":{"vwap":5.94674,"price_vs_vwap_pct":0.349103,"ema9":5.95935,"ema20":5.953563,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.688633,"dist_to_hod_atr":5.252631,"atr":0.019514,"spread_atr":0.512452,"own_change_pct":0.084034,"rel_strength_pct":{"SPY":0.098552,"IWM":0.043681}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.995041},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c879e853a88","ts":"2026-09-15T16:32:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.84,"target":10.13,"target_label":"clear air (typical 60-min move)","reward_risk":2.63,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6377,"ext_from_open_pct":4.97,"max_ext_allowed_pct":4.0,"volume_pace":4.102,"trend":"flat","recent_slope_pct":-0.0092,"volatility":"low"},"price":9.92,"volume":{"bars":182,"last_bar_volume":3229.0,"baseline_avg":8473.7,"bar_rvol":0.381061,"raw_accel":-0.630887,"smooth_accel":0.440687,"accel_momentum":0.320345,"rvol_3bar":[4.207901,1.050874,0.381061],"trend_3bar":"DECELERATING","projected_rvol":0.280654},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":1304.0,"sell_vol":24.0,"unclassified_vol":0.0,"imbalance":0.963855,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":24.990306},"context":{"vwap":9.637377,"price_vs_vwap_pct":2.932572,"ema9":9.91202,"ema20":9.87859,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":5.999456,"atr":0.046671,"spread_atr":0.857065,"own_change_pct":-0.100705,"rel_strength_pct":{"SPY":-0.086187,"IWM":-0.141057}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.367288},"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":"96814b624f5b","ts":"2026-09-15T16:32:55+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 505.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.90; target 0.08 away > ~0.06 reachable in 202 min","plan":{"state":"PASS","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9467,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":1.408,"trend":"flat","recent_slope_pct":-0.0508,"volatility":"medium"},"price":5.955,"volume":{"bars":182,"last_bar_volume":74467.0,"baseline_avg":50319.05,"bar_rvol":1.479897,"raw_accel":-0.17746,"smooth_accel":0.915962,"accel_momentum":0.696957,"rvol_3bar":[0.771245,1.844499,1.479897],"trend_3bar":"MIXED","projected_rvol":0.172398},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":2773.0,"sell_vol":472.0,"unclassified_vol":0.0,"imbalance":0.709091,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.270209},"context":{"vwap":5.94674,"price_vs_vwap_pct":0.138903,"ema9":5.95935,"ema20":5.953563,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":5.893196,"atr":0.019514,"spread_atr":0.512452,"own_change_pct":0.084034,"rel_strength_pct":{"SPY":0.098552,"IWM":0.043681}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.049381},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5fd92e134922","ts":"2026-09-15T16:33:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2263,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":0.1455,"volatility":"medium"},"price":7.365,"volume":{"bars":182,"last_bar_volume":429055.0,"baseline_avg":194404.7,"bar_rvol":2.20702,"raw_accel":0.951643,"smooth_accel":-0.125631,"accel_momentum":0.128555,"rvol_3bar":[0.109535,1.153638,2.20702],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":46697.0,"sell_vol":81235.0,"unclassified_vol":0.0,"imbalance":-0.269972,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.664995},"context":{"vwap":7.225149,"price_vs_vwap_pct":1.935611,"ema9":7.318094,"ema20":7.296896,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.067843,"dist_to_hod_atr":0.140208,"atr":0.035661,"spread_atr":0.280417,"own_change_pct":1.284149,"rel_strength_pct":{"SPY":1.27689,"IWM":1.242042}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.595833},"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":"abd21a769ae8","ts":"2026-09-15T16:33:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.8778,"target":6.03,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":104.2,"room_to_5d_high_atr":-0.09},"price":5.9609,"vwap":5.9467,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":1.407,"trend":"flat","recent_slope_pct":-0.0624,"volatility":"medium"},"price":5.9609,"volume":{"bars":183,"last_bar_volume":10142.0,"baseline_avg":53414.3,"bar_rvol":0.189874,"raw_accel":-0.863805,"smooth_accel":0.444411,"accel_momentum":-0.471552,"rvol_3bar":[1.844499,1.479897,0.189874],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":10038.0,"sell_vol":3221.0,"unclassified_vol":0.0,"imbalance":0.514141,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.655003},"context":{"vwap":5.946745,"price_vs_vwap_pct":0.238033,"ema9":5.95748,"ema20":5.953224,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.797364,"dist_to_hod_atr":5.601389,"atr":0.019477,"spread_atr":0.513418,"own_change_pct":-0.335008,"rel_strength_pct":{"SPY":-0.342267,"IWM":-0.377115}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.097622},"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":"2329c7902c99","ts":"2026-09-15T16:33:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 350.0s, plan says PASS; stop 10.36, target 10.64 (premarket_high), R:R 0.06; R:R 0.06 < 2.0 at 10.62; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":10.36,"target":10.64,"target_label":"premarket_high","reward_risk":0.06,"pos_in_5d_range_pct":32.2,"room_to_5d_high_atr":1.47},"price":10.6248,"vwap":10.4751,"ext_from_open_pct":2.06,"max_ext_allowed_pct":3.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":0.1494,"volatility":"medium"},"price":10.6248,"volume":{"bars":183,"last_bar_volume":27638.0,"baseline_avg":14247.6,"bar_rvol":1.939835,"raw_accel":-0.356313,"smooth_accel":0.980975,"accel_momentum":0.86835,"rvol_3bar":[1.31317,3.384637,1.939835],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":2366.0,"sell_vol":19670.0,"unclassified_vol":0.0,"imbalance":-0.78526,"bid":10.62,"ask":10.63,"spread_pct":0.094118,"quote_size_imbalance":null,"quote_age_s":0.229547},"context":{"vwap":10.474788,"price_vs_vwap_pct":1.432126,"ema9":10.564725,"ema20":10.509425,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-2.435262,"dist_to_hod_atr":4.045053,"atr":0.065562,"spread_atr":0.152528,"own_change_pct":0.869615,"rel_strength_pct":{"SPY":0.862356,"IWM":0.827508}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.523276},"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":"3db01f65ab7c","ts":"2026-09-15T16:33:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2263,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":0.1155,"volatility":"medium"},"price":7.36,"volume":{"bars":183,"last_bar_volume":269274.0,"baseline_avg":209180.4,"bar_rvol":1.287281,"raw_accel":-0.372402,"smooth_accel":0.931091,"accel_momentum":1.056722,"rvol_3bar":[1.153638,2.20702,1.287281],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":8552.0,"sell_vol":26403.0,"unclassified_vol":0.0,"imbalance":-0.510685,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.150356},"context":{"vwap":7.226262,"price_vs_vwap_pct":1.850715,"ema9":7.327475,"ema20":7.303382,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.267689,"atr":0.037357,"spread_atr":0.267689,"own_change_pct":0.821355,"rel_strength_pct":{"SPY":0.814097,"IWM":0.779248}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.657395},"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":"81d05f1d79f4","ts":"2026-09-15T16:33:05+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.1482,"target":11.44,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":28.4,"room_to_5d_high_atr":1.18},"price":11.365,"vwap":11.279,"ext_from_open_pct":0.93,"max_ext_allowed_pct":4.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":-0.0866,"volatility":"high"},"price":11.365,"volume":{"bars":183,"last_bar_volume":30789.0,"baseline_avg":106398.15,"bar_rvol":0.289375,"raw_accel":-0.261513,"smooth_accel":-0.647171,"accel_momentum":0.050937,"rvol_3bar":[0.207481,0.382916,0.289375],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":23742.0,"sell_vol":15904.0,"unclassified_vol":0.0,"imbalance":0.1977,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.232446},"context":{"vwap":11.278927,"price_vs_vwap_pct":0.763128,"ema9":11.384355,"ema20":11.373769,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.001742,"dist_to_hod_atr":3.231708,"atr":0.035585,"spread_atr":0.281018,"own_change_pct":-0.194079,"rel_strength_pct":{"SPY":-0.201338,"IWM":-0.236186}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.057209},"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":"a456ca6f12bc","ts":"2026-09-15T16:33:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.1175,"target_label":"clear air (typical 60-min move)","reward_risk":3.23,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6378,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":4.097,"trend":"flat","recent_slope_pct":-0.0506,"volatility":"low"},"price":9.91,"volume":{"bars":183,"last_bar_volume":2190.0,"baseline_avg":8305.2,"bar_rvol":0.26369,"raw_accel":-0.321771,"smooth_accel":-0.682916,"accel_momentum":-1.123603,"rvol_3bar":[1.050874,0.381061,0.26369],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":47.0,"sell_vol":244.0,"unclassified_vol":0.0,"imbalance":-0.676976,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":2.677216},"context":{"vwap":9.63773,"price_vs_vwap_pct":2.82504,"ema9":9.913616,"ema20":9.882534,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.386442,"atr":0.045409,"spread_atr":0.440444,"own_change_pct":-0.159021,"rel_strength_pct":{"SPY":-0.166279,"IWM":-0.201128}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.178512},"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":"2efb51fc2e9b","ts":"2026-09-15T16:33:10+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2263,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.754,"trend":"flat","recent_slope_pct":0.1291,"volatility":"medium"},"price":7.365,"volume":{"bars":183,"last_bar_volume":269274.0,"baseline_avg":209180.4,"bar_rvol":1.287281,"raw_accel":-0.372402,"smooth_accel":0.931091,"accel_momentum":1.056722,"rvol_3bar":[1.153638,2.20702,1.287281],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":11128.0,"sell_vol":18565.0,"unclassified_vol":0.0,"imbalance":-0.250463,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.50563},"context":{"vwap":7.226262,"price_vs_vwap_pct":1.919907,"ema9":7.327475,"ema20":7.303382,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.067843,"dist_to_hod_atr":0.133844,"atr":0.037357,"spread_atr":0.267689,"own_change_pct":0.821355,"rel_strength_pct":{"SPY":0.814097,"IWM":0.779248}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.322416},"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":"521259b3af1c","ts":"2026-09-15T16:33:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2265,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":0.1155,"volatility":"medium"},"price":7.36,"volume":{"bars":183,"last_bar_volume":269274.0,"baseline_avg":209180.4,"bar_rvol":1.287281,"raw_accel":-0.372402,"smooth_accel":0.931091,"accel_momentum":1.056722,"rvol_3bar":[1.153638,2.20702,1.287281],"trend_3bar":"MIXED","projected_rvol":0.73471},"flow":{"window_s":30,"trades":114,"trade_rate":3.8,"buy_vol":12099.0,"sell_vol":42668.0,"unclassified_vol":0.0,"imbalance":-0.558165,"bid":7.35,"ask":7.36,"spread_pct":0.135962,"quote_size_imbalance":null,"quote_age_s":1.231661},"context":{"vwap":7.226262,"price_vs_vwap_pct":1.850715,"ema9":7.327475,"ema20":7.303382,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.267689,"atr":0.037357,"spread_atr":0.267689,"own_change_pct":0.821355,"rel_strength_pct":{"SPY":0.814097,"IWM":0.779248}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.718515},"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":"8ecda4e56b8d","ts":"2026-09-15T16:33:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8509,"target":10.1226,"target_label":"clear air (typical 60-min move)","reward_risk":3.23,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.9151,"vwap":9.638,"ext_from_open_pct":4.92,"max_ext_allowed_pct":4.0,"volume_pace":4.095,"trend":"flat","recent_slope_pct":-0.0403,"volatility":"low"},"price":9.9151,"volume":{"bars":183,"last_bar_volume":2190.0,"baseline_avg":8305.2,"bar_rvol":0.26369,"raw_accel":-0.321771,"smooth_accel":-0.682916,"accel_momentum":-1.123603,"rvol_3bar":[1.050874,0.381061,0.26369],"trend_3bar":"DECELERATING","projected_rvol":0.513221},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":342.0,"sell_vol":1444.0,"unclassified_vol":0.0,"imbalance":-0.617021,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":17.677216},"context":{"vwap":9.63773,"price_vs_vwap_pct":2.877957,"ema9":9.913616,"ema20":9.882534,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.793137,"dist_to_hod_atr":6.274129,"atr":0.045409,"spread_atr":0.440444,"own_change_pct":-0.159021,"rel_strength_pct":{"SPY":-0.166279,"IWM":-0.201128}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.162702},"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":"95cce1649d43","ts":"2026-09-15T16:33:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.1175,"target_label":"clear air (typical 60-min move)","reward_risk":3.23,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.638,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":4.091,"trend":"flat","recent_slope_pct":-0.0506,"volatility":"low"},"price":9.91,"volume":{"bars":183,"last_bar_volume":2190.0,"baseline_avg":8305.2,"bar_rvol":0.26369,"raw_accel":-0.321771,"smooth_accel":-0.682916,"accel_momentum":-1.123603,"rvol_3bar":[1.050874,0.381061,0.26369],"trend_3bar":"DECELERATING","projected_rvol":0.411171},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":307.0,"sell_vol":1634.0,"unclassified_vol":0.0,"imbalance":-0.683668,"bid":9.9,"ask":9.91,"spread_pct":0.100959,"quote_size_imbalance":null,"quote_age_s":2.3928},"context":{"vwap":9.63773,"price_vs_vwap_pct":2.82504,"ema9":9.913616,"ema20":9.882534,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.386442,"atr":0.045409,"spread_atr":0.220222,"own_change_pct":-0.159021,"rel_strength_pct":{"SPY":-0.166279,"IWM":-0.201128}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.180277},"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":"0c09ce1ed2d1","ts":"2026-09-15T16:33:35+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7742,"target":8.0,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":21.4,"room_to_5d_high_atr":2.66},"price":7.8925,"vwap":7.8475,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":3.0,"volume_pace":1.103,"trend":"flat","recent_slope_pct":-0.0198,"volatility":"medium"},"price":7.8925,"volume":{"bars":183,"last_bar_volume":1837.0,"baseline_avg":15396.6,"bar_rvol":0.119312,"raw_accel":-0.971742,"smooth_accel":1.996395,"accel_momentum":-0.732258,"rvol_3bar":[1.469005,5.241837,0.119312],"trend_3bar":"MIXED","projected_rvol":0.028838},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":12.0,"sell_vol":140.0,"unclassified_vol":0.0,"imbalance":-0.842105,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":1.559885},"context":{"vwap":7.847499,"price_vs_vwap_pct":0.573447,"ema9":7.895386,"ema20":7.884353,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.472888,"dist_to_hod_atr":2.244861,"atr":0.016705,"spread_atr":0.59863,"own_change_pct":-0.022785,"rel_strength_pct":{"SPY":-0.030043,"IWM":-0.064892}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.100473},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d40b4dcb021c","ts":"2026-09-15T16:33:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8658,"target":10.1375,"target_label":"clear air (typical 60-min move)","reward_risk":3.23,"pos_in_5d_range_pct":505.4,"room_to_5d_high_atr":-5.84},"price":9.93,"vwap":9.6382,"ext_from_open_pct":5.08,"max_ext_allowed_pct":4.0,"volume_pace":4.085,"trend":"flat","recent_slope_pct":-0.0103,"volatility":"low"},"price":9.93,"volume":{"bars":183,"last_bar_volume":2190.0,"baseline_avg":8305.2,"bar_rvol":0.26369,"raw_accel":-0.321771,"smooth_accel":-0.682916,"accel_momentum":-1.123603,"rvol_3bar":[1.050874,0.381061,0.26369],"trend_3bar":"DECELERATING","projected_rvol":0.340991},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":132.0,"sell_vol":688.0,"unclassified_vol":0.0,"imbalance":-0.678049,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":0.090687},"context":{"vwap":9.63773,"price_vs_vwap_pct":3.032558,"ema9":9.913616,"ema20":9.882534,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.647059,"dist_to_hod_atr":5.945998,"atr":0.045409,"spread_atr":0.660666,"own_change_pct":-0.159021,"rel_strength_pct":{"SPY":-0.166279,"IWM":-0.201128}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.178795},"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":"3b0d8587a531","ts":"2026-09-15T16:34:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9468,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":1.401,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"medium"},"price":5.96,"volume":{"bars":184,"last_bar_volume":17619.0,"baseline_avg":53259.45,"bar_rvol":0.330815,"raw_accel":0.323258,"smooth_accel":-0.340839,"accel_momentum":-0.785249,"rvol_3bar":[1.479897,0.189874,0.330815],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":3131.0,"sell_vol":3693.0,"unclassified_vol":0.0,"imbalance":-0.082356,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.853206},"context":{"vwap":5.946755,"price_vs_vwap_pct":0.22272,"ema9":5.958544,"ema20":5.954136,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.789363,"atr":0.019,"spread_atr":0.526306,"own_change_pct":-0.001677,"rel_strength_pct":{"SPY":0.011506,"IWM":7.7e-05}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.027245},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"44d8474dbf20","ts":"2026-09-15T16:34:05+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.4313,"target":9.87,"target_label":"premarket_high","reward_risk":1.9,"pos_in_5d_range_pct":6.4,"room_to_5d_high_atr":3.2},"price":9.5827,"vwap":9.5654,"ext_from_open_pct":-1.72,"max_ext_allowed_pct":3.0,"volume_pace":0.818,"trend":"flat","recent_slope_pct":-0.0533,"volatility":"high"},"price":9.5827,"volume":{"bars":184,"last_bar_volume":25676.0,"baseline_avg":10391.85,"bar_rvol":2.470782,"raw_accel":4.385067,"smooth_accel":0.425452,"accel_momentum":1.114935,"rvol_3bar":[0.028159,0.452376,2.470782],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2987.0,"sell_vol":14274.0,"unclassified_vol":0.0,"imbalance":-0.653902,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":1.049893},"context":{"vwap":9.565355,"price_vs_vwap_pct":0.181336,"ema9":9.59741,"ema20":9.585212,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.515768,"dist_to_hod_atr":10.393885,"atr":0.023793,"spread_atr":0.420295,"own_change_pct":-0.197731,"rel_strength_pct":{"SPY":-0.184548,"IWM":-0.195977}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.615649},"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":"d32c5ae47c1d","ts":"2026-09-15T16:34:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.115,"target_label":"clear air (typical 60-min move)","reward_risk":3.19,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6382,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":4.08,"trend":"flat","recent_slope_pct":-0.0494,"volatility":"low"},"price":9.91,"volume":{"bars":184,"last_bar_volume":2599.0,"baseline_avg":8134.9,"bar_rvol":0.319488,"raw_accel":0.186758,"smooth_accel":-0.838986,"accel_momentum":-0.15607,"rvol_3bar":[0.381061,0.26369,0.319488],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":127.0,"sell_vol":573.0,"unclassified_vol":0.0,"imbalance":-0.637143,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":3.709309},"context":{"vwap":9.638146,"price_vs_vwap_pct":2.8206,"ema9":9.913893,"ema20":9.885626,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.546138,"atr":0.044301,"spread_atr":0.451458,"own_change_pct":-0.050403,"rel_strength_pct":{"SPY":-0.03722,"IWM":-0.048649}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.203559},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6a1dac45ae24","ts":"2026-09-15T16:34:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.8837,"target":6.03,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":105.0,"room_to_5d_high_atr":-0.11},"price":5.9668,"vwap":5.9468,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":1.4,"trend":"flat","recent_slope_pct":0.0023,"volatility":"medium"},"price":5.9668,"volume":{"bars":184,"last_bar_volume":17619.0,"baseline_avg":53259.45,"bar_rvol":0.330815,"raw_accel":0.323258,"smooth_accel":-0.340839,"accel_momentum":-0.785249,"rvol_3bar":[1.479897,0.189874,0.330815],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":3472.0,"sell_vol":3876.0,"unclassified_vol":0.0,"imbalance":-0.054981,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.698671},"context":{"vwap":5.946755,"price_vs_vwap_pct":0.337068,"ema9":5.958544,"ema20":5.954136,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.700165,"dist_to_hod_atr":5.431476,"atr":0.019,"spread_atr":0.526306,"own_change_pct":-0.001677,"rel_strength_pct":{"SPY":0.011506,"IWM":7.7e-05}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.018188},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c45276300696","ts":"2026-09-15T16:34:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8508,"target":10.12,"target_label":"clear air (typical 60-min move)","reward_risk":3.19,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.6384,"ext_from_open_pct":4.92,"max_ext_allowed_pct":5.0,"volume_pace":4.081,"trend":"flat","recent_slope_pct":-0.0393,"volatility":"low"},"price":9.915,"volume":{"bars":184,"last_bar_volume":2599.0,"baseline_avg":8134.9,"bar_rvol":0.319488,"raw_accel":0.186758,"smooth_accel":-0.838986,"accel_momentum":-0.15607,"rvol_3bar":[0.381061,0.26369,0.319488],"trend_3bar":"MIXED","projected_rvol":0.668724},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":171.0,"sell_vol":1685.0,"unclassified_vol":0.0,"imbalance":-0.815733,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":3.59625},"context":{"vwap":9.638146,"price_vs_vwap_pct":2.872477,"ema9":9.913893,"ema20":9.885626,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":6.433274,"atr":0.044301,"spread_atr":0.677187,"own_change_pct":-0.050403,"rel_strength_pct":{"SPY":-0.03722,"IWM":-0.048649}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.260617},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5c997ec68a55","ts":"2026-09-15T16:34:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8769,"target":6.03,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":104.1,"room_to_5d_high_atr":-0.09},"price":5.96,"vwap":5.9468,"ext_from_open_pct":0.85,"max_ext_allowed_pct":3.0,"volume_pace":1.399,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"medium"},"price":5.96,"volume":{"bars":184,"last_bar_volume":17619.0,"baseline_avg":53259.45,"bar_rvol":0.330815,"raw_accel":0.323258,"smooth_accel":-0.340839,"accel_momentum":-0.785249,"rvol_3bar":[1.479897,0.189874,0.330815],"trend_3bar":"MIXED","projected_rvol":0.249721},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":3421.0,"sell_vol":3772.0,"unclassified_vol":0.0,"imbalance":-0.048797,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.972915},"context":{"vwap":5.946755,"price_vs_vwap_pct":0.22272,"ema9":5.958544,"ema20":5.954136,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.812191,"dist_to_hod_atr":5.789363,"atr":0.019,"spread_atr":0.526306,"own_change_pct":-0.001677,"rel_strength_pct":{"SPY":0.011506,"IWM":7.7e-05}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.016143},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"53db26a1891a","ts":"2026-09-15T16:34:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.115,"target_label":"clear air (typical 60-min move)","reward_risk":3.19,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6384,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":4.08,"trend":"flat","recent_slope_pct":-0.0494,"volatility":"low"},"price":9.91,"volume":{"bars":184,"last_bar_volume":2599.0,"baseline_avg":8134.9,"bar_rvol":0.319488,"raw_accel":0.186758,"smooth_accel":-0.838986,"accel_momentum":-0.15607,"rvol_3bar":[0.381061,0.26369,0.319488],"trend_3bar":"MIXED","projected_rvol":0.560917},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":280.0,"sell_vol":1735.0,"unclassified_vol":0.0,"imbalance":-0.722084,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":8.59625},"context":{"vwap":9.638146,"price_vs_vwap_pct":2.8206,"ema9":9.913893,"ema20":9.885626,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.546138,"atr":0.044301,"spread_atr":0.677187,"own_change_pct":-0.050403,"rel_strength_pct":{"SPY":-0.03722,"IWM":-0.048649}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.230697},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d0050b53d364","ts":"2026-09-15T16:34:20+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 380.0s, plan says PASS; stop 5.36, target 5.53 (premarket_high), R:R 1.66; target 0.10 away > ~0.10 reachable in 201 min","plan":{"state":"PASS","setup":"","stop":5.3639,"target":5.5297,"target_label":"premarket_high","reward_risk":1.66,"pos_in_5d_range_pct":14.1,"room_to_5d_high_atr":1.86},"price":5.4261,"vwap":5.3924,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.746,"trend":"flat","recent_slope_pct":-0.0602,"volatility":"medium"},"price":5.4261,"volume":{"bars":184,"last_bar_volume":61911.0,"baseline_avg":62866.05,"bar_rvol":0.984808,"raw_accel":-0.49521,"smooth_accel":-0.300815,"accel_momentum":-1.65256,"rvol_3bar":[1.824806,2.12195,0.984808],"trend_3bar":"MIXED","projected_rvol":0.765723},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":12285.0,"sell_vol":19168.0,"unclassified_vol":0.0,"imbalance":-0.218834,"bid":5.45,"ask":5.46,"spread_pct":0.183318,"quote_size_imbalance":null,"quote_age_s":0.458093},"context":{"vwap":5.392307,"price_vs_vwap_pct":0.626693,"ema9":5.430905,"ema20":5.411641,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.232432,"dist_to_hod_atr":4.002448,"atr":0.030956,"spread_atr":0.323039,"own_change_pct":1.257372,"rel_strength_pct":{"SPY":1.270555,"IWM":1.259126}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.21551},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ec7046df7387","ts":"2026-09-15T16:34:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8508,"target":10.12,"target_label":"clear air (typical 60-min move)","reward_risk":3.19,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.6384,"ext_from_open_pct":4.92,"max_ext_allowed_pct":4.0,"volume_pace":4.078,"trend":"flat","recent_slope_pct":-0.0393,"volatility":"low"},"price":9.915,"volume":{"bars":184,"last_bar_volume":2599.0,"baseline_avg":8134.9,"bar_rvol":0.319488,"raw_accel":0.186758,"smooth_accel":-0.838986,"accel_momentum":-0.15607,"rvol_3bar":[0.381061,0.26369,0.319488],"trend_3bar":"MIXED","projected_rvol":0.456109},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":180.0,"sell_vol":1369.0,"unclassified_vol":0.0,"imbalance":-0.767592,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":13.59625},"context":{"vwap":9.638146,"price_vs_vwap_pct":2.872477,"ema9":9.913893,"ema20":9.885626,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":6.433274,"atr":0.044301,"spread_atr":0.677187,"own_change_pct":-0.050403,"rel_strength_pct":{"SPY":-0.03722,"IWM":-0.048649}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.245236},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aa21eeb6dadc","ts":"2026-09-15T16:34:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says PASS; stop 7.24, target 7.47 (prev_day_high), R:R 1.25; target 0.13 away > ~0.13 reachable in 201 min","plan":{"state":"PASS","setup":"","stop":7.2356,"target":7.47,"target_label":"prev_day_high","reward_risk":1.25,"pos_in_5d_range_pct":39.3,"room_to_5d_high_atr":1.29},"price":7.34,"vwap":7.2275,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0158,"volatility":"medium"},"price":7.34,"volume":{"bars":184,"last_bar_volume":222349.0,"baseline_avg":218102.1,"bar_rvol":1.019472,"raw_accel":-0.174265,"smooth_accel":0.960525,"accel_momentum":0.029433,"rvol_3bar":[2.20702,1.287281,1.019472],"trend_3bar":"DECELERATING","projected_rvol":1.027401},"flow":{"window_s":30,"trades":185,"trade_rate":6.166667,"buy_vol":31822.0,"sell_vol":62541.0,"unclassified_vol":0.0,"imbalance":-0.325541,"bid":7.34,"ask":7.35,"spread_pct":0.136147,"quote_size_imbalance":null,"quote_age_s":0.010013},"context":{"vwap":7.22716,"price_vs_vwap_pct":1.561335,"ema9":7.33304,"ema20":7.308327,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.407056,"dist_to_hod_atr":0.780468,"atr":0.038438,"spread_atr":0.260156,"own_change_pct":0.346526,"rel_strength_pct":{"SPY":0.359709,"IWM":0.34828}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.33188},"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":"69fb17e1465f","ts":"2026-09-15T16:34:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7,"target":7.91,"target_label":"prev_day_high","reward_risk":0.91,"pos_in_5d_range_pct":64.2,"room_to_5d_high_atr":0.55},"price":7.81,"vwap":7.733,"ext_from_open_pct":1.43,"max_ext_allowed_pct":3.0,"volume_pace":0.578,"trend":"flat","recent_slope_pct":-0.0148,"volatility":"medium"},"price":7.81,"volume":{"bars":184,"last_bar_volume":2974.0,"baseline_avg":18071.45,"bar_rvol":0.164569,"raw_accel":-0.827434,"smooth_accel":-0.464664,"accel_momentum":-1.094763,"rvol_3bar":[1.12269,0.997257,0.164569],"trend_3bar":"DECELERATING","projected_rvol":1.353073},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":3327.0,"sell_vol":8899.0,"unclassified_vol":0.0,"imbalance":-0.45575,"bid":7.8,"ask":7.81,"spread_pct":0.128123,"quote_size_imbalance":null,"quote_age_s":0.045159},"context":{"vwap":7.732676,"price_vs_vwap_pct":0.999965,"ema9":7.810624,"ema20":7.79231,"ema_stack":false,"ema_warm":true,"hod":7.83,"dist_to_hod_pct":-0.255428,"dist_to_hod_atr":0.740906,"atr":0.026994,"spread_atr":0.370453,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.013183,"IWM":0.001754}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.075002},"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":"78b2c2b9dd4a","ts":"2026-09-15T16:34:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 390.0s, plan says WATCH; stop 5.37, target 5.53 (premarket_high), R:R 0.99; R:R 0.99 < 2.0 at 5.45; breakout: 1-min close > 5.47 on >= 71774 sh","plan":{"state":"WATCH","setup":"","stop":5.37,"target":5.5297,"target_label":"premarket_high","reward_risk":0.99,"pos_in_5d_range_pct":18.5,"room_to_5d_high_atr":1.77},"price":5.4501,"vwap":5.3926,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.748,"trend":"flat","recent_slope_pct":0.0279,"volatility":"medium"},"price":5.4501,"volume":{"bars":184,"last_bar_volume":61911.0,"baseline_avg":62866.05,"bar_rvol":0.984808,"raw_accel":-0.49521,"smooth_accel":-0.300815,"accel_momentum":-1.65256,"rvol_3bar":[1.824806,2.12195,0.984808],"trend_3bar":"MIXED","projected_rvol":1.657938},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":12699.0,"sell_vol":39415.0,"unclassified_vol":0.0,"imbalance":-0.512645,"bid":5.45,"ask":5.46,"spread_pct":0.183318,"quote_size_imbalance":null,"quote_age_s":0.184416},"context":{"vwap":5.392307,"price_vs_vwap_pct":1.071772,"ema9":5.430905,"ema20":5.411641,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.8,"dist_to_hod_atr":3.227155,"atr":0.030956,"spread_atr":0.323039,"own_change_pct":1.257372,"rel_strength_pct":{"SPY":1.270555,"IWM":1.259126}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.504857},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"59668c7f9a65","ts":"2026-09-15T16:34:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.115,"target_label":"clear air (typical 60-min move)","reward_risk":3.19,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6397,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":4.092,"trend":"flat","recent_slope_pct":-0.0494,"volatility":"low"},"price":9.91,"volume":{"bars":184,"last_bar_volume":2599.0,"baseline_avg":8134.9,"bar_rvol":0.319488,"raw_accel":0.186758,"smooth_accel":-0.838986,"accel_momentum":-0.15607,"rvol_3bar":[0.381061,0.26369,0.319488],"trend_3bar":"MIXED","projected_rvol":1.839113},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":267.0,"sell_vol":9503.0,"unclassified_vol":0.0,"imbalance":-0.945343,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":0.644761},"context":{"vwap":9.638146,"price_vs_vwap_pct":2.8206,"ema9":9.913893,"ema20":9.885626,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.546138,"atr":0.044301,"spread_atr":0.451458,"own_change_pct":-0.050403,"rel_strength_pct":{"SPY":-0.03722,"IWM":-0.048649}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.302025},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9e258c6629b8","ts":"2026-09-15T16:34:40+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.59,"target_label":"prev_day_high","reward_risk":2.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0907,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":-0.0066,"volatility":"high"},"price":12.09,"volume":{"bars":184,"last_bar_volume":400.0,"baseline_avg":1167.6,"bar_rvol":0.342583,"raw_accel":-0.7558,"smooth_accel":0.376835,"accel_momentum":-1.898373,"rvol_3bar":[1.279648,1.490039,0.342583],"trend_3bar":"MIXED","projected_rvol":3.671634},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":83.0,"sell_vol":2669.0,"unclassified_vol":0.0,"imbalance":-0.93968,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":1.329144},"context":{"vwap":12.090583,"price_vs_vwap_pct":-0.004819,"ema9":12.101887,"ema20":12.070838,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.292781,"atr":0.047818,"spread_atr":0.627377,"own_change_pct":0.349653,"rel_strength_pct":{"SPY":0.362836,"IWM":0.351407}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.321919},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2c2fbf0b3e14","ts":"2026-09-15T16:34:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8533,"target":10.1225,"target_label":"clear air (typical 60-min move)","reward_risk":3.19,"pos_in_5d_range_pct":502.0,"room_to_5d_high_atr":-5.79},"price":9.9175,"vwap":9.6397,"ext_from_open_pct":4.95,"max_ext_allowed_pct":4.0,"volume_pace":4.091,"trend":"flat","recent_slope_pct":-0.0343,"volatility":"low"},"price":9.9175,"volume":{"bars":184,"last_bar_volume":2599.0,"baseline_avg":8134.9,"bar_rvol":0.319488,"raw_accel":0.186758,"smooth_accel":-0.838986,"accel_momentum":-0.15607,"rvol_3bar":[0.381061,0.26369,0.319488],"trend_3bar":"MIXED","projected_rvol":1.657713},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":252.0,"sell_vol":8502.0,"unclassified_vol":0.0,"imbalance":-0.942426,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":4.843504},"context":{"vwap":9.638146,"price_vs_vwap_pct":2.898416,"ema9":9.913893,"ema20":9.885626,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.769608,"dist_to_hod_atr":6.376842,"atr":0.044301,"spread_atr":0.451458,"own_change_pct":-0.050403,"rel_strength_pct":{"SPY":-0.03722,"IWM":-0.048649}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.301094},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"01b193671cd7","ts":"2026-09-15T16:34:45+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8832,"target":12.59,"target_label":"prev_day_high","reward_risk":2.34,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":2.12},"price":12.0948,"vwap":12.0907,"ext_from_open_pct":-3.16,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":0.0013,"volatility":"high"},"price":12.0948,"volume":{"bars":184,"last_bar_volume":400.0,"baseline_avg":1167.6,"bar_rvol":0.342583,"raw_accel":-0.7558,"smooth_accel":0.376835,"accel_momentum":-1.898373,"rvol_3bar":[1.279648,1.490039,0.342583],"trend_3bar":"MIXED","projected_rvol":3.264817},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":78.0,"sell_vol":2668.0,"unclassified_vol":0.0,"imbalance":-0.94319,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":1.483618},"context":{"vwap":12.090583,"price_vs_vwap_pct":0.034881,"ema9":12.101887,"ema20":12.070838,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.23753,"dist_to_hod_atr":11.1924,"atr":0.047818,"spread_atr":0.627377,"own_change_pct":0.349653,"rel_strength_pct":{"SPY":0.362836,"IWM":0.351407}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.323121},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b64d5e0f9217","ts":"2026-09-15T16:34:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7457,"target":7.875,"target_label":"prev_day_high","reward_risk":0.09,"pos_in_5d_range_pct":19.6,"room_to_5d_high_atr":2.72},"price":7.864,"vwap":7.8481,"ext_from_open_pct":-0.46,"max_ext_allowed_pct":3.0,"volume_pace":1.118,"trend":"flat","recent_slope_pct":-0.0963,"volatility":"high"},"price":7.864,"volume":{"bars":184,"last_bar_volume":1233.0,"baseline_avg":13753.15,"bar_rvol":0.089652,"raw_accel":-0.641391,"smooth_accel":1.118268,"accel_momentum":-0.878128,"rvol_3bar":[5.241837,0.119312,0.089652],"trend_3bar":"DECELERATING","projected_rvol":4.05192},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":7094.0,"sell_vol":25044.0,"unclassified_vol":0.0,"imbalance":-0.558529,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":1.143567},"context":{"vwap":7.847525,"price_vs_vwap_pct":0.20994,"ema9":7.894308,"ema20":7.884891,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.832282,"dist_to_hod_atr":4.089171,"atr":0.01614,"spread_atr":0.619571,"own_change_pct":-0.189753,"rel_strength_pct":{"SPY":-0.17657,"IWM":-0.187999}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.050073},"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":"99aad6fce3ad","ts":"2026-09-15T16:34:50+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7591,"target":8.0,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":20.5,"room_to_5d_high_atr":2.69},"price":7.8774,"vwap":7.8481,"ext_from_open_pct":-0.29,"max_ext_allowed_pct":3.0,"volume_pace":1.118,"trend":"flat","recent_slope_pct":-0.0623,"volatility":"high"},"price":7.8774,"volume":{"bars":184,"last_bar_volume":1233.0,"baseline_avg":13753.15,"bar_rvol":0.089652,"raw_accel":-0.641391,"smooth_accel":1.118268,"accel_momentum":-0.878128,"rvol_3bar":[5.241837,0.119312,0.089652],"trend_3bar":"DECELERATING","projected_rvol":3.64891},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":7104.0,"sell_vol":23244.0,"unclassified_vol":0.0,"imbalance":-0.531831,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.149472},"context":{"vwap":7.847525,"price_vs_vwap_pct":0.380695,"ema9":7.894308,"ema20":7.884891,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.663304,"dist_to_hod_atr":3.258945,"atr":0.01614,"spread_atr":0.619571,"own_change_pct":-0.189753,"rel_strength_pct":{"SPY":-0.17657,"IWM":-0.187999}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.04768},"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":"6a5f1337ac3c","ts":"2026-09-15T16:35:00+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says WATCH; stop 5.88, target 6.03 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 5.97; breakout: 1-min close > 5.99 on >= 85259 sh","plan":{"state":"WATCH","setup":"","stop":5.8836,"target":6.03,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":105.0,"room_to_5d_high_atr":-0.11},"price":5.9667,"vwap":5.9468,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":1.394,"trend":"flat","recent_slope_pct":0.002,"volatility":"medium"},"price":5.9667,"volume":{"bars":184,"last_bar_volume":17619.0,"baseline_avg":53259.45,"bar_rvol":0.330815,"raw_accel":0.323258,"smooth_accel":-0.340839,"accel_momentum":-0.785249,"rvol_3bar":[1.479897,0.189874,0.330815],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2592.0,"sell_vol":2792.0,"unclassified_vol":0.0,"imbalance":-0.037147,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.004814},"context":{"vwap":5.946755,"price_vs_vwap_pct":0.335386,"ema9":5.958544,"ema20":5.954136,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.701812,"dist_to_hod_atr":5.436739,"atr":0.019,"spread_atr":0.526306,"own_change_pct":-0.001677,"rel_strength_pct":{"SPY":-0.014217,"IWM":0.003585}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.012289},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"69e474bf86cf","ts":"2026-09-15T16:35:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says PASS; stop 5.87, target 6.03 (premarket_high), R:R 0.94; target 0.08 away > ~0.06 reachable in 200 min","plan":{"state":"PASS","setup":"","stop":5.8688,"target":6.03,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":103.0,"room_to_5d_high_atr":-0.07},"price":5.9519,"vwap":5.9468,"ext_from_open_pct":0.71,"max_ext_allowed_pct":3.0,"volume_pace":1.394,"trend":"flat","recent_slope_pct":0.0176,"volatility":"medium"},"price":5.9519,"volume":{"bars":185,"last_bar_volume":10961.0,"baseline_avg":51138.95,"bar_rvol":0.214338,"raw_accel":-0.377888,"smooth_accel":-0.808088,"accel_momentum":-0.46725,"rvol_3bar":[0.189874,0.330815,0.214338],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1927.0,"sell_vol":2857.0,"unclassified_vol":0.0,"imbalance":-0.194398,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.213192},"context":{"vwap":5.946764,"price_vs_vwap_pct":0.086374,"ema9":5.960175,"ema20":5.955333,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.945634,"dist_to_hod_atr":6.255659,"atr":0.018879,"spread_atr":0.529692,"own_change_pct":-0.046905,"rel_strength_pct":{"SPY":-0.059445,"IWM":-0.041643}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.041667},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"03155218a891","ts":"2026-09-15T16:35:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 105.0s, plan says WATCH; stop 7.24, target 7.47 (prev_day_high), R:R 1.04; R:R 1.04 < 2.0 at 7.35; breakout: 1-min close > 7.38 on >= 303074 sh","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":1.04,"pos_in_5d_range_pct":40.7,"room_to_5d_high_atr":1.26},"price":7.3526,"vwap":7.2283,"ext_from_open_pct":2.83,"max_ext_allowed_pct":3.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":-0.0723,"volatility":"medium"},"price":7.3526,"volume":{"bars":185,"last_bar_volume":305030.0,"baseline_avg":219022.55,"bar_rvol":1.392688,"raw_accel":0.371852,"smooth_accel":0.187664,"accel_momentum":-0.77286,"rvol_3bar":[1.287281,1.019472,1.392688],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":123187.0,"sell_vol":72732.0,"unclassified_vol":0.0,"imbalance":0.25753,"bid":7.33,"ask":7.34,"spread_pct":0.136333,"quote_size_imbalance":null,"quote_age_s":0.217032},"context":{"vwap":7.22832,"price_vs_vwap_pct":1.719355,"ema9":7.334432,"ema20":7.311343,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.236092,"dist_to_hod_atr":0.460666,"atr":0.037771,"spread_atr":0.26475,"own_change_pct":0.136426,"rel_strength_pct":{"SPY":0.123886,"IWM":0.141688}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.358659},"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":"b624a011826f","ts":"2026-09-15T16:35:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1582,"target":11.44,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":29.1,"room_to_5d_high_atr":1.16},"price":11.375,"vwap":11.2795,"ext_from_open_pct":1.02,"max_ext_allowed_pct":4.0,"volume_pace":0.885,"trend":"flat","recent_slope_pct":-0.0219,"volatility":"high"},"price":11.375,"volume":{"bars":185,"last_bar_volume":35729.0,"baseline_avg":105359.3,"bar_rvol":0.339116,"raw_accel":-0.62514,"smooth_accel":0.380339,"accel_momentum":0.650089,"rvol_3bar":[0.289375,0.901114,0.339116],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":11069.0,"sell_vol":9632.0,"unclassified_vol":0.0,"imbalance":0.069417,"bid":11.37,"ask":11.38,"spread_pct":0.087912,"quote_size_imbalance":null,"quote_age_s":1.055113},"context":{"vwap":11.2795,"price_vs_vwap_pct":0.846665,"ema9":11.381071,"ema20":11.374066,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-0.914634,"dist_to_hod_atr":3.074419,"atr":0.034153,"spread_atr":0.292802,"own_change_pct":-0.211463,"rel_strength_pct":{"SPY":-0.224003,"IWM":-0.2062}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.02354},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"446fbe97eedb","ts":"2026-09-15T16:35:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 110.0s, plan says PASS; stop 7.24, target 7.47 (prev_day_high), R:R 1.25; target 0.13 away > ~0.13 reachable in 200 min","plan":{"state":"PASS","setup":"","stop":7.2356,"target":7.47,"target_label":"prev_day_high","reward_risk":1.25,"pos_in_5d_range_pct":39.3,"room_to_5d_high_atr":1.29},"price":7.34,"vwap":7.2285,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":-0.1066,"volatility":"medium"},"price":7.34,"volume":{"bars":185,"last_bar_volume":305030.0,"baseline_avg":219022.55,"bar_rvol":1.392688,"raw_accel":0.371852,"smooth_accel":0.187664,"accel_momentum":-0.77286,"rvol_3bar":[1.287281,1.019472,1.392688],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":154471.0,"sell_vol":77478.0,"unclassified_vol":0.0,"imbalance":0.331939,"bid":7.34,"ask":7.35,"spread_pct":0.136147,"quote_size_imbalance":null,"quote_age_s":0.253755},"context":{"vwap":7.22832,"price_vs_vwap_pct":1.545041,"ema9":7.334432,"ema20":7.311343,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.407056,"dist_to_hod_atr":0.794251,"atr":0.037771,"spread_atr":0.26475,"own_change_pct":0.136426,"rel_strength_pct":{"SPY":0.123886,"IWM":0.141688}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.462288},"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":"baa54bb630bc","ts":"2026-09-15T16:35:15+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.59,"target_label":"prev_day_high","reward_risk":2.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0908,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":-0.0117,"volatility":"high"},"price":12.09,"volume":{"bars":185,"last_bar_volume":2876.0,"baseline_avg":1170.3,"bar_rvol":2.45749,"raw_accel":6.19,"smooth_accel":0.351485,"accel_momentum":-0.02535,"rvol_3bar":[1.490039,0.342583,2.45749],"trend_3bar":"MIXED","projected_rvol":1.042468},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":62.0,"sell_vol":260.0,"unclassified_vol":0.0,"imbalance":-0.614907,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":1.303123},"context":{"vwap":12.090815,"price_vs_vwap_pct":-0.006744,"ema9":12.105509,"ema20":12.07552,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.256096,"atr":0.047974,"spread_atr":0.625339,"own_change_pct":0.164461,"rel_strength_pct":{"SPY":0.151921,"IWM":0.169724}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.511127},"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":"71d30d4acecc","ts":"2026-09-15T16:35:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"held 115.0s, plan says WATCH; stop 7.24, target 7.47 (prev_day_high), R:R 1.09; R:R 1.09 < 2.0 at 7.35; breakout: 1-min close > 7.38 on >= 303074 sh","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":1.09,"pos_in_5d_range_pct":40.4,"room_to_5d_high_atr":1.27},"price":7.35,"vwap":7.2286,"ext_from_open_pct":2.8,"max_ext_allowed_pct":3.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":-0.0794,"volatility":"medium"},"price":7.35,"volume":{"bars":185,"last_bar_volume":305030.0,"baseline_avg":219022.55,"bar_rvol":1.392688,"raw_accel":0.371852,"smooth_accel":0.187664,"accel_momentum":-0.77286,"rvol_3bar":[1.287281,1.019472,1.392688],"trend_3bar":"MIXED","projected_rvol":1.544425},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":145400.0,"sell_vol":70903.0,"unclassified_vol":0.0,"imbalance":0.34441,"bid":7.34,"ask":7.35,"spread_pct":0.136147,"quote_size_imbalance":null,"quote_age_s":0.08845},"context":{"vwap":7.22832,"price_vs_vwap_pct":1.683385,"ema9":7.334432,"ema20":7.311343,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.27137,"dist_to_hod_atr":0.529501,"atr":0.037771,"spread_atr":0.26475,"own_change_pct":0.136426,"rel_strength_pct":{"SPY":0.123886,"IWM":0.141688}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.479656},"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":"04ff2a6d4d2c","ts":"2026-09-15T16:35:15+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 435.0s, plan says PASS; stop 5.37, target 5.53 (premarket_high), R:R 1.60; R:R 1.60 < 2.0 at 5.43; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.3678,"target":5.5297,"target_label":"premarket_high","reward_risk":1.6,"pos_in_5d_range_pct":14.8,"room_to_5d_high_atr":1.85},"price":5.43,"vwap":5.393,"ext_from_open_pct":-0.55,"max_ext_allowed_pct":3.0,"volume_pace":0.752,"trend":"flat","recent_slope_pct":-0.1285,"volatility":"medium"},"price":5.43,"volume":{"bars":185,"last_bar_volume":151603.0,"baseline_avg":65354.3,"bar_rvol":2.31971,"raw_accel":1.448725,"smooth_accel":-0.020715,"accel_momentum":0.2801,"rvol_3bar":[2.12195,0.984808,2.31971],"trend_3bar":"MIXED","projected_rvol":0.07467},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1153.0,"sell_vol":2654.0,"unclassified_vol":0.0,"imbalance":-0.394274,"bid":5.43,"ask":5.44,"spread_pct":0.183993,"quote_size_imbalance":null,"quote_age_s":2.471945},"context":{"vwap":5.392988,"price_vs_vwap_pct":0.686298,"ema9":5.431724,"ema20":5.413866,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.162162,"dist_to_hod_atr":3.845021,"atr":0.031209,"spread_atr":0.320418,"own_change_pct":0.184332,"rel_strength_pct":{"SPY":0.171792,"IWM":0.189594}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.914601},"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":"deae95b8aafa","ts":"2026-09-15T16:35:20+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8458,"target":10.1125,"target_label":"clear air (typical 60-min move)","reward_risk":3.15,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6399,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":4.08,"trend":"flat","recent_slope_pct":-0.0202,"volatility":"low"},"price":9.91,"volume":{"bars":185,"last_bar_volume":10116.0,"baseline_avg":7374.9,"bar_rvol":1.37168,"raw_accel":2.892266,"smooth_accel":-0.639357,"accel_momentum":0.199629,"rvol_3bar":[0.26369,0.319488,1.37168],"trend_3bar":"ACCELERATING","projected_rvol":0.349835},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":626.0,"sell_vol":236.0,"unclassified_vol":0.0,"imbalance":0.452436,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":19.990249},"context":{"vwap":9.639752,"price_vs_vwap_pct":2.803471,"ema9":9.915114,"ema20":9.8889,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.859127,"atr":0.042279,"spread_atr":0.473043,"own_change_pct":-0.09165,"rel_strength_pct":{"SPY":-0.10419,"IWM":-0.086387}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.620598},"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":"1822cf7234dd","ts":"2026-09-15T16:35:20+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9084,"target":12.59,"target_label":"prev_day_high","reward_risk":2.22,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":2.09},"price":12.12,"vwap":12.0908,"ext_from_open_pct":-2.96,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":0.0378,"volatility":"high"},"price":12.12,"volume":{"bars":185,"last_bar_volume":2876.0,"baseline_avg":1170.3,"bar_rvol":2.45749,"raw_accel":6.19,"smooth_accel":0.351485,"accel_momentum":-0.02535,"rvol_3bar":[1.490039,0.342583,2.45749],"trend_3bar":"MIXED","projected_rvol":0.830556},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":71.0,"sell_vol":261.0,"unclassified_vol":0.0,"imbalance":-0.572289,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":0.153312},"context":{"vwap":12.090815,"price_vs_vwap_pct":0.241378,"ema9":12.105509,"ema20":12.07552,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.038005,"dist_to_hod_atr":10.630757,"atr":0.047974,"spread_atr":0.625339,"own_change_pct":0.164461,"rel_strength_pct":{"SPY":0.151921,"IWM":0.169724}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.406395},"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":"daf011acc2a9","ts":"2026-09-15T16:35:25+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 445.0s, plan says WATCH; stop 5.37, target 5.53 (premarket_high), R:R 1.28; R:R 1.28 < 2.0 at 5.44; breakout: 1-min close > 5.47 on >= 74088 sh","plan":{"state":"WATCH","setup":"","stop":5.37,"target":5.5297,"target_label":"premarket_high","reward_risk":1.28,"pos_in_5d_range_pct":16.6,"room_to_5d_high_atr":1.81},"price":5.4399,"vwap":5.393,"ext_from_open_pct":-0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.752,"trend":"flat","recent_slope_pct":-0.0921,"volatility":"medium"},"price":5.4399,"volume":{"bars":185,"last_bar_volume":151603.0,"baseline_avg":65354.3,"bar_rvol":2.31971,"raw_accel":1.448725,"smooth_accel":-0.020715,"accel_momentum":0.2801,"rvol_3bar":[2.12195,0.984808,2.31971],"trend_3bar":"MIXED","projected_rvol":0.175536},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":238.0,"sell_vol":5143.0,"unclassified_vol":0.0,"imbalance":-0.911541,"bid":5.43,"ask":5.44,"spread_pct":0.183993,"quote_size_imbalance":null,"quote_age_s":0.76269},"context":{"vwap":5.392988,"price_vs_vwap_pct":0.869869,"ema9":5.431724,"ema20":5.413866,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.983784,"dist_to_hod_atr":3.527807,"atr":0.031209,"spread_atr":0.320418,"own_change_pct":0.184332,"rel_strength_pct":{"SPY":0.171792,"IWM":0.189594}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.11451},"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":"4d096b84d5f3","ts":"2026-09-15T16:35:40+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7467,"target":7.91,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.72},"price":7.865,"vwap":7.8481,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":4.0,"volume_pace":1.113,"trend":"flat","recent_slope_pct":-0.1118,"volatility":"high"},"price":7.865,"volume":{"bars":185,"last_bar_volume":41929.0,"baseline_avg":13130.5,"bar_rvol":3.193252,"raw_accel":11.773009,"smooth_accel":-0.485267,"accel_momentum":-1.603534,"rvol_3bar":[0.119312,0.089652,3.193252],"trend_3bar":"MIXED","projected_rvol":0.02993},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":215.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.894273,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.67547},"context":{"vwap":7.848084,"price_vs_vwap_pct":0.215545,"ema9":7.889067,"ema20":7.883292,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.819672,"dist_to_hod_atr":3.735287,"atr":0.017402,"spread_atr":0.57466,"own_change_pct":-0.396233,"rel_strength_pct":{"SPY":-0.408773,"IWM":-0.39097}},"vas":{"raw":2,"score":5.6,"components":{"rvol":3,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.85564},"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":"6dc1d401a300","ts":"2026-09-15T16:35:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2291,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.762,"trend":"flat","recent_slope_pct":-0.0386,"volatility":"medium"},"price":7.365,"volume":{"bars":185,"last_bar_volume":305030.0,"baseline_avg":219022.55,"bar_rvol":1.392688,"raw_accel":0.371852,"smooth_accel":0.187664,"accel_momentum":-0.77286,"rvol_3bar":[1.287281,1.019472,1.392688],"trend_3bar":"MIXED","projected_rvol":1.306571},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":98153.0,"sell_vol":50065.0,"unclassified_vol":0.0,"imbalance":0.324441,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.028092},"context":{"vwap":7.22832,"price_vs_vwap_pct":1.890902,"ema9":7.334432,"ema20":7.311343,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.067843,"dist_to_hod_atr":0.132375,"atr":0.037771,"spread_atr":0.26475,"own_change_pct":0.136426,"rel_strength_pct":{"SPY":0.123886,"IWM":0.141688}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.451845},"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":"12bae8191e07","ts":"2026-09-15T16:35:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8518,"target":10.1185,"target_label":"clear air (typical 60-min move)","reward_risk":3.15,"pos_in_5d_range_pct":501.6,"room_to_5d_high_atr":-5.79},"price":9.916,"vwap":9.6401,"ext_from_open_pct":4.93,"max_ext_allowed_pct":4.0,"volume_pace":4.074,"trend":"flat","recent_slope_pct":-0.0081,"volatility":"low"},"price":9.916,"volume":{"bars":185,"last_bar_volume":10116.0,"baseline_avg":7374.9,"bar_rvol":1.37168,"raw_accel":2.892266,"smooth_accel":-0.639357,"accel_momentum":0.199629,"rvol_3bar":[0.26369,0.319488,1.37168],"trend_3bar":"ACCELERATING","projected_rvol":0.419622},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":1250.0,"sell_vol":887.0,"unclassified_vol":0.0,"imbalance":0.169864,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":0.722583},"context":{"vwap":9.639752,"price_vs_vwap_pct":2.865713,"ema9":9.915114,"ema20":9.8889,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.784314,"dist_to_hod_atr":6.717214,"atr":0.042279,"spread_atr":0.709565,"own_change_pct":-0.09165,"rel_strength_pct":{"SPY":-0.10419,"IWM":-0.086387}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.232999},"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":"3089033d30c9","ts":"2026-09-15T16:35:45+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7601,"target":8.0,"target_label":"premarket_high","reward_risk":1.03,"pos_in_5d_range_pct":20.5,"room_to_5d_high_atr":2.69},"price":7.8784,"vwap":7.8481,"ext_from_open_pct":-0.27,"max_ext_allowed_pct":4.0,"volume_pace":1.112,"trend":"flat","recent_slope_pct":-0.0777,"volatility":"high"},"price":7.8784,"volume":{"bars":185,"last_bar_volume":41929.0,"baseline_avg":13130.5,"bar_rvol":3.193252,"raw_accel":11.773009,"smooth_accel":-0.485267,"accel_momentum":-1.603534,"rvol_3bar":[0.119312,0.089652,3.193252],"trend_3bar":"MIXED","projected_rvol":0.027722},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":216.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.903084,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.483492},"context":{"vwap":7.848084,"price_vs_vwap_pct":0.386287,"ema9":7.889067,"ema20":7.883292,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.650694,"dist_to_hod_atr":2.965243,"atr":0.017402,"spread_atr":0.57466,"own_change_pct":-0.396233,"rel_strength_pct":{"SPY":-0.408773,"IWM":-0.39097}},"vas":{"raw":2,"score":5.6,"components":{"rvol":3,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.883774},"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":"4f0b6b4f0874","ts":"2026-09-15T16:35:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8558,"target":10.1225,"target_label":"clear air (typical 60-min move)","reward_risk":3.15,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6402,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":4.071,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":9.92,"volume":{"bars":185,"last_bar_volume":10116.0,"baseline_avg":7374.9,"bar_rvol":1.37168,"raw_accel":2.892266,"smooth_accel":-0.639357,"accel_momentum":0.199629,"rvol_3bar":[0.26369,0.319488,1.37168],"trend_3bar":"ACCELERATING","projected_rvol":0.39436},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":460.0,"sell_vol":235.0,"unclassified_vol":0.0,"imbalance":0.323741,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":7.059751},"context":{"vwap":9.639752,"price_vs_vwap_pct":2.907208,"ema9":9.915114,"ema20":9.8889,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":6.622605,"atr":0.042279,"spread_atr":0.473043,"own_change_pct":-0.09165,"rel_strength_pct":{"SPY":-0.10419,"IWM":-0.086387}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.444069},"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":"439ca2218415","ts":"2026-09-15T16:35:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2295,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.763,"trend":"flat","recent_slope_pct":-0.0522,"volatility":"medium"},"price":7.36,"volume":{"bars":185,"last_bar_volume":305030.0,"baseline_avg":219022.55,"bar_rvol":1.392688,"raw_accel":0.371852,"smooth_accel":0.187664,"accel_momentum":-0.77286,"rvol_3bar":[1.287281,1.019472,1.392688],"trend_3bar":"MIXED","projected_rvol":1.398969},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":88429.0,"sell_vol":69546.0,"unclassified_vol":0.0,"imbalance":0.119532,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.021964},"context":{"vwap":7.22832,"price_vs_vwap_pct":1.82173,"ema9":7.334432,"ema20":7.311343,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.26475,"atr":0.037771,"spread_atr":0.26475,"own_change_pct":0.136426,"rel_strength_pct":{"SPY":0.123886,"IWM":0.141688}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.16647},"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":"4d232687945a","ts":"2026-09-15T16:36:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.863,"target":10.1297,"target_label":"clear air (typical 60-min move)","reward_risk":3.15,"pos_in_5d_range_pct":504.6,"room_to_5d_high_atr":-5.83},"price":9.9272,"vwap":9.6402,"ext_from_open_pct":5.05,"max_ext_allowed_pct":5.0,"volume_pace":4.07,"trend":"flat","recent_slope_pct":0.0145,"volatility":"low"},"price":9.9272,"volume":{"bars":185,"last_bar_volume":10116.0,"baseline_avg":7374.9,"bar_rvol":1.37168,"raw_accel":2.892266,"smooth_accel":-0.639357,"accel_momentum":0.199629,"rvol_3bar":[0.26369,0.319488,1.37168],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":467.0,"sell_vol":235.0,"unclassified_vol":0.0,"imbalance":0.330484,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":12.059751},"context":{"vwap":9.639752,"price_vs_vwap_pct":2.981899,"ema9":9.915114,"ema20":9.8889,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.67451,"dist_to_hod_atr":6.45231,"atr":0.042279,"spread_atr":0.473043,"own_change_pct":-0.09165,"rel_strength_pct":{"SPY":-0.114913,"IWM":-0.068848}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.453319},"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":"487cd4ed8e0b","ts":"2026-09-15T16:36:00+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7467,"target":7.91,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.72},"price":7.865,"vwap":7.8481,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":1.111,"trend":"flat","recent_slope_pct":-0.1118,"volatility":"high"},"price":7.865,"volume":{"bars":185,"last_bar_volume":41929.0,"baseline_avg":13130.5,"bar_rvol":3.193252,"raw_accel":11.773009,"smooth_accel":-0.485267,"accel_momentum":-1.603534,"rvol_3bar":[0.119312,0.089652,3.193252],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":711.0,"sell_vol":103.0,"unclassified_vol":0.0,"imbalance":0.746929,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.873341},"context":{"vwap":7.848084,"price_vs_vwap_pct":0.215545,"ema9":7.889067,"ema20":7.883292,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.819672,"dist_to_hod_atr":3.735287,"atr":0.017402,"spread_atr":0.57466,"own_change_pct":-0.396233,"rel_strength_pct":{"SPY":-0.419496,"IWM":-0.373431}},"vas":{"raw":2,"score":5.6,"components":{"rvol":3,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.385132},"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":"a286e2bf2375","ts":"2026-09-15T16:36:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2296,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.764,"trend":"flat","recent_slope_pct":-0.0386,"volatility":"medium"},"price":7.365,"volume":{"bars":185,"last_bar_volume":305030.0,"baseline_avg":219022.55,"bar_rvol":1.392688,"raw_accel":0.371852,"smooth_accel":0.187664,"accel_momentum":-0.77286,"rvol_3bar":[1.287281,1.019472,1.392688],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":95583.0,"sell_vol":78750.0,"unclassified_vol":0.0,"imbalance":0.096557,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.179906},"context":{"vwap":7.22832,"price_vs_vwap_pct":1.890902,"ema9":7.334432,"ema20":7.311343,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.067843,"dist_to_hod_atr":0.132375,"atr":0.037771,"spread_atr":0.26475,"own_change_pct":0.136426,"rel_strength_pct":{"SPY":0.113162,"IWM":0.159227}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.134473},"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":"c5cfcbd91bf2","ts":"2026-09-15T16:36:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"BUY","setup":"pullback","stop":9.8658,"target":10.13,"target_label":"clear air (typical 60-min move)","reward_risk":3.12,"pos_in_5d_range_pct":505.4,"room_to_5d_high_atr":-5.84},"price":9.93,"vwap":9.6402,"ext_from_open_pct":5.08,"max_ext_allowed_pct":5.0,"volume_pace":4.068,"trend":"flat","recent_slope_pct":0.0325,"volatility":"low"},"price":9.93,"volume":{"bars":186,"last_bar_volume":2675.0,"baseline_avg":7281.2,"bar_rvol":0.367384,"raw_accel":-0.735567,"smooth_accel":0.086327,"accel_momentum":0.725685,"rvol_3bar":[0.319488,1.37168,0.367384],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":763.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.705028,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":4.99021},"context":{"vwap":9.640181,"price_vs_vwap_pct":3.006364,"ema9":9.917531,"ema20":9.892547,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.647059,"dist_to_hod_atr":6.530385,"atr":0.041345,"spread_atr":0.483732,"own_change_pct":-0.048329,"rel_strength_pct":{"SPY":-0.071592,"IWM":-0.025527}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.259016},"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":"18d425f67c7a","ts":"2026-09-15T16:36:05+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.59,"target_label":"prev_day_high","reward_risk":2.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0909,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.0447,"volatility":"high"},"price":12.09,"volume":{"bars":186,"last_bar_volume":2303.0,"baseline_avg":1271.5,"bar_rvol":1.811247,"raw_accel":-0.199235,"smooth_accel":0.291435,"accel_momentum":-0.06005,"rvol_3bar":[0.342583,2.45749,1.811247],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":71.0,"sell_vol":767.0,"unclassified_vol":0.0,"imbalance":-0.830549,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":2.514424},"context":{"vwap":12.09091,"price_vs_vwap_pct":-0.007524,"ema9":12.104867,"ema20":12.078071,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.565609,"atr":0.04669,"spread_atr":0.642534,"own_change_pct":-0.063584,"rel_strength_pct":{"SPY":-0.086847,"IWM":-0.040782}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.504329},"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":"6a4fa5c4a26f","ts":"2026-09-15T16:36:05+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4336,"target":9.87,"target_label":"premarket_high","reward_risk":1.88,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.2},"price":9.585,"vwap":9.5654,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.811,"trend":"flat","recent_slope_pct":-0.0625,"volatility":"high"},"price":9.585,"volume":{"bars":186,"last_bar_volume":1273.0,"baseline_avg":11832.9,"bar_rvol":0.107581,"raw_accel":-0.813124,"smooth_accel":3.211702,"accel_momentum":-0.676896,"rvol_3bar":[2.470782,0.587664,0.107581],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":53.0,"sell_vol":255.0,"unclassified_vol":0.0,"imbalance":-0.655844,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":2.026338},"context":{"vwap":9.565444,"price_vs_vwap_pct":0.204449,"ema9":9.595015,"ema20":9.586352,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.49237,"dist_to_hod_atr":10.273,"atr":0.023849,"spread_atr":0.419306,"own_change_pct":-0.242625,"rel_strength_pct":{"SPY":-0.265888,"IWM":-0.219824}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.070557},"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":"4d3fa85bef07","ts":"2026-09-15T16:36:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7,"target":7.91,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":63.3,"room_to_5d_high_atr":0.57},"price":7.805,"vwap":7.7334,"ext_from_open_pct":1.36,"max_ext_allowed_pct":4.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":-0.0387,"volatility":"medium"},"price":7.805,"volume":{"bars":186,"last_bar_volume":7344.0,"baseline_avg":18355.65,"bar_rvol":0.400095,"raw_accel":-0.536159,"smooth_accel":-0.668815,"accel_momentum":-0.216676,"rvol_3bar":[0.164569,0.8996,0.400095],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":4054.0,"sell_vol":562.0,"unclassified_vol":0.0,"imbalance":0.756499,"bid":7.8,"ask":7.81,"spread_pct":0.128123,"quote_size_imbalance":null,"quote_age_s":2.212163},"context":{"vwap":7.733361,"price_vs_vwap_pct":0.926363,"ema9":7.811039,"ema20":7.795803,"ema_stack":false,"ema_warm":true,"hod":7.83,"dist_to_hod_pct":-0.319285,"dist_to_hod_atr":0.969264,"atr":0.025793,"spread_atr":0.387706,"own_change_pct":-0.002559,"rel_strength_pct":{"SPY":-0.025823,"IWM":0.020242}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.302671},"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":"927860562c2b","ts":"2026-09-15T16:36:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8516,"target":10.1158,"target_label":"clear air (typical 60-min move)","reward_risk":3.12,"pos_in_5d_range_pct":501.6,"room_to_5d_high_atr":-5.79},"price":9.9158,"vwap":9.6402,"ext_from_open_pct":4.93,"max_ext_allowed_pct":5.0,"volume_pace":4.067,"trend":"flat","recent_slope_pct":0.0038,"volatility":"low"},"price":9.9158,"volume":{"bars":186,"last_bar_volume":2675.0,"baseline_avg":7281.2,"bar_rvol":0.367384,"raw_accel":-0.735567,"smooth_accel":0.086327,"accel_momentum":0.725685,"rvol_3bar":[0.319488,1.37168,0.367384],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":770.0,"sell_vol":142.0,"unclassified_vol":0.0,"imbalance":0.688596,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":9.99021},"context":{"vwap":9.640181,"price_vs_vwap_pct":2.859064,"ema9":9.917531,"ema20":9.892547,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.786275,"dist_to_hod_atr":6.873835,"atr":0.041345,"spread_atr":0.483732,"own_change_pct":-0.048329,"rel_strength_pct":{"SPY":-0.071592,"IWM":-0.025527}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.25298},"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":"d6115eee7619","ts":"2026-09-15T16:36:10+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9084,"target":12.59,"target_label":"prev_day_high","reward_risk":2.22,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":2.09},"price":12.12,"vwap":12.0911,"ext_from_open_pct":-2.96,"max_ext_allowed_pct":3.0,"volume_pace":0.637,"trend":"flat","recent_slope_pct":0.0049,"volatility":"high"},"price":12.12,"volume":{"bars":186,"last_bar_volume":2303.0,"baseline_avg":1271.5,"bar_rvol":1.811247,"raw_accel":-0.199235,"smooth_accel":0.291435,"accel_momentum":-0.06005,"rvol_3bar":[0.342583,2.45749,1.811247],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":1205.0,"sell_vol":1608.0,"unclassified_vol":0.0,"imbalance":-0.143263,"bid":12.11,"ask":12.16,"spread_pct":0.412031,"quote_size_imbalance":null,"quote_age_s":3.072675},"context":{"vwap":12.09091,"price_vs_vwap_pct":0.240596,"ema9":12.104867,"ema20":12.078071,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.038005,"dist_to_hod_atr":10.923075,"atr":0.04669,"spread_atr":1.07089,"own_change_pct":-0.063584,"rel_strength_pct":{"SPY":-0.086847,"IWM":-0.040782}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.259485},"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":"59d65c80d4d9","ts":"2026-09-15T16:36:10+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.421,"target":9.87,"target_label":"premarket_high","reward_risk":1.97,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.22},"price":9.5724,"vwap":9.5655,"ext_from_open_pct":-1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":-0.0888,"volatility":"high"},"price":9.5724,"volume":{"bars":186,"last_bar_volume":1273.0,"baseline_avg":11832.9,"bar_rvol":0.107581,"raw_accel":-0.813124,"smooth_accel":3.211702,"accel_momentum":-0.676896,"rvol_3bar":[2.470782,0.587664,0.107581],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1361.0,"sell_vol":7339.0,"unclassified_vol":0.0,"imbalance":-0.687126,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.282702},"context":{"vwap":9.565444,"price_vs_vwap_pct":0.072725,"ema9":9.595015,"ema20":9.586352,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.620549,"dist_to_hod_atr":10.801326,"atr":0.023849,"spread_atr":0.419306,"own_change_pct":-0.242625,"rel_strength_pct":{"SPY":-0.265888,"IWM":-0.219824}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.073922},"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":"8d8caa1f2019","ts":"2026-09-15T16:36:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"BUY","setup":"pullback","stop":9.8652,"target":10.1294,"target_label":"clear air (typical 60-min move)","reward_risk":3.12,"pos_in_5d_range_pct":505.2,"room_to_5d_high_atr":-5.84},"price":9.9294,"vwap":9.6402,"ext_from_open_pct":5.07,"max_ext_allowed_pct":5.0,"volume_pace":4.065,"trend":"flat","recent_slope_pct":0.0312,"volatility":"low"},"price":9.9294,"volume":{"bars":186,"last_bar_volume":2675.0,"baseline_avg":7281.2,"bar_rvol":0.367384,"raw_accel":-0.735567,"smooth_accel":0.086327,"accel_momentum":0.725685,"rvol_3bar":[0.319488,1.37168,0.367384],"trend_3bar":"MIXED","projected_rvol":0.181289},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":554.0,"sell_vol":130.0,"unclassified_vol":0.0,"imbalance":0.619883,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":14.99021},"context":{"vwap":9.640181,"price_vs_vwap_pct":3.00014,"ema9":9.917531,"ema20":9.892547,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.652941,"dist_to_hod_atr":6.544897,"atr":0.041345,"spread_atr":0.483732,"own_change_pct":-0.048329,"rel_strength_pct":{"SPY":-0.071592,"IWM":-0.025527}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.227735},"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":"da8073b96a6c","ts":"2026-09-15T16:36:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2298,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.764,"trend":"flat","recent_slope_pct":-0.0004,"volatility":"medium"},"price":7.36,"volume":{"bars":186,"last_bar_volume":308595.0,"baseline_avg":230055.05,"bar_rvol":1.341396,"raw_accel":0.011687,"smooth_accel":-0.089524,"accel_momentum":-0.277188,"rvol_3bar":[1.019472,1.392688,1.341396],"trend_3bar":"MIXED","projected_rvol":0.772111},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":54276.0,"sell_vol":71080.0,"unclassified_vol":0.0,"imbalance":-0.13405,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.485517},"context":{"vwap":7.229594,"price_vs_vwap_pct":1.803784,"ema9":7.340546,"ema20":7.316454,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.263639,"atr":0.037931,"spread_atr":0.263639,"own_change_pct":0.339232,"rel_strength_pct":{"SPY":0.315969,"IWM":0.362034}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.179814},"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":"45fb141de395","ts":"2026-09-15T16:36:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.23,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.765,"trend":"flat","recent_slope_pct":0.0132,"volatility":"medium"},"price":7.365,"volume":{"bars":186,"last_bar_volume":308595.0,"baseline_avg":230055.05,"bar_rvol":1.341396,"raw_accel":0.011687,"smooth_accel":-0.089524,"accel_momentum":-0.277188,"rvol_3bar":[1.019472,1.392688,1.341396],"trend_3bar":"MIXED","projected_rvol":1.362522},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":60999.0,"sell_vol":85235.0,"unclassified_vol":0.0,"imbalance":-0.165734,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.524549},"context":{"vwap":7.229594,"price_vs_vwap_pct":1.872944,"ema9":7.340546,"ema20":7.316454,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.067843,"dist_to_hod_atr":0.13182,"atr":0.037931,"spread_atr":0.263639,"own_change_pct":0.339232,"rel_strength_pct":{"SPY":0.315969,"IWM":0.362034}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.222315},"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":"b0838988f644","ts":"2026-09-15T16:36:25+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3849,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.475,"vwap":8.3416,"ext_from_open_pct":1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":-0.0556,"volatility":"medium"},"price":8.475,"volume":{"bars":186,"last_bar_volume":1576.0,"baseline_avg":1173.3,"bar_rvol":1.34322,"raw_accel":1.750436,"smooth_accel":0.890469,"accel_momentum":-0.168311,"rvol_3bar":[2.737289,0.499782,1.34322],"trend_3bar":"MIXED","projected_rvol":0.681156},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":3.0,"sell_vol":330.0,"unclassified_vol":0.0,"imbalance":-0.981982,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.701694},"context":{"vwap":8.341419,"price_vs_vwap_pct":1.601419,"ema9":8.479553,"ema20":8.466761,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.294118,"dist_to_hod_atr":1.210606,"atr":0.020651,"spread_atr":0.484243,"own_change_pct":-0.042428,"rel_strength_pct":{"SPY":-0.065691,"IWM":-0.019626}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.319018},"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":"21ecd804e1b3","ts":"2026-09-15T16:36:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":1.09,"pos_in_5d_range_pct":40.5,"room_to_5d_high_atr":1.27},"price":7.3501,"vwap":7.2301,"ext_from_open_pct":2.8,"max_ext_allowed_pct":3.0,"volume_pace":0.765,"trend":"flat","recent_slope_pct":-0.0273,"volatility":"medium"},"price":7.3501,"volume":{"bars":186,"last_bar_volume":308595.0,"baseline_avg":230055.05,"bar_rvol":1.341396,"raw_accel":0.011687,"smooth_accel":-0.089524,"accel_momentum":-0.277188,"rvol_3bar":[1.019472,1.392688,1.341396],"trend_3bar":"MIXED","projected_rvol":1.268305},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":47380.0,"sell_vol":101918.0,"unclassified_vol":0.0,"imbalance":-0.365296,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.090042},"context":{"vwap":7.229594,"price_vs_vwap_pct":1.666847,"ema9":7.340546,"ema20":7.316454,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.270014,"dist_to_hod_atr":0.524642,"atr":0.037931,"spread_atr":0.263639,"own_change_pct":0.339232,"rel_strength_pct":{"SPY":0.315969,"IWM":0.362034}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.490007},"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":"20f46ece9d49","ts":"2026-09-15T16:36:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8487,"target":10.1287,"target_label":"clear air (typical 60-min move)","reward_risk":2.5,"pos_in_5d_range_pct":505.1,"room_to_5d_high_atr":-5.84},"price":9.9287,"vwap":9.6403,"ext_from_open_pct":5.07,"max_ext_allowed_pct":4.0,"volume_pace":4.06,"trend":"flat","recent_slope_pct":0.0298,"volatility":"low"},"price":9.9287,"volume":{"bars":186,"last_bar_volume":2675.0,"baseline_avg":7281.2,"bar_rvol":0.367384,"raw_accel":-0.735567,"smooth_accel":0.086327,"accel_momentum":0.725685,"rvol_3bar":[0.319488,1.37168,0.367384],"trend_3bar":"MIXED","projected_rvol":0.128276},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":420.0,"sell_vol":47.0,"unclassified_vol":0.0,"imbalance":0.798715,"bid":9.91,"ask":9.95,"spread_pct":0.40282,"quote_size_imbalance":null,"quote_age_s":9.748286},"context":{"vwap":9.640181,"price_vs_vwap_pct":2.992879,"ema9":9.917531,"ema20":9.892547,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.659804,"dist_to_hod_atr":6.561828,"atr":0.041345,"spread_atr":0.967464,"own_change_pct":-0.048329,"rel_strength_pct":{"SPY":-0.071592,"IWM":-0.025527}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.293436},"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":"f478b5fa3a60","ts":"2026-09-15T16:36:40+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":1.387,"trend":"flat","recent_slope_pct":-0.0215,"volatility":"medium"},"price":5.945,"volume":{"bars":186,"last_bar_volume":41595.0,"baseline_avg":51098.0,"bar_rvol":0.814024,"raw_accel":2.256096,"smooth_accel":-0.599325,"accel_momentum":0.208763,"rvol_3bar":[0.330815,0.214338,0.814024],"trend_3bar":"MIXED","projected_rvol":1.014961},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":7993.0,"sell_vol":23637.0,"unclassified_vol":0.0,"imbalance":-0.494594,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.014116},"context":{"vwap":5.946789,"price_vs_vwap_pct":-0.030088,"ema9":5.96014,"ema20":5.955777,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.676184,"atr":0.018723,"spread_atr":0.534095,"own_change_pct":-0.167504,"rel_strength_pct":{"SPY":-0.190768,"IWM":-0.144703}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.402611},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8daae55b77bd","ts":"2026-09-15T16:36:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2301,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.764,"trend":"flat","recent_slope_pct":0.0132,"volatility":"medium"},"price":7.365,"volume":{"bars":186,"last_bar_volume":308595.0,"baseline_avg":230055.05,"bar_rvol":1.341396,"raw_accel":0.011687,"smooth_accel":-0.089524,"accel_momentum":-0.277188,"rvol_3bar":[1.019472,1.392688,1.341396],"trend_3bar":"MIXED","projected_rvol":0.826491},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":24562.0,"sell_vol":64582.0,"unclassified_vol":0.0,"imbalance":-0.448937,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":1.844255},"context":{"vwap":7.229594,"price_vs_vwap_pct":1.872944,"ema9":7.340546,"ema20":7.316454,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.067843,"dist_to_hod_atr":0.13182,"atr":0.037931,"spread_atr":0.263639,"own_change_pct":0.339232,"rel_strength_pct":{"SPY":0.315969,"IWM":0.362034}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.602202},"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":"905b905f2773","ts":"2026-09-15T16:36:45+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7278,"target":7.875,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":18.5,"room_to_5d_high_atr":2.76},"price":7.8461,"vwap":7.8481,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.125,"trend":"flat","recent_slope_pct":-0.1641,"volatility":"high"},"price":7.8461,"volume":{"bars":186,"last_bar_volume":875.0,"baseline_avg":15207.15,"bar_rvol":0.057539,"raw_accel":-0.979131,"smooth_accel":-0.475457,"accel_momentum":0.00981,"rvol_3bar":[0.089652,3.193252,0.057539],"trend_3bar":"MIXED","projected_rvol":3.263553},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":21211.0,"sell_vol":16010.0,"unclassified_vol":0.0,"imbalance":0.139733,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.377399},"context":{"vwap":7.848094,"price_vs_vwap_pct":-0.025404,"ema9":7.884253,"ema20":7.88155,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.058008,"dist_to_hod_atr":4.531271,"atr":0.018516,"spread_atr":0.54008,"own_change_pct":-0.443038,"rel_strength_pct":{"SPY":-0.466301,"IWM":-0.420237}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.00804},"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":"3b4373651dcd","ts":"2026-09-15T16:36:45+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2301,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.764,"trend":"flat","recent_slope_pct":-0.0004,"volatility":"medium"},"price":7.36,"volume":{"bars":186,"last_bar_volume":308595.0,"baseline_avg":230055.05,"bar_rvol":1.341396,"raw_accel":0.011687,"smooth_accel":-0.089524,"accel_momentum":-0.277188,"rvol_3bar":[1.019472,1.392688,1.341396],"trend_3bar":"MIXED","projected_rvol":0.736177},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":18109.0,"sell_vol":64505.0,"unclassified_vol":0.0,"imbalance":-0.5616,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.329412},"context":{"vwap":7.229594,"price_vs_vwap_pct":1.803784,"ema9":7.340546,"ema20":7.316454,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.263639,"atr":0.037931,"spread_atr":0.263639,"own_change_pct":0.339232,"rel_strength_pct":{"SPY":0.315969,"IWM":0.362034}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.753328},"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":"da3507b3bec6","ts":"2026-09-15T16:36:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.386,"trend":"flat","recent_slope_pct":-0.0047,"volatility":"medium"},"price":5.95,"volume":{"bars":186,"last_bar_volume":41595.0,"baseline_avg":51098.0,"bar_rvol":0.814024,"raw_accel":2.256096,"smooth_accel":-0.599325,"accel_momentum":0.208763,"rvol_3bar":[0.330815,0.214338,0.814024],"trend_3bar":"MIXED","projected_rvol":0.952546},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":8395.0,"sell_vol":28292.0,"unclassified_vol":0.0,"imbalance":-0.542345,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.46166},"context":{"vwap":5.946789,"price_vs_vwap_pct":0.053991,"ema9":5.96014,"ema20":5.955777,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.409137,"atr":0.018723,"spread_atr":0.534095,"own_change_pct":-0.167504,"rel_strength_pct":{"SPY":-0.190768,"IWM":-0.144703}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.441482},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"60b362617c75","ts":"2026-09-15T16:36:50+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8482,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":4.0,"volume_pace":1.129,"trend":"flat","recent_slope_pct":-0.1542,"volatility":"high"},"price":7.85,"volume":{"bars":186,"last_bar_volume":875.0,"baseline_avg":15207.15,"bar_rvol":0.057539,"raw_accel":-0.979131,"smooth_accel":-0.475457,"accel_momentum":0.00981,"rvol_3bar":[0.089652,3.193252,0.057539],"trend_3bar":"MIXED","projected_rvol":3.622848},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":28945.0,"sell_vol":16961.0,"unclassified_vol":0.0,"imbalance":0.261055,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.050394},"context":{"vwap":7.848094,"price_vs_vwap_pct":0.02429,"ema9":7.884253,"ema20":7.88155,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":4.320639,"atr":0.018516,"spread_atr":0.54008,"own_change_pct":-0.443038,"rel_strength_pct":{"SPY":-0.466301,"IWM":-0.420237}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.015021},"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":"02e59c577e33","ts":"2026-09-15T16:36:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"BUY","setup":"pullback","stop":9.875,"target":10.1392,"target_label":"clear air (typical 60-min move)","reward_risk":3.12,"pos_in_5d_range_pct":507.9,"room_to_5d_high_atr":-5.88},"price":9.9392,"vwap":9.6403,"ext_from_open_pct":5.18,"max_ext_allowed_pct":5.0,"volume_pace":4.051,"trend":"flat","recent_slope_pct":0.051,"volatility":"low"},"price":9.9392,"volume":{"bars":186,"last_bar_volume":2675.0,"baseline_avg":7281.2,"bar_rvol":0.367384,"raw_accel":-0.735567,"smooth_accel":0.086327,"accel_momentum":0.725685,"rvol_3bar":[0.319488,1.37168,0.367384],"trend_3bar":"MIXED","projected_rvol":0.11986},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":330.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.907514,"bid":9.91,"ask":9.94,"spread_pct":0.302267,"quote_size_imbalance":null,"quote_age_s":2.19107},"context":{"vwap":9.640181,"price_vs_vwap_pct":3.101798,"ema9":9.917531,"ema20":9.892547,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.556863,"dist_to_hod_atr":6.307868,"atr":0.041345,"spread_atr":0.725598,"own_change_pct":-0.048329,"rel_strength_pct":{"SPY":-0.071592,"IWM":-0.025527}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.333407},"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":"913412dbb480","ts":"2026-09-15T16:37:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.2302,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.763,"trend":"flat","recent_slope_pct":0.0132,"volatility":"medium"},"price":7.365,"volume":{"bars":186,"last_bar_volume":308595.0,"baseline_avg":230055.05,"bar_rvol":1.341396,"raw_accel":0.011687,"smooth_accel":-0.089524,"accel_momentum":-0.277188,"rvol_3bar":[1.019472,1.392688,1.341396],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":10270.0,"sell_vol":14749.0,"unclassified_vol":0.0,"imbalance":-0.179024,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.10515},"context":{"vwap":7.229594,"price_vs_vwap_pct":1.872944,"ema9":7.340546,"ema20":7.316454,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.067843,"dist_to_hod_atr":0.13182,"atr":0.037931,"spread_atr":0.263639,"own_change_pct":0.339232,"rel_strength_pct":{"SPY":0.321412,"IWM":0.372553}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.240142},"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":"43de741c30a3","ts":"2026-09-15T16:37:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":5.98,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9468,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.388,"trend":"flat","recent_slope_pct":-0.1046,"volatility":"medium"},"price":5.94,"volume":{"bars":187,"last_bar_volume":41571.0,"baseline_avg":49201.3,"bar_rvol":0.844917,"raw_accel":-0.000577,"smooth_accel":-0.079244,"accel_momentum":0.520081,"rvol_3bar":[0.214338,0.814024,0.844917],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":213,"trade_rate":7.1,"buy_vol":24785.0,"sell_vol":45230.0,"unclassified_vol":0.0,"imbalance":-0.292009,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.702459},"context":{"vwap":5.946799,"price_vs_vwap_pct":-0.114324,"ema9":5.958112,"ema20":5.955227,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":6.816415,"atr":0.019072,"spread_atr":0.52434,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.101783,"IWM":-0.050642}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.246723},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fee813591607","ts":"2026-09-15T16:37:05+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4486,"target":9.87,"target_label":"premarket_high","reward_risk":1.78,"pos_in_5d_range_pct":7.2,"room_to_5d_high_atr":3.17},"price":9.6,"vwap":9.5655,"ext_from_open_pct":-1.54,"max_ext_allowed_pct":4.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":-0.0019,"volatility":"high"},"price":9.6,"volume":{"bars":187,"last_bar_volume":10894.0,"baseline_avg":11376.75,"bar_rvol":0.957567,"raw_accel":2.830268,"smooth_accel":-0.382737,"accel_momentum":-3.594438,"rvol_3bar":[0.587664,0.107581,0.957567],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":728.0,"sell_vol":668.0,"unclassified_vol":0.0,"imbalance":0.04298,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":4.997268},"context":{"vwap":9.565528,"price_vs_vwap_pct":0.360379,"ema9":9.592492,"ema20":9.585976,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.339776,"dist_to_hod_atr":9.425236,"atr":0.024403,"spread_atr":0.409793,"own_change_pct":-0.183333,"rel_strength_pct":{"SPY":-0.201153,"IWM":-0.150012}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.041156},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4d6beb763284","ts":"2026-09-15T16:37:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2303,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.764,"trend":"flat","recent_slope_pct":0.0468,"volatility":"medium"},"price":7.36,"volume":{"bars":187,"last_bar_volume":146626.0,"baseline_avg":238178.1,"bar_rvol":0.615615,"raw_accel":-0.524859,"smooth_accel":-0.174249,"accel_momentum":-0.084725,"rvol_3bar":[1.392688,1.341396,0.615615],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":24889.0,"sell_vol":29519.0,"unclassified_vol":0.0,"imbalance":-0.085098,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.197475},"context":{"vwap":7.23021,"price_vs_vwap_pct":1.795102,"ema9":7.345437,"ema20":7.321077,"ema_stack":true,"ema_warm":true,"hod":7.37,"dist_to_hod_pct":-0.135685,"dist_to_hod_atr":0.269025,"atr":0.037171,"spread_atr":0.269025,"own_change_pct":-0.023077,"rel_strength_pct":{"SPY":-0.040897,"IWM":0.010244}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.052387},"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":"cdf6596abd22","ts":"2026-09-15T16:37:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.387,"trend":"flat","recent_slope_pct":-0.071,"volatility":"medium"},"price":5.95,"volume":{"bars":187,"last_bar_volume":41571.0,"baseline_avg":49201.3,"bar_rvol":0.844917,"raw_accel":-0.000577,"smooth_accel":-0.079244,"accel_momentum":0.520081,"rvol_3bar":[0.214338,0.814024,0.844917],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":184,"trade_rate":6.133333,"buy_vol":25947.0,"sell_vol":28105.0,"unclassified_vol":0.0,"imbalance":-0.039925,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":2.563117},"context":{"vwap":5.946799,"price_vs_vwap_pct":0.053834,"ema9":5.958112,"ema20":5.955227,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.292075,"atr":0.019072,"spread_atr":0.52434,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.101783,"IWM":-0.050642}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.033733},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"acada9e8d590","ts":"2026-09-15T16:37:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3864,"target":8.5586,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":66.3,"room_to_5d_high_atr":0.81},"price":8.4765,"vwap":8.3417,"ext_from_open_pct":1.76,"max_ext_allowed_pct":4.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":-0.0264,"volatility":"medium"},"price":8.4765,"volume":{"bars":187,"last_bar_volume":505.0,"baseline_avg":1173.95,"bar_rvol":0.430172,"raw_accel":-0.679569,"smooth_accel":-0.470048,"accel_momentum":-1.360517,"rvol_3bar":[0.499782,1.34322,0.430172],"trend_3bar":"MIXED","projected_rvol":0.34073},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":14.0,"sell_vol":108.0,"unclassified_vol":0.0,"imbalance":-0.770492,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":27.617283},"context":{"vwap":8.341696,"price_vs_vwap_pct":1.616023,"ema9":8.480922,"ema20":8.468632,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.276471,"dist_to_hod_atr":1.168488,"atr":0.020111,"spread_atr":0.497229,"own_change_pct":-0.020028,"rel_strength_pct":{"SPY":-0.037848,"IWM":0.013293}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.331444},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"54753f4c8f13","ts":"2026-09-15T16:37:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.8658,"target":10.1291,"target_label":"clear air (typical 60-min move)","reward_risk":3.1,"pos_in_5d_range_pct":505.4,"room_to_5d_high_atr":-5.84},"price":9.93,"vwap":9.6403,"ext_from_open_pct":5.08,"max_ext_allowed_pct":5.0,"volume_pace":4.041,"trend":"flat","recent_slope_pct":0.0435,"volatility":"low"},"price":9.93,"volume":{"bars":187,"last_bar_volume":809.0,"baseline_avg":7316.25,"bar_rvol":0.110576,"raw_accel":-0.69757,"smooth_accel":0.696184,"accel_momentum":0.609856,"rvol_3bar":[1.37168,0.367384,0.110576],"trend_3bar":"DECELERATING","projected_rvol":0.032804},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":109.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.91,"ask":9.94,"spread_pct":0.302267,"quote_size_imbalance":null,"quote_age_s":1.120969},"context":{"vwap":9.640315,"price_vs_vwap_pct":3.004935,"ema9":9.920665,"ema20":9.896419,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.647059,"dist_to_hod_atr":6.717761,"atr":0.040192,"spread_atr":0.746418,"own_change_pct":0.133065,"rel_strength_pct":{"SPY":0.115244,"IWM":0.166386}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.110576},"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":"fdedab2ffcf6","ts":"2026-09-15T16:37:30+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.3418,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.889,"trend":"flat","recent_slope_pct":-0.0417,"volatility":"medium"},"price":8.47,"volume":{"bars":187,"last_bar_volume":505.0,"baseline_avg":1173.95,"bar_rvol":0.430172,"raw_accel":-0.679569,"smooth_accel":-0.470048,"accel_momentum":-1.360517,"rvol_3bar":[0.499782,1.34322,0.430172],"trend_3bar":"MIXED","projected_rvol":0.248733},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":14.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":-0.808219,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":1.409311},"context":{"vwap":8.341696,"price_vs_vwap_pct":1.538101,"ema9":8.480922,"ema20":8.468632,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":1.491687,"atr":0.020111,"spread_atr":0.497229,"own_change_pct":-0.020028,"rel_strength_pct":{"SPY":-0.037848,"IWM":0.013293}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.347673},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5156aee081f4","ts":"2026-09-15T16:37:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8558,"target":10.1191,"target_label":"clear air (typical 60-min move)","reward_risk":3.1,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6403,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":4.037,"trend":"flat","recent_slope_pct":0.0234,"volatility":"low"},"price":9.92,"volume":{"bars":187,"last_bar_volume":809.0,"baseline_avg":7316.25,"bar_rvol":0.110576,"raw_accel":-0.69757,"smooth_accel":0.696184,"accel_momentum":0.609856,"rvol_3bar":[1.37168,0.367384,0.110576],"trend_3bar":"DECELERATING","projected_rvol":0.037021},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":158.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":3.058872},"context":{"vwap":9.640315,"price_vs_vwap_pct":2.901204,"ema9":9.920665,"ema20":9.896419,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":6.966567,"atr":0.040192,"spread_atr":0.497612,"own_change_pct":0.133065,"rel_strength_pct":{"SPY":0.115244,"IWM":0.166386}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.110576},"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":"91d1a228a39b","ts":"2026-09-15T16:37:35+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":5.98,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9468,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.386,"trend":"flat","recent_slope_pct":-0.1046,"volatility":"medium"},"price":5.94,"volume":{"bars":187,"last_bar_volume":41571.0,"baseline_avg":49201.3,"bar_rvol":0.844917,"raw_accel":-0.000577,"smooth_accel":-0.079244,"accel_momentum":0.520081,"rvol_3bar":[0.214338,0.814024,0.844917],"trend_3bar":"ACCELERATING","projected_rvol":2.287257},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":17172.0,"sell_vol":6574.0,"unclassified_vol":0.0,"imbalance":0.446307,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.187938},"context":{"vwap":5.946799,"price_vs_vwap_pct":-0.114324,"ema9":5.958112,"ema20":5.955227,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":6.816415,"atr":0.019072,"spread_atr":0.52434,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.101783,"IWM":-0.050642}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.377092},"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":"730ec6792865","ts":"2026-09-15T16:37:35+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7624,"target":8.0,"target_label":"premarket_high","reward_risk":1.01,"pos_in_5d_range_pct":20.7,"room_to_5d_high_atr":2.68},"price":7.8807,"vwap":7.8483,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":4.0,"volume_pace":1.134,"trend":"flat","recent_slope_pct":-0.0451,"volatility":"high"},"price":7.8807,"volume":{"bars":187,"last_bar_volume":56512.0,"baseline_avg":14473.95,"bar_rvol":3.904394,"raw_accel":14.617575,"smooth_accel":0.458835,"accel_momentum":0.934291,"rvol_3bar":[3.193252,0.057539,3.904394],"trend_3bar":"MIXED","projected_rvol":0.920274},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":5558.0,"sell_vol":1852.0,"unclassified_vol":0.0,"imbalance":0.500135,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":3.092112},"context":{"vwap":7.848202,"price_vs_vwap_pct":0.414078,"ema9":7.877643,"ema20":7.878659,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.62169,"dist_to_hod_atr":2.587877,"atr":0.01905,"spread_atr":0.524924,"own_change_pct":-0.542184,"rel_strength_pct":{"SPY":-0.560004,"IWM":-0.508863}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.952724},"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":"cf8310ddf5b8","ts":"2026-09-15T16:37:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.8632,"target":10.1265,"target_label":"clear air (typical 60-min move)","reward_risk":3.1,"pos_in_5d_range_pct":504.7,"room_to_5d_high_atr":-5.83},"price":9.9274,"vwap":9.6403,"ext_from_open_pct":5.05,"max_ext_allowed_pct":5.0,"volume_pace":4.036,"trend":"flat","recent_slope_pct":0.0383,"volatility":"low"},"price":9.9274,"volume":{"bars":187,"last_bar_volume":809.0,"baseline_avg":7316.25,"bar_rvol":0.110576,"raw_accel":-0.69757,"smooth_accel":0.696184,"accel_momentum":0.609856,"rvol_3bar":[1.37168,0.367384,0.110576],"trend_3bar":"DECELERATING","projected_rvol":0.033009},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":3.0,"sell_vol":158.0,"unclassified_vol":0.0,"imbalance":-0.962733,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":8.058872},"context":{"vwap":9.640315,"price_vs_vwap_pct":2.977965,"ema9":9.920665,"ema20":9.896419,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.672549,"dist_to_hod_atr":6.782451,"atr":0.040192,"spread_atr":0.497612,"own_change_pct":0.133065,"rel_strength_pct":{"SPY":0.115244,"IWM":0.166386}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.106455},"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":"f626ee0d4fce","ts":"2026-09-15T16:37:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8648,"target":6.03,"target_label":"premarket_high","reward_risk":0.99,"pos_in_5d_range_pct":102.4,"room_to_5d_high_atr":-0.05},"price":5.9479,"vwap":5.9468,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":-0.0781,"volatility":"medium"},"price":5.9479,"volume":{"bars":187,"last_bar_volume":41571.0,"baseline_avg":49201.3,"bar_rvol":0.844917,"raw_accel":-0.000577,"smooth_accel":-0.079244,"accel_momentum":0.520081,"rvol_3bar":[0.214338,0.814024,0.844917],"trend_3bar":"ACCELERATING","projected_rvol":2.00699},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":12216.0,"sell_vol":6559.0,"unclassified_vol":0.0,"imbalance":0.301305,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.921027},"context":{"vwap":5.946799,"price_vs_vwap_pct":0.018521,"ema9":5.958112,"ema20":5.955227,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.011532,"dist_to_hod_atr":6.402187,"atr":0.019072,"spread_atr":0.52434,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.101783,"IWM":-0.050642}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.254578},"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":"1792e27dc751","ts":"2026-09-15T16:37:40+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7367,"target":7.875,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8483,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":4.0,"volume_pace":1.134,"trend":"flat","recent_slope_pct":-0.1105,"volatility":"high"},"price":7.855,"volume":{"bars":187,"last_bar_volume":56512.0,"baseline_avg":14473.95,"bar_rvol":3.904394,"raw_accel":14.617575,"smooth_accel":0.458835,"accel_momentum":0.934291,"rvol_3bar":[3.193252,0.057539,3.904394],"trend_3bar":"MIXED","projected_rvol":0.815707},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":5551.0,"sell_vol":1949.0,"unclassified_vol":0.0,"imbalance":0.480267,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":8.092112},"context":{"vwap":7.848202,"price_vs_vwap_pct":0.086615,"ema9":7.877643,"ema20":7.878659,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":3.936932,"atr":0.01905,"spread_atr":0.524924,"own_change_pct":-0.542184,"rel_strength_pct":{"SPY":-0.560004,"IWM":-0.508863}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.87515},"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":"da8dc6c6b990","ts":"2026-09-15T16:37:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8558,"target":10.1191,"target_label":"clear air (typical 60-min move)","reward_risk":3.1,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6403,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":4.032,"trend":"flat","recent_slope_pct":0.0234,"volatility":"low"},"price":9.92,"volume":{"bars":187,"last_bar_volume":809.0,"baseline_avg":7316.25,"bar_rvol":0.110576,"raw_accel":-0.69757,"smooth_accel":0.696184,"accel_momentum":0.609856,"rvol_3bar":[1.37168,0.367384,0.110576],"trend_3bar":"DECELERATING","projected_rvol":0.026571},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":3.0,"sell_vol":159.0,"unclassified_vol":0.0,"imbalance":-0.962963,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":18.058872},"context":{"vwap":9.640315,"price_vs_vwap_pct":2.901204,"ema9":9.920665,"ema20":9.896419,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":6.966567,"atr":0.040192,"spread_atr":0.497612,"own_change_pct":0.133065,"rel_strength_pct":{"SPY":0.115244,"IWM":0.166386}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.10648},"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":"fbb3cc5e776e","ts":"2026-09-15T16:37:55+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":5.98,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9468,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.1046,"volatility":"medium"},"price":5.94,"volume":{"bars":187,"last_bar_volume":41571.0,"baseline_avg":49201.3,"bar_rvol":0.844917,"raw_accel":-0.000577,"smooth_accel":-0.079244,"accel_momentum":0.520081,"rvol_3bar":[0.214338,0.814024,0.844917],"trend_3bar":"ACCELERATING","projected_rvol":1.690288},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":16743.0,"sell_vol":6185.0,"unclassified_vol":0.0,"imbalance":0.460485,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":4.353051},"context":{"vwap":5.946799,"price_vs_vwap_pct":-0.114324,"ema9":5.958112,"ema20":5.955227,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":6.816415,"atr":0.019072,"spread_atr":0.52434,"own_change_pct":-0.083963,"rel_strength_pct":{"SPY":-0.101783,"IWM":-0.050642}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.389071},"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":"9027643bde0c","ts":"2026-09-15T16:38:00+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3423,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":-0.0535,"volatility":"medium"},"price":8.465,"volume":{"bars":187,"last_bar_volume":505.0,"baseline_avg":1173.95,"bar_rvol":0.430172,"raw_accel":-0.679569,"smooth_accel":-0.470048,"accel_momentum":-1.360517,"rvol_3bar":[0.499782,1.34322,0.430172],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":9.0,"sell_vol":1106.0,"unclassified_vol":0.0,"imbalance":-0.983857,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":1.506839},"context":{"vwap":8.341696,"price_vs_vwap_pct":1.478161,"ema9":8.480922,"ema20":8.468632,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":1.740301,"atr":0.020111,"spread_atr":0.497229,"own_change_pct":-0.020028,"rel_strength_pct":{"SPY":-0.003533,"IWM":0.039598}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.423227},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"22149d397407","ts":"2026-09-15T16:38:10+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8668,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.9499,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.0816,"volatility":"medium"},"price":5.9499,"volume":{"bars":188,"last_bar_volume":87663.0,"baseline_avg":43461.1,"bar_rvol":2.017045,"raw_accel":1.108754,"smooth_accel":3.411678,"accel_momentum":3.490923,"rvol_3bar":[0.814024,0.844917,2.017045],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":16851.0,"sell_vol":15614.0,"unclassified_vol":0.0,"imbalance":0.038103,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":2.997636},"context":{"vwap":5.946809,"price_vs_vwap_pct":0.05198,"ema9":5.95549,"ema20":5.954253,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.978583,"dist_to_hod_atr":6.222086,"atr":0.019302,"spread_atr":0.518075,"own_change_pct":-0.084034,"rel_strength_pct":{"SPY":-0.067538,"IWM":-0.024408}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.076855},"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":"85bd5654f2fd","ts":"2026-09-15T16:38:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8481,"target":10.1105,"target_label":"clear air (typical 60-min move)","reward_risk":3.09,"pos_in_5d_range_pct":500.6,"room_to_5d_high_atr":-5.77},"price":9.9123,"vwap":9.6404,"ext_from_open_pct":4.89,"max_ext_allowed_pct":4.0,"volume_pace":4.024,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"low"},"price":9.9123,"volume":{"bars":188,"last_bar_volume":312.0,"baseline_avg":7220.25,"bar_rvol":0.043212,"raw_accel":-0.827153,"smooth_accel":-0.74532,"accel_momentum":-1.441504,"rvol_3bar":[0.367384,0.110576,0.043212],"trend_3bar":"DECELERATING","projected_rvol":0.209411},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":312.0,"sell_vol":217.0,"unclassified_vol":0.0,"imbalance":0.179584,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":12.109077},"context":{"vwap":9.640365,"price_vs_vwap_pct":2.820791,"ema9":9.920532,"ema20":9.898665,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.820588,"dist_to_hod_atr":7.518824,"atr":0.038264,"spread_atr":0.522685,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.016495,"IWM":0.059626}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.00776},"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":"2ff97a51b5c0","ts":"2026-09-15T16:38:20+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":5.98,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9468,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.1149,"volatility":"medium"},"price":5.94,"volume":{"bars":188,"last_bar_volume":87663.0,"baseline_avg":43461.1,"bar_rvol":2.017045,"raw_accel":1.108754,"smooth_accel":3.411678,"accel_momentum":3.490923,"rvol_3bar":[0.814024,0.844917,2.017045],"trend_3bar":"ACCELERATING","projected_rvol":2.292119},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":20436.0,"sell_vol":24219.0,"unclassified_vol":0.0,"imbalance":-0.084716,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.123009},"context":{"vwap":5.946809,"price_vs_vwap_pct":-0.114495,"ema9":5.95549,"ema20":5.954253,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":6.734981,"atr":0.019302,"spread_atr":0.518075,"own_change_pct":-0.084034,"rel_strength_pct":{"SPY":-0.067538,"IWM":-0.024408}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.170876},"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":"adb09adf05a8","ts":"2026-09-15T16:38:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.383,"trend":"flat","recent_slope_pct":-0.0813,"volatility":"medium"},"price":5.95,"volume":{"bars":188,"last_bar_volume":87663.0,"baseline_avg":43461.1,"bar_rvol":2.017045,"raw_accel":1.108754,"smooth_accel":3.411678,"accel_momentum":3.490923,"rvol_3bar":[0.814024,0.844917,2.017045],"trend_3bar":"ACCELERATING","projected_rvol":1.686232},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":27426.0,"sell_vol":10798.0,"unclassified_vol":0.0,"imbalance":0.435015,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":2.584277},"context":{"vwap":5.946809,"price_vs_vwap_pct":0.053662,"ema9":5.95549,"ema20":5.954253,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.216905,"atr":0.019302,"spread_atr":0.518075,"own_change_pct":-0.084034,"rel_strength_pct":{"SPY":-0.067538,"IWM":-0.024408}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.877444},"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":"5a4932c98e22","ts":"2026-09-15T16:38:55+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7594,"target":8.0,"target_label":"premarket_high","reward_risk":1.03,"pos_in_5d_range_pct":20.5,"room_to_5d_high_atr":2.69},"price":7.8777,"vwap":7.8484,"ext_from_open_pct":-0.28,"max_ext_allowed_pct":4.0,"volume_pace":1.133,"trend":"flat","recent_slope_pct":0.0151,"volatility":"high"},"price":7.8777,"volume":{"bars":188,"last_bar_volume":13776.0,"baseline_avg":16967.15,"bar_rvol":0.811922,"raw_accel":-0.756229,"smooth_accel":0.581435,"accel_momentum":0.122601,"rvol_3bar":[0.057539,3.904394,0.811922],"trend_3bar":"MIXED","projected_rvol":0.458362},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":230.0,"sell_vol":34.0,"unclassified_vol":0.0,"imbalance":0.742424,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.928536},"context":{"vwap":7.848291,"price_vs_vwap_pct":0.374712,"ema9":7.873654,"ema20":7.876663,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.659521,"dist_to_hod_atr":2.630456,"atr":0.019882,"spread_atr":0.502955,"own_change_pct":-0.512775,"rel_strength_pct":{"SPY":-0.49628,"IWM":-0.453149}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.60279},"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":"488dc412ba0f","ts":"2026-09-15T16:39:00+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7356,"target":7.875,"target_label":"prev_day_high","reward_risk":0.18,"pos_in_5d_range_pct":19.0,"room_to_5d_high_atr":2.74},"price":7.8539,"vwap":7.8483,"ext_from_open_pct":-0.58,"max_ext_allowed_pct":3.0,"volume_pace":1.132,"trend":"flat","recent_slope_pct":-0.0454,"volatility":"high"},"price":7.8539,"volume":{"bars":188,"last_bar_volume":13776.0,"baseline_avg":16967.15,"bar_rvol":0.811922,"raw_accel":-0.756229,"smooth_accel":0.581435,"accel_momentum":0.122601,"rvol_3bar":[0.057539,3.904394,0.811922],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":230.0,"sell_vol":46.0,"unclassified_vol":0.0,"imbalance":0.666667,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.24389},"context":{"vwap":7.848291,"price_vs_vwap_pct":0.071462,"ema9":7.873654,"ema20":7.876663,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.959647,"dist_to_hod_atr":3.82749,"atr":0.019882,"spread_atr":0.502955,"own_change_pct":-0.512775,"rel_strength_pct":{"SPY":-0.495618,"IWM":-0.479449}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.541281},"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":"abcc18e10d05","ts":"2026-09-15T16:39:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8483,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.132,"trend":"flat","recent_slope_pct":-0.0348,"volatility":"high"},"price":7.85,"volume":{"bars":189,"last_bar_volume":7141.0,"baseline_avg":15288.15,"bar_rvol":0.467094,"raw_accel":-0.481635,"smooth_accel":0.758271,"accel_momentum":0.176836,"rvol_3bar":[3.904394,0.811922,0.467094],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":130.0,"sell_vol":171.0,"unclassified_vol":0.0,"imbalance":-0.136213,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.11873},"context":{"vwap":7.848331,"price_vs_vwap_pct":0.021265,"ema9":7.869703,"ema20":7.874495,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":3.901457,"atr":0.020505,"spread_atr":0.487682,"own_change_pct":-0.457541,"rel_strength_pct":{"SPY":-0.440384,"IWM":-0.424215}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.063624},"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":"8a9e86afdf3a","ts":"2026-09-15T16:39:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2314,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":0.0299,"volatility":"medium"},"price":7.37,"volume":{"bars":189,"last_bar_volume":171206.0,"baseline_avg":242824.3,"bar_rvol":0.705061,"raw_accel":0.811665,"smooth_accel":-0.506762,"accel_momentum":-0.196803,"rvol_3bar":[0.615615,0.394113,0.705061],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":87565.0,"sell_vol":18993.0,"unclassified_vol":0.0,"imbalance":0.643518,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.276535},"context":{"vwap":7.231359,"price_vs_vwap_pct":1.917216,"ema9":7.352927,"ema20":7.329137,"ema_stack":true,"ema_warm":true,"hod":7.38,"dist_to_hod_pct":-0.135501,"dist_to_hod_atr":0.280222,"atr":0.035686,"spread_atr":0.280222,"own_change_pct":0.295025,"rel_strength_pct":{"SPY":0.312183,"IWM":0.328351}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.45372},"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":"6cdc24cd2be9","ts":"2026-09-15T16:39:25+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":5.98,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9468,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":-0.0672,"volatility":"medium"},"price":5.94,"volume":{"bars":189,"last_bar_volume":108574.0,"baseline_avg":45364.35,"bar_rvol":2.393377,"raw_accel":0.238538,"smooth_accel":2.388785,"accel_momentum":-1.022893,"rvol_3bar":[0.844917,2.017045,2.393377],"trend_3bar":"ACCELERATING","projected_rvol":2.665035},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":14520.0,"sell_vol":51420.0,"unclassified_vol":0.0,"imbalance":-0.5596,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.414361},"context":{"vwap":5.946826,"price_vs_vwap_pct":-0.114789,"ema9":5.954392,"ema20":5.953848,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":6.717634,"atr":0.019352,"spread_atr":0.516741,"own_change_pct":-0.214664,"rel_strength_pct":{"SPY":-0.197507,"IWM":-0.181339}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.339333},"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":"5cbe2c514d2c","ts":"2026-09-15T16:39:30+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8483,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.137,"trend":"flat","recent_slope_pct":-0.0475,"volatility":"high"},"price":7.845,"volume":{"bars":189,"last_bar_volume":7141.0,"baseline_avg":15288.15,"bar_rvol":0.467094,"raw_accel":-0.481635,"smooth_accel":0.758271,"accel_momentum":0.176836,"rvol_3bar":[3.904394,0.811922,0.467094],"trend_3bar":"DECELERATING","projected_rvol":1.967537},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3515.0,"sell_vol":11525.0,"unclassified_vol":0.0,"imbalance":-0.53258,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.522997},"context":{"vwap":7.848331,"price_vs_vwap_pct":-0.042443,"ema9":7.869703,"ema20":7.874495,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":4.145298,"atr":0.020505,"spread_atr":0.487682,"own_change_pct":-0.457541,"rel_strength_pct":{"SPY":-0.440384,"IWM":-0.424215}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.248765},"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":"439a837225aa","ts":"2026-09-15T16:39:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8677,"target":6.03,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":102.8,"room_to_5d_high_atr":-0.06},"price":5.9508,"vwap":5.9468,"ext_from_open_pct":0.69,"max_ext_allowed_pct":4.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.0309,"volatility":"medium"},"price":5.9508,"volume":{"bars":189,"last_bar_volume":108574.0,"baseline_avg":45364.35,"bar_rvol":2.393377,"raw_accel":0.238538,"smooth_accel":2.388785,"accel_momentum":-1.022893,"rvol_3bar":[0.844917,2.017045,2.393377],"trend_3bar":"ACCELERATING","projected_rvol":1.956653},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":9136.0,"sell_vol":24724.0,"unclassified_vol":0.0,"imbalance":-0.460366,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":4.99705},"context":{"vwap":5.946826,"price_vs_vwap_pct":0.066821,"ema9":5.954392,"ema20":5.953848,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.963756,"dist_to_hod_atr":6.159554,"atr":0.019352,"spread_atr":0.516741,"own_change_pct":-0.214664,"rel_strength_pct":{"SPY":-0.197507,"IWM":-0.181339}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.10183},"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":"4f11e2545841","ts":"2026-09-15T16:39:35+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8484,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.136,"trend":"flat","recent_slope_pct":-0.0348,"volatility":"high"},"price":7.85,"volume":{"bars":189,"last_bar_volume":7141.0,"baseline_avg":15288.15,"bar_rvol":0.467094,"raw_accel":-0.481635,"smooth_accel":0.758271,"accel_momentum":0.176836,"rvol_3bar":[3.904394,0.811922,0.467094],"trend_3bar":"DECELERATING","projected_rvol":1.689824},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":3545.0,"sell_vol":11376.0,"unclassified_vol":0.0,"imbalance":-0.524831,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.997697},"context":{"vwap":7.848331,"price_vs_vwap_pct":0.021265,"ema9":7.869703,"ema20":7.874495,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":3.901457,"atr":0.020505,"spread_atr":0.487682,"own_change_pct":-0.457541,"rel_strength_pct":{"SPY":-0.440384,"IWM":-0.424215}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.245145},"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":"96b31e358727","ts":"2026-09-15T16:39:40+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8483,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.136,"trend":"flat","recent_slope_pct":-0.0475,"volatility":"high"},"price":7.845,"volume":{"bars":189,"last_bar_volume":7141.0,"baseline_avg":15288.15,"bar_rvol":0.467094,"raw_accel":-0.481635,"smooth_accel":0.758271,"accel_momentum":0.176836,"rvol_3bar":[3.904394,0.811922,0.467094],"trend_3bar":"DECELERATING","projected_rvol":1.488408},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3520.0,"sell_vol":8802.0,"unclassified_vol":0.0,"imbalance":-0.428664,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.068234},"context":{"vwap":7.848331,"price_vs_vwap_pct":-0.042443,"ema9":7.869703,"ema20":7.874495,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":4.145298,"atr":0.020505,"spread_atr":0.487682,"own_change_pct":-0.457541,"rel_strength_pct":{"SPY":-0.440384,"IWM":-0.424215}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.200226},"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":"a0003717556f","ts":"2026-09-15T16:39:45+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.382,"trend":"flat","recent_slope_pct":-0.0504,"volatility":"medium"},"price":5.945,"volume":{"bars":189,"last_bar_volume":108574.0,"baseline_avg":45364.35,"bar_rvol":2.393377,"raw_accel":0.238538,"smooth_accel":2.388785,"accel_momentum":-1.022893,"rvol_3bar":[0.844917,2.017045,2.393377],"trend_3bar":"ACCELERATING","projected_rvol":1.530423},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1841.0,"sell_vol":7834.0,"unclassified_vol":0.0,"imbalance":-0.619432,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":2.44294},"context":{"vwap":5.946826,"price_vs_vwap_pct":-0.03071,"ema9":5.954392,"ema20":5.953848,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.459264,"atr":0.019352,"spread_atr":0.516741,"own_change_pct":-0.214664,"rel_strength_pct":{"SPY":-0.197507,"IWM":-0.181339}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.482533},"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":"081d01d1b0dd","ts":"2026-09-15T16:39:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8484,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.135,"trend":"flat","recent_slope_pct":-0.0348,"volatility":"high"},"price":7.85,"volume":{"bars":189,"last_bar_volume":7141.0,"baseline_avg":15288.15,"bar_rvol":0.467094,"raw_accel":-0.481635,"smooth_accel":0.758271,"accel_momentum":0.176836,"rvol_3bar":[3.904394,0.811922,0.467094],"trend_3bar":"DECELERATING","projected_rvol":1.323552},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":526.0,"sell_vol":8701.0,"unclassified_vol":0.0,"imbalance":-0.885987,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":8.068234},"context":{"vwap":7.848331,"price_vs_vwap_pct":0.021265,"ema9":7.869703,"ema20":7.874495,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":3.901457,"atr":0.020505,"spread_atr":0.487682,"own_change_pct":-0.457541,"rel_strength_pct":{"SPY":-0.440384,"IWM":-0.424215}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.413839},"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":"061ace4c8673","ts":"2026-09-15T16:39:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.382,"trend":"flat","recent_slope_pct":-0.0336,"volatility":"medium"},"price":5.95,"volume":{"bars":189,"last_bar_volume":108574.0,"baseline_avg":45364.35,"bar_rvol":2.393377,"raw_accel":0.238538,"smooth_accel":2.388785,"accel_momentum":-1.022893,"rvol_3bar":[0.844917,2.017045,2.393377],"trend_3bar":"ACCELERATING","projected_rvol":1.383597},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1655.0,"sell_vol":331.0,"unclassified_vol":0.0,"imbalance":0.666667,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.43427},"context":{"vwap":5.946826,"price_vs_vwap_pct":0.053368,"ema9":5.954392,"ema20":5.953848,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.200893,"atr":0.019352,"spread_atr":0.516741,"own_change_pct":-0.214664,"rel_strength_pct":{"SPY":-0.197507,"IWM":-0.181339}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.595585},"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":"6b231ededf91","ts":"2026-09-15T16:39:50+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7298,"target":7.875,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":18.6,"room_to_5d_high_atr":2.75},"price":7.8481,"vwap":7.8483,"ext_from_open_pct":-0.66,"max_ext_allowed_pct":4.0,"volume_pace":1.135,"trend":"flat","recent_slope_pct":-0.0396,"volatility":"high"},"price":7.8481,"volume":{"bars":189,"last_bar_volume":7141.0,"baseline_avg":15288.15,"bar_rvol":0.467094,"raw_accel":-0.481635,"smooth_accel":0.758271,"accel_momentum":0.176836,"rvol_3bar":[3.904394,0.811922,0.467094],"trend_3bar":"DECELERATING","projected_rvol":1.193866},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":526.0,"sell_vol":8008.0,"unclassified_vol":0.0,"imbalance":-0.876728,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":13.068234},"context":{"vwap":7.848331,"price_vs_vwap_pct":-0.002944,"ema9":7.869703,"ema20":7.874495,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.032787,"dist_to_hod_atr":3.994116,"atr":0.020505,"spread_atr":0.487682,"own_change_pct":-0.457541,"rel_strength_pct":{"SPY":-0.440384,"IWM":-0.424215}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.409514},"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":"3ea8b73eb205","ts":"2026-09-15T16:39:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":43.3,"room_to_5d_high_atr":1.21},"price":7.375,"vwap":7.2317,"ext_from_open_pct":3.15,"max_ext_allowed_pct":4.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":0.0434,"volatility":"medium"},"price":7.375,"volume":{"bars":189,"last_bar_volume":171206.0,"baseline_avg":242824.3,"bar_rvol":0.705061,"raw_accel":0.811665,"smooth_accel":-0.506762,"accel_momentum":-0.196803,"rvol_3bar":[0.615615,0.394113,0.705061],"trend_3bar":"MIXED","projected_rvol":0.331782},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":18016.0,"sell_vol":8526.0,"unclassified_vol":0.0,"imbalance":0.357547,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.179452},"context":{"vwap":7.231359,"price_vs_vwap_pct":1.986359,"ema9":7.352927,"ema20":7.329137,"ema_stack":true,"ema_warm":true,"hod":7.38,"dist_to_hod_pct":-0.067751,"dist_to_hod_atr":0.140111,"atr":0.035686,"spread_atr":0.280222,"own_change_pct":0.295025,"rel_strength_pct":{"SPY":0.312183,"IWM":0.328351}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.252092},"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":"8f154bbc951b","ts":"2026-09-15T16:40:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.3701,"vwap":7.2317,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.759,"trend":"flat","recent_slope_pct":0.0301,"volatility":"medium"},"price":7.3701,"volume":{"bars":189,"last_bar_volume":171206.0,"baseline_avg":242824.3,"bar_rvol":0.705061,"raw_accel":0.811665,"smooth_accel":-0.506762,"accel_momentum":-0.196803,"rvol_3bar":[0.615615,0.394113,0.705061],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1819.0,"sell_vol":1420.0,"unclassified_vol":0.0,"imbalance":0.123186,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.091992},"context":{"vwap":7.231359,"price_vs_vwap_pct":1.918599,"ema9":7.352927,"ema20":7.329137,"ema_stack":true,"ema_warm":true,"hod":7.38,"dist_to_hod_pct":-0.134146,"dist_to_hod_atr":0.27742,"atr":0.035686,"spread_atr":0.280222,"own_change_pct":0.295025,"rel_strength_pct":{"SPY":0.310863,"IWM":0.328356}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.086854},"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":"0470cec75a27","ts":"2026-09-15T16:40:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":5.98,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9468,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":-0.0252,"volatility":"medium"},"price":5.94,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":7184.0,"sell_vol":310.0,"unclassified_vol":0.0,"imbalance":0.917267,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.538103},"context":{"vwap":5.946832,"price_vs_vwap_pct":-0.114889,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":6.789103,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.07253},"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":"1836397e61bc","ts":"2026-09-15T16:40:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8,"target":9.97,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.642,"ext_from_open_pct":4.76,"max_ext_allowed_pct":5.0,"volume_pace":4.007,"trend":"flat","recent_slope_pct":-0.0922,"volatility":"low"},"price":9.9,"volume":{"bars":190,"last_bar_volume":3511.0,"baseline_avg":7348.2,"bar_rvol":0.477804,"raw_accel":-0.483601,"smooth_accel":-0.218971,"accel_momentum":0.26641,"rvol_3bar":[0.043212,0.947338,0.477804],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":908.0,"sell_vol":2244.0,"unclassified_vol":0.0,"imbalance":-0.423858,"bid":9.87,"ask":9.92,"spread_pct":0.505306,"quote_size_imbalance":null,"quote_age_s":3.48299},"context":{"vwap":9.641977,"price_vs_vwap_pct":2.676037,"ema9":9.91614,"ema20":9.900585,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":7.438133,"atr":0.040333,"spread_atr":1.239689,"own_change_pct":-0.252016,"rel_strength_pct":{"SPY":-0.236178,"IWM":-0.218686}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.202521},"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":"22a1c6f273ac","ts":"2026-09-15T16:40:10+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.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.38,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":5.95,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":7169.0,"sell_vol":187.0,"unclassified_vol":0.0,"imbalance":0.949157,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.838808},"context":{"vwap":5.946832,"price_vs_vwap_pct":0.053268,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.266864,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.109818},"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":"a53f1e896900","ts":"2026-09-15T16:40:15+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.379,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"medium"},"price":5.945,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":0.216532},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":8285.0,"sell_vol":1320.0,"unclassified_vol":0.0,"imbalance":0.725143,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.960506},"context":{"vwap":5.946832,"price_vs_vwap_pct":-0.03081,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.527984,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.847886},"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":"f8a745b1e554","ts":"2026-09-15T16:40:20+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.8664,"target":6.03,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":102.6,"room_to_5d_high_atr":-0.06},"price":5.9495,"vwap":5.9468,"ext_from_open_pct":0.67,"max_ext_allowed_pct":4.0,"volume_pace":1.379,"trend":"flat","recent_slope_pct":0.0067,"volatility":"medium"},"price":5.9495,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":0.175432},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":8114.0,"sell_vol":1475.0,"unclassified_vol":0.0,"imbalance":0.692356,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":2.404629},"context":{"vwap":5.946832,"price_vs_vwap_pct":0.04486,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.985173,"dist_to_hod_atr":6.292976,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.809548},"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":"af6d7e546395","ts":"2026-09-15T16:40:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":43.3,"room_to_5d_high_atr":1.21},"price":7.375,"vwap":7.2317,"ext_from_open_pct":3.15,"max_ext_allowed_pct":4.0,"volume_pace":0.758,"trend":"flat","recent_slope_pct":0.0506,"volatility":"medium"},"price":7.375,"volume":{"bars":190,"last_bar_volume":75031.0,"baseline_avg":246978.15,"bar_rvol":0.303796,"raw_accel":-0.56175,"smooth_accel":-0.551807,"accel_momentum":-0.045045,"rvol_3bar":[0.394113,0.705061,0.303796],"trend_3bar":"MIXED","projected_rvol":0.136081},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":10298.0,"sell_vol":2111.0,"unclassified_vol":0.0,"imbalance":0.659763,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":1.921392},"context":{"vwap":7.231689,"price_vs_vwap_pct":1.981712,"ema9":7.356362,"ema20":7.333038,"ema_stack":true,"ema_warm":true,"hod":7.38,"dist_to_hod_pct":-0.067751,"dist_to_hod_atr":0.143056,"atr":0.034951,"spread_atr":0.286113,"own_change_pct":0.410082,"rel_strength_pct":{"SPY":0.42592,"IWM":0.443412}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.200433},"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":"f000fc683683","ts":"2026-09-15T16:40:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says PASS; stop 8.37, target 8.56 (premarket_high), R:R 1.09; target 0.10 away > ~0.09 reachable in 195 min","plan":{"state":"PASS","setup":"","stop":8.3699,"target":8.5586,"target_label":"premarket_high","reward_risk":1.09,"pos_in_5d_range_pct":64.4,"room_to_5d_high_atr":0.86},"price":8.46,"vwap":8.3426,"ext_from_open_pct":1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":-0.0571,"volatility":"medium"},"price":8.46,"volume":{"bars":190,"last_bar_volume":30.0,"baseline_avg":1131.3,"bar_rvol":0.026518,"raw_accel":-0.934066,"smooth_accel":-0.342125,"accel_momentum":0.20636,"rvol_3bar":[1.069868,0.40502,0.026518],"trend_3bar":"DECELERATING","projected_rvol":0.222753},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":105.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.944444,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":4.472578},"context":{"vwap":8.342574,"price_vs_vwap_pct":1.407547,"ema9":8.475744,"ema20":8.469031,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.470588,"dist_to_hod_atr":2.053597,"atr":0.019478,"spread_atr":0.513399,"own_change_pct":-0.183854,"rel_strength_pct":{"SPY":-0.168016,"IWM":-0.150523}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.025045},"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":"adda2c4e7f10","ts":"2026-09-15T16:40:30+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.38,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"medium"},"price":5.945,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":1.693419},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":7596.0,"sell_vol":35089.0,"unclassified_vol":0.0,"imbalance":-0.64409,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":4.120336},"context":{"vwap":5.946832,"price_vs_vwap_pct":-0.03081,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.527984,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.753113},"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":"938ff5405f87","ts":"2026-09-15T16:40:35+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.4286,"target":9.87,"target_label":"premarket_high","reward_risk":1.92,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.2},"price":9.58,"vwap":9.5659,"ext_from_open_pct":-1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.0154,"volatility":"high"},"price":9.58,"volume":{"bars":190,"last_bar_volume":14563.0,"baseline_avg":12430.75,"bar_rvol":1.17153,"raw_accel":-0.277629,"smooth_accel":1.085147,"accel_momentum":1.021642,"rvol_3bar":[0.412263,1.752845,1.17153],"trend_3bar":"MIXED","projected_rvol":0.286433},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":516.0,"sell_vol":1561.0,"unclassified_vol":0.0,"imbalance":-0.50313,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":1.168406},"context":{"vwap":9.565852,"price_vs_vwap_pct":0.1479,"ema9":9.589116,"ema20":9.585981,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.543235,"dist_to_hod_atr":10.989037,"atr":0.02275,"spread_atr":0.439561,"own_change_pct":-0.251973,"rel_strength_pct":{"SPY":-0.236135,"IWM":-0.218643}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.589431},"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":"ba82ea0daf3b","ts":"2026-09-15T16:40:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 155.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.82; selling not fading: red-bar volume 1.05x the advance (max 0.7); no reclaim yet (needs a close > 8.48); R:R 0.82 < 2.0 a","plan":{"state":"WATCH","setup":"","stop":8.3942,"target":8.5586,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":67.2,"room_to_5d_high_atr":0.79},"price":8.4843,"vwap":8.3427,"ext_from_open_pct":1.85,"max_ext_allowed_pct":4.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":0.0002,"volatility":"medium"},"price":8.4843,"volume":{"bars":190,"last_bar_volume":30.0,"baseline_avg":1131.3,"bar_rvol":0.026518,"raw_accel":-0.934066,"smooth_accel":-0.342125,"accel_momentum":0.20636,"rvol_3bar":[1.069868,0.40502,0.026518],"trend_3bar":"DECELERATING","projected_rvol":0.324279},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":212.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.981308,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":8.93154},"context":{"vwap":8.342574,"price_vs_vwap_pct":1.698824,"ema9":8.475744,"ema20":8.469031,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.184706,"dist_to_hod_atr":0.806037,"atr":0.019478,"spread_atr":0.513399,"own_change_pct":-0.183854,"rel_strength_pct":{"SPY":-0.168016,"IWM":-0.150523}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.026022},"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":"419c03e0dbed","ts":"2026-09-15T16:40:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8386,"target":10.1167,"target_label":"clear air (typical 60-min move)","reward_risk":2.48,"pos_in_5d_range_pct":502.3,"room_to_5d_high_atr":-5.8},"price":9.9186,"vwap":9.642,"ext_from_open_pct":4.96,"max_ext_allowed_pct":4.0,"volume_pace":3.996,"trend":"flat","recent_slope_pct":-0.0546,"volatility":"low"},"price":9.9186,"volume":{"bars":190,"last_bar_volume":3511.0,"baseline_avg":7348.2,"bar_rvol":0.477804,"raw_accel":-0.483601,"smooth_accel":-0.218971,"accel_momentum":0.26641,"rvol_3bar":[0.043212,0.947338,0.477804],"trend_3bar":"MIXED","projected_rvol":0.034294},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":48.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.5,"bid":9.87,"ask":9.91,"spread_pct":0.404449,"quote_size_imbalance":null,"quote_age_s":3.458628},"context":{"vwap":9.641977,"price_vs_vwap_pct":2.868944,"ema9":9.91614,"ema20":9.900585,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.758824,"dist_to_hod_atr":6.976969,"atr":0.040333,"spread_atr":0.991751,"own_change_pct":-0.252016,"rel_strength_pct":{"SPY":-0.236178,"IWM":-0.218686}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.238902},"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":"6ed3b656130f","ts":"2026-09-15T16:40:40+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8719,"target":6.03,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":103.4,"room_to_5d_high_atr":-0.08},"price":5.955,"vwap":5.9468,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":0.0252,"volatility":"medium"},"price":5.955,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":2.067064},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":24876.0,"sell_vol":44229.0,"unclassified_vol":0.0,"imbalance":-0.280052,"bid":5.95,"ask":5.96,"spread_pct":0.167926,"quote_size_imbalance":null,"quote_age_s":0.400319},"context":{"vwap":5.946832,"price_vs_vwap_pct":0.137346,"ema9":5.953513,"ema20":5.953481,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.894563,"dist_to_hod_atr":6.005745,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.327456},"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":"afff3e017e1c","ts":"2026-09-15T16:40:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":43.1,"room_to_5d_high_atr":1.21},"price":7.3737,"vwap":7.2318,"ext_from_open_pct":3.13,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":0.0471,"volatility":"medium"},"price":7.3737,"volume":{"bars":190,"last_bar_volume":75031.0,"baseline_avg":246978.15,"bar_rvol":0.303796,"raw_accel":-0.56175,"smooth_accel":-0.551807,"accel_momentum":-0.045045,"rvol_3bar":[0.394113,0.705061,0.303796],"trend_3bar":"MIXED","projected_rvol":0.145464},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":7872.0,"sell_vol":7402.0,"unclassified_vol":0.0,"imbalance":0.030771,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.351671},"context":{"vwap":7.231689,"price_vs_vwap_pct":1.963736,"ema9":7.356362,"ema20":7.333038,"ema_stack":true,"ema_warm":true,"hod":7.38,"dist_to_hod_pct":-0.085366,"dist_to_hod_atr":0.180251,"atr":0.034951,"spread_atr":0.286113,"own_change_pct":0.410082,"rel_strength_pct":{"SPY":0.42592,"IWM":0.443412}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.009348},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e488af456002","ts":"2026-09-15T16:40:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.67,"target":9.97,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.8701,"vwap":9.642,"ext_from_open_pct":4.45,"max_ext_allowed_pct":5.0,"volume_pace":3.995,"trend":"flat","recent_slope_pct":-0.1526,"volatility":"low"},"price":9.8701,"volume":{"bars":190,"last_bar_volume":3511.0,"baseline_avg":7348.2,"bar_rvol":0.477804,"raw_accel":-0.483601,"smooth_accel":-0.218971,"accel_momentum":0.26641,"rvol_3bar":[0.043212,0.947338,0.477804],"trend_3bar":"MIXED","projected_rvol":0.030847},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":31.0,"sell_vol":18.0,"unclassified_vol":0.0,"imbalance":0.265306,"bid":9.87,"ask":9.91,"spread_pct":0.404449,"quote_size_imbalance":null,"quote_age_s":8.458628},"context":{"vwap":9.641977,"price_vs_vwap_pct":2.365935,"ema9":9.91614,"ema20":9.900585,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.234314,"dist_to_hod_atr":8.179467,"atr":0.040333,"spread_atr":0.991751,"own_change_pct":-0.252016,"rel_strength_pct":{"SPY":-0.236178,"IWM":-0.218686}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.126764},"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":"32852bb87e62","ts":"2026-09-15T16:40:50+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":1.385,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"medium"},"price":5.945,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":3.285761},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":53931.0,"sell_vol":81158.0,"unclassified_vol":0.0,"imbalance":-0.201549,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.047154},"context":{"vwap":5.946832,"price_vs_vwap_pct":-0.03081,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.527984,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.235664},"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":"bb49d0622248","ts":"2026-09-15T16:40:55+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.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9469,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":0.0084,"volatility":"medium"},"price":5.95,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":3.006293},"flow":{"window_s":30,"trades":171,"trade_rate":5.7,"buy_vol":54181.0,"sell_vol":81364.0,"unclassified_vol":0.0,"imbalance":-0.200546,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.053171},"context":{"vwap":5.946832,"price_vs_vwap_pct":0.053268,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.266864,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.264049,"IWM":-0.246556}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.234492},"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":"8e5ad208d485","ts":"2026-09-15T16:41:00+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.94 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8569,"target":5.98,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":101.4,"room_to_5d_high_atr":-0.03},"price":5.94,"vwap":5.9468,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.384,"trend":"flat","recent_slope_pct":-0.0252,"volatility":"medium"},"price":5.94,"volume":{"bars":190,"last_bar_volume":58946.0,"baseline_avg":50412.8,"bar_rvol":1.169267,"raw_accel":-0.457089,"smooth_accel":1.71105,"accel_momentum":-0.677735,"rvol_3bar":[2.017045,2.393377,1.169267],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":150,"trade_rate":5.0,"buy_vol":48621.0,"sell_vol":47962.0,"unclassified_vol":0.0,"imbalance":0.006823,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.456517},"context":{"vwap":5.946832,"price_vs_vwap_pct":-0.114889,"ema9":5.953513,"ema20":5.953481,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.14168,"dist_to_hod_atr":6.789103,"atr":0.019148,"spread_atr":0.522239,"own_change_pct":-0.279887,"rel_strength_pct":{"SPY":-0.268508,"IWM":-0.250063}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.007978},"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":"a40a69b6ff05","ts":"2026-09-15T16:41:10+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.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.382,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.95,"volume":{"bars":191,"last_bar_volume":139268.0,"baseline_avg":53027.2,"bar_rvol":2.62635,"raw_accel":1.362637,"smooth_accel":0.795878,"accel_momentum":-0.915172,"rvol_3bar":[2.393377,1.169267,2.62635],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":31176.0,"sell_vol":38788.0,"unclassified_vol":0.0,"imbalance":-0.108799,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":3.010455},"context":{"vwap":5.946831,"price_vs_vwap_pct":0.053287,"ema9":5.950811,"ema20":5.952197,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.247018,"atr":0.019209,"spread_atr":0.520585,"own_change_pct":-0.33557,"rel_strength_pct":{"SPY":-0.324192,"IWM":-0.305746}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.285744},"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":"3dbd78e11297","ts":"2026-09-15T16:41:20+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.381,"trend":"flat","recent_slope_pct":-0.0168,"volatility":"medium"},"price":5.945,"volume":{"bars":191,"last_bar_volume":139268.0,"baseline_avg":53027.2,"bar_rvol":2.62635,"raw_accel":1.362637,"smooth_accel":0.795878,"accel_momentum":-0.915172,"rvol_3bar":[2.393377,1.169267,2.62635],"trend_3bar":"MIXED","projected_rvol":0.028457},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":973.0,"sell_vol":761.0,"unclassified_vol":0.0,"imbalance":0.122261,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.824621},"context":{"vwap":5.946831,"price_vs_vwap_pct":-0.030791,"ema9":5.950811,"ema20":5.952197,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.50731,"atr":0.019209,"spread_atr":0.520585,"own_change_pct":-0.33557,"rel_strength_pct":{"SPY":-0.324192,"IWM":-0.305746}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.321099},"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":"cb5c0d8b40e3","ts":"2026-09-15T16:41:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":43.3,"room_to_5d_high_atr":1.21},"price":7.375,"vwap":7.2321,"ext_from_open_pct":3.15,"max_ext_allowed_pct":4.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":0.0611,"volatility":"medium"},"price":7.375,"volume":{"bars":191,"last_bar_volume":71420.0,"baseline_avg":245155.0,"bar_rvol":0.291326,"raw_accel":-0.048127,"smooth_accel":-0.422151,"accel_momentum":0.129656,"rvol_3bar":[0.705061,0.303796,0.291326],"trend_3bar":"DECELERATING","projected_rvol":0.38328},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":29413.0,"sell_vol":28513.0,"unclassified_vol":0.0,"imbalance":0.015537,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.133797},"context":{"vwap":7.232008,"price_vs_vwap_pct":1.977213,"ema9":7.36061,"ema20":7.337282,"ema_stack":true,"ema_warm":true,"hod":7.38,"dist_to_hod_pct":-0.067751,"dist_to_hod_atr":0.146362,"atr":0.034162,"spread_atr":0.292724,"own_change_pct":0.171079,"rel_strength_pct":{"SPY":0.182458,"IWM":0.200903}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.004526},"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":"40888b9354d5","ts":"2026-09-15T16:41:30+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.8669,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.95,"vwap":5.9468,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.38,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":5.95,"volume":{"bars":191,"last_bar_volume":139268.0,"baseline_avg":53027.2,"bar_rvol":2.62635,"raw_accel":1.362637,"smooth_accel":0.795878,"accel_momentum":-0.915172,"rvol_3bar":[2.393377,1.169267,2.62635],"trend_3bar":"MIXED","projected_rvol":0.114998},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1480.0,"sell_vol":1569.0,"unclassified_vol":0.0,"imbalance":-0.02919,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":3.560692},"context":{"vwap":5.946831,"price_vs_vwap_pct":0.053287,"ema9":5.950811,"ema20":5.952197,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.976936,"dist_to_hod_atr":6.247018,"atr":0.019209,"spread_atr":0.520585,"own_change_pct":-0.33557,"rel_strength_pct":{"SPY":-0.324192,"IWM":-0.305746}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.076663},"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":"87d6641737c8","ts":"2026-09-15T16:41:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 210.0s, plan says PASS; stop 8.37, target 8.56 (premarket_high), R:R 1.09; target 0.10 away > ~0.09 reachable in 194 min","plan":{"state":"PASS","setup":"","stop":8.3699,"target":8.5586,"target_label":"premarket_high","reward_risk":1.09,"pos_in_5d_range_pct":64.4,"room_to_5d_high_atr":0.86},"price":8.46,"vwap":8.343,"ext_from_open_pct":1.56,"max_ext_allowed_pct":3.0,"volume_pace":0.878,"trend":"flat","recent_slope_pct":-0.0175,"volatility":"medium"},"price":8.46,"volume":{"bars":191,"last_bar_volume":255.0,"baseline_avg":1127.15,"bar_rvol":0.226234,"raw_accel":-0.095063,"smooth_accel":-0.778576,"accel_momentum":-0.436451,"rvol_3bar":[0.40502,0.026518,0.226234],"trend_3bar":"MIXED","projected_rvol":0.952846},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":231.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":-0.139665,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":5.985297},"context":{"vwap":8.342701,"price_vs_vwap_pct":1.406008,"ema9":8.474775,"ema20":8.469209,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.470588,"dist_to_hod_atr":2.017914,"atr":0.019822,"spread_atr":0.504479,"own_change_pct":-0.1238,"rel_strength_pct":{"SPY":-0.112422,"IWM":-0.093976}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.031597},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0ee210d78d43","ts":"2026-09-15T16:41:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 220.0s, plan says WATCH; stop 8.37, target 8.56 (premarket_high), R:R 1.04; selling not fading: red-bar volume 0.88x the advance (max 0.7); imbalance -100% still heavy selling; R:R 1.04 < 2.0 at ","plan":{"state":"WATCH","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3432,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.879,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":8.465,"volume":{"bars":191,"last_bar_volume":255.0,"baseline_avg":1127.15,"bar_rvol":0.226234,"raw_accel":-0.095063,"smooth_accel":-0.778576,"accel_momentum":-0.436451,"rvol_3bar":[0.40502,0.026518,0.226234],"trend_3bar":"MIXED","projected_rvol":1.352083},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":706.0,"sell_vol":302.0,"unclassified_vol":0.0,"imbalance":0.400794,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":5.879469},"context":{"vwap":8.342701,"price_vs_vwap_pct":1.465941,"ema9":8.474775,"ema20":8.469209,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":1.765675,"atr":0.019822,"spread_atr":0.504479,"own_change_pct":-0.1238,"rel_strength_pct":{"SPY":-0.112422,"IWM":-0.093976}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.090673},"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":"1f1af565ae81","ts":"2026-09-15T16:41:45+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":11.4,"room_to_5d_high_atr":2.13},"price":12.6,"vwap":12.5992,"ext_from_open_pct":0.8,"max_ext_allowed_pct":4.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.1306,"volatility":"high"},"price":12.6,"volume":{"bars":191,"last_bar_volume":5772.0,"baseline_avg":13457.0,"bar_rvol":0.428922,"raw_accel":0.325069,"smooth_accel":7.086953,"accel_momentum":3.460272,"rvol_3bar":[8.120306,0.322608,0.428922],"trend_3bar":"MIXED","projected_rvol":1.674172},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":11137.0,"sell_vol":3435.0,"unclassified_vol":0.0,"imbalance":0.528548,"bid":12.6,"ask":12.61,"spread_pct":0.079334,"quote_size_imbalance":null,"quote_age_s":0.762704},"context":{"vwap":12.599323,"price_vs_vwap_pct":0.005376,"ema9":12.519924,"ema20":12.466736,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.225806,"dist_to_hod_atr":6.589106,"atr":0.063742,"spread_atr":0.156883,"own_change_pct":0.190818,"rel_strength_pct":{"SPY":0.202197,"IWM":0.220642}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.226706},"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":"9f31c0de85f5","ts":"2026-09-15T16:41:55+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.378,"trend":"flat","recent_slope_pct":-0.0168,"volatility":"medium"},"price":5.945,"volume":{"bars":191,"last_bar_volume":139268.0,"baseline_avg":53027.2,"bar_rvol":2.62635,"raw_accel":1.362637,"smooth_accel":0.795878,"accel_momentum":-0.915172,"rvol_3bar":[2.393377,1.169267,2.62635],"trend_3bar":"MIXED","projected_rvol":0.23891},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":7122.0,"sell_vol":3460.0,"unclassified_vol":0.0,"imbalance":0.346059,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.452603},"context":{"vwap":5.946831,"price_vs_vwap_pct":-0.030791,"ema9":5.950811,"ema20":5.952197,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.50731,"atr":0.019209,"spread_atr":0.520585,"own_change_pct":-0.33557,"rel_strength_pct":{"SPY":-0.324192,"IWM":-0.305746}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.908873},"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":"fba9cb617e52","ts":"2026-09-15T16:41:55+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.60 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":11.3,"room_to_5d_high_atr":2.13},"price":12.599,"vwap":12.5992,"ext_from_open_pct":0.79,"max_ext_allowed_pct":3.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.129,"volatility":"high"},"price":12.599,"volume":{"bars":191,"last_bar_volume":5772.0,"baseline_avg":13457.0,"bar_rvol":0.428922,"raw_accel":0.325069,"smooth_accel":7.086953,"accel_momentum":3.460272,"rvol_3bar":[8.120306,0.322608,0.428922],"trend_3bar":"MIXED","projected_rvol":1.628703},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":12095.0,"sell_vol":5315.0,"unclassified_vol":0.0,"imbalance":0.389431,"bid":12.59,"ask":12.6,"spread_pct":0.079397,"quote_size_imbalance":null,"quote_age_s":1.519381},"context":{"vwap":12.599323,"price_vs_vwap_pct":-0.002561,"ema9":12.519924,"ema20":12.466736,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.233487,"dist_to_hod_atr":6.604794,"atr":0.063742,"spread_atr":0.156883,"own_change_pct":0.190818,"rel_strength_pct":{"SPY":0.202197,"IWM":0.220642}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.167036},"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":"2abe4e74e953","ts":"2026-09-15T16:42:00+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.8662,"target":6.03,"target_label":"premarket_high","reward_risk":0.97,"pos_in_5d_range_pct":102.6,"room_to_5d_high_atr":-0.06},"price":5.9493,"vwap":5.9468,"ext_from_open_pct":0.66,"max_ext_allowed_pct":4.0,"volume_pace":1.377,"trend":"flat","recent_slope_pct":-0.0024,"volatility":"medium"},"price":5.9493,"volume":{"bars":191,"last_bar_volume":139268.0,"baseline_avg":53027.2,"bar_rvol":2.62635,"raw_accel":1.362637,"smooth_accel":0.795878,"accel_momentum":-0.915172,"rvol_3bar":[2.393377,1.169267,2.62635],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":6527.0,"sell_vol":2334.0,"unclassified_vol":0.0,"imbalance":0.473197,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":3.012482},"context":{"vwap":5.946831,"price_vs_vwap_pct":0.041516,"ema9":5.950811,"ema20":5.952197,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.988468,"dist_to_hod_atr":6.283459,"atr":0.019209,"spread_atr":0.520585,"own_change_pct":-0.33557,"rel_strength_pct":{"SPY":-0.328312,"IWM":-0.340833}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.242781},"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":"fd54c0dfd838","ts":"2026-09-15T16:42:00+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":2.13},"price":12.605,"vwap":12.5992,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":0.1386,"volatility":"high"},"price":12.605,"volume":{"bars":191,"last_bar_volume":5772.0,"baseline_avg":13457.0,"bar_rvol":0.428922,"raw_accel":0.325069,"smooth_accel":7.086953,"accel_momentum":3.460272,"rvol_3bar":[8.120306,0.322608,0.428922],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":12915.0,"sell_vol":5509.0,"unclassified_vol":0.0,"imbalance":0.401976,"bid":12.6,"ask":12.61,"spread_pct":0.079334,"quote_size_imbalance":null,"quote_age_s":0.053277},"context":{"vwap":12.599323,"price_vs_vwap_pct":0.045061,"ema9":12.519924,"ema20":12.466736,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.187404,"dist_to_hod_atr":6.510664,"atr":0.063742,"spread_atr":0.156883,"own_change_pct":0.190818,"rel_strength_pct":{"SPY":0.198077,"IWM":0.185555}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.172416},"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":"90e1d3814685","ts":"2026-09-15T16:42:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.95 below VWAP $5.95","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9468,"ext_from_open_pct":0.59,"max_ext_allowed_pct":4.0,"volume_pace":1.377,"trend":"flat","recent_slope_pct":-0.018,"volatility":"medium"},"price":5.945,"volume":{"bars":192,"last_bar_volume":11910.0,"baseline_avg":58515.15,"bar_rvol":0.203537,"raw_accel":-0.914481,"smooth_accel":-0.116413,"accel_momentum":-0.912291,"rvol_3bar":[1.169267,2.62635,0.203537],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":2358.0,"sell_vol":4255.0,"unclassified_vol":0.0,"imbalance":-0.286859,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.065782},"context":{"vwap":5.946831,"price_vs_vwap_pct":-0.030792,"ema9":5.950509,"ema20":5.951922,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":6.696792,"atr":0.018666,"spread_atr":0.535743,"own_change_pct":-0.011765,"rel_strength_pct":{"SPY":-0.004506,"IWM":-0.017028}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.058386},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c6ea05f04076","ts":"2026-09-15T16:42:05+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.4227,"target":9.87,"target_label":"premarket_high","reward_risk":1.95,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.21},"price":9.5741,"vwap":9.566,"ext_from_open_pct":-1.8,"max_ext_allowed_pct":4.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0363,"volatility":"high"},"price":9.5741,"volume":{"bars":192,"last_bar_volume":24797.0,"baseline_avg":11750.1,"bar_rvol":2.110365,"raw_accel":7.44146,"smooth_accel":0.170227,"accel_momentum":-1.026271,"rvol_3bar":[1.17153,0.208661,2.110365],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":158.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":-0.124654,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":4.997018},"context":{"vwap":9.565985,"price_vs_vwap_pct":0.08483,"ema9":9.584834,"ema20":9.58442,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.603255,"dist_to_hod_atr":11.473392,"atr":0.022304,"spread_atr":0.448354,"own_change_pct":-0.077225,"rel_strength_pct":{"SPY":-0.069966,"IWM":-0.082488}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.263065},"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":"d548ccaa5e32","ts":"2026-09-15T16:42:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.47,"pos_in_5d_range_pct":45.6,"room_to_5d_high_atr":1.16},"price":7.3961,"vwap":7.2333,"ext_from_open_pct":3.44,"max_ext_allowed_pct":3.0,"volume_pace":0.759,"trend":"flat","recent_slope_pct":0.0705,"volatility":"medium"},"price":7.3961,"volume":{"bars":192,"last_bar_volume":258151.0,"baseline_avg":238597.05,"bar_rvol":1.081954,"raw_accel":2.614548,"smooth_accel":-0.018752,"accel_momentum":0.403399,"rvol_3bar":[0.303796,0.291326,1.081954],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":296,"trade_rate":9.866667,"buy_vol":176118.0,"sell_vol":46898.0,"unclassified_vol":0.0,"imbalance":0.57942,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.145897},"context":{"vwap":7.233227,"price_vs_vwap_pct":2.251733,"ema9":7.365268,"ema20":7.341722,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.052703,"dist_to_hod_atr":0.112414,"atr":0.034693,"spread_atr":0.288241,"own_change_pct":0.256619,"rel_strength_pct":{"SPY":0.263878,"IWM":0.251356}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.626906},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"af661e8385fa","ts":"2026-09-15T16:42:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.54 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":8.7,"room_to_5d_high_atr":2.2},"price":12.5431,"vwap":12.5992,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":0.033,"volatility":"high"},"price":12.5431,"volume":{"bars":192,"last_bar_volume":21116.0,"baseline_avg":13509.65,"bar_rvol":1.563031,"raw_accel":2.658351,"smooth_accel":-0.643606,"accel_momentum":-7.730559,"rvol_3bar":[0.322608,0.428922,1.563031],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":14732.0,"sell_vol":5805.0,"unclassified_vol":0.0,"imbalance":0.434679,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":2.155893},"context":{"vwap":12.599179,"price_vs_vwap_pct":-0.445097,"ema9":12.536939,"ema20":12.479904,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.662826,"dist_to_hod_atr":7.231702,"atr":0.065946,"spread_atr":0.15164,"own_change_pct":0.696608,"rel_strength_pct":{"SPY":0.703867,"IWM":0.691345}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.679416},"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":"ed287d97db1b","ts":"2026-09-15T16:42:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2334,"ext_from_open_pct":3.5,"max_ext_allowed_pct":4.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":0.081,"volatility":"medium"},"price":7.4,"volume":{"bars":192,"last_bar_volume":258151.0,"baseline_avg":238597.05,"bar_rvol":1.081954,"raw_accel":2.614548,"smooth_accel":-0.018752,"accel_momentum":0.403399,"rvol_3bar":[0.303796,0.291326,1.081954],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":287,"trade_rate":9.566667,"buy_vol":182161.0,"sell_vol":56232.0,"unclassified_vol":0.0,"imbalance":0.528241,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.798612},"context":{"vwap":7.233227,"price_vs_vwap_pct":2.305651,"ema9":7.365268,"ema20":7.341722,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.034693,"spread_atr":0.288241,"own_change_pct":0.256619,"rel_strength_pct":{"SPY":0.263878,"IWM":0.251356}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.571533},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08914eff4165","ts":"2026-09-15T16:42:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 90.0s, plan says PASS; stop 9.80, target 9.97 (ceiling), R:R 1.11; R:R 1.11 < 2.0 at 9.88; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.8011,"target":9.97,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":492.2,"room_to_5d_high_atr":-5.65},"price":9.8811,"vwap":9.6422,"ext_from_open_pct":4.56,"max_ext_allowed_pct":5.0,"volume_pace":3.967,"trend":"flat","recent_slope_pct":-0.0708,"volatility":"low"},"price":9.8811,"volume":{"bars":192,"last_bar_volume":430.0,"baseline_avg":7005.3,"bar_rvol":0.061382,"raw_accel":-0.754472,"smooth_accel":-0.339394,"accel_momentum":-2.395506,"rvol_3bar":[0.477804,0.18117,0.061382],"trend_3bar":"DECELERATING","projected_rvol":0.00571},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":152.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.876543,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":14.99},"context":{"vwap":9.642226,"price_vs_vwap_pct":2.477379,"ema9":9.91127,"ema20":9.900827,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.126471,"dist_to_hod_atr":7.806583,"atr":0.04085,"spread_atr":0.979189,"own_change_pct":-0.206379,"rel_strength_pct":{"SPY":-0.19912,"IWM":-0.211642}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.053804},"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":"c93da2d18700","ts":"2026-09-15T16:42:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 255.0s, plan says PASS; stop 8.37, target 8.56 (premarket_high), R:R 1.09; target 0.10 away > ~0.10 reachable in 193 min","plan":{"state":"PASS","setup":"","stop":8.3699,"target":8.5586,"target_label":"premarket_high","reward_risk":1.09,"pos_in_5d_range_pct":64.4,"room_to_5d_high_atr":0.86},"price":8.46,"vwap":8.3433,"ext_from_open_pct":1.56,"max_ext_allowed_pct":3.0,"volume_pace":0.877,"trend":"flat","recent_slope_pct":-0.0423,"volatility":"medium"},"price":8.46,"volume":{"bars":192,"last_bar_volume":1071.0,"baseline_avg":1120.2,"bar_rvol":0.956079,"raw_accel":2.824317,"smooth_accel":-0.389464,"accel_momentum":0.389111,"rvol_3bar":[0.026518,0.226234,0.956079],"trend_3bar":"ACCELERATING","projected_rvol":0.36065},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":37.0,"sell_vol":114.0,"unclassified_vol":0.0,"imbalance":-0.509934,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":4.440995},"context":{"vwap":8.343205,"price_vs_vwap_pct":1.399886,"ema9":8.47282,"ema20":8.468808,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.470588,"dist_to_hod_atr":2.079529,"atr":0.019235,"spread_atr":0.519882,"own_change_pct":-0.252168,"rel_strength_pct":{"SPY":-0.244909,"IWM":-0.257431}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.487537},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6c45987f0178","ts":"2026-09-15T16:42:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2335,"ext_from_open_pct":3.43,"max_ext_allowed_pct":3.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":0.0675,"volatility":"medium"},"price":7.395,"volume":{"bars":192,"last_bar_volume":258151.0,"baseline_avg":238597.05,"bar_rvol":1.081954,"raw_accel":2.614548,"smooth_accel":-0.018752,"accel_momentum":0.403399,"rvol_3bar":[0.303796,0.291326,1.081954],"trend_3bar":"MIXED","projected_rvol":1.102478},"flow":{"window_s":30,"trades":173,"trade_rate":5.766667,"buy_vol":90167.0,"sell_vol":47133.0,"unclassified_vol":0.0,"imbalance":0.31343,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":1.267175},"context":{"vwap":7.233227,"price_vs_vwap_pct":2.236526,"ema9":7.365268,"ema20":7.341722,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.067568,"dist_to_hod_atr":0.144121,"atr":0.034693,"spread_atr":0.288241,"own_change_pct":0.256619,"rel_strength_pct":{"SPY":0.263878,"IWM":0.251356}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.339117},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b178d609b839","ts":"2026-09-15T16:42:15+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":12.1,"room_to_5d_high_atr":2.12},"price":12.615,"vwap":12.5992,"ext_from_open_pct":0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":0.1473,"volatility":"high"},"price":12.615,"volume":{"bars":192,"last_bar_volume":21116.0,"baseline_avg":13509.65,"bar_rvol":1.563031,"raw_accel":2.658351,"smooth_accel":-0.643606,"accel_momentum":-7.730559,"rvol_3bar":[0.322608,0.428922,1.563031],"trend_3bar":"ACCELERATING","projected_rvol":0.737843},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":4247.0,"sell_vol":2464.0,"unclassified_vol":0.0,"imbalance":0.265683,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":0.66096},"context":{"vwap":12.599179,"price_vs_vwap_pct":0.125575,"ema9":12.536939,"ema20":12.479904,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.110599,"dist_to_hod_atr":6.141411,"atr":0.065946,"spread_atr":0.15164,"own_change_pct":0.696608,"rel_strength_pct":{"SPY":0.703867,"IWM":0.691345}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.415271},"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":"a53c0eb0aaaa","ts":"2026-09-15T16:42:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 260.0s, plan says WATCH; stop 8.37, target 8.56 (premarket_high), R:R 1.04; selling not fading: red-bar volume 0.79x the advance (max 0.7); imbalance -100% still heavy selling; no reclaim yet (ne","plan":{"state":"WATCH","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3433,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.877,"trend":"flat","recent_slope_pct":-0.0305,"volatility":"medium"},"price":8.465,"volume":{"bars":192,"last_bar_volume":1071.0,"baseline_avg":1120.2,"bar_rvol":0.956079,"raw_accel":2.824317,"smooth_accel":-0.389464,"accel_momentum":0.389111,"rvol_3bar":[0.026518,0.226234,0.956079],"trend_3bar":"ACCELERATING","projected_rvol":0.273166},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":1.0,"sell_vol":101.0,"unclassified_vol":0.0,"imbalance":-0.980392,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":9.440995},"context":{"vwap":8.343205,"price_vs_vwap_pct":1.459815,"ema9":8.47282,"ema20":8.468808,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":1.819587,"atr":0.019235,"spread_atr":0.519882,"own_change_pct":-0.252168,"rel_strength_pct":{"SPY":-0.244909,"IWM":-0.257431}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.937333},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"440eaa3559e7","ts":"2026-09-15T16:42:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.82,"target":9.97,"target_label":"ceiling","reward_risk":0.88,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.6422,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":3.964,"trend":"flat","recent_slope_pct":-0.0326,"volatility":"low"},"price":9.9,"volume":{"bars":192,"last_bar_volume":430.0,"baseline_avg":7005.3,"bar_rvol":0.061382,"raw_accel":-0.754472,"smooth_accel":-0.339394,"accel_momentum":-2.395506,"rvol_3bar":[0.477804,0.18117,0.061382],"trend_3bar":"DECELERATING","projected_rvol":0.037686},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":152.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.888199,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":24.99},"context":{"vwap":9.642226,"price_vs_vwap_pct":2.673392,"ema9":9.91127,"ema20":9.900827,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":7.343917,"atr":0.04085,"spread_atr":0.979189,"own_change_pct":-0.206379,"rel_strength_pct":{"SPY":-0.19912,"IWM":-0.211642}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.05452},"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":"8d4109bd7309","ts":"2026-09-15T16:42:25+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.55 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.69,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":2.19},"price":12.5468,"vwap":12.5991,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":0.0388,"volatility":"high"},"price":12.5468,"volume":{"bars":192,"last_bar_volume":21116.0,"baseline_avg":13509.65,"bar_rvol":1.563031,"raw_accel":2.658351,"smooth_accel":-0.643606,"accel_momentum":-7.730559,"rvol_3bar":[0.322608,0.428922,1.563031],"trend_3bar":"ACCELERATING","projected_rvol":0.9165},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":4043.0,"sell_vol":2141.0,"unclassified_vol":0.0,"imbalance":0.307568,"bid":12.59,"ask":12.6,"spread_pct":0.079397,"quote_size_imbalance":null,"quote_age_s":0.093882},"context":{"vwap":12.599179,"price_vs_vwap_pct":-0.41573,"ema9":12.536939,"ema20":12.479904,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.634409,"dist_to_hod_atr":7.175595,"atr":0.065946,"spread_atr":0.15164,"own_change_pct":0.696608,"rel_strength_pct":{"SPY":0.703867,"IWM":0.691345}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.480738},"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":"70787b8ed136","ts":"2026-09-15T16:42:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.829,"target":9.97,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":499.7,"room_to_5d_high_atr":-5.76},"price":9.909,"vwap":9.6422,"ext_from_open_pct":4.86,"max_ext_allowed_pct":5.0,"volume_pace":3.96,"trend":"flat","recent_slope_pct":-0.0144,"volatility":"low"},"price":9.909,"volume":{"bars":192,"last_bar_volume":430.0,"baseline_avg":7005.3,"bar_rvol":0.061382,"raw_accel":-0.754472,"smooth_accel":-0.339394,"accel_momentum":-2.395506,"rvol_3bar":[0.477804,0.18117,0.061382],"trend_3bar":"DECELERATING","projected_rvol":0.034015},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":129.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.869565,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":4.98999},"context":{"vwap":9.642226,"price_vs_vwap_pct":2.766731,"ema9":9.91127,"ema20":9.900827,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.852941,"dist_to_hod_atr":7.123599,"atr":0.04085,"spread_atr":0.979189,"own_change_pct":-0.206379,"rel_strength_pct":{"SPY":-0.19912,"IWM":-0.211642}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.053376},"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":"34bb3af79bfc","ts":"2026-09-15T16:42:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8137,"target":10.1097,"target_label":"clear air (typical 60-min move)","reward_risk":1.96,"pos_in_5d_range_pct":501.0,"room_to_5d_high_atr":-5.78},"price":9.9137,"vwap":9.6424,"ext_from_open_pct":4.91,"max_ext_allowed_pct":5.0,"volume_pace":3.96,"trend":"flat","recent_slope_pct":-0.0049,"volatility":"low"},"price":9.9137,"volume":{"bars":192,"last_bar_volume":430.0,"baseline_avg":7005.3,"bar_rvol":0.061382,"raw_accel":-0.754472,"smooth_accel":-0.339394,"accel_momentum":-2.395506,"rvol_3bar":[0.477804,0.18117,0.061382],"trend_3bar":"DECELERATING","projected_rvol":0.204916},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":945.0,"sell_vol":11.0,"unclassified_vol":0.0,"imbalance":0.976987,"bid":9.88,"ask":9.93,"spread_pct":0.504796,"quote_size_imbalance":null,"quote_age_s":2.688979},"context":{"vwap":9.642226,"price_vs_vwap_pct":2.815475,"ema9":9.91127,"ema20":9.900827,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.806863,"dist_to_hod_atr":7.008544,"atr":0.04085,"spread_atr":1.223986,"own_change_pct":-0.206379,"rel_strength_pct":{"SPY":-0.19912,"IWM":-0.211642}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.05997},"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":"25620494a812","ts":"2026-09-15T16:42:40+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.22 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1762,"target":5.43,"target_label":"prev_day_high","reward_risk":4.2,"pos_in_5d_range_pct":-3.8,"room_to_5d_high_atr":2.07},"price":5.225,"vwap":5.2352,"ext_from_open_pct":-1.97,"max_ext_allowed_pct":3.0,"volume_pace":0.876,"trend":"flat","recent_slope_pct":-0.0744,"volatility":"medium"},"price":5.225,"volume":{"bars":192,"last_bar_volume":9686.0,"baseline_avg":2141.65,"bar_rvol":4.522681,"raw_accel":3.627807,"smooth_accel":4.67579,"accel_momentum":4.003005,"rvol_3bar":[0.115534,0.971771,4.522681],"trend_3bar":"ACCELERATING","projected_rvol":4.81101},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":858.0,"sell_vol":4946.0,"unclassified_vol":0.0,"imbalance":-0.704342,"bid":5.22,"ask":5.23,"spread_pct":0.191388,"quote_size_imbalance":null,"quote_age_s":0.020483},"context":{"vwap":5.235222,"price_vs_vwap_pct":-0.195263,"ema9":5.243557,"ema20":5.23931,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.33025,"dist_to_hod_atr":20.435366,"atr":0.008808,"spread_atr":1.135298,"own_change_pct":-0.007626,"rel_strength_pct":{"SPY":-0.000367,"IWM":-0.012889}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.185514},"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":"eca41aaa1658","ts":"2026-09-15T16:42:45+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.234,"ext_from_open_pct":3.22,"max_ext_allowed_pct":4.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":0.0268,"volatility":"medium"},"price":7.38,"volume":{"bars":192,"last_bar_volume":258151.0,"baseline_avg":238597.05,"bar_rvol":1.081954,"raw_accel":2.614548,"smooth_accel":-0.018752,"accel_momentum":0.403399,"rvol_3bar":[0.303796,0.291326,1.081954],"trend_3bar":"MIXED","projected_rvol":0.924135},"flow":{"window_s":30,"trades":168,"trade_rate":5.6,"buy_vol":57844.0,"sell_vol":41766.0,"unclassified_vol":0.0,"imbalance":0.161409,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":1.508978},"context":{"vwap":7.233227,"price_vs_vwap_pct":2.029149,"ema9":7.365268,"ema20":7.341722,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.27027,"dist_to_hod_atr":0.576482,"atr":0.034693,"spread_atr":0.288241,"own_change_pct":0.256619,"rel_strength_pct":{"SPY":0.263878,"IWM":0.251356}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.174638},"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":"9a1b9aacbe95","ts":"2026-09-15T16:42:50+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1932,"target":5.43,"target_label":"prev_day_high","reward_risk":3.85,"pos_in_5d_range_pct":0.5,"room_to_5d_high_atr":1.99},"price":5.242,"vwap":5.2352,"ext_from_open_pct":-1.65,"max_ext_allowed_pct":3.0,"volume_pace":0.875,"trend":"flat","recent_slope_pct":-0.0095,"volatility":"medium"},"price":5.242,"volume":{"bars":192,"last_bar_volume":9686.0,"baseline_avg":2141.65,"bar_rvol":4.522681,"raw_accel":3.627807,"smooth_accel":4.67579,"accel_momentum":4.003005,"rvol_3bar":[0.115534,0.971771,4.522681],"trend_3bar":"ACCELERATING","projected_rvol":3.853851},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":845.0,"sell_vol":4935.0,"unclassified_vol":0.0,"imbalance":-0.707612,"bid":5.22,"ask":5.23,"spread_pct":0.191388,"quote_size_imbalance":null,"quote_age_s":0.197073},"context":{"vwap":5.235222,"price_vs_vwap_pct":0.12946,"ema9":5.243557,"ema20":5.23931,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.015726,"dist_to_hod_atr":18.505359,"atr":0.008808,"spread_atr":1.135298,"own_change_pct":-0.007626,"rel_strength_pct":{"SPY":-0.000367,"IWM":-0.012889}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.200305},"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":"da3cd0f1703f","ts":"2026-09-15T16:42:50+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.59,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2341,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":0.0404,"volatility":"medium"},"price":7.385,"volume":{"bars":192,"last_bar_volume":258151.0,"baseline_avg":238597.05,"bar_rvol":1.081954,"raw_accel":2.614548,"smooth_accel":-0.018752,"accel_momentum":0.403399,"rvol_3bar":[0.303796,0.291326,1.081954],"trend_3bar":"MIXED","projected_rvol":0.880557},"flow":{"window_s":30,"trades":156,"trade_rate":5.2,"buy_vol":48606.0,"sell_vol":47198.0,"unclassified_vol":0.0,"imbalance":0.014697,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.389326},"context":{"vwap":7.233227,"price_vs_vwap_pct":2.098275,"ema9":7.365268,"ema20":7.341722,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.202703,"dist_to_hod_atr":0.432362,"atr":0.034693,"spread_atr":0.288241,"own_change_pct":0.256619,"rel_strength_pct":{"SPY":0.263878,"IWM":0.251356}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.015901},"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":"99ccd15aa4ea","ts":"2026-09-15T16:42:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 9.80, target 9.97 (ceiling), R:R 0.65; R:R 0.65 < 2.0 at 9.90; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.805,"target":9.97,"target_label":"ceiling","reward_risk":0.65,"pos_in_5d_range_pct":498.6,"room_to_5d_high_atr":-5.74},"price":9.905,"vwap":9.6424,"ext_from_open_pct":4.81,"max_ext_allowed_pct":5.0,"volume_pace":3.955,"trend":"flat","recent_slope_pct":-0.0225,"volatility":"low"},"price":9.905,"volume":{"bars":192,"last_bar_volume":430.0,"baseline_avg":7005.3,"bar_rvol":0.061382,"raw_accel":-0.754472,"smooth_accel":-0.339394,"accel_momentum":-2.395506,"rvol_3bar":[0.477804,0.18117,0.061382],"trend_3bar":"DECELERATING","projected_rvol":0.157284},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":845.0,"sell_vol":55.0,"unclassified_vol":0.0,"imbalance":0.877778,"bid":9.88,"ask":9.93,"spread_pct":0.504796,"quote_size_imbalance":null,"quote_age_s":0.806359},"context":{"vwap":9.642226,"price_vs_vwap_pct":2.725247,"ema9":9.91127,"ema20":9.900827,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.892157,"dist_to_hod_atr":7.221518,"atr":0.04085,"spread_atr":1.223986,"own_change_pct":-0.206379,"rel_strength_pct":{"SPY":-0.19912,"IWM":-0.211642}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.05388},"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":"669a131e79d1","ts":"2026-09-15T16:42:55+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.4276,"target":9.87,"target_label":"premarket_high","reward_risk":1.92,"pos_in_5d_range_pct":6.2,"room_to_5d_high_atr":3.21},"price":9.579,"vwap":9.566,"ext_from_open_pct":-1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.805,"trend":"flat","recent_slope_pct":-0.0261,"volatility":"high"},"price":9.579,"volume":{"bars":192,"last_bar_volume":24797.0,"baseline_avg":11750.1,"bar_rvol":2.110365,"raw_accel":7.44146,"smooth_accel":0.170227,"accel_momentum":-1.026271,"rvol_3bar":[1.17153,0.208661,2.110365],"trend_3bar":"MIXED","projected_rvol":0.025532},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":230.0,"sell_vol":41.0,"unclassified_vol":0.0,"imbalance":0.697417,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":1.260612},"context":{"vwap":9.565985,"price_vs_vwap_pct":0.136053,"ema9":9.584834,"ema20":9.58442,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.553408,"dist_to_hod_atr":11.253698,"atr":0.022304,"spread_atr":0.448354,"own_change_pct":-0.077225,"rel_strength_pct":{"SPY":-0.069966,"IWM":-0.082488}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.471804},"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":"2ae8fd62698b","ts":"2026-09-15T16:43:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.85,"target":10.126,"target_label":"clear air (typical 60-min move)","reward_risk":2.45,"pos_in_5d_range_pct":505.4,"room_to_5d_high_atr":-5.84},"price":9.93,"vwap":9.6424,"ext_from_open_pct":5.08,"max_ext_allowed_pct":5.0,"volume_pace":3.954,"trend":"flat","recent_slope_pct":0.028,"volatility":"low"},"price":9.93,"volume":{"bars":192,"last_bar_volume":430.0,"baseline_avg":7005.3,"bar_rvol":0.061382,"raw_accel":-0.754472,"smooth_accel":-0.339394,"accel_momentum":-2.395506,"rvol_3bar":[0.477804,0.18117,0.061382],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":925.0,"sell_vol":55.0,"unclassified_vol":0.0,"imbalance":0.887755,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":2.487891},"context":{"vwap":9.642226,"price_vs_vwap_pct":2.984523,"ema9":9.91127,"ema20":9.900827,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.647059,"dist_to_hod_atr":6.609525,"atr":0.04085,"spread_atr":0.734392,"own_change_pct":-0.206379,"rel_strength_pct":{"SPY":-0.19582,"IWM":-0.225681}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.054492},"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":"a55c818e6afa","ts":"2026-09-15T16:43:05+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.22 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1712,"target":5.43,"target_label":"prev_day_high","reward_risk":4.3,"pos_in_5d_range_pct":-5.1,"room_to_5d_high_atr":2.1},"price":5.22,"vwap":5.2347,"ext_from_open_pct":-2.06,"max_ext_allowed_pct":3.0,"volume_pace":0.908,"trend":"flat","recent_slope_pct":-0.0861,"volatility":"medium"},"price":5.22,"volume":{"bars":193,"last_bar_volume":6886.0,"baseline_avg":2151.85,"bar_rvol":3.200037,"raw_accel":-0.289077,"smooth_accel":10.057464,"accel_momentum":5.381674,"rvol_3bar":[0.971771,4.522681,3.200037],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":550.0,"sell_vol":27312.0,"unclassified_vol":0.0,"imbalance":-0.96052,"bid":5.22,"ask":5.23,"spread_pct":0.191388,"quote_size_imbalance":null,"quote_age_s":0.401937},"context":{"vwap":5.235246,"price_vs_vwap_pct":-0.291228,"ema9":5.243146,"ema20":5.239518,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.422757,"dist_to_hod_atr":19.241146,"atr":0.009615,"spread_atr":1.040062,"own_change_pct":-0.161905,"rel_strength_pct":{"SPY":-0.151346,"IWM":-0.181207}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.073699},"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":"e744dfaf9504","ts":"2026-09-15T16:43:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":11.4,"room_to_5d_high_atr":2.13},"price":12.6,"vwap":12.5991,"ext_from_open_pct":0.8,"max_ext_allowed_pct":4.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":0.0666,"volatility":"high"},"price":12.6,"volume":{"bars":193,"last_bar_volume":12788.0,"baseline_avg":14146.25,"bar_rvol":0.903985,"raw_accel":-0.394393,"smooth_accel":-0.544221,"accel_momentum":0.099385,"rvol_3bar":[0.428922,1.563031,0.903985],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":4499.0,"sell_vol":1020.0,"unclassified_vol":0.0,"imbalance":0.630368,"bid":12.6,"ask":12.61,"spread_pct":0.079334,"quote_size_imbalance":null,"quote_age_s":1.52511},"context":{"vwap":12.599094,"price_vs_vwap_pct":0.00719,"ema9":12.541372,"ema20":12.487447,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.225806,"dist_to_hod_atr":6.294191,"atr":0.066728,"spread_atr":0.149862,"own_change_pct":0.305891,"rel_strength_pct":{"SPY":0.31645,"IWM":0.286589}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.569843},"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":"6aaeb46ff258","ts":"2026-09-15T16:43:10+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.4236,"target":9.87,"target_label":"premarket_high","reward_risk":1.95,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.21},"price":9.575,"vwap":9.566,"ext_from_open_pct":-1.79,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.0115,"volatility":"high"},"price":9.575,"volume":{"bars":193,"last_bar_volume":275.0,"baseline_avg":11862.4,"bar_rvol":0.023182,"raw_accel":-0.98891,"smooth_accel":-0.299313,"accel_momentum":-0.46954,"rvol_3bar":[0.208661,2.110365,0.023182],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":178.0,"sell_vol":61.0,"unclassified_vol":0.0,"imbalance":0.48954,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.571575},"context":{"vwap":9.565987,"price_vs_vwap_pct":0.094224,"ema9":9.583667,"ema20":9.583904,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.5941,"dist_to_hod_atr":11.600357,"atr":0.021982,"spread_atr":0.454916,"own_change_pct":-0.114703,"rel_strength_pct":{"SPY":-0.104144,"IWM":-0.134005}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.011349},"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":"f51c91224cd2","ts":"2026-09-15T16:43:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2345,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":0.0844,"volatility":"medium"},"price":7.395,"volume":{"bars":193,"last_bar_volume":230432.0,"baseline_avg":225677.6,"bar_rvol":1.021067,"raw_accel":-0.107375,"smooth_accel":0.643495,"accel_momentum":0.662247,"rvol_3bar":[0.291326,1.081954,1.021067],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":58511.0,"sell_vol":38866.0,"unclassified_vol":0.0,"imbalance":0.201742,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.788904},"context":{"vwap":7.234322,"price_vs_vwap_pct":2.221047,"ema9":7.370234,"ema20":7.346329,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.067568,"dist_to_hod_atr":0.143146,"atr":0.034929,"spread_atr":0.286292,"own_change_pct":0.50729,"rel_strength_pct":{"SPY":0.517848,"IWM":0.487987}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.205992},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8607f9a7e3c","ts":"2026-09-15T16:43:15+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.55 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.19},"price":12.5528,"vwap":12.5991,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"high"},"price":12.5528,"volume":{"bars":193,"last_bar_volume":12788.0,"baseline_avg":14146.25,"bar_rvol":0.903985,"raw_accel":-0.394393,"smooth_accel":-0.544221,"accel_momentum":0.099385,"rvol_3bar":[0.428922,1.563031,0.903985],"trend_3bar":"MIXED","projected_rvol":0.438279},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3895.0,"sell_vol":1320.0,"unclassified_vol":0.0,"imbalance":0.493768,"bid":12.6,"ask":12.61,"spread_pct":0.079334,"quote_size_imbalance":null,"quote_age_s":0.161495},"context":{"vwap":12.599094,"price_vs_vwap_pct":-0.36744,"ema9":12.541372,"ema20":12.487447,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.588326,"dist_to_hod_atr":7.001538,"atr":0.066728,"spread_atr":0.149862,"own_change_pct":0.305891,"rel_strength_pct":{"SPY":0.31645,"IWM":0.286589}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.446359},"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":"e8fbbb2375b9","ts":"2026-09-15T16:43:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8358,"target":9.97,"target_label":"ceiling","reward_risk":1.09,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.6424,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":3.947,"trend":"flat","recent_slope_pct":0.0505,"volatility":"low"},"price":9.9,"volume":{"bars":193,"last_bar_volume":1110.0,"baseline_avg":6912.85,"bar_rvol":0.160571,"raw_accel":-0.357718,"smooth_accel":-0.733478,"accel_momentum":-0.394084,"rvol_3bar":[0.18117,0.061382,0.160571],"trend_3bar":"MIXED","projected_rvol":0.00434},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":100.0,"sell_vol":63.0,"unclassified_vol":0.0,"imbalance":0.226994,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":15.86326},"context":{"vwap":9.642397,"price_vs_vwap_pct":2.671568,"ema9":9.915016,"ema20":9.903605,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":7.241981,"atr":0.041425,"spread_atr":0.482799,"own_change_pct":0.100806,"rel_strength_pct":{"SPY":0.111365,"IWM":0.081504}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.036449},"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":"2230c3cc193b","ts":"2026-09-15T16:43:20+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.9384,"target":12.59,"target_label":"prev_day_high","reward_risk":2.08,"pos_in_5d_range_pct":12.1,"room_to_5d_high_atr":2.06},"price":12.15,"vwap":12.0937,"ext_from_open_pct":-2.72,"max_ext_allowed_pct":3.0,"volume_pace":0.641,"trend":"flat","recent_slope_pct":-0.0064,"volatility":"high"},"price":12.15,"volume":{"bars":193,"last_bar_volume":657.0,"baseline_avg":1572.05,"bar_rvol":0.417926,"raw_accel":0.214418,"smooth_accel":-0.65586,"accel_momentum":-0.494311,"rvol_3bar":[1.501194,0.325247,0.417926],"trend_3bar":"MIXED","projected_rvol":0.541967},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":103.0,"sell_vol":359.0,"unclassified_vol":0.0,"imbalance":-0.554113,"bid":12.13,"ask":12.17,"spread_pct":0.329218,"quote_size_imbalance":null,"quote_age_s":15.75346},"context":{"vwap":12.093627,"price_vs_vwap_pct":0.466136,"ema9":12.135534,"ema20":12.111779,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-3.800475,"dist_to_hod_atr":9.779258,"atr":0.049083,"spread_atr":0.814938,"own_change_pct":-0.108687,"rel_strength_pct":{"SPY":-0.098128,"IWM":-0.127989}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.231578},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"eeb759f7d1ee","ts":"2026-09-15T16:43:20+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":11.4,"room_to_5d_high_atr":2.13},"price":12.6,"vwap":12.5991,"ext_from_open_pct":0.8,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":0.0666,"volatility":"high"},"price":12.6,"volume":{"bars":193,"last_bar_volume":12788.0,"baseline_avg":14146.25,"bar_rvol":0.903985,"raw_accel":-0.394393,"smooth_accel":-0.544221,"accel_momentum":0.099385,"rvol_3bar":[0.428922,1.563031,0.903985],"trend_3bar":"MIXED","projected_rvol":0.354157},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":3908.0,"sell_vol":1200.0,"unclassified_vol":0.0,"imbalance":0.530149,"bid":12.59,"ask":12.6,"spread_pct":0.079397,"quote_size_imbalance":null,"quote_age_s":0.988018},"context":{"vwap":12.599094,"price_vs_vwap_pct":0.00719,"ema9":12.541372,"ema20":12.487447,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.225806,"dist_to_hod_atr":6.294191,"atr":0.066728,"spread_atr":0.149862,"own_change_pct":0.305891,"rel_strength_pct":{"SPY":0.31645,"IWM":0.286589}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.479247},"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":"b17cda443d18","ts":"2026-09-15T16:43:25+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.59,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2346,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":0.0573,"volatility":"medium"},"price":7.385,"volume":{"bars":193,"last_bar_volume":230432.0,"baseline_avg":225677.6,"bar_rvol":1.021067,"raw_accel":-0.107375,"smooth_accel":0.643495,"accel_momentum":0.662247,"rvol_3bar":[0.291326,1.081954,1.021067],"trend_3bar":"MIXED","projected_rvol":0.649862},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":43341.0,"sell_vol":40959.0,"unclassified_vol":0.0,"imbalance":0.028256,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.705602},"context":{"vwap":7.234322,"price_vs_vwap_pct":2.082817,"ema9":7.370234,"ema20":7.346329,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.202703,"dist_to_hod_atr":0.429438,"atr":0.034929,"spread_atr":0.286292,"own_change_pct":0.50729,"rel_strength_pct":{"SPY":0.517848,"IWM":0.487987}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.028852},"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":"b871aaa9f76c","ts":"2026-09-15T16:43:25+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.58 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.52,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":2.16},"price":12.5753,"vwap":12.5991,"ext_from_open_pct":0.6,"max_ext_allowed_pct":3.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":0.0274,"volatility":"high"},"price":12.5753,"volume":{"bars":193,"last_bar_volume":12788.0,"baseline_avg":14146.25,"bar_rvol":0.903985,"raw_accel":-0.394393,"smooth_accel":-0.544221,"accel_momentum":0.099385,"rvol_3bar":[0.428922,1.563031,0.903985],"trend_3bar":"MIXED","projected_rvol":0.283496},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2408.0,"sell_vol":1201.0,"unclassified_vol":0.0,"imbalance":0.334442,"bid":12.59,"ask":12.6,"spread_pct":0.079397,"quote_size_imbalance":null,"quote_age_s":3.225757},"context":{"vwap":12.599094,"price_vs_vwap_pct":-0.188855,"ema9":12.541372,"ema20":12.487447,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.415515,"dist_to_hod_atr":6.664349,"atr":0.066728,"spread_atr":0.149862,"own_change_pct":0.305891,"rel_strength_pct":{"SPY":0.31645,"IWM":0.286589}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.30233},"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":"6455ff8bad30","ts":"2026-09-15T16:43:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.85,"target":10.1106,"target_label":"clear air (typical 60-min move)","reward_risk":2.98,"pos_in_5d_range_pct":501.5,"room_to_5d_high_atr":-5.78},"price":9.9155,"vwap":9.6424,"ext_from_open_pct":4.93,"max_ext_allowed_pct":4.0,"volume_pace":3.944,"trend":"flat","recent_slope_pct":0.0817,"volatility":"low"},"price":9.9155,"volume":{"bars":193,"last_bar_volume":1110.0,"baseline_avg":6912.85,"bar_rvol":0.160571,"raw_accel":-0.357718,"smooth_accel":-0.733478,"accel_momentum":-0.394084,"rvol_3bar":[0.18117,0.061382,0.160571],"trend_3bar":"MIXED","projected_rvol":0.003472},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":2.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":-0.666667,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":25.86326},"context":{"vwap":9.642397,"price_vs_vwap_pct":2.832316,"ema9":9.915016,"ema20":9.903605,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.789216,"dist_to_hod_atr":6.867812,"atr":0.041425,"spread_atr":0.482799,"own_change_pct":0.100806,"rel_strength_pct":{"SPY":0.111365,"IWM":0.081504}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.107047},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8fa254ead8e2","ts":"2026-09-15T16:43:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 340.0s, plan says PASS; stop 8.37, target 8.56 (premarket_high), R:R 1.09; target 0.10 away > ~0.10 reachable in 191 min","plan":{"state":"PASS","setup":"","stop":8.3699,"target":8.5586,"target_label":"premarket_high","reward_risk":1.09,"pos_in_5d_range_pct":64.4,"room_to_5d_high_atr":0.86},"price":8.46,"vwap":8.344,"ext_from_open_pct":1.56,"max_ext_allowed_pct":3.0,"volume_pace":0.876,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"medium"},"price":8.46,"volume":{"bars":193,"last_bar_volume":104.0,"baseline_avg":1112.1,"bar_rvol":0.093517,"raw_accel":-0.902894,"smooth_accel":-0.180985,"accel_momentum":0.208479,"rvol_3bar":[0.226234,0.956079,0.093517],"trend_3bar":"MIXED","projected_rvol":2.20259},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":476.0,"sell_vol":1141.0,"unclassified_vol":0.0,"imbalance":-0.411255,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.281456},"context":{"vwap":8.343252,"price_vs_vwap_pct":1.399305,"ema9":8.471236,"ema20":8.468436,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.470588,"dist_to_hod_atr":2.19559,"atr":0.018218,"spread_atr":0.548898,"own_change_pct":-0.001181,"rel_strength_pct":{"SPY":0.009377,"IWM":-0.020484}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.038459},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3d6d9048c497","ts":"2026-09-15T16:43:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.85,"target":10.1101,"target_label":"clear air (typical 60-min move)","reward_risk":3.0,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.6424,"ext_from_open_pct":4.92,"max_ext_allowed_pct":5.0,"volume_pace":3.939,"trend":"flat","recent_slope_pct":0.0807,"volatility":"low"},"price":9.915,"volume":{"bars":193,"last_bar_volume":1110.0,"baseline_avg":6912.85,"bar_rvol":0.160571,"raw_accel":-0.357718,"smooth_accel":-0.733478,"accel_momentum":-0.394084,"rvol_3bar":[0.18117,0.061382,0.160571],"trend_3bar":"MIXED","projected_rvol":0.043397},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":168.0,"sell_vol":57.0,"unclassified_vol":0.0,"imbalance":0.493333,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":2.302366},"context":{"vwap":9.642397,"price_vs_vwap_pct":2.827131,"ema9":9.915016,"ema20":9.903605,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":6.879882,"atr":0.041425,"spread_atr":0.724198,"own_change_pct":0.100806,"rel_strength_pct":{"SPY":0.111365,"IWM":0.081504}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.079215},"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":"44232d0491c6","ts":"2026-09-15T16:43:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 345.0s, plan says WATCH; stop 8.38, target 8.56 (premarket_high), R:R 0.98; R:R 0.98 < 2.0 at 8.47; breakout: 1-min close > 8.51 on >= 1582 sh","plan":{"state":"WATCH","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.345,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.883,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":8.47,"volume":{"bars":193,"last_bar_volume":104.0,"baseline_avg":1112.1,"bar_rvol":0.093517,"raw_accel":-0.902894,"smooth_accel":-0.180985,"accel_momentum":0.208479,"rvol_3bar":[0.226234,0.956079,0.093517],"trend_3bar":"MIXED","projected_rvol":4.626682},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1707.0,"sell_vol":2136.0,"unclassified_vol":0.0,"imbalance":-0.111632,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":3.112732},"context":{"vwap":8.343252,"price_vs_vwap_pct":1.519162,"ema9":8.471236,"ema20":8.468436,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":1.646693,"atr":0.018218,"spread_atr":0.548898,"own_change_pct":-0.001181,"rel_strength_pct":{"SPY":0.009377,"IWM":-0.020484}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.010439},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"86e2423c564e","ts":"2026-09-15T16:44:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.85,"target":10.121,"target_label":"clear air (typical 60-min move)","reward_risk":2.57,"pos_in_5d_range_pct":504.3,"room_to_5d_high_atr":-5.82},"price":9.9258,"vwap":9.6424,"ext_from_open_pct":5.03,"max_ext_allowed_pct":5.0,"volume_pace":3.934,"trend":"flat","recent_slope_pct":0.1025,"volatility":"low"},"price":9.9258,"volume":{"bars":193,"last_bar_volume":1110.0,"baseline_avg":6912.85,"bar_rvol":0.160571,"raw_accel":-0.357718,"smooth_accel":-0.733478,"accel_momentum":-0.394084,"rvol_3bar":[0.18117,0.061382,0.160571],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":171.0,"sell_vol":57.0,"unclassified_vol":0.0,"imbalance":0.5,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":1.666803},"context":{"vwap":9.642397,"price_vs_vwap_pct":2.939136,"ema9":9.915016,"ema20":9.903605,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.688235,"dist_to_hod_atr":6.619171,"atr":0.041425,"spread_atr":0.724198,"own_change_pct":0.100806,"rel_strength_pct":{"SPY":0.094206,"IWM":0.065715}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.080285},"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":"6aabfccc9c94","ts":"2026-09-15T16:44:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.97,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":485.1,"room_to_5d_high_atr":-5.55},"price":9.855,"vwap":9.6434,"ext_from_open_pct":4.29,"max_ext_allowed_pct":4.0,"volume_pace":3.948,"trend":"flat","recent_slope_pct":-0.0575,"volatility":"low"},"price":9.855,"volume":{"bars":194,"last_bar_volume":240.0,"baseline_avg":6924.55,"bar_rvol":0.034659,"raw_accel":-0.861363,"smooth_accel":-0.846565,"accel_momentum":-0.113087,"rvol_3bar":[0.061382,0.160571,0.034659],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":254,"trade_rate":8.466667,"buy_vol":2219.0,"sell_vol":4963.0,"unclassified_vol":0.0,"imbalance":-0.382066,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":0.234755},"context":{"vwap":9.642435,"price_vs_vwap_pct":2.204479,"ema9":9.917173,"ema20":9.905719,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.382353,"dist_to_hod_atr":8.495644,"atr":0.040609,"spread_atr":0.738752,"own_change_pct":0.00806,"rel_strength_pct":{"SPY":0.00146,"IWM":-0.027031}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.013242},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b31e5c40c5bf","ts":"2026-09-15T16:44:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":11.5,"room_to_5d_high_atr":2.13},"price":12.6034,"vwap":12.5991,"ext_from_open_pct":0.83,"max_ext_allowed_pct":4.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":0.0804,"volatility":"high"},"price":12.6034,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":165,"trade_rate":5.5,"buy_vol":9813.0,"sell_vol":1053.0,"unclassified_vol":0.0,"imbalance":0.806184,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":2.780127},"context":{"vwap":12.599077,"price_vs_vwap_pct":0.034314,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.199693,"dist_to_hod_atr":6.341864,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.258757},"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":"f9d8f374ab6a","ts":"2026-09-15T16:44:15+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.59 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":2.15},"price":12.5866,"vwap":12.5991,"ext_from_open_pct":0.69,"max_ext_allowed_pct":4.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":0.0537,"volatility":"high"},"price":12.5866,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":2.684981},"flow":{"window_s":30,"trades":156,"trade_rate":5.2,"buy_vol":10809.0,"sell_vol":845.0,"unclassified_vol":0.0,"imbalance":0.854985,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":2.053207},"context":{"vwap":12.599077,"price_vs_vwap_pct":-0.09903,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.328725,"dist_to_hod_atr":6.597608,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.27442},"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":"4ec0eca5f13e","ts":"2026-09-15T16:44:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2365,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.767,"trend":"flat","recent_slope_pct":0.0544,"volatility":"medium"},"price":7.395,"volume":{"bars":194,"last_bar_volume":234106.0,"baseline_avg":215682.2,"bar_rvol":1.085421,"raw_accel":0.015944,"smooth_accel":1.275061,"accel_momentum":0.631565,"rvol_3bar":[1.081954,1.021067,1.085421],"trend_3bar":"MIXED","projected_rvol":3.065441},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":199852.0,"sell_vol":73492.0,"unclassified_vol":0.0,"imbalance":0.462275,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.14826},"context":{"vwap":7.235425,"price_vs_vwap_pct":2.205462,"ema9":7.374047,"ema20":7.350422,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.067568,"dist_to_hod_atr":0.143272,"atr":0.034899,"spread_atr":0.286544,"own_change_pct":0.166734,"rel_strength_pct":{"SPY":0.160134,"IWM":0.131643}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.501763},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a2e13470bceb","ts":"2026-09-15T16:44:25+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.3953,"vwap":7.2365,"ext_from_open_pct":3.43,"max_ext_allowed_pct":3.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":0.0552,"volatility":"medium"},"price":7.3953,"volume":{"bars":194,"last_bar_volume":234106.0,"baseline_avg":215682.2,"bar_rvol":1.085421,"raw_accel":0.015944,"smooth_accel":1.275061,"accel_momentum":0.631565,"rvol_3bar":[1.081954,1.021067,1.085421],"trend_3bar":"MIXED","projected_rvol":2.460554},"flow":{"window_s":30,"trades":155,"trade_rate":5.166667,"buy_vol":199975.0,"sell_vol":73188.0,"unclassified_vol":0.0,"imbalance":0.464144,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.610811},"context":{"vwap":7.235425,"price_vs_vwap_pct":2.209608,"ema9":7.374047,"ema20":7.350422,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.063514,"dist_to_hod_atr":0.134676,"atr":0.034899,"spread_atr":0.286544,"own_change_pct":0.166734,"rel_strength_pct":{"SPY":0.160134,"IWM":0.131643}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.503792},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a8bb9c098c4f","ts":"2026-09-15T16:44:25+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":12.1,"room_to_5d_high_atr":2.12},"price":12.615,"vwap":12.5991,"ext_from_open_pct":0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":0.0988,"volatility":"high"},"price":12.615,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":1.61776},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":9641.0,"sell_vol":445.0,"unclassified_vol":0.0,"imbalance":0.911759,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":1.591565},"context":{"vwap":12.599077,"price_vs_vwap_pct":0.126384,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.110599,"dist_to_hod_atr":6.165278,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.292642},"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":"9dd62f79cc0b","ts":"2026-09-15T16:44:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8057,"target":9.97,"target_label":"ceiling","reward_risk":1.56,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.8699,"vwap":9.6437,"ext_from_open_pct":4.44,"max_ext_allowed_pct":5.0,"volume_pace":3.946,"trend":"flat","recent_slope_pct":-0.0274,"volatility":"low"},"price":9.8699,"volume":{"bars":194,"last_bar_volume":240.0,"baseline_avg":6924.55,"bar_rvol":0.034659,"raw_accel":-0.861363,"smooth_accel":-0.846565,"accel_momentum":-0.113087,"rvol_3bar":[0.061382,0.160571,0.034659],"trend_3bar":"MIXED","projected_rvol":2.794694},"flow":{"window_s":30,"trades":259,"trade_rate":8.633333,"buy_vol":4664.0,"sell_vol":5012.0,"unclassified_vol":0.0,"imbalance":-0.035965,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":2.349208},"context":{"vwap":9.642435,"price_vs_vwap_pct":2.359004,"ema9":9.917173,"ema20":9.905719,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.236275,"dist_to_hod_atr":8.128731,"atr":0.040609,"spread_atr":0.738752,"own_change_pct":0.00806,"rel_strength_pct":{"SPY":0.00146,"IWM":-0.027031}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001247},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3f254a31140c","ts":"2026-09-15T16:44:30+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.56 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":2.18},"price":12.5612,"vwap":12.599,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":0.0134,"volatility":"high"},"price":12.5612,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":1.491824},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":9682.0,"sell_vol":1157.0,"unclassified_vol":0.0,"imbalance":0.786512,"bid":12.6,"ask":12.61,"spread_pct":0.079334,"quote_size_imbalance":null,"quote_age_s":0.723268},"context":{"vwap":12.599077,"price_vs_vwap_pct":-0.300632,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.52381,"dist_to_hod_atr":6.98427,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.252442},"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":"44f967a10e10","ts":"2026-09-15T16:44:35+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":11.8,"room_to_5d_high_atr":2.12},"price":12.61,"vwap":12.5991,"ext_from_open_pct":0.88,"max_ext_allowed_pct":3.0,"volume_pace":0.923,"trend":"flat","recent_slope_pct":0.0909,"volatility":"high"},"price":12.61,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":1.372731},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2192.0,"sell_vol":819.0,"unclassified_vol":0.0,"imbalance":0.455995,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":0.012081},"context":{"vwap":12.599077,"price_vs_vwap_pct":0.086698,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.149002,"dist_to_hod_atr":6.241392,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.146358},"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":"8f63b4954256","ts":"2026-09-15T16:44:45+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.59 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":2.15},"price":12.5879,"vwap":12.599,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.0558,"volatility":"high"},"price":12.5879,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":1.124752},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":1609.0,"sell_vol":895.0,"unclassified_vol":0.0,"imbalance":0.285144,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":4.948159},"context":{"vwap":12.599077,"price_vs_vwap_pct":-0.088711,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.31874,"dist_to_hod_atr":6.577819,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.091521},"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":"e5a07d9eb747","ts":"2026-09-15T16:44:50+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":12.1,"room_to_5d_high_atr":2.12},"price":12.615,"vwap":12.5991,"ext_from_open_pct":0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.0988,"volatility":"high"},"price":12.615,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":1.024004},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":1750.0,"sell_vol":895.0,"unclassified_vol":0.0,"imbalance":0.323251,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":0.846384},"context":{"vwap":12.599077,"price_vs_vwap_pct":0.126384,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.110599,"dist_to_hod_atr":6.165278,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.103752},"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":"e29dab5ce25a","ts":"2026-09-15T16:44:55+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.59 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":2.15},"price":12.5884,"vwap":12.599,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.0566,"volatility":"high"},"price":12.5884,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":0.991797},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":2420.0,"sell_vol":996.0,"unclassified_vol":0.0,"imbalance":0.416862,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":1.971213},"context":{"vwap":12.599077,"price_vs_vwap_pct":-0.084743,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.3149,"dist_to_hod_atr":6.570207,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.423111,"IWM":0.39462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.133798},"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":"3c12eadeb9c5","ts":"2026-09-15T16:45:00+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.52,"pos_in_5d_range_pct":45.0,"room_to_5d_high_atr":1.17},"price":7.3909,"vwap":7.2371,"ext_from_open_pct":3.37,"max_ext_allowed_pct":4.0,"volume_pace":0.767,"trend":"flat","recent_slope_pct":0.0433,"volatility":"medium"},"price":7.3909,"volume":{"bars":194,"last_bar_volume":234106.0,"baseline_avg":215682.2,"bar_rvol":1.085421,"raw_accel":0.015944,"smooth_accel":1.275061,"accel_momentum":0.631565,"rvol_3bar":[1.081954,1.021067,1.085421],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":54458.0,"sell_vol":46066.0,"unclassified_vol":0.0,"imbalance":0.083483,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":1.0008},"context":{"vwap":7.235425,"price_vs_vwap_pct":2.148796,"ema9":7.374047,"ema20":7.350422,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.122973,"dist_to_hod_atr":0.260755,"atr":0.034899,"spread_atr":0.286544,"own_change_pct":0.166734,"rel_strength_pct":{"SPY":0.158814,"IWM":0.11058}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.090614},"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":"43bd86844b05","ts":"2026-09-15T16:45:00+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":12.4,"room_to_5d_high_atr":2.11},"price":12.6208,"vwap":12.5991,"ext_from_open_pct":0.97,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.1081,"volatility":"high"},"price":12.6208,"volume":{"bars":194,"last_bar_volume":4664.0,"baseline_avg":14531.2,"bar_rvol":0.320965,"raw_accel":-0.635283,"smooth_accel":-0.574676,"accel_momentum":-0.030454,"rvol_3bar":[1.563031,0.903985,0.320965],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":2633.0,"sell_vol":697.0,"unclassified_vol":0.0,"imbalance":0.581381,"bid":12.62,"ask":12.63,"spread_pct":0.079208,"quote_size_imbalance":null,"quote_age_s":0.154208},"context":{"vwap":12.599077,"price_vs_vwap_pct":0.172419,"ema9":12.552537,"ema20":12.497899,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.066052,"dist_to_hod_atr":6.076985,"atr":0.06569,"spread_atr":0.152229,"own_change_pct":0.429711,"rel_strength_pct":{"SPY":0.421791,"IWM":0.373557}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.186603},"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":"59bb079e0812","ts":"2026-09-15T16:45:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.5,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":1.17},"price":7.3934,"vwap":7.2374,"ext_from_open_pct":3.4,"max_ext_allowed_pct":3.0,"volume_pace":0.768,"trend":"flat","recent_slope_pct":0.0268,"volatility":"medium"},"price":7.3934,"volume":{"bars":195,"last_bar_volume":352672.0,"baseline_avg":212231.6,"bar_rvol":1.661732,"raw_accel":0.506463,"smooth_accel":1.019787,"accel_momentum":-0.255273,"rvol_3bar":[1.021067,1.085421,1.661732],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":28550.0,"sell_vol":68708.0,"unclassified_vol":0.0,"imbalance":-0.412902,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":1.551304},"context":{"vwap":7.237092,"price_vs_vwap_pct":2.159821,"ema9":7.377418,"ema20":7.354277,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.089189,"dist_to_hod_atr":0.192387,"atr":0.034306,"spread_atr":0.291495,"own_change_pct":0.282221,"rel_strength_pct":{"SPY":0.274301,"IWM":0.226067}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.686132},"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":"b07ab971947e","ts":"2026-09-15T16:45:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.59 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":2.14},"price":12.5932,"vwap":12.5991,"ext_from_open_pct":0.75,"max_ext_allowed_pct":3.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.0302,"volatility":"high"},"price":12.5932,"volume":{"bars":195,"last_bar_volume":14169.0,"baseline_avg":14671.35,"bar_rvol":0.96576,"raw_accel":2.03795,"smooth_accel":0.012066,"accel_momentum":0.586742,"rvol_3bar":[0.903985,0.320965,0.96576],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":2570.0,"sell_vol":2282.0,"unclassified_vol":0.0,"imbalance":0.059357,"bid":12.62,"ask":12.63,"spread_pct":0.079208,"quote_size_imbalance":null,"quote_age_s":2.279473},"context":{"vwap":12.599082,"price_vs_vwap_pct":-0.046683,"ema9":12.56619,"ema20":12.509604,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.278034,"dist_to_hod_atr":6.528303,"atr":0.065377,"spread_atr":0.152959,"own_change_pct":0.458482,"rel_strength_pct":{"SPY":0.450562,"IWM":0.402328}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.057325},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2743e185268c","ts":"2026-09-15T16:45:10+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9384,"target":12.59,"target_label":"prev_day_high","reward_risk":2.08,"pos_in_5d_range_pct":12.1,"room_to_5d_high_atr":2.06},"price":12.15,"vwap":12.0939,"ext_from_open_pct":-2.72,"max_ext_allowed_pct":4.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":-0.0056,"volatility":"high"},"price":12.15,"volume":{"bars":195,"last_bar_volume":455.0,"baseline_avg":1583.45,"bar_rvol":0.287347,"raw_accel":-0.813142,"smooth_accel":-0.529326,"accel_momentum":0.125496,"rvol_3bar":[0.417926,1.541774,0.287347],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":15.0,"sell_vol":104.0,"unclassified_vol":0.0,"imbalance":-0.747899,"bid":12.1,"ask":12.15,"spread_pct":0.412371,"quote_size_imbalance":null,"quote_age_s":8.34223},"context":{"vwap":12.093926,"price_vs_vwap_pct":0.463656,"ema9":12.131742,"ema20":12.114178,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-3.800475,"dist_to_hod_atr":9.955442,"atr":0.048215,"spread_atr":1.037025,"own_change_pct":-0.142477,"rel_strength_pct":{"SPY":-0.150397,"IWM":-0.198631}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.214907},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"aa164c2cf7b2","ts":"2026-09-15T16:45:10+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":2.09},"price":12.64,"vwap":12.5991,"ext_from_open_pct":1.12,"max_ext_allowed_pct":3.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":0.1045,"volatility":"high"},"price":12.64,"volume":{"bars":195,"last_bar_volume":14169.0,"baseline_avg":14671.35,"bar_rvol":0.96576,"raw_accel":2.03795,"smooth_accel":0.012066,"accel_momentum":0.586742,"rvol_3bar":[0.903985,0.320965,0.96576],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":3832.0,"sell_vol":2443.0,"unclassified_vol":0.0,"imbalance":0.221355,"bid":12.63,"ask":12.64,"spread_pct":0.079145,"quote_size_imbalance":null,"quote_age_s":0.432276},"context":{"vwap":12.599082,"price_vs_vwap_pct":0.324773,"ema9":12.56619,"ema20":12.509604,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.918587,"dist_to_hod_atr":5.812454,"atr":0.065377,"spread_atr":0.152959,"own_change_pct":0.458482,"rel_strength_pct":{"SPY":0.450562,"IWM":0.402328}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.213775},"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":"f24205303ef0","ts":"2026-09-15T16:45:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.97,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.6443,"ext_from_open_pct":4.34,"max_ext_allowed_pct":4.0,"volume_pace":3.939,"trend":"flat","recent_slope_pct":-0.1823,"volatility":"low"},"price":9.86,"volume":{"bars":195,"last_bar_volume":13988.0,"baseline_avg":6741.6,"bar_rvol":2.074878,"raw_accel":7.299513,"smooth_accel":1.931575,"accel_momentum":2.77814,"rvol_3bar":[0.160571,0.034659,2.074878],"trend_3bar":"MIXED","projected_rvol":0.180669},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":840.0,"sell_vol":117.0,"unclassified_vol":0.0,"imbalance":0.755486,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":8.399795},"context":{"vwap":9.644243,"price_vs_vwap_pct":2.237158,"ema9":9.904738,"ema20":9.900889,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.75601,"atr":0.043837,"spread_atr":0.912472,"own_change_pct":-0.404245,"rel_strength_pct":{"SPY":-0.412165,"IWM":-0.460399}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.567541},"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":"9528bc7a87b8","ts":"2026-09-15T16:45:20+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.59,"target_label":"prev_day_high","reward_risk":2.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.094,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.641,"trend":"flat","recent_slope_pct":-0.1046,"volatility":"high"},"price":12.09,"volume":{"bars":195,"last_bar_volume":455.0,"baseline_avg":1583.45,"bar_rvol":0.287347,"raw_accel":-0.813142,"smooth_accel":-0.529326,"accel_momentum":0.125496,"rvol_3bar":[0.417926,1.541774,0.287347],"trend_3bar":"MIXED","projected_rvol":2.648647},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":215.0,"sell_vol":1286.0,"unclassified_vol":0.0,"imbalance":-0.713524,"bid":12.07,"ask":12.12,"spread_pct":0.413394,"quote_size_imbalance":null,"quote_age_s":0.735595},"context":{"vwap":12.093926,"price_vs_vwap_pct":-0.03246,"ema9":12.131742,"ema20":12.114178,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.199872,"atr":0.048215,"spread_atr":1.037025,"own_change_pct":-0.142477,"rel_strength_pct":{"SPY":-0.150397,"IWM":-0.198631}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.205029},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"adb663cdda65","ts":"2026-09-15T16:45:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.67,"target":9.97,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.6443,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":3.933,"trend":"flat","recent_slope_pct":-0.1823,"volatility":"low"},"price":9.86,"volume":{"bars":195,"last_bar_volume":13988.0,"baseline_avg":6741.6,"bar_rvol":2.074878,"raw_accel":7.299513,"smooth_accel":1.931575,"accel_momentum":2.77814,"rvol_3bar":[0.160571,0.034659,2.074878],"trend_3bar":"MIXED","projected_rvol":0.135502},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":386.0,"sell_vol":176.0,"unclassified_vol":0.0,"imbalance":0.373665,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":1.350719},"context":{"vwap":9.644243,"price_vs_vwap_pct":2.237158,"ema9":9.904738,"ema20":9.900889,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.75601,"atr":0.043837,"spread_atr":0.912472,"own_change_pct":-0.404245,"rel_strength_pct":{"SPY":-0.412165,"IWM":-0.460399}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.77531},"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":"c0de6e9cd9f8","ts":"2026-09-15T16:45:45+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9084,"target":12.59,"target_label":"prev_day_high","reward_risk":2.22,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":2.09},"price":12.12,"vwap":12.0941,"ext_from_open_pct":-2.96,"max_ext_allowed_pct":3.0,"volume_pace":0.641,"trend":"flat","recent_slope_pct":-0.0551,"volatility":"high"},"price":12.12,"volume":{"bars":195,"last_bar_volume":455.0,"baseline_avg":1583.45,"bar_rvol":0.287347,"raw_accel":-0.813142,"smooth_accel":-0.529326,"accel_momentum":0.125496,"rvol_3bar":[0.417926,1.541774,0.287347],"trend_3bar":"MIXED","projected_rvol":1.528308},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":503.0,"sell_vol":1268.0,"unclassified_vol":0.0,"imbalance":-0.431959,"bid":12.07,"ask":12.12,"spread_pct":0.413394,"quote_size_imbalance":null,"quote_age_s":9.950586},"context":{"vwap":12.093926,"price_vs_vwap_pct":0.215598,"ema9":12.131742,"ema20":12.114178,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.038005,"dist_to_hod_atr":10.577657,"atr":0.048215,"spread_atr":1.037025,"own_change_pct":-0.142477,"rel_strength_pct":{"SPY":-0.150397,"IWM":-0.198631}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.124122},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0222ffd9aa16","ts":"2026-09-15T16:45:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2403,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.78,"trend":"flat","recent_slope_pct":0.0311,"volatility":"medium"},"price":7.395,"volume":{"bars":195,"last_bar_volume":352672.0,"baseline_avg":212231.6,"bar_rvol":1.661732,"raw_accel":0.506463,"smooth_accel":1.019787,"accel_momentum":-0.255273,"rvol_3bar":[1.021067,1.085421,1.661732],"trend_3bar":"ACCELERATING","projected_rvol":3.480088},"flow":{"window_s":30,"trades":173,"trade_rate":5.766667,"buy_vol":141707.0,"sell_vol":171460.0,"unclassified_vol":0.0,"imbalance":-0.095007,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.040941},"context":{"vwap":7.237092,"price_vs_vwap_pct":2.18193,"ema9":7.377418,"ema20":7.354277,"ema_stack":true,"ema_warm":true,"hod":7.4,"dist_to_hod_pct":-0.067568,"dist_to_hod_atr":0.145747,"atr":0.034306,"spread_atr":0.291495,"own_change_pct":0.282221,"rel_strength_pct":{"SPY":0.274301,"IWM":0.226067}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.157876},"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":"6bd8c60455e8","ts":"2026-09-15T16:46:00+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"WATCH","setup":"","stop":11.8884,"target":12.18,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":2.11},"price":12.1,"vwap":12.094,"ext_from_open_pct":-3.12,"max_ext_allowed_pct":3.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.0881,"volatility":"high"},"price":12.1,"volume":{"bars":195,"last_bar_volume":455.0,"baseline_avg":1583.45,"bar_rvol":0.287347,"raw_accel":-0.813142,"smooth_accel":-0.529326,"accel_momentum":0.125496,"rvol_3bar":[0.417926,1.541774,0.287347],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":43.0,"sell_vol":163.0,"unclassified_vol":0.0,"imbalance":-0.582524,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":0.430846},"context":{"vwap":12.093926,"price_vs_vwap_pct":0.050226,"ema9":12.131742,"ema20":12.114178,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.196358,"dist_to_hod_atr":10.992467,"atr":0.048215,"spread_atr":0.622215,"own_change_pct":-0.142477,"rel_strength_pct":{"SPY":-0.158319,"IWM":-0.184594}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.167387},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d709ee70e6f7","ts":"2026-09-15T16:46:05+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 11.91, target 12.59 (prev_day_high), R:R 2.22; target 0.47 away > ~0.18 reachable in 189 min","plan":{"state":"PASS","setup":"","stop":11.9084,"target":12.59,"target_label":"prev_day_high","reward_risk":2.22,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":2.09},"price":12.12,"vwap":12.094,"ext_from_open_pct":-2.96,"max_ext_allowed_pct":3.0,"volume_pace":0.64,"trend":"flat","recent_slope_pct":-0.0401,"volatility":"high"},"price":12.12,"volume":{"bars":196,"last_bar_volume":2012.0,"baseline_avg":1588.55,"bar_rvol":1.266564,"raw_accel":3.421978,"smooth_accel":0.378515,"accel_momentum":0.907841,"rvol_3bar":[1.541774,0.287347,1.266564],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":46.0,"sell_vol":163.0,"unclassified_vol":0.0,"imbalance":-0.559809,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":0.246625},"context":{"vwap":12.094038,"price_vs_vwap_pct":0.214664,"ema9":12.125393,"ema20":12.112827,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.038005,"dist_to_hod_atr":10.396147,"atr":0.049057,"spread_atr":0.815384,"own_change_pct":-0.452489,"rel_strength_pct":{"SPY":-0.46833,"IWM":-0.494606}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.709033},"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":"69e7fa6ac685","ts":"2026-09-15T16:46:25+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.18,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.094,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":4.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":-0.0896,"volatility":"high"},"price":12.09,"volume":{"bars":196,"last_bar_volume":2012.0,"baseline_avg":1588.55,"bar_rvol":1.266564,"raw_accel":3.421978,"smooth_accel":0.378515,"accel_momentum":0.907841,"rvol_3bar":[1.541774,0.287347,1.266564],"trend_3bar":"MIXED","projected_rvol":0.051368},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":13.0,"sell_vol":93.0,"unclassified_vol":0.0,"imbalance":-0.754717,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":2.076346},"context":{"vwap":12.094038,"price_vs_vwap_pct":-0.033392,"ema9":12.125393,"ema20":12.112827,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.007685,"atr":0.049057,"spread_atr":0.815384,"own_change_pct":-0.452489,"rel_strength_pct":{"SPY":-0.46833,"IWM":-0.494606}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.955897},"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":"3cc05a686839","ts":"2026-09-15T16:46:25+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7367,"target":7.875,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8483,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":4.0,"volume_pace":1.109,"trend":"flat","recent_slope_pct":0.0727,"volatility":"high"},"price":7.855,"volume":{"bars":196,"last_bar_volume":2895.0,"baseline_avg":13543.25,"bar_rvol":0.21376,"raw_accel":-0.144962,"smooth_accel":-0.363442,"accel_momentum":0.425485,"rvol_3bar":[0.264953,0.064371,0.21376],"trend_3bar":"MIXED","projected_rvol":0.995034},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":4910.0,"sell_vol":874.0,"unclassified_vol":0.0,"imbalance":0.697787,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.079933},"context":{"vwap":7.848285,"price_vs_vwap_pct":0.085563,"ema9":7.844748,"ema20":7.856041,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":3.390825,"atr":0.022119,"spread_atr":0.45211,"own_change_pct":0.07654,"rel_strength_pct":{"SPY":0.060699,"IWM":0.034423}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.149159},"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":"7157be9a4108","ts":"2026-09-15T16:46:30+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9267,"target":12.59,"target_label":"prev_day_high","reward_risk":2.13,"pos_in_5d_range_pct":11.5,"room_to_5d_high_atr":2.07},"price":12.1383,"vwap":12.094,"ext_from_open_pct":-2.82,"max_ext_allowed_pct":4.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":-0.0099,"volatility":"high"},"price":12.1383,"volume":{"bars":196,"last_bar_volume":2012.0,"baseline_avg":1588.55,"bar_rvol":1.266564,"raw_accel":3.421978,"smooth_accel":0.378515,"accel_momentum":0.907841,"rvol_3bar":[1.541774,0.287347,1.266564],"trend_3bar":"MIXED","projected_rvol":0.060432},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":18.0,"sell_vol":30.0,"unclassified_vol":0.0,"imbalance":-0.25,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":7.076346},"context":{"vwap":12.094038,"price_vs_vwap_pct":0.365979,"ema9":12.125393,"ema20":12.112827,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-3.893112,"dist_to_hod_atr":10.023109,"atr":0.049057,"spread_atr":0.815384,"own_change_pct":-0.452489,"rel_strength_pct":{"SPY":-0.46833,"IWM":-0.494606}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.316641},"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":"90c4317eca93","ts":"2026-09-15T16:46:35+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.08 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8684,"target":12.18,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":2.14},"price":12.08,"vwap":12.094,"ext_from_open_pct":-3.28,"max_ext_allowed_pct":3.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":-0.1062,"volatility":"high"},"price":12.08,"volume":{"bars":196,"last_bar_volume":2012.0,"baseline_avg":1588.55,"bar_rvol":1.266564,"raw_accel":3.421978,"smooth_accel":0.378515,"accel_momentum":0.907841,"rvol_3bar":[1.541774,0.287347,1.266564],"trend_3bar":"MIXED","projected_rvol":0.164031},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":15.0,"sell_vol":134.0,"unclassified_vol":0.0,"imbalance":-0.798658,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":12.076346},"context":{"vwap":12.094038,"price_vs_vwap_pct":-0.116077,"ema9":12.125393,"ema20":12.112827,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.354711,"dist_to_hod_atr":11.211531,"atr":0.049057,"spread_atr":0.815384,"own_change_pct":-0.452489,"rel_strength_pct":{"SPY":-0.46833,"IWM":-0.494606}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.011551},"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":"27f53cae4d80","ts":"2026-09-15T16:46:35+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8483,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.108,"trend":"flat","recent_slope_pct":0.06,"volatility":"high"},"price":7.85,"volume":{"bars":196,"last_bar_volume":2895.0,"baseline_avg":13543.25,"bar_rvol":0.21376,"raw_accel":-0.144962,"smooth_accel":-0.363442,"accel_momentum":0.425485,"rvol_3bar":[0.264953,0.064371,0.21376],"trend_3bar":"MIXED","projected_rvol":0.723397},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":4841.0,"sell_vol":874.0,"unclassified_vol":0.0,"imbalance":0.694138,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.437348},"context":{"vwap":7.848285,"price_vs_vwap_pct":0.021855,"ema9":7.844748,"ema20":7.856041,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":3.61688,"atr":0.022119,"spread_atr":0.45211,"own_change_pct":0.07654,"rel_strength_pct":{"SPY":0.060699,"IWM":0.034423}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.148379},"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":"138e8d20d6c9","ts":"2026-09-15T16:46:40+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9084,"target":12.59,"target_label":"prev_day_high","reward_risk":2.22,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":2.09},"price":12.12,"vwap":12.094,"ext_from_open_pct":-2.96,"max_ext_allowed_pct":3.0,"volume_pace":0.639,"trend":"flat","recent_slope_pct":-0.0401,"volatility":"high"},"price":12.12,"volume":{"bars":196,"last_bar_volume":2012.0,"baseline_avg":1588.55,"bar_rvol":1.266564,"raw_accel":3.421978,"smooth_accel":0.378515,"accel_momentum":0.907841,"rvol_3bar":[1.541774,0.287347,1.266564],"trend_3bar":"MIXED","projected_rvol":0.154858},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":27.0,"sell_vol":134.0,"unclassified_vol":0.0,"imbalance":-0.664596,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":17.076346},"context":{"vwap":12.094038,"price_vs_vwap_pct":0.214664,"ema9":12.125393,"ema20":12.112827,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.038005,"dist_to_hod_atr":10.396147,"atr":0.049057,"spread_atr":0.815384,"own_change_pct":-0.452489,"rel_strength_pct":{"SPY":-0.46833,"IWM":-0.494606}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.841754},"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":"4e9aafc1cb52","ts":"2026-09-15T16:46:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.53,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2416,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.0074,"volatility":"medium"},"price":7.39,"volume":{"bars":196,"last_bar_volume":691880.0,"baseline_avg":213385.75,"bar_rvol":3.242391,"raw_accel":0.961823,"smooth_accel":1.283306,"accel_momentum":0.263518,"rvol_3bar":[1.085421,1.661732,3.242391],"trend_3bar":"ACCELERATING","projected_rvol":1.670152},"flow":{"window_s":30,"trades":274,"trade_rate":9.133333,"buy_vol":155423.0,"sell_vol":88019.0,"unclassified_vol":0.0,"imbalance":0.276879,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":1.471473},"context":{"vwap":7.240402,"price_vs_vwap_pct":2.066158,"ema9":7.380934,"ema20":7.358155,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.269906,"dist_to_hod_atr":0.588264,"atr":0.033998,"spread_atr":0.294132,"own_change_pct":0.235849,"rel_strength_pct":{"SPY":0.220007,"IWM":0.193732}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.89775},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8730b3a0603b","ts":"2026-09-15T16:46:50+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8208,"target":9.97,"target_label":"ceiling","reward_risk":1.32,"pos_in_5d_range_pct":493.2,"room_to_5d_high_atr":-5.67},"price":9.885,"vwap":9.6454,"ext_from_open_pct":4.6,"max_ext_allowed_pct":4.0,"volume_pace":3.929,"trend":"flat","recent_slope_pct":-0.1575,"volatility":"low"},"price":9.885,"volume":{"bars":196,"last_bar_volume":611.0,"baseline_avg":7177.2,"bar_rvol":0.085131,"raw_accel":-0.95632,"smooth_accel":4.241611,"accel_momentum":2.310036,"rvol_3bar":[0.034659,2.074878,0.085131],"trend_3bar":"MIXED","projected_rvol":1.4317},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":4390.0,"sell_vol":165.0,"unclassified_vol":0.0,"imbalance":0.927552,"bid":9.87,"ask":9.9,"spread_pct":0.30349,"quote_size_imbalance":null,"quote_age_s":1.016219},"context":{"vwap":9.644319,"price_vs_vwap_pct":2.495578,"ema9":9.895791,"ema20":9.896994,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.088235,"dist_to_hod_atr":7.351463,"atr":0.042849,"spread_atr":0.700139,"own_change_pct":-0.303337,"rel_strength_pct":{"SPY":-0.319178,"IWM":-0.345454}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.078963},"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":"8ab3a3652e07","ts":"2026-09-15T16:46:55+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.58 below VWAP $12.60","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":10.4,"room_to_5d_high_atr":2.16},"price":12.5802,"vwap":12.5992,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.921,"trend":"flat","recent_slope_pct":0.0675,"volatility":"high"},"price":12.5802,"volume":{"bars":196,"last_bar_volume":20395.0,"baseline_avg":15165.75,"bar_rvol":1.344807,"raw_accel":0.43941,"smooth_accel":-0.011291,"accel_momentum":-0.023358,"rvol_3bar":[0.320965,0.96576,1.344807],"trend_3bar":"ACCELERATING","projected_rvol":0.859161},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":8266.0,"sell_vol":1243.0,"unclassified_vol":0.0,"imbalance":0.738563,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.525909},"context":{"vwap":12.599217,"price_vs_vwap_pct":-0.150936,"ema9":12.580952,"ema20":12.522023,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.37788,"dist_to_hod_atr":6.43857,"atr":0.068307,"spread_atr":0.146398,"own_change_pct":0.72596,"rel_strength_pct":{"SPY":0.710118,"IWM":0.683843}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.993225},"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":"18bdb36d30dd","ts":"2026-09-15T16:47:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2422,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":-0.0602,"volatility":"medium"},"price":7.37,"volume":{"bars":197,"last_bar_volume":334417.0,"baseline_avg":243459.9,"bar_rvol":1.373602,"raw_accel":-0.516655,"smooth_accel":0.908108,"accel_momentum":-0.375197,"rvol_3bar":[1.661732,3.242391,1.373602],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":240,"trade_rate":8.0,"buy_vol":53783.0,"sell_vol":129555.0,"unclassified_vol":0.0,"imbalance":-0.413291,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":1.059333},"context":{"vwap":7.241902,"price_vs_vwap_pct":1.76884,"ema9":7.381747,"ema20":7.360712,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.199198,"atr":0.033356,"spread_atr":0.299799,"own_change_pct":0.014897,"rel_strength_pct":{"SPY":0.011598,"IWM":-0.006154}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.567698},"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":"9aaac0a07399","ts":"2026-09-15T16:47:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":15.2,"room_to_5d_high_atr":2.04},"price":12.68,"vwap":12.5994,"ext_from_open_pct":1.44,"max_ext_allowed_pct":4.0,"volume_pace":0.93,"trend":"flat","recent_slope_pct":0.1114,"volatility":"high"},"price":12.68,"volume":{"bars":197,"last_bar_volume":55024.0,"baseline_avg":15745.5,"bar_rvol":3.494586,"raw_accel":1.697916,"smooth_accel":1.322858,"accel_momentum":1.33415,"rvol_3bar":[0.96576,1.344807,3.494586],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":155,"trade_rate":5.166667,"buy_vol":46041.0,"sell_vol":4509.0,"unclassified_vol":0.0,"imbalance":0.821602,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":1.447139},"context":{"vwap":12.599449,"price_vs_vwap_pct":0.639324,"ema9":12.583921,"ema20":12.529049,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.611367,"dist_to_hod_atr":4.806662,"atr":0.070735,"spread_atr":0.141372,"own_change_pct":-0.072987,"rel_strength_pct":{"SPY":-0.076287,"IWM":-0.094038}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.87116},"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":"59ccddf22c8e","ts":"2026-09-15T16:47:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8194,"target":9.97,"target_label":"ceiling","reward_risk":1.35,"pos_in_5d_range_pct":492.9,"room_to_5d_high_atr":-5.66},"price":9.8836,"vwap":9.6455,"ext_from_open_pct":4.59,"max_ext_allowed_pct":5.0,"volume_pace":3.921,"trend":"flat","recent_slope_pct":-0.05,"volatility":"low"},"price":9.8836,"volume":{"bars":197,"last_bar_volume":8663.0,"baseline_avg":5834.85,"bar_rvol":1.4847,"raw_accel":4.938799,"smooth_accel":12.068539,"accel_momentum":7.826929,"rvol_3bar":[2.074878,0.085131,1.4847],"trend_3bar":"MIXED","projected_rvol":0.008226},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":200.0,"sell_vol":51.0,"unclassified_vol":0.0,"imbalance":0.593625,"bid":9.87,"ask":9.9,"spread_pct":0.30349,"quote_size_imbalance":null,"quote_age_s":4.257319},"context":{"vwap":9.645464,"price_vs_vwap_pct":2.468889,"ema9":9.894632,"ema20":9.896328,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.101961,"dist_to_hod_atr":7.545755,"atr":0.041931,"spread_atr":0.715464,"own_change_pct":-0.228999,"rel_strength_pct":{"SPY":-0.232299,"IWM":-0.25005}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.881356},"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":"0701afec58da","ts":"2026-09-15T16:47:15+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says WATCH; stop 11.89, target 12.18 (ceiling), R:R 0.38; selling not fading: red-bar volume 1.58x the advance (max 0.7); no reclaim yet (needs a close > 12.15); R:R 0.38 < 2.0 at 12.","plan":{"state":"WATCH","setup":"","stop":11.8884,"target":12.18,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":2.11},"price":12.1,"vwap":12.0941,"ext_from_open_pct":-3.12,"max_ext_allowed_pct":4.0,"volume_pace":0.637,"trend":"flat","recent_slope_pct":-0.0454,"volatility":"high"},"price":12.1,"volume":{"bars":197,"last_bar_volume":521.0,"baseline_avg":1674.65,"bar_rvol":0.31111,"raw_accel":-0.741054,"smooth_accel":-0.177539,"accel_momentum":-0.556054,"rvol_3bar":[0.287347,1.266564,0.31111],"trend_3bar":"MIXED","projected_rvol":0.238856},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":7.0,"sell_vol":350.0,"unclassified_vol":0.0,"imbalance":-0.960784,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":2.709862},"context":{"vwap":12.094067,"price_vs_vwap_pct":0.049061,"ema9":12.124315,"ema20":12.11351,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.196358,"dist_to_hod_atr":10.660364,"atr":0.049717,"spread_atr":0.804556,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.250213,"IWM":-0.267964}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.298909},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0cc0ade2a292","ts":"2026-09-15T16:47:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8258,"target":9.97,"target_label":"ceiling","reward_risk":1.25,"pos_in_5d_range_pct":494.6,"room_to_5d_high_atr":-5.69},"price":9.89,"vwap":9.6455,"ext_from_open_pct":4.66,"max_ext_allowed_pct":4.0,"volume_pace":3.917,"trend":"flat","recent_slope_pct":-0.037,"volatility":"low"},"price":9.89,"volume":{"bars":197,"last_bar_volume":8663.0,"baseline_avg":5834.85,"bar_rvol":1.4847,"raw_accel":4.938799,"smooth_accel":12.068539,"accel_momentum":7.826929,"rvol_3bar":[2.074878,0.085131,1.4847],"trend_3bar":"MIXED","projected_rvol":0.009049},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":110.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.803279,"bid":9.87,"ask":9.9,"spread_pct":0.30349,"quote_size_imbalance":null,"quote_age_s":8.509359},"context":{"vwap":9.645464,"price_vs_vwap_pct":2.535241,"ema9":9.894632,"ema20":9.896328,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.039216,"dist_to_hod_atr":7.393123,"atr":0.041931,"spread_atr":0.715464,"own_change_pct":-0.228999,"rel_strength_pct":{"SPY":-0.232299,"IWM":-0.25005}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.192628},"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":"7a5cae36c619","ts":"2026-09-15T16:47:30+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says PASS; stop 11.90, target 12.59 (prev_day_high), R:R 2.24; target 0.47 away > ~0.18 reachable in 188 min","plan":{"state":"PASS","setup":"","stop":11.9042,"target":12.59,"target_label":"prev_day_high","reward_risk":2.24,"pos_in_5d_range_pct":10.4,"room_to_5d_high_atr":2.1},"price":12.1158,"vwap":12.0941,"ext_from_open_pct":-3.0,"max_ext_allowed_pct":4.0,"volume_pace":0.637,"trend":"flat","recent_slope_pct":-0.0193,"volatility":"high"},"price":12.1158,"volume":{"bars":197,"last_bar_volume":521.0,"baseline_avg":1674.65,"bar_rvol":0.31111,"raw_accel":-0.741054,"smooth_accel":-0.177539,"accel_momentum":-0.556054,"rvol_3bar":[0.287347,1.266564,0.31111],"trend_3bar":"MIXED","projected_rvol":0.222136},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":86.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.075269,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":2.758935},"context":{"vwap":12.094067,"price_vs_vwap_pct":0.179704,"ema9":12.124315,"ema20":12.11351,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.071259,"dist_to_hod_atr":10.342565,"atr":0.049717,"spread_atr":0.804556,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.250213,"IWM":-0.267964}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.023417},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e2089a697f53","ts":"2026-09-15T16:47:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.159,"target":8.5558,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":123.3,"room_to_5d_high_atr":-0.85},"price":8.35,"vwap":8.1596,"ext_from_open_pct":9.01,"max_ext_allowed_pct":4.0,"volume_pace":0.354,"trend":"flat","recent_slope_pct":-0.048,"volatility":"high"},"price":8.35,"volume":{"bars":196,"last_bar_volume":15.0,"baseline_avg":1235.0,"bar_rvol":0.012146,"raw_accel":-0.987745,"smooth_accel":0.430704,"accel_momentum":-1.160422,"rvol_3bar":[0.079313,1.023754,0.012146],"trend_3bar":"MIXED","projected_rvol":0.032794},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":27.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.3,"ask":8.35,"spread_pct":0.600601,"quote_size_imbalance":null,"quote_age_s":1.366426},"context":{"vwap":8.159557,"price_vs_vwap_pct":2.333984,"ema9":8.35384,"ema20":8.319164,"ema_stack":false,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-2.405386,"dist_to_hod_atr":4.540653,"atr":0.045324,"spread_atr":1.103171,"own_change_pct":-0.001195,"rel_strength_pct":{"SPY":-0.004494,"IWM":-0.022246}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.012146},"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":"f9ea8e3daab3","ts":"2026-09-15T16:47:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.55,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.18},"price":7.388,"vwap":7.2428,"ext_from_open_pct":3.33,"max_ext_allowed_pct":3.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0115,"volatility":"medium"},"price":7.388,"volume":{"bars":197,"last_bar_volume":334417.0,"baseline_avg":243459.9,"bar_rvol":1.373602,"raw_accel":-0.516655,"smooth_accel":0.908108,"accel_momentum":-0.375197,"rvol_3bar":[1.661732,3.242391,1.373602],"trend_3bar":"MIXED","projected_rvol":1.226124},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":31195.0,"sell_vol":87000.0,"unclassified_vol":0.0,"imbalance":-0.472143,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":1.243654},"context":{"vwap":7.241902,"price_vs_vwap_pct":2.017393,"ema9":7.381747,"ema20":7.360712,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.296896,"dist_to_hod_atr":0.659559,"atr":0.033356,"spread_atr":0.299799,"own_change_pct":0.014897,"rel_strength_pct":{"SPY":0.011598,"IWM":-0.006154}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.648537},"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":"a9bc47706b1b","ts":"2026-09-15T16:47:50+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"held 70.0s, plan says WATCH; stop 11.89, target 12.18 (ceiling), R:R 0.38; selling not fading: red-bar volume 1.58x the advance (max 0.7); no reclaim yet (needs a close > 12.15); R:R 0.38 < 2.0 at 12.","plan":{"state":"WATCH","setup":"","stop":11.8884,"target":12.18,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":2.11},"price":12.1,"vwap":12.0941,"ext_from_open_pct":-3.12,"max_ext_allowed_pct":4.0,"volume_pace":0.636,"trend":"flat","recent_slope_pct":-0.0454,"volatility":"high"},"price":12.1,"volume":{"bars":197,"last_bar_volume":521.0,"baseline_avg":1674.65,"bar_rvol":0.31111,"raw_accel":-0.741054,"smooth_accel":-0.177539,"accel_momentum":-0.556054,"rvol_3bar":[0.287347,1.266564,0.31111],"trend_3bar":"MIXED","projected_rvol":0.322455},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":156.0,"sell_vol":181.0,"unclassified_vol":0.0,"imbalance":-0.074184,"bid":12.08,"ask":12.12,"spread_pct":0.330579,"quote_size_imbalance":null,"quote_age_s":22.758935},"context":{"vwap":12.094067,"price_vs_vwap_pct":0.049061,"ema9":12.124315,"ema20":12.11351,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.196358,"dist_to_hod_atr":10.660364,"atr":0.049717,"spread_atr":0.804556,"own_change_pct":-0.246914,"rel_strength_pct":{"SPY":-0.250213,"IWM":-0.267964}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.023079},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"555c87e38928","ts":"2026-09-15T16:47:50+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2428,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0602,"volatility":"medium"},"price":7.37,"volume":{"bars":197,"last_bar_volume":334417.0,"baseline_avg":243459.9,"bar_rvol":1.373602,"raw_accel":-0.516655,"smooth_accel":0.908108,"accel_momentum":-0.375197,"rvol_3bar":[1.661732,3.242391,1.373602],"trend_3bar":"MIXED","projected_rvol":1.149814},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":22929.0,"sell_vol":80853.0,"unclassified_vol":0.0,"imbalance":-0.558131,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.274511},"context":{"vwap":7.241902,"price_vs_vwap_pct":1.76884,"ema9":7.381747,"ema20":7.360712,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.199198,"atr":0.033356,"spread_atr":0.299799,"own_change_pct":0.014897,"rel_strength_pct":{"SPY":0.011598,"IWM":-0.006154}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.76665},"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":"2f1c49e2143b","ts":"2026-09-15T16:48:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2432,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.787,"trend":"flat","recent_slope_pct":-0.0837,"volatility":"medium"},"price":7.37,"volume":{"bars":198,"last_bar_volume":315685.0,"baseline_avg":244502.85,"bar_rvol":1.29113,"raw_accel":-0.056014,"smooth_accel":0.642151,"accel_momentum":-0.265958,"rvol_3bar":[3.242391,1.373602,1.29113],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":187,"trade_rate":6.233333,"buy_vol":59872.0,"sell_vol":62377.0,"unclassified_vol":0.0,"imbalance":-0.020491,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":1.499982},"context":{"vwap":7.243157,"price_vs_vwap_pct":1.751211,"ema9":7.380398,"ema20":7.362073,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.202689,"atr":0.033259,"spread_atr":0.300672,"own_change_pct":-0.204327,"rel_strength_pct":{"SPY":-0.199048,"IWM":-0.244679}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.026457},"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":"339b4ff71b99","ts":"2026-09-15T16:48:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.83,"target":9.97,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.6465,"ext_from_open_pct":4.76,"max_ext_allowed_pct":5.0,"volume_pace":3.919,"trend":"flat","recent_slope_pct":0.1265,"volatility":"low"},"price":9.9,"volume":{"bars":198,"last_bar_volume":7497.0,"baseline_avg":5600.0,"bar_rvol":1.33875,"raw_accel":-0.134595,"smooth_accel":0.093428,"accel_momentum":-11.975111,"rvol_3bar":[0.085131,1.4847,1.33875],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":163.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.88,"ask":9.91,"spread_pct":0.303183,"quote_size_imbalance":null,"quote_age_s":18.95071},"context":{"vwap":9.646495,"price_vs_vwap_pct":2.627944,"ema9":9.894706,"ema20":9.896202,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":7.432298,"atr":0.040364,"spread_atr":0.74323,"own_change_pct":-0.352467,"rel_strength_pct":{"SPY":-0.347187,"IWM":-0.392819}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.33875},"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":"e75e2d3a9600","ts":"2026-09-15T16:48:10+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says WATCH; stop 12.29, target 12.72 (premarket_high), R:R 0.21; R:R 0.21 < 2.0 at 12.65; breakout: 1-min close > 12.69 on >= 16155 sh","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":13.6,"room_to_5d_high_atr":2.08},"price":12.6466,"vwap":12.5997,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":0.0369,"volatility":"high"},"price":12.6466,"volume":{"bars":198,"last_bar_volume":23653.0,"baseline_avg":18180.75,"bar_rvol":1.300991,"raw_accel":-0.570133,"smooth_accel":2.133108,"accel_momentum":0.810249,"rvol_3bar":[1.344807,3.494586,1.300991],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":3198.0,"sell_vol":7761.0,"unclassified_vol":0.0,"imbalance":-0.41637,"bid":12.63,"ask":12.64,"spread_pct":0.079145,"quote_size_imbalance":null,"quote_age_s":0.9584},"context":{"vwap":12.599676,"price_vs_vwap_pct":0.372425,"ema9":12.594137,"ema20":12.53914,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.867896,"dist_to_hod_atr":5.208033,"atr":0.071697,"spread_atr":0.139476,"own_change_pct":0.604343,"rel_strength_pct":{"SPY":0.609623,"IWM":0.563991}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.541694},"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":"48be64bd265f","ts":"2026-09-15T16:48:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.56,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.18},"price":7.3874,"vwap":7.2432,"ext_from_open_pct":3.32,"max_ext_allowed_pct":4.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0366,"volatility":"medium"},"price":7.3874,"volume":{"bars":198,"last_bar_volume":315685.0,"baseline_avg":244502.85,"bar_rvol":1.29113,"raw_accel":-0.056014,"smooth_accel":0.642151,"accel_momentum":-0.265958,"rvol_3bar":[3.242391,1.373602,1.29113],"trend_3bar":"DECELERATING","projected_rvol":0.240913},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":54100.0,"sell_vol":52427.0,"unclassified_vol":0.0,"imbalance":0.015705,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":1.536797},"context":{"vwap":7.243157,"price_vs_vwap_pct":1.991438,"ema9":7.380398,"ema20":7.362073,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.304993,"dist_to_hod_atr":0.679519,"atr":0.033259,"spread_atr":0.300672,"own_change_pct":-0.204327,"rel_strength_pct":{"SPY":-0.199048,"IWM":-0.244679}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.020277},"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":"92e65af24380","ts":"2026-09-15T16:48:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8,"target":9.97,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":491.9,"room_to_5d_high_atr":-5.65},"price":9.88,"vwap":9.6469,"ext_from_open_pct":4.55,"max_ext_allowed_pct":4.0,"volume_pace":3.922,"trend":"flat","recent_slope_pct":0.0861,"volatility":"low"},"price":9.88,"volume":{"bars":198,"last_bar_volume":7497.0,"baseline_avg":5600.0,"bar_rvol":1.33875,"raw_accel":-0.134595,"smooth_accel":0.093428,"accel_momentum":-11.975111,"rvol_3bar":[0.085131,1.4847,1.33875],"trend_3bar":"MIXED","projected_rvol":1.643571},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":341.0,"sell_vol":2733.0,"unclassified_vol":0.0,"imbalance":-0.778139,"bid":9.86,"ask":9.9,"spread_pct":0.404858,"quote_size_imbalance":null,"quote_age_s":2.86661},"context":{"vwap":9.646495,"price_vs_vwap_pct":2.420615,"ema9":9.894706,"ema20":9.896202,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.137255,"dist_to_hod_atr":7.927784,"atr":0.040364,"spread_atr":0.990973,"own_change_pct":-0.352467,"rel_strength_pct":{"SPY":-0.347187,"IWM":-0.392819}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.041734},"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":"2d87e8643d1a","ts":"2026-09-15T16:48:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.64,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.3801,"vwap":7.2433,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0563,"volatility":"medium"},"price":7.3801,"volume":{"bars":198,"last_bar_volume":315685.0,"baseline_avg":244502.85,"bar_rvol":1.29113,"raw_accel":-0.056014,"smooth_accel":0.642151,"accel_momentum":-0.265958,"rvol_3bar":[3.242391,1.373602,1.29113],"trend_3bar":"DECELERATING","projected_rvol":0.408155},"flow":{"window_s":30,"trades":156,"trade_rate":5.2,"buy_vol":54411.0,"sell_vol":61261.0,"unclassified_vol":0.0,"imbalance":-0.059219,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.646054},"context":{"vwap":7.243157,"price_vs_vwap_pct":1.890653,"ema9":7.380398,"ema20":7.362073,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.403509,"dist_to_hod_atr":0.89901,"atr":0.033259,"spread_atr":0.300672,"own_change_pct":-0.204327,"rel_strength_pct":{"SPY":-0.199048,"IWM":-0.244679}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.07646},"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":"2f80dc5dec77","ts":"2026-09-15T16:48:20+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 75.0s, plan says PASS; stop 12.29, target 12.72 (premarket_high), R:R 0.29; R:R 0.29 < 2.0 at 12.62; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":12.6,"room_to_5d_high_atr":2.11},"price":12.625,"vwap":12.5997,"ext_from_open_pct":1.0,"max_ext_allowed_pct":3.0,"volume_pace":0.932,"trend":"flat","recent_slope_pct":0.0027,"volatility":"high"},"price":12.625,"volume":{"bars":198,"last_bar_volume":23653.0,"baseline_avg":18180.75,"bar_rvol":1.300991,"raw_accel":-0.570133,"smooth_accel":2.133108,"accel_momentum":0.810249,"rvol_3bar":[1.344807,3.494586,1.300991],"trend_3bar":"MIXED","projected_rvol":1.287241},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":2873.0,"sell_vol":9202.0,"unclassified_vol":0.0,"imbalance":-0.524141,"bid":12.62,"ask":12.63,"spread_pct":0.079208,"quote_size_imbalance":null,"quote_age_s":1.213113},"context":{"vwap":12.599676,"price_vs_vwap_pct":0.200992,"ema9":12.594137,"ema20":12.53914,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.033794,"dist_to_hod_atr":5.509302,"atr":0.071697,"spread_atr":0.139476,"own_change_pct":0.604343,"rel_strength_pct":{"SPY":0.609623,"IWM":0.563991}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.681903},"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":"f2f539191749","ts":"2026-09-15T16:48:30+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2347,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":4.0,"volume_pace":0.904,"trend":"flat","recent_slope_pct":0.0942,"volatility":"medium"},"price":5.245,"volume":{"bars":198,"last_bar_volume":1449.0,"baseline_avg":3867.2,"bar_rvol":0.37469,"raw_accel":0.498759,"smooth_accel":-0.77231,"accel_momentum":0.015322,"rvol_3bar":[1.536435,0.061719,0.37469],"trend_3bar":"MIXED","projected_rvol":1.603227},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":2326.0,"sell_vol":774.0,"unclassified_vol":0.0,"imbalance":0.500645,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":1.771277},"context":{"vwap":5.234714,"price_vs_vwap_pct":0.1965,"ema9":5.23302,"ema20":5.234731,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":15.86431,"atr":0.010086,"spread_atr":0.991519,"own_change_pct":-0.20414,"rel_strength_pct":{"SPY":-0.19886,"IWM":-0.244492}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.187587},"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":"7114e932a9f1","ts":"2026-09-15T16:48:30+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.0s, plan says WATCH; stop 12.29, target 12.72 (premarket_high), R:R 0.21; R:R 0.21 < 2.0 at 12.65; breakout: 1-min close > 12.69 on >= 16155 sh","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":13.6,"room_to_5d_high_atr":2.08},"price":12.6467,"vwap":12.5998,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.931,"trend":"flat","recent_slope_pct":0.0371,"volatility":"high"},"price":12.6467,"volume":{"bars":198,"last_bar_volume":23653.0,"baseline_avg":18180.75,"bar_rvol":1.300991,"raw_accel":-0.570133,"smooth_accel":2.133108,"accel_momentum":0.810249,"rvol_3bar":[1.344807,3.494586,1.300991],"trend_3bar":"MIXED","projected_rvol":0.924494},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":1330.0,"sell_vol":7074.0,"unclassified_vol":0.0,"imbalance":-0.683484,"bid":12.61,"ask":12.62,"spread_pct":0.079271,"quote_size_imbalance":null,"quote_age_s":0.398174},"context":{"vwap":12.599676,"price_vs_vwap_pct":0.373219,"ema9":12.594137,"ema20":12.53914,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.867127,"dist_to_hod_atr":5.206639,"atr":0.071697,"spread_atr":0.139476,"own_change_pct":0.604343,"rel_strength_pct":{"SPY":0.609623,"IWM":0.563991}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.889207},"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":"8489e2b5c482","ts":"2026-09-15T16:48:35+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1821,"target":5.43,"target_label":"prev_day_high","reward_risk":4.08,"pos_in_5d_range_pct":-2.3,"room_to_5d_high_atr":2.04},"price":5.2309,"vwap":5.2347,"ext_from_open_pct":-1.86,"max_ext_allowed_pct":4.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0404,"volatility":"medium"},"price":5.2309,"volume":{"bars":198,"last_bar_volume":1449.0,"baseline_avg":3867.2,"bar_rvol":0.37469,"raw_accel":0.498759,"smooth_accel":-0.77231,"accel_momentum":0.015322,"rvol_3bar":[1.536435,0.061719,0.37469],"trend_3bar":"MIXED","projected_rvol":1.379514},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":2326.0,"sell_vol":786.0,"unclassified_vol":0.0,"imbalance":0.494859,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":2.189919},"context":{"vwap":5.234714,"price_vs_vwap_pct":-0.072855,"ema9":5.23302,"ema20":5.234731,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.221092,"dist_to_hod_atr":17.262352,"atr":0.010086,"spread_atr":0.991519,"own_change_pct":-0.20414,"rel_strength_pct":{"SPY":-0.19886,"IWM":-0.244492}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.185418},"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":"98d85c791aa0","ts":"2026-09-15T16:48:40+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2434,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.1108,"volatility":"medium"},"price":7.36,"volume":{"bars":198,"last_bar_volume":315685.0,"baseline_avg":244502.85,"bar_rvol":1.29113,"raw_accel":-0.056014,"smooth_accel":0.642151,"accel_momentum":-0.265958,"rvol_3bar":[3.242391,1.373602,1.29113],"trend_3bar":"DECELERATING","projected_rvol":0.367198},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":12451.0,"sell_vol":35348.0,"unclassified_vol":0.0,"imbalance":-0.479027,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":1.093072},"context":{"vwap":7.243157,"price_vs_vwap_pct":1.61315,"ema9":7.380398,"ema20":7.362073,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.674764,"dist_to_hod_atr":1.503362,"atr":0.033259,"spread_atr":0.300672,"own_change_pct":-0.204327,"rel_strength_pct":{"SPY":-0.199048,"IWM":-0.244679}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.618486},"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":"c7ca7ecdcc96","ts":"2026-09-15T16:48:40+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says PASS; stop 12.29, target 12.72 (premarket_high), R:R 0.29; R:R 0.29 < 2.0 at 12.62; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":12.6,"room_to_5d_high_atr":2.11},"price":12.625,"vwap":12.5998,"ext_from_open_pct":1.0,"max_ext_allowed_pct":4.0,"volume_pace":0.931,"trend":"flat","recent_slope_pct":0.0027,"volatility":"high"},"price":12.625,"volume":{"bars":198,"last_bar_volume":23653.0,"baseline_avg":18180.75,"bar_rvol":1.300991,"raw_accel":-0.570133,"smooth_accel":2.133108,"accel_momentum":0.810249,"rvol_3bar":[1.344807,3.494586,1.300991],"trend_3bar":"MIXED","projected_rvol":0.974877},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":3685.0,"sell_vol":2513.0,"unclassified_vol":0.0,"imbalance":0.189093,"bid":12.62,"ask":12.63,"spread_pct":0.079208,"quote_size_imbalance":null,"quote_age_s":0.704289},"context":{"vwap":12.599676,"price_vs_vwap_pct":0.200992,"ema9":12.594137,"ema20":12.53914,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-3.033794,"dist_to_hod_atr":5.509302,"atr":0.071697,"spread_atr":0.139476,"own_change_pct":0.604343,"rel_strength_pct":{"SPY":0.609623,"IWM":0.563991}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.246009},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7182ffdf56d2","ts":"2026-09-15T16:48:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2434,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":-0.0837,"volatility":"medium"},"price":7.37,"volume":{"bars":198,"last_bar_volume":315685.0,"baseline_avg":244502.85,"bar_rvol":1.29113,"raw_accel":-0.056014,"smooth_accel":0.642151,"accel_momentum":-0.265958,"rvol_3bar":[3.242391,1.373602,1.29113],"trend_3bar":"DECELERATING","projected_rvol":0.341509},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":14625.0,"sell_vol":33274.0,"unclassified_vol":0.0,"imbalance":-0.38934,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.511364},"context":{"vwap":7.243157,"price_vs_vwap_pct":1.751211,"ema9":7.380398,"ema20":7.362073,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.202689,"atr":0.033259,"spread_atr":0.300672,"own_change_pct":-0.204327,"rel_strength_pct":{"SPY":-0.199048,"IWM":-0.244679}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.502689},"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":"02d9b9e326e0","ts":"2026-09-15T16:48:45+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 100.0s, plan says WATCH; stop 12.29, target 12.72 (premarket_high), R:R 0.23; R:R 0.23 < 2.0 at 12.64; breakout: 1-min close > 12.69 on >= 16155 sh","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":2.09},"price":12.64,"vwap":12.5998,"ext_from_open_pct":1.12,"max_ext_allowed_pct":4.0,"volume_pace":0.931,"trend":"flat","recent_slope_pct":0.0265,"volatility":"high"},"price":12.64,"volume":{"bars":198,"last_bar_volume":23653.0,"baseline_avg":18180.75,"bar_rvol":1.300991,"raw_accel":-0.570133,"smooth_accel":2.133108,"accel_momentum":0.810249,"rvol_3bar":[1.344807,3.494586,1.300991],"trend_3bar":"MIXED","projected_rvol":0.990572},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":5230.0,"sell_vol":2158.0,"unclassified_vol":0.0,"imbalance":0.415809,"bid":12.63,"ask":12.64,"spread_pct":0.079145,"quote_size_imbalance":null,"quote_age_s":0.035764},"context":{"vwap":12.599676,"price_vs_vwap_pct":0.320043,"ema9":12.594137,"ema20":12.53914,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.918587,"dist_to_hod_atr":5.300088,"atr":0.071697,"spread_atr":0.139476,"own_change_pct":0.604343,"rel_strength_pct":{"SPY":0.609623,"IWM":0.563991}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.540964},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d6cde41b472f","ts":"2026-09-15T16:48:50+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2347,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0942,"volatility":"medium"},"price":5.245,"volume":{"bars":198,"last_bar_volume":1449.0,"baseline_avg":3867.2,"bar_rvol":0.37469,"raw_accel":0.498759,"smooth_accel":-0.77231,"accel_momentum":0.015322,"rvol_3bar":[1.536435,0.061719,0.37469],"trend_3bar":"MIXED","projected_rvol":1.159909},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":2360.0,"sell_vol":667.0,"unclassified_vol":0.0,"imbalance":0.5593,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":2.430371},"context":{"vwap":5.234714,"price_vs_vwap_pct":0.1965,"ema9":5.23302,"ema20":5.234731,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":15.86431,"atr":0.010086,"spread_atr":0.991519,"own_change_pct":-0.20414,"rel_strength_pct":{"SPY":-0.19886,"IWM":-0.244492}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.209564},"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":"5e083fad0094","ts":"2026-09-15T16:49:05+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8784,"target":12.18,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0941,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.633,"trend":"flat","recent_slope_pct":-0.0249,"volatility":"high"},"price":12.09,"volume":{"bars":199,"last_bar_volume":147.0,"baseline_avg":1703.35,"bar_rvol":0.086301,"raw_accel":-0.677632,"smooth_accel":-0.770706,"accel_momentum":-0.61339,"rvol_3bar":[0.31111,0.269647,0.086301],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":27.0,"sell_vol":161.0,"unclassified_vol":0.0,"imbalance":-0.712766,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":7.821245},"context":{"vwap":12.094101,"price_vs_vwap_pct":-0.033906,"ema9":12.118245,"ema20":12.112382,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":11.304972,"atr":0.047767,"spread_atr":0.628054,"own_change_pct":-0.124536,"rel_strength_pct":{"SPY":-0.087578,"IWM":-0.112258}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.061512},"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":"ab55916b2caa","ts":"2026-09-15T16:49:05+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1821,"target":5.43,"target_label":"prev_day_high","reward_risk":4.08,"pos_in_5d_range_pct":-2.3,"room_to_5d_high_atr":2.04},"price":5.2309,"vwap":5.2347,"ext_from_open_pct":-1.86,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0206,"volatility":"medium"},"price":5.2309,"volume":{"bars":199,"last_bar_volume":4368.0,"baseline_avg":3903.9,"bar_rvol":1.118881,"raw_accel":2.014493,"smooth_accel":-0.804819,"accel_momentum":-0.032509,"rvol_3bar":[0.061719,0.37469,1.118881],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":1133.0,"sell_vol":126.0,"unclassified_vol":0.0,"imbalance":0.799841,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":5.337854},"context":{"vwap":5.234745,"price_vs_vwap_pct":-0.073443,"ema9":5.234696,"ema20":5.235366,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.221092,"dist_to_hod_atr":16.739015,"atr":0.010401,"spread_atr":0.96146,"own_change_pct":0.408038,"rel_strength_pct":{"SPY":0.444996,"IWM":0.420316}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.894927},"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":"f2fd79bfd1b8","ts":"2026-09-15T16:49:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 2580.0s, plan says PASS; stop 8.37, target 8.80 (prev_day_high), R:R 1.26; target 0.24 away > ~0.16 reachable in 186 min","plan":{"state":"PASS","setup":"","stop":8.3688,"target":8.8,"target_label":"prev_day_high","reward_risk":1.26,"pos_in_5d_range_pct":10.4,"room_to_5d_high_atr":3.67},"price":8.56,"vwap":8.3684,"ext_from_open_pct":2.27,"max_ext_allowed_pct":3.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":0.0769,"volatility":"high"},"price":8.56,"volume":{"bars":199,"last_bar_volume":44582.0,"baseline_avg":52686.75,"bar_rvol":0.846171,"raw_accel":-0.580306,"smooth_accel":-0.082174,"accel_momentum":-0.075377,"rvol_3bar":[0.84405,2.094354,0.846171],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":15863.0,"sell_vol":18663.0,"unclassified_vol":0.0,"imbalance":-0.081098,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":0.000117},"context":{"vwap":8.368186,"price_vs_vwap_pct":2.292176,"ema9":8.541114,"ema20":8.514709,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-0.522952,"dist_to_hod_atr":1.249641,"atr":0.03601,"spread_atr":0.277698,"own_change_pct":0.214411,"rel_strength_pct":{"SPY":0.251369,"IWM":0.226689}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.068623},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bbcdfc41372f","ts":"2026-09-15T16:49:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.83,"target":9.97,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.647,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":3.907,"trend":"flat","recent_slope_pct":0.1011,"volatility":"low"},"price":9.91,"volume":{"bars":199,"last_bar_volume":3297.0,"baseline_avg":5793.35,"bar_rvol":0.569101,"raw_accel":-0.560224,"smooth_accel":0.311207,"accel_momentum":0.217779,"rvol_3bar":[1.4847,1.33875,0.569101],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":411.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":3.476884},"context":{"vwap":9.646943,"price_vs_vwap_pct":2.726841,"ema9":9.893765,"ema20":9.895611,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":7.453141,"atr":0.03891,"spread_atr":0.771015,"own_change_pct":-0.360676,"rel_strength_pct":{"SPY":-0.323718,"IWM":-0.348399}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.569101},"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":"881540df5fcd","ts":"2026-09-15T16:49:10+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2347,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0745,"volatility":"medium"},"price":5.245,"volume":{"bars":199,"last_bar_volume":4368.0,"baseline_avg":3903.9,"bar_rvol":1.118881,"raw_accel":2.014493,"smooth_accel":-0.804819,"accel_momentum":-0.032509,"rvol_3bar":[0.061719,0.37469,1.118881],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1406.0,"sell_vol":124.0,"unclassified_vol":0.0,"imbalance":0.837908,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":1.068822},"context":{"vwap":5.234745,"price_vs_vwap_pct":0.195911,"ema9":5.234696,"ema20":5.235366,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":15.383357,"atr":0.010401,"spread_atr":0.96146,"own_change_pct":0.408038,"rel_strength_pct":{"SPY":0.444996,"IWM":0.420316}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.93752},"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":"a01e12124508","ts":"2026-09-15T16:49:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.1171,"target_label":"clear air (typical 60-min move)","reward_risk":1.87,"pos_in_5d_range_pct":505.4,"room_to_5d_high_atr":-5.84},"price":9.93,"vwap":9.647,"ext_from_open_pct":5.08,"max_ext_allowed_pct":5.0,"volume_pace":3.906,"trend":"flat","recent_slope_pct":0.1415,"volatility":"low"},"price":9.93,"volume":{"bars":199,"last_bar_volume":3297.0,"baseline_avg":5793.35,"bar_rvol":0.569101,"raw_accel":-0.560224,"smooth_accel":0.311207,"accel_momentum":0.217779,"rvol_3bar":[1.4847,1.33875,0.569101],"trend_3bar":"DECELERATING","projected_rvol":0.331414},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":481.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":8.476884},"context":{"vwap":9.646943,"price_vs_vwap_pct":2.93416,"ema9":9.893765,"ema20":9.895611,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.647059,"dist_to_hod_atr":6.939131,"atr":0.03891,"spread_atr":0.771015,"own_change_pct":-0.360676,"rel_strength_pct":{"SPY":-0.323718,"IWM":-0.348399}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.569101},"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":"f5e9c3e70739","ts":"2026-09-15T16:49:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.59,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2439,"ext_from_open_pct":3.29,"max_ext_allowed_pct":4.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0474,"volatility":"medium"},"price":7.385,"volume":{"bars":199,"last_bar_volume":143750.0,"baseline_avg":249001.95,"bar_rvol":0.577305,"raw_accel":-0.544641,"smooth_accel":-0.379152,"accel_momentum":-1.021303,"rvol_3bar":[1.373602,1.29113,0.577305],"trend_3bar":"DECELERATING","projected_rvol":0.803464},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":82550.0,"sell_vol":48591.0,"unclassified_vol":0.0,"imbalance":0.25895,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.064759},"context":{"vwap":7.24371,"price_vs_vwap_pct":1.950522,"ema9":7.378318,"ema20":7.362828,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.337382,"dist_to_hod_atr":0.757962,"atr":0.032983,"spread_atr":0.303185,"own_change_pct":-0.261188,"rel_strength_pct":{"SPY":-0.224231,"IWM":-0.248911}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.149493},"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":"82de6b1f83fc","ts":"2026-09-15T16:49:20+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8934,"target":12.18,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":9.8,"room_to_5d_high_atr":2.11},"price":12.105,"vwap":12.0941,"ext_from_open_pct":-3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.632,"trend":"flat","recent_slope_pct":-0.0001,"volatility":"high"},"price":12.105,"volume":{"bars":199,"last_bar_volume":147.0,"baseline_avg":1703.35,"bar_rvol":0.086301,"raw_accel":-0.677632,"smooth_accel":-0.770706,"accel_momentum":-0.61339,"rvol_3bar":[0.31111,0.269647,0.086301],"trend_3bar":"DECELERATING","projected_rvol":0.195497},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":32.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":-0.532847,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":22.821245},"context":{"vwap":12.094101,"price_vs_vwap_pct":0.090122,"ema9":12.118245,"ema20":12.112382,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.15677,"dist_to_hod_atr":10.990945,"atr":0.047767,"spread_atr":0.628054,"own_change_pct":-0.124536,"rel_strength_pct":{"SPY":-0.087578,"IWM":-0.112258}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.045985},"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":"4ccb7f0bcf94","ts":"2026-09-15T16:49:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.83,"target":9.97,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.647,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":3.901,"trend":"flat","recent_slope_pct":0.1011,"volatility":"low"},"price":9.91,"volume":{"bars":199,"last_bar_volume":3297.0,"baseline_avg":5793.35,"bar_rvol":0.569101,"raw_accel":-0.560224,"smooth_accel":0.311207,"accel_momentum":0.217779,"rvol_3bar":[1.4847,1.33875,0.569101],"trend_3bar":"DECELERATING","projected_rvol":0.168469},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":483.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.979508,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":0.333398},"context":{"vwap":9.646943,"price_vs_vwap_pct":2.726841,"ema9":9.893765,"ema20":9.895611,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":7.453141,"atr":0.03891,"spread_atr":0.771015,"own_change_pct":-0.360676,"rel_strength_pct":{"SPY":-0.323718,"IWM":-0.348399}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.557439},"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":"9076a9eb9e15","ts":"2026-09-15T16:49:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"held 1335.0s, plan says WATCH; stop 10.57, target 10.94 (prev_day_high), R:R 1.05; R:R 1.05 < 2.0 at 10.75; breakout: 1-min close > 10.72 on >= 25329 sh","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":41.8,"room_to_5d_high_atr":1.27},"price":10.7484,"vwap":10.4877,"ext_from_open_pct":3.25,"max_ext_allowed_pct":4.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":0.0905,"volatility":"medium"},"price":10.7484,"volume":{"bars":199,"last_bar_volume":24865.0,"baseline_avg":21949.45,"bar_rvol":1.13283,"raw_accel":-0.095456,"smooth_accel":0.791518,"accel_momentum":-0.295325,"rvol_3bar":[1.460489,1.289504,1.13283],"trend_3bar":"DECELERATING","projected_rvol":1.140712},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":11861.0,"sell_vol":658.0,"unclassified_vol":0.0,"imbalance":0.89488,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.088795},"context":{"vwap":10.487075,"price_vs_vwap_pct":2.491878,"ema9":10.665409,"ema20":10.625208,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-1.300275,"dist_to_hod_atr":2.59432,"atr":0.054581,"spread_atr":0.183215,"own_change_pct":0.345274,"rel_strength_pct":{"SPY":0.382232,"IWM":0.357552}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.013747},"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":"aa527c01a560","ts":"2026-09-15T16:49:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.113,"target_label":"clear air (typical 60-min move)","reward_risk":1.95,"pos_in_5d_range_pct":504.3,"room_to_5d_high_atr":-5.83},"price":9.9259,"vwap":9.647,"ext_from_open_pct":5.04,"max_ext_allowed_pct":4.0,"volume_pace":3.899,"trend":"flat","recent_slope_pct":0.1332,"volatility":"low"},"price":9.9259,"volume":{"bars":199,"last_bar_volume":3297.0,"baseline_avg":5793.35,"bar_rvol":0.569101,"raw_accel":-0.560224,"smooth_accel":0.311207,"accel_momentum":0.217779,"rvol_3bar":[1.4847,1.33875,0.569101],"trend_3bar":"DECELERATING","projected_rvol":0.14529},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":486.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.979633,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":4.989765},"context":{"vwap":9.646943,"price_vs_vwap_pct":2.89166,"ema9":9.893765,"ema20":9.895611,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.687255,"dist_to_hod_atr":7.044503,"atr":0.03891,"spread_atr":0.771015,"own_change_pct":-0.360676,"rel_strength_pct":{"SPY":-0.323718,"IWM":-0.348399}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.55751},"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":"ed3a7d8b5571","ts":"2026-09-15T16:49:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.09,"pos_in_5d_range_pct":41.5,"room_to_5d_high_atr":1.27},"price":10.745,"vwap":10.4878,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":0.0841,"volatility":"medium"},"price":10.745,"volume":{"bars":199,"last_bar_volume":24865.0,"baseline_avg":21949.45,"bar_rvol":1.13283,"raw_accel":-0.095456,"smooth_accel":0.791518,"accel_momentum":-0.295325,"rvol_3bar":[1.460489,1.289504,1.13283],"trend_3bar":"DECELERATING","projected_rvol":1.037032},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":3544.0,"sell_vol":1105.0,"unclassified_vol":0.0,"imbalance":0.524629,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.350859},"context":{"vwap":10.487075,"price_vs_vwap_pct":2.459458,"ema9":10.665409,"ema20":10.625208,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-1.331497,"dist_to_hod_atr":2.656613,"atr":0.054581,"spread_atr":0.183215,"own_change_pct":0.345274,"rel_strength_pct":{"SPY":0.382232,"IWM":0.357552}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.594316},"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":"5ab3d7bfa67e","ts":"2026-09-15T16:49:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.38,"pos_in_5d_range_pct":39.8,"room_to_5d_high_atr":1.31},"price":10.7231,"vwap":10.4879,"ext_from_open_pct":3.01,"max_ext_allowed_pct":4.0,"volume_pace":0.941,"trend":"flat","recent_slope_pct":0.0432,"volatility":"medium"},"price":10.7231,"volume":{"bars":199,"last_bar_volume":24865.0,"baseline_avg":21949.45,"bar_rvol":1.13283,"raw_accel":-0.095456,"smooth_accel":0.791518,"accel_momentum":-0.295325,"rvol_3bar":[1.460489,1.289504,1.13283],"trend_3bar":"DECELERATING","projected_rvol":1.178025},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":7480.0,"sell_vol":994.0,"unclassified_vol":0.0,"imbalance":0.7654,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.002564},"context":{"vwap":10.487075,"price_vs_vwap_pct":2.250629,"ema9":10.665409,"ema20":10.625208,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-1.532599,"dist_to_hod_atr":3.057853,"atr":0.054581,"spread_atr":0.183215,"own_change_pct":0.345274,"rel_strength_pct":{"SPY":0.382232,"IWM":0.357552}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.867068},"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":"3d28165453c1","ts":"2026-09-15T16:49:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":1.15},"price":10.815,"vwap":10.4904,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":0.2147,"volatility":"medium"},"price":10.815,"volume":{"bars":199,"last_bar_volume":24865.0,"baseline_avg":21949.45,"bar_rvol":1.13283,"raw_accel":-0.095456,"smooth_accel":0.791518,"accel_momentum":-0.295325,"rvol_3bar":[1.460489,1.289504,1.13283],"trend_3bar":"DECELERATING","projected_rvol":3.373934},"flow":{"window_s":30,"trades":257,"trade_rate":8.566667,"buy_vol":39331.0,"sell_vol":7442.0,"unclassified_vol":0.0,"imbalance":0.681782,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.20624},"context":{"vwap":10.487075,"price_vs_vwap_pct":3.126946,"ema9":10.665409,"ema20":10.625208,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-0.688705,"dist_to_hod_atr":1.37411,"atr":0.054581,"spread_atr":0.183215,"own_change_pct":0.345274,"rel_strength_pct":{"SPY":0.382232,"IWM":0.357552}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.772343},"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":"905cb7cb11e0","ts":"2026-09-15T16:49:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.47,"target_label":"prev_day_high","reward_risk":0.39,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.14},"price":7.405,"vwap":7.2447,"ext_from_open_pct":3.57,"max_ext_allowed_pct":3.0,"volume_pace":0.789,"trend":"flat","recent_slope_pct":0.0068,"volatility":"medium"},"price":7.405,"volume":{"bars":199,"last_bar_volume":143750.0,"baseline_avg":249001.95,"bar_rvol":0.577305,"raw_accel":-0.544641,"smooth_accel":-0.379152,"accel_momentum":-1.021303,"rvol_3bar":[1.373602,1.29113,0.577305],"trend_3bar":"DECELERATING","projected_rvol":1.246309},"flow":{"window_s":30,"trades":266,"trade_rate":8.866667,"buy_vol":129366.0,"sell_vol":53368.0,"unclassified_vol":0.0,"imbalance":0.415894,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":0.111935},"context":{"vwap":7.24371,"price_vs_vwap_pct":2.226624,"ema9":7.378318,"ema20":7.362828,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.067476,"dist_to_hod_atr":0.151592,"atr":0.032983,"spread_atr":0.303185,"own_change_pct":-0.261188,"rel_strength_pct":{"SPY":-0.224231,"IWM":-0.248911}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.240098},"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":"5c8698391219","ts":"2026-09-15T16:49:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.55,"pos_in_5d_range_pct":46.2,"room_to_5d_high_atr":1.17},"price":10.805,"vwap":10.491,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":0.1961,"volatility":"medium"},"price":10.805,"volume":{"bars":199,"last_bar_volume":24865.0,"baseline_avg":21949.45,"bar_rvol":1.13283,"raw_accel":-0.095456,"smooth_accel":0.791518,"accel_momentum":-0.295325,"rvol_3bar":[1.460489,1.289504,1.13283],"trend_3bar":"DECELERATING","projected_rvol":3.617749},"flow":{"window_s":30,"trades":271,"trade_rate":9.033333,"buy_vol":37516.0,"sell_vol":17777.0,"unclassified_vol":0.0,"imbalance":0.356989,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.020671},"context":{"vwap":10.487075,"price_vs_vwap_pct":3.03159,"ema9":10.665409,"ema20":10.625208,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-0.780533,"dist_to_hod_atr":1.557325,"atr":0.054581,"spread_atr":0.183215,"own_change_pct":0.345274,"rel_strength_pct":{"SPY":0.382232,"IWM":0.357552}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.404408},"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":"08874cb8f1c6","ts":"2026-09-15T16:49:55+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8802,"target":12.18,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":9.2,"room_to_5d_high_atr":2.12},"price":12.0918,"vwap":12.0941,"ext_from_open_pct":-3.19,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":-0.0219,"volatility":"high"},"price":12.0918,"volume":{"bars":199,"last_bar_volume":147.0,"baseline_avg":1703.35,"bar_rvol":0.086301,"raw_accel":-0.677632,"smooth_accel":-0.770706,"accel_momentum":-0.61339,"rvol_3bar":[0.31111,0.269647,0.086301],"trend_3bar":"DECELERATING","projected_rvol":0.083258},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":3.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":-0.625,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":7.987416},"context":{"vwap":12.094101,"price_vs_vwap_pct":-0.019022,"ema9":12.118245,"ema20":12.112382,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.261283,"dist_to_hod_atr":11.267289,"atr":0.047767,"spread_atr":0.628054,"own_change_pct":-0.124536,"rel_strength_pct":{"SPY":-0.087578,"IWM":-0.112258}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.053938},"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":"cf28738d0756","ts":"2026-09-15T16:50:00+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8934,"target":12.18,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":9.8,"room_to_5d_high_atr":2.11},"price":12.105,"vwap":12.0941,"ext_from_open_pct":-3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":-0.0001,"volatility":"high"},"price":12.105,"volume":{"bars":199,"last_bar_volume":147.0,"baseline_avg":1703.35,"bar_rvol":0.086301,"raw_accel":-0.677632,"smooth_accel":-0.770706,"accel_momentum":-0.61339,"rvol_3bar":[0.31111,0.269647,0.086301],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":83.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.729167,"bid":12.09,"ask":12.12,"spread_pct":0.247831,"quote_size_imbalance":null,"quote_age_s":0.911498},"context":{"vwap":12.094101,"price_vs_vwap_pct":0.090122,"ema9":12.118245,"ema20":12.112382,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.15677,"dist_to_hod_atr":10.990945,"atr":0.047767,"spread_atr":0.628054,"own_change_pct":-0.124536,"rel_strength_pct":{"SPY":-0.104737,"IWM":-0.119275}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.062927},"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":"29e480cf3b1a","ts":"2026-09-15T16:50:05+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1823,"target":5.43,"target_label":"prev_day_high","reward_risk":4.07,"pos_in_5d_range_pct":-2.3,"room_to_5d_high_atr":2.04},"price":5.2311,"vwap":5.2348,"ext_from_open_pct":-1.86,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0244,"volatility":"medium"},"price":5.2311,"volume":{"bars":200,"last_bar_volume":944.0,"baseline_avg":3977.15,"bar_rvol":0.237356,"raw_accel":-0.783883,"smooth_accel":-0.193487,"accel_momentum":0.611332,"rvol_3bar":[0.37469,1.118881,0.237356],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":4.0,"sell_vol":48.0,"unclassified_vol":0.0,"imbalance":-0.846154,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":14.267197},"context":{"vwap":5.234753,"price_vs_vwap_pct":-0.069788,"ema9":5.236757,"ema20":5.236283,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.217391,"dist_to_hod_atr":16.305557,"atr":0.010665,"spread_atr":0.93764,"own_change_pct":0.467379,"rel_strength_pct":{"SPY":0.487178,"IWM":0.472641}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.20084},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d21f8962eb28","ts":"2026-09-15T16:50:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 2640.0s, plan says WATCH; stop 8.36, target 8.59 (premarket_high), R:R 0.21; R:R 0.21 < 2.0 at 8.55; pullback: buy 8.49-8.52 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.3584,"target":8.59,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":10.0,"room_to_5d_high_atr":3.69},"price":8.5496,"vwap":8.3711,"ext_from_open_pct":2.15,"max_ext_allowed_pct":3.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":-0.0114,"volatility":"high"},"price":8.5496,"volume":{"bars":200,"last_bar_volume":177878.0,"baseline_avg":50493.45,"bar_rvol":3.522794,"raw_accel":2.989906,"smooth_accel":1.163768,"accel_momentum":1.245942,"rvol_3bar":[2.094354,0.846171,3.522794],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":67388.0,"sell_vol":34317.0,"unclassified_vol":0.0,"imbalance":0.325166,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":0.279203},"context":{"vwap":8.370649,"price_vs_vwap_pct":2.137839,"ema9":8.549891,"ema20":8.521403,"ema_stack":false,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-0.643812,"dist_to_hod_atr":1.504167,"atr":0.036831,"spread_atr":0.27151,"own_change_pct":0.585823,"rel_strength_pct":{"SPY":0.605622,"IWM":0.591085}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.145492},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"887b576a1e1b","ts":"2026-09-15T16:50:10+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 2645.0s, plan says PASS; stop 8.37, target 8.80 (prev_day_high), R:R 1.25; target 0.24 away > ~0.16 reachable in 185 min","plan":{"state":"PASS","setup":"","stop":8.369,"target":8.8,"target_label":"prev_day_high","reward_risk":1.25,"pos_in_5d_range_pct":10.4,"room_to_5d_high_atr":3.67},"price":8.5602,"vwap":8.3712,"ext_from_open_pct":2.27,"max_ext_allowed_pct":3.0,"volume_pace":0.777,"trend":"flat","recent_slope_pct":0.0133,"volatility":"high"},"price":8.5602,"volume":{"bars":200,"last_bar_volume":177878.0,"baseline_avg":50493.45,"bar_rvol":3.522794,"raw_accel":2.989906,"smooth_accel":1.163768,"accel_momentum":1.245942,"rvol_3bar":[2.094354,0.846171,3.522794],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":66847.0,"sell_vol":34415.0,"unclassified_vol":0.0,"imbalance":0.320278,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":1.363857},"context":{"vwap":8.370649,"price_vs_vwap_pct":2.264472,"ema9":8.549891,"ema20":8.521403,"ema_stack":true,"ema_warm":true,"hod":8.605,"dist_to_hod_pct":-0.520628,"dist_to_hod_atr":1.216366,"atr":0.036831,"spread_atr":0.27151,"own_change_pct":0.585823,"rel_strength_pct":{"SPY":0.605622,"IWM":0.591085}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.128274},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aa216d8a3d53","ts":"2026-09-15T16:50:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2453,"ext_from_open_pct":3.5,"max_ext_allowed_pct":4.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":0.0835,"volatility":"medium"},"price":7.4,"volume":{"bars":200,"last_bar_volume":332361.0,"baseline_avg":244794.95,"bar_rvol":1.357712,"raw_accel":1.312077,"smooth_accel":-0.425806,"accel_momentum":-0.046654,"rvol_3bar":[1.29113,0.577305,1.357712],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":106205.0,"sell_vol":80819.0,"unclassified_vol":0.0,"imbalance":0.135737,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":0.298204},"context":{"vwap":7.245189,"price_vs_vwap_pct":2.136749,"ema9":7.383995,"ema20":7.367006,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.134953,"dist_to_hod_atr":0.298647,"atr":0.033484,"spread_atr":0.298647,"own_change_pct":0.213776,"rel_strength_pct":{"SPY":0.233576,"IWM":0.219038}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.184291},"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":"e6ae84a5ce1f","ts":"2026-09-15T16:50:15+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2348,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0775,"volatility":"medium"},"price":5.245,"volume":{"bars":200,"last_bar_volume":944.0,"baseline_avg":3977.15,"bar_rvol":0.237356,"raw_accel":-0.783883,"smooth_accel":-0.193487,"accel_momentum":0.611332,"rvol_3bar":[0.37469,1.118881,0.237356],"trend_3bar":"MIXED","projected_rvol":0.43247},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":410.0,"sell_vol":45.0,"unclassified_vol":0.0,"imbalance":0.802198,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.455293},"context":{"vwap":5.234753,"price_vs_vwap_pct":0.195745,"ema9":5.236757,"ema20":5.236283,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":15.002238,"atr":0.010665,"spread_atr":0.93764,"own_change_pct":0.467379,"rel_strength_pct":{"SPY":0.487178,"IWM":0.472641}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.190406},"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":"64400ed4a138","ts":"2026-09-15T16:50:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.3056,"target":7.47,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":1.13},"price":7.41,"vwap":7.2456,"ext_from_open_pct":3.64,"max_ext_allowed_pct":3.0,"volume_pace":0.791,"trend":"flat","recent_slope_pct":0.1106,"volatility":"medium"},"price":7.41,"volume":{"bars":200,"last_bar_volume":332361.0,"baseline_avg":244794.95,"bar_rvol":1.357712,"raw_accel":1.312077,"smooth_accel":-0.425806,"accel_momentum":-0.046654,"rvol_3bar":[1.29113,0.577305,1.357712],"trend_3bar":"MIXED","projected_rvol":1.043747},"flow":{"window_s":30,"trades":119,"trade_rate":3.966667,"buy_vol":57568.0,"sell_vol":83438.0,"unclassified_vol":0.0,"imbalance":-0.183467,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":0.810288},"context":{"vwap":7.245189,"price_vs_vwap_pct":2.274772,"ema9":7.383995,"ema20":7.367006,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.033484,"spread_atr":0.298647,"own_change_pct":0.213776,"rel_strength_pct":{"SPY":0.233576,"IWM":0.219038}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.249096},"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":"2583a444f49f","ts":"2026-09-15T16:50:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.1061,"target_label":"clear air (typical 60-min move)","reward_risk":2.07,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6471,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":3.884,"trend":"flat","recent_slope_pct":0.106,"volatility":"low"},"price":9.92,"volume":{"bars":200,"last_bar_volume":843.0,"baseline_avg":5373.35,"bar_rvol":0.156885,"raw_accel":-0.744313,"smooth_accel":-0.499742,"accel_momentum":-0.810949,"rvol_3bar":[1.33875,0.569101,0.156885],"trend_3bar":"DECELERATING","projected_rvol":0.075037},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":70.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":-0.2,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":6.260326},"context":{"vwap":9.647075,"price_vs_vwap_pct":2.829091,"ema9":9.903012,"ema20":9.899839,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":6.989678,"atr":0.040059,"spread_atr":0.998525,"own_change_pct":0.862506,"rel_strength_pct":{"SPY":0.882305,"IWM":0.867768}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.031377},"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":"697f97e79eec","ts":"2026-09-15T16:50:35+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1823,"target":5.43,"target_label":"prev_day_high","reward_risk":4.07,"pos_in_5d_range_pct":-2.3,"room_to_5d_high_atr":2.04},"price":5.2311,"vwap":5.2348,"ext_from_open_pct":-1.86,"max_ext_allowed_pct":3.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0244,"volatility":"medium"},"price":5.2311,"volume":{"bars":200,"last_bar_volume":944.0,"baseline_avg":3977.15,"bar_rvol":0.237356,"raw_accel":-0.783883,"smooth_accel":-0.193487,"accel_momentum":0.611332,"rvol_3bar":[0.37469,1.118881,0.237356],"trend_3bar":"MIXED","projected_rvol":0.309913},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":617.0,"sell_vol":78.0,"unclassified_vol":0.0,"imbalance":0.77554,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":5.283793},"context":{"vwap":5.234753,"price_vs_vwap_pct":-0.069788,"ema9":5.236757,"ema20":5.236283,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.217391,"dist_to_hod_atr":16.305557,"atr":0.010665,"spread_atr":0.93764,"own_change_pct":0.467379,"rel_strength_pct":{"SPY":0.487178,"IWM":0.472641}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.184079},"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":"7895615a4b28","ts":"2026-09-15T16:50:40+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.3006,"target":7.47,"target_label":"prev_day_high","reward_risk":0.62,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.14},"price":7.405,"vwap":7.2457,"ext_from_open_pct":3.57,"max_ext_allowed_pct":4.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":0.097,"volatility":"medium"},"price":7.405,"volume":{"bars":200,"last_bar_volume":332361.0,"baseline_avg":244794.95,"bar_rvol":1.357712,"raw_accel":1.312077,"smooth_accel":-0.425806,"accel_momentum":-0.046654,"rvol_3bar":[1.29113,0.577305,1.357712],"trend_3bar":"MIXED","projected_rvol":0.686362},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":44197.0,"sell_vol":41101.0,"unclassified_vol":0.0,"imbalance":0.036296,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":0.472001},"context":{"vwap":7.245189,"price_vs_vwap_pct":2.20576,"ema9":7.383995,"ema20":7.367006,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.067476,"dist_to_hod_atr":0.149323,"atr":0.033484,"spread_atr":0.298647,"own_change_pct":0.213776,"rel_strength_pct":{"SPY":0.233576,"IWM":0.219038}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.04928},"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":"97b8858c2c85","ts":"2026-09-15T16:50:45+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2348,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0775,"volatility":"medium"},"price":5.245,"volume":{"bars":200,"last_bar_volume":944.0,"baseline_avg":3977.15,"bar_rvol":0.237356,"raw_accel":-0.783883,"smooth_accel":-0.193487,"accel_momentum":0.611332,"rvol_3bar":[0.37469,1.118881,0.237356],"trend_3bar":"MIXED","projected_rvol":0.274568},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":311.0,"sell_vol":78.0,"unclassified_vol":0.0,"imbalance":0.598972,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.769086},"context":{"vwap":5.234753,"price_vs_vwap_pct":0.195745,"ema9":5.236757,"ema20":5.236283,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":15.002238,"atr":0.010665,"spread_atr":0.93764,"own_change_pct":0.467379,"rel_strength_pct":{"SPY":0.487178,"IWM":0.472641}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.142169},"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":"ac7d50106c1e","ts":"2026-09-15T16:50:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.3056,"target":7.47,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":47.2,"room_to_5d_high_atr":1.13},"price":7.41,"vwap":7.2458,"ext_from_open_pct":3.64,"max_ext_allowed_pct":3.0,"volume_pace":0.79,"trend":"flat","recent_slope_pct":0.1106,"volatility":"medium"},"price":7.41,"volume":{"bars":200,"last_bar_volume":332361.0,"baseline_avg":244794.95,"bar_rvol":1.357712,"raw_accel":1.312077,"smooth_accel":-0.425806,"accel_momentum":-0.046654,"rvol_3bar":[1.29113,0.577305,1.357712],"trend_3bar":"MIXED","projected_rvol":0.691534},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":34393.0,"sell_vol":53821.0,"unclassified_vol":0.0,"imbalance":-0.220237,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":0.611079},"context":{"vwap":7.245189,"price_vs_vwap_pct":2.274772,"ema9":7.383995,"ema20":7.367006,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.033484,"spread_atr":0.298647,"own_change_pct":0.213776,"rel_strength_pct":{"SPY":0.233576,"IWM":0.219038}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.299019},"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":"c84bde341943","ts":"2026-09-15T16:50:50+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1824,"target":5.43,"target_label":"prev_day_high","reward_risk":4.07,"pos_in_5d_range_pct":-2.3,"room_to_5d_high_atr":2.04},"price":5.2312,"vwap":5.2348,"ext_from_open_pct":-1.85,"max_ext_allowed_pct":3.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0248,"volatility":"medium"},"price":5.2312,"volume":{"bars":200,"last_bar_volume":944.0,"baseline_avg":3977.15,"bar_rvol":0.237356,"raw_accel":-0.783883,"smooth_accel":-0.193487,"accel_momentum":0.611332,"rvol_3bar":[0.37469,1.118881,0.237356],"trend_3bar":"MIXED","projected_rvol":0.277284},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":301.0,"sell_vol":178.0,"unclassified_vol":0.0,"imbalance":0.256785,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":5.769086},"context":{"vwap":5.234753,"price_vs_vwap_pct":-0.067877,"ema9":5.236757,"ema20":5.236283,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.215541,"dist_to_hod_atr":16.296181,"atr":0.010665,"spread_atr":0.93764,"own_change_pct":0.467379,"rel_strength_pct":{"SPY":0.487178,"IWM":0.472641}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.060949},"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":"6dd40920085a","ts":"2026-09-15T16:51:00+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.41,"pos_in_5d_range_pct":39.7,"room_to_5d_high_atr":1.31},"price":10.7215,"vwap":10.4947,"ext_from_open_pct":2.99,"max_ext_allowed_pct":3.0,"volume_pace":0.957,"trend":"flat","recent_slope_pct":0.2012,"volatility":"medium"},"price":10.7215,"volume":{"bars":200,"last_bar_volume":92833.0,"baseline_avg":22433.2,"bar_rvol":4.138197,"raw_accel":2.733481,"smooth_accel":1.131154,"accel_momentum":0.339636,"rvol_3bar":[1.289504,1.13283,4.138197],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":4623.0,"sell_vol":7602.0,"unclassified_vol":0.0,"imbalance":-0.243681,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.499926},"context":{"vwap":10.492709,"price_vs_vwap_pct":2.180474,"ema9":10.696327,"ema20":10.64376,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-1.547291,"dist_to_hod_atr":2.718838,"atr":0.061975,"spread_atr":0.161355,"own_change_pct":1.263453,"rel_strength_pct":{"SPY":1.284572,"IWM":1.245877}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.0084},"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":"83dc1290f04e","ts":"2026-09-15T16:51:00+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2348,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":0.0775,"volatility":"medium"},"price":5.245,"volume":{"bars":200,"last_bar_volume":944.0,"baseline_avg":3977.15,"bar_rvol":0.237356,"raw_accel":-0.783883,"smooth_accel":-0.193487,"accel_momentum":0.611332,"rvol_3bar":[0.37469,1.118881,0.237356],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":101.0,"sell_vol":165.0,"unclassified_vol":0.0,"imbalance":-0.240602,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":5.233638},"context":{"vwap":5.234753,"price_vs_vwap_pct":0.195745,"ema9":5.236757,"ema20":5.236283,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":15.002238,"atr":0.010665,"spread_atr":0.93764,"own_change_pct":0.467379,"rel_strength_pct":{"SPY":0.488498,"IWM":0.449803}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.057108},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5d75e40c6860","ts":"2026-09-15T16:51:05+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.7104,"target":5.83,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":96.3,"room_to_5d_high_atr":0.05},"price":5.81,"vwap":5.7399,"ext_from_open_pct":1.93,"max_ext_allowed_pct":3.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":-0.0778,"volatility":"high"},"price":5.81,"volume":{"bars":201,"last_bar_volume":4936.0,"baseline_avg":2648.7,"bar_rvol":1.863556,"raw_accel":6.454223,"smooth_accel":1.039809,"accel_momentum":1.053413,"rvol_3bar":[0.867681,0.198729,1.863556],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":62.0,"sell_vol":98.0,"unclassified_vol":0.0,"imbalance":-0.225,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":3.046281},"context":{"vwap":5.739884,"price_vs_vwap_pct":1.221553,"ema9":5.824808,"ema20":5.826733,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.683761,"dist_to_hod_atr":3.781583,"atr":0.010578,"spread_atr":0.945396,"own_change_pct":-0.223061,"rel_strength_pct":{"SPY":-0.201942,"IWM":-0.240638}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.4193},"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":"91e8714102cf","ts":"2026-09-15T16:51:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.15},"price":10.8167,"vwap":10.4947,"ext_from_open_pct":3.91,"max_ext_allowed_pct":3.0,"volume_pace":0.957,"trend":"flat","recent_slope_pct":0.3213,"volatility":"medium"},"price":10.8167,"volume":{"bars":201,"last_bar_volume":35940.0,"baseline_avg":26379.75,"bar_rvol":1.362409,"raw_accel":-0.612853,"smooth_accel":0.800495,"accel_momentum":-0.330659,"rvol_3bar":[1.13283,4.138197,1.362409],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":3144.0,"sell_vol":8040.0,"unclassified_vol":0.0,"imbalance":-0.437768,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":1.273066},"context":{"vwap":10.494709,"price_vs_vwap_pct":3.068129,"ema9":10.701362,"ema20":10.651164,"ema_stack":true,"ema_warm":true,"hod":10.89,"dist_to_hod_pct":-0.673095,"dist_to_hod_atr":1.098627,"atr":0.06672,"spread_atr":0.149881,"own_change_pct":0.200935,"rel_strength_pct":{"SPY":0.222053,"IWM":0.183358}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.596419},"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":"8aca1de1fa4a","ts":"2026-09-15T16:51:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.098,"target_label":"clear air (typical 60-min move)","reward_risk":2.15,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.6471,"ext_from_open_pct":4.92,"max_ext_allowed_pct":4.0,"volume_pace":3.87,"trend":"flat","recent_slope_pct":0.0706,"volatility":"low"},"price":9.915,"volume":{"bars":201,"last_bar_volume":168.0,"baseline_avg":3947.9,"bar_rvol":0.042554,"raw_accel":-0.829783,"smooth_accel":-0.743128,"accel_momentum":-0.243386,"rvol_3bar":[0.569101,0.156885,0.042554],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":9.989702},"context":{"vwap":9.647101,"price_vs_vwap_pct":2.776989,"ema9":9.906409,"ema20":9.901759,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":7.310799,"atr":0.038983,"spread_atr":0.769558,"own_change_pct":0.608519,"rel_strength_pct":{"SPY":0.629638,"IWM":0.590943}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.042554},"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":"d5f67fd70191","ts":"2026-09-15T16:51:10+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.7246,"target":5.9089,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":98.9,"room_to_5d_high_atr":0.01},"price":5.8242,"vwap":5.7399,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":-0.029,"volatility":"high"},"price":5.8242,"volume":{"bars":201,"last_bar_volume":4936.0,"baseline_avg":2648.7,"bar_rvol":1.863556,"raw_accel":6.454223,"smooth_accel":1.039809,"accel_momentum":1.053413,"rvol_3bar":[0.867681,0.198729,1.863556],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":106.0,"sell_vol":98.0,"unclassified_vol":0.0,"imbalance":0.039216,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":0.761435},"context":{"vwap":5.739884,"price_vs_vwap_pct":1.468945,"ema9":5.824808,"ema20":5.826733,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.441026,"dist_to_hod_atr":2.439121,"atr":0.010578,"spread_atr":0.945396,"own_change_pct":-0.223061,"rel_strength_pct":{"SPY":-0.201942,"IWM":-0.240638}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.073081},"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":"89febddf4ff5","ts":"2026-09-15T16:51:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8211,"target":9.97,"target_label":"ceiling","reward_risk":1.32,"pos_in_5d_range_pct":493.3,"room_to_5d_high_atr":-5.67},"price":9.8853,"vwap":9.6471,"ext_from_open_pct":4.61,"max_ext_allowed_pct":4.0,"volume_pace":3.867,"trend":"flat","recent_slope_pct":0.0107,"volatility":"low"},"price":9.8853,"volume":{"bars":201,"last_bar_volume":168.0,"baseline_avg":3947.9,"bar_rvol":0.042554,"raw_accel":-0.829783,"smooth_accel":-0.743128,"accel_momentum":-0.243386,"rvol_3bar":[0.569101,0.156885,0.042554],"trend_3bar":"DECELERATING","projected_rvol":0.07751},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":19.989702},"context":{"vwap":9.647101,"price_vs_vwap_pct":2.469124,"ema9":9.906409,"ema20":9.901759,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.085294,"dist_to_hod_atr":8.072662,"atr":0.038983,"spread_atr":0.769558,"own_change_pct":0.608519,"rel_strength_pct":{"SPY":0.629638,"IWM":0.590943}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.042554},"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":"e62441f6dd1e","ts":"2026-09-15T16:51:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2969,"target":7.47,"target_label":"prev_day_high","reward_risk":0.66,"pos_in_5d_range_pct":46.2,"room_to_5d_high_atr":1.15},"price":7.4013,"vwap":7.2473,"ext_from_open_pct":3.51,"max_ext_allowed_pct":4.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.1118,"volatility":"medium"},"price":7.4013,"volume":{"bars":201,"last_bar_volume":311228.0,"baseline_avg":260319.25,"bar_rvol":1.195563,"raw_accel":-0.063584,"smooth_accel":-0.413301,"accel_momentum":0.012504,"rvol_3bar":[0.577305,1.357712,1.195563],"trend_3bar":"MIXED","projected_rvol":1.997843},"flow":{"window_s":30,"trades":361,"trade_rate":12.033333,"buy_vol":204263.0,"sell_vol":84569.0,"unclassified_vol":0.0,"imbalance":0.414407,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":0.925814},"context":{"vwap":7.246574,"price_vs_vwap_pct":2.135163,"ema9":7.387196,"ema20":7.370148,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.117409,"dist_to_hod_atr":0.2649,"atr":0.032843,"spread_atr":0.304482,"own_change_pct":0.067613,"rel_strength_pct":{"SPY":0.088732,"IWM":0.050037}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.49545},"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":"691f63d16f9d","ts":"2026-09-15T16:51:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.098,"target_label":"clear air (typical 60-min move)","reward_risk":2.15,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.6471,"ext_from_open_pct":4.92,"max_ext_allowed_pct":4.0,"volume_pace":3.865,"trend":"flat","recent_slope_pct":0.0706,"volatility":"low"},"price":9.915,"volume":{"bars":201,"last_bar_volume":168.0,"baseline_avg":3947.9,"bar_rvol":0.042554,"raw_accel":-0.829783,"smooth_accel":-0.743128,"accel_momentum":-0.243386,"rvol_3bar":[0.569101,0.156885,0.042554],"trend_3bar":"DECELERATING","projected_rvol":0.064439},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":4.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-0.924528,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":24.989702},"context":{"vwap":9.647101,"price_vs_vwap_pct":2.776989,"ema9":9.906409,"ema20":9.901759,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":7.310799,"atr":0.038983,"spread_atr":0.769558,"own_change_pct":0.608519,"rel_strength_pct":{"SPY":0.629638,"IWM":0.590943}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.039343},"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":"573ac4d64728","ts":"2026-09-15T16:51:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 920.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.74; R:R 0.74 < 2.0 at 7.84; breakout: 1-min close > 7.84 on >= 17488 sh","plan":{"state":"WATCH","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7392,"ext_from_open_pct":1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.57,"trend":"flat","recent_slope_pct":0.05,"volatility":"medium"},"price":7.845,"volume":{"bars":201,"last_bar_volume":2979.0,"baseline_avg":11791.2,"bar_rvol":0.252646,"raw_accel":-0.775526,"smooth_accel":-0.462119,"accel_momentum":-1.030423,"rvol_3bar":[0.694533,1.171263,0.252646],"trend_3bar":"MIXED","projected_rvol":10.909424},"flow":{"window_s":30,"trades":197,"trade_rate":6.566667,"buy_vol":48768.0,"sell_vol":4869.0,"unclassified_vol":0.0,"imbalance":0.818446,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":2.122871},"context":{"vwap":7.737295,"price_vs_vwap_pct":1.392026,"ema9":7.816857,"ema20":7.810063,"ema_stack":true,"ema_warm":true,"hod":7.83,"dist_to_hod_pct":0.191571,"dist_to_hod_atr":-0.808351,"atr":0.018556,"spread_atr":0.538901,"own_change_pct":0.210025,"rel_strength_pct":{"SPY":0.231144,"IWM":0.192448}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.206777},"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":"3b11b6fa1be6","ts":"2026-09-15T16:51:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.83,"target":9.97,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6471,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":3.862,"trend":"flat","recent_slope_pct":0.0605,"volatility":"low"},"price":9.91,"volume":{"bars":201,"last_bar_volume":168.0,"baseline_avg":3947.9,"bar_rvol":0.042554,"raw_accel":-0.829783,"smooth_accel":-0.743128,"accel_momentum":-0.243386,"rvol_3bar":[0.569101,0.156885,0.042554],"trend_3bar":"DECELERATING","projected_rvol":0.05645},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":8.0,"sell_vol":122.0,"unclassified_vol":0.0,"imbalance":-0.876923,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":0.037437},"context":{"vwap":9.647101,"price_vs_vwap_pct":2.72516,"ema9":9.906409,"ema20":9.901759,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":7.439059,"atr":0.038983,"spread_atr":0.769558,"own_change_pct":0.608519,"rel_strength_pct":{"SPY":0.629638,"IWM":0.590943}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.037317},"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":"d398451c3f48","ts":"2026-09-15T16:51:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 930.0s, plan says PASS; stop 7.74, target 7.91 (prev_day_high), R:R 0.93; target 0.08 away > ~0.07 reachable in 183 min","plan":{"state":"PASS","setup":"","stop":7.7402,"target":7.91,"target_label":"prev_day_high","reward_risk":0.93,"pos_in_5d_range_pct":67.5,"room_to_5d_high_atr":0.5},"price":7.8281,"vwap":7.7392,"ext_from_open_pct":1.66,"max_ext_allowed_pct":4.0,"volume_pace":0.57,"trend":"flat","recent_slope_pct":0.0068,"volatility":"medium"},"price":7.8281,"volume":{"bars":201,"last_bar_volume":2979.0,"baseline_avg":11791.2,"bar_rvol":0.252646,"raw_accel":-0.775526,"smooth_accel":-0.462119,"accel_momentum":-1.030423,"rvol_3bar":[0.694533,1.171263,0.252646],"trend_3bar":"MIXED","projected_rvol":7.963275},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":48784.0,"sell_vol":5967.0,"unclassified_vol":0.0,"imbalance":0.782031,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.094023},"context":{"vwap":7.737295,"price_vs_vwap_pct":1.173603,"ema9":7.816857,"ema20":7.810063,"ema_stack":true,"ema_warm":true,"hod":7.83,"dist_to_hod_pct":-0.024266,"dist_to_hod_atr":0.102391,"atr":0.018556,"spread_atr":0.538901,"own_change_pct":0.210025,"rel_strength_pct":{"SPY":0.231144,"IWM":0.192448}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.197577},"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":"648bed554dcc","ts":"2026-09-15T16:51:40+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 935.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; R:R 0.68 < 2.0 at 7.85; breakout: 1-min close > 7.84 on >= 17488 sh","plan":{"state":"WATCH","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7393,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":0.0627,"volatility":"medium"},"price":7.85,"volume":{"bars":201,"last_bar_volume":2979.0,"baseline_avg":11791.2,"bar_rvol":0.252646,"raw_accel":-0.775526,"smooth_accel":-0.462119,"accel_momentum":-1.030423,"rvol_3bar":[0.694533,1.171263,0.252646],"trend_3bar":"MIXED","projected_rvol":6.988983},"flow":{"window_s":30,"trades":198,"trade_rate":6.6,"buy_vol":48209.0,"sell_vol":5865.0,"unclassified_vol":0.0,"imbalance":0.783075,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.266447},"context":{"vwap":7.737295,"price_vs_vwap_pct":1.456648,"ema9":7.816857,"ema20":7.810063,"ema_stack":true,"ema_warm":true,"hod":7.83,"dist_to_hod_pct":0.255428,"dist_to_hod_atr":-1.077801,"atr":0.018556,"spread_atr":0.538901,"own_change_pct":0.210025,"rel_strength_pct":{"SPY":0.231144,"IWM":0.192448}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.197841},"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":"7e7186c00f9a","ts":"2026-09-15T16:51:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 945.0s, plan says PASS; stop 7.74, target 7.91 (prev_day_high), R:R 0.92; target 0.08 away > ~0.07 reachable in 183 min","plan":{"state":"PASS","setup":"","stop":7.7408,"target":7.91,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":67.7,"room_to_5d_high_atr":0.5},"price":7.8287,"vwap":7.7392,"ext_from_open_pct":1.67,"max_ext_allowed_pct":3.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":0.0083,"volatility":"medium"},"price":7.8287,"volume":{"bars":201,"last_bar_volume":2979.0,"baseline_avg":11791.2,"bar_rvol":0.252646,"raw_accel":-0.775526,"smooth_accel":-0.462119,"accel_momentum":-1.030423,"rvol_3bar":[0.694533,1.171263,0.252646],"trend_3bar":"MIXED","projected_rvol":5.78679},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":50000.0,"sell_vol":5982.0,"unclassified_vol":0.0,"imbalance":0.786288,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.184449},"context":{"vwap":7.737295,"price_vs_vwap_pct":1.181358,"ema9":7.816857,"ema20":7.810063,"ema_stack":true,"ema_warm":true,"hod":7.83,"dist_to_hod_pct":-0.016603,"dist_to_hod_atr":0.070057,"atr":0.018556,"spread_atr":0.538901,"own_change_pct":0.210025,"rel_strength_pct":{"SPY":0.231144,"IWM":0.192448}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.198653},"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":"9e54d9e53409","ts":"2026-09-15T16:51:50+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1799,"target":5.43,"target_label":"prev_day_high","reward_risk":4.12,"pos_in_5d_range_pct":-2.9,"room_to_5d_high_atr":2.05},"price":5.2287,"vwap":5.2348,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.895,"trend":"flat","recent_slope_pct":-0.0011,"volatility":"medium"},"price":5.2287,"volume":{"bars":201,"last_bar_volume":920.0,"baseline_avg":3998.45,"bar_rvol":0.230089,"raw_accel":-0.079643,"smooth_accel":-0.151878,"accel_momentum":0.041609,"rvol_3bar":[1.118881,0.237356,0.230089],"trend_3bar":"DECELERATING","projected_rvol":0.402756},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":500.0,"sell_vol":725.0,"unclassified_vol":0.0,"imbalance":-0.183673,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.2452},"context":{"vwap":5.234762,"price_vs_vwap_pct":-0.115798,"ema9":5.238406,"ema20":5.237114,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.261795,"dist_to_hod_atr":16.180039,"atr":0.010896,"spread_atr":0.917756,"own_change_pct":0.281055,"rel_strength_pct":{"SPY":0.302173,"IWM":0.263478}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.042261},"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":"57454ffdb8db","ts":"2026-09-15T16:51:50+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2478,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.1082,"volatility":"medium"},"price":7.4,"volume":{"bars":201,"last_bar_volume":311228.0,"baseline_avg":260319.25,"bar_rvol":1.195563,"raw_accel":-0.063584,"smooth_accel":-0.413301,"accel_momentum":0.012504,"rvol_3bar":[0.577305,1.357712,1.195563],"trend_3bar":"MIXED","projected_rvol":1.236572},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":48178.0,"sell_vol":46716.0,"unclassified_vol":0.0,"imbalance":0.015407,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.000138},"context":{"vwap":7.246574,"price_vs_vwap_pct":2.117224,"ema9":7.387196,"ema20":7.370148,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.134953,"dist_to_hod_atr":0.304482,"atr":0.032843,"spread_atr":0.304482,"own_change_pct":0.067613,"rel_strength_pct":{"SPY":0.088732,"IWM":0.050037}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.01842},"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":"09f434c6db90","ts":"2026-09-15T16:51:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 950.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; R:R 0.68 < 2.0 at 7.85; breakout: 1-min close > 7.84 on >= 17488 sh","plan":{"state":"WATCH","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7395,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":0.0627,"volatility":"medium"},"price":7.85,"volume":{"bars":201,"last_bar_volume":2979.0,"baseline_avg":11791.2,"bar_rvol":0.252646,"raw_accel":-0.775526,"smooth_accel":-0.462119,"accel_momentum":-1.030423,"rvol_3bar":[0.694533,1.171263,0.252646],"trend_3bar":"MIXED","projected_rvol":5.453158},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":3968.0,"sell_vol":1375.0,"unclassified_vol":0.0,"imbalance":0.485308,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.741237},"context":{"vwap":7.737295,"price_vs_vwap_pct":1.456648,"ema9":7.816857,"ema20":7.810063,"ema_stack":true,"ema_warm":true,"hod":7.83,"dist_to_hod_pct":0.255428,"dist_to_hod_atr":-1.077801,"atr":0.018556,"spread_atr":0.538901,"own_change_pct":0.210025,"rel_strength_pct":{"SPY":0.231144,"IWM":0.192448}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.122611},"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":"c5eb82221f1f","ts":"2026-09-15T16:51:55+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1912,"target":5.43,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":0.0,"room_to_5d_high_atr":2.0},"price":5.24,"vwap":5.2348,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.895,"trend":"flat","recent_slope_pct":0.042,"volatility":"medium"},"price":5.24,"volume":{"bars":201,"last_bar_volume":920.0,"baseline_avg":3998.45,"bar_rvol":0.230089,"raw_accel":-0.079643,"smooth_accel":-0.151878,"accel_momentum":0.041609,"rvol_3bar":[1.118881,0.237356,0.230089],"trend_3bar":"DECELERATING","projected_rvol":0.375691},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":500.0,"sell_vol":660.0,"unclassified_vol":0.0,"imbalance":-0.137931,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":5.2452},"context":{"vwap":5.234762,"price_vs_vwap_pct":0.100067,"ema9":5.238406,"ema20":5.237114,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.052729,"dist_to_hod_atr":15.142975,"atr":0.010896,"spread_atr":0.917756,"own_change_pct":0.281055,"rel_strength_pct":{"SPY":0.302173,"IWM":0.263478}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.031736},"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":"21330aae77f6","ts":"2026-09-15T16:52:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.095,"target_label":"clear air (typical 60-min move)","reward_risk":2.12,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.6472,"ext_from_open_pct":4.92,"max_ext_allowed_pct":4.0,"volume_pace":3.854,"trend":"flat","recent_slope_pct":0.0202,"volatility":"low"},"price":9.915,"volume":{"bars":202,"last_bar_volume":202.0,"baseline_avg":3518.9,"bar_rvol":0.057404,"raw_accel":-0.770383,"smooth_accel":-0.937657,"accel_momentum":-0.194529,"rvol_3bar":[0.156885,0.042554,0.057404],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":504.0,"sell_vol":125.0,"unclassified_vol":0.0,"imbalance":0.602544,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":4.989669},"context":{"vwap":9.64713,"price_vs_vwap_pct":2.776677,"ema9":9.907128,"ema20":9.902544,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":7.289209,"atr":0.039099,"spread_atr":0.767285,"own_change_pct":0.202224,"rel_strength_pct":{"SPY":0.224662,"IWM":0.203978}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.034589},"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":"56cb324b5cd7","ts":"2026-09-15T16:52:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 960.0s, plan says PASS; stop 7.74, target 7.91 (prev_day_high), R:R 0.90; target 0.08 away > ~0.07 reachable in 183 min","plan":{"state":"PASS","setup":"","stop":7.7426,"target":7.91,"target_label":"prev_day_high","reward_risk":0.9,"pos_in_5d_range_pct":68.0,"room_to_5d_high_atr":0.5},"price":7.8305,"vwap":7.7395,"ext_from_open_pct":1.69,"max_ext_allowed_pct":4.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":0.0572,"volatility":"medium"},"price":7.8305,"volume":{"bars":202,"last_bar_volume":58941.0,"baseline_avg":9788.6,"bar_rvol":6.021392,"raw_accel":18.785498,"smooth_accel":0.738721,"accel_momentum":1.200841,"rvol_3bar":[1.171263,0.252646,6.021392],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":3916.0,"sell_vol":303.0,"unclassified_vol":0.0,"imbalance":0.856364,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.806499},"context":{"vwap":7.739461,"price_vs_vwap_pct":1.176291,"ema9":7.823485,"ema20":7.813867,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.248408,"dist_to_hod_atr":1.006519,"atr":0.019374,"spread_atr":0.516164,"own_change_pct":0.512164,"rel_strength_pct":{"SPY":0.534601,"IWM":0.513918}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.156504},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f205e6719d9c","ts":"2026-09-15T16:52:10+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1793,"target":5.43,"target_label":"prev_day_high","reward_risk":4.13,"pos_in_5d_range_pct":-3.1,"room_to_5d_high_atr":2.06},"price":5.2281,"vwap":5.2348,"ext_from_open_pct":-1.91,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":-0.0557,"volatility":"medium"},"price":5.2281,"volume":{"bars":202,"last_bar_volume":1387.0,"baseline_avg":3996.7,"bar_rvol":0.347036,"raw_accel":0.388145,"smooth_accel":-0.463443,"accel_momentum":-0.311565,"rvol_3bar":[0.237356,0.230089,0.347036],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":0.0,"sell_vol":228.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":12.96452},"context":{"vwap":5.234771,"price_vs_vwap_pct":-0.127431,"ema9":5.239205,"ema20":5.237617,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.272895,"dist_to_hod_atr":15.679661,"atr":0.011282,"spread_atr":0.886357,"own_change_pct":0.202607,"rel_strength_pct":{"SPY":0.225044,"IWM":0.204361}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.347036},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bb76aec3bece","ts":"2026-09-15T16:52:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.83,"target":9.97,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6472,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":3.851,"trend":"flat","recent_slope_pct":0.0101,"volatility":"low"},"price":9.91,"volume":{"bars":202,"last_bar_volume":202.0,"baseline_avg":3518.9,"bar_rvol":0.057404,"raw_accel":-0.770383,"smooth_accel":-0.937657,"accel_momentum":-0.194529,"rvol_3bar":[0.156885,0.042554,0.057404],"trend_3bar":"MIXED","projected_rvol":0.667254},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":504.0,"sell_vol":153.0,"unclassified_vol":0.0,"imbalance":0.534247,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":14.989669},"context":{"vwap":9.64713,"price_vs_vwap_pct":2.724848,"ema9":9.907128,"ema20":9.902544,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":7.41709,"atr":0.039099,"spread_atr":0.767285,"own_change_pct":0.202224,"rel_strength_pct":{"SPY":0.224662,"IWM":0.203978}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.030668},"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":"19fafdf6c056","ts":"2026-09-15T16:52:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 970.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; broke premarket_high 7.83 but R:R 0.68 < 2.0; R:R 0.68 < 2.0 at 7.85; breakout: 1-min close > 7.86 on >= 18870 sh","plan":{"state":"WATCH","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7395,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":0.107,"volatility":"medium"},"price":7.85,"volume":{"bars":202,"last_bar_volume":58941.0,"baseline_avg":9788.6,"bar_rvol":6.021392,"raw_accel":18.785498,"smooth_accel":0.738721,"accel_momentum":1.200841,"rvol_3bar":[1.171263,0.252646,6.021392],"trend_3bar":"MIXED","projected_rvol":0.040047},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":2387.0,"sell_vol":212.0,"unclassified_vol":0.0,"imbalance":0.83686,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.584451},"context":{"vwap":7.739461,"price_vs_vwap_pct":1.428246,"ema9":7.823485,"ema20":7.813867,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.019374,"spread_atr":0.516164,"own_change_pct":0.512164,"rel_strength_pct":{"SPY":0.534601,"IWM":0.513918}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":5.039064},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c110edb5c520","ts":"2026-09-15T16:52:15+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2348,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":0.895,"trend":"flat","recent_slope_pct":0.0088,"volatility":"medium"},"price":5.245,"volume":{"bars":202,"last_bar_volume":1387.0,"baseline_avg":3996.7,"bar_rvol":0.347036,"raw_accel":0.388145,"smooth_accel":-0.463443,"accel_momentum":-0.311565,"rvol_3bar":[0.237356,0.230089,0.347036],"trend_3bar":"MIXED","projected_rvol":0.883729},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":807.0,"sell_vol":221.0,"unclassified_vol":0.0,"imbalance":0.570039,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":0.377492},"context":{"vwap":5.234771,"price_vs_vwap_pct":0.19541,"ema9":5.239205,"ema20":5.237617,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":14.181717,"atr":0.011282,"spread_atr":0.886357,"own_change_pct":0.202607,"rel_strength_pct":{"SPY":0.225044,"IWM":0.204361}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.197824},"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":"5753ccbd9277","ts":"2026-09-15T16:52:20+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1796,"target":5.43,"target_label":"prev_day_high","reward_risk":4.13,"pos_in_5d_range_pct":-3.0,"room_to_5d_high_atr":2.06},"price":5.2284,"vwap":5.2348,"ext_from_open_pct":-1.91,"max_ext_allowed_pct":3.0,"volume_pace":0.895,"trend":"flat","recent_slope_pct":-0.0546,"volatility":"medium"},"price":5.2284,"volume":{"bars":202,"last_bar_volume":1387.0,"baseline_avg":3996.7,"bar_rvol":0.347036,"raw_accel":0.388145,"smooth_accel":-0.463443,"accel_momentum":-0.311565,"rvol_3bar":[0.237356,0.230089,0.347036],"trend_3bar":"MIXED","projected_rvol":0.737859},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":807.0,"sell_vol":221.0,"unclassified_vol":0.0,"imbalance":0.570039,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":5.377492},"context":{"vwap":5.234771,"price_vs_vwap_pct":-0.1217,"ema9":5.239205,"ema20":5.237617,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.267345,"dist_to_hod_atr":15.65307,"atr":0.011282,"spread_atr":0.886357,"own_change_pct":0.202607,"rel_strength_pct":{"SPY":0.225044,"IWM":0.204361}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.197824},"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":"ca5ff2ef5423","ts":"2026-09-15T16:52:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2484,"ext_from_open_pct":3.5,"max_ext_allowed_pct":4.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":0.0653,"volatility":"medium"},"price":7.4,"volume":{"bars":202,"last_bar_volume":337854.0,"baseline_avg":264888.5,"bar_rvol":1.275457,"raw_accel":0.085551,"smooth_accel":0.236305,"accel_momentum":0.649606,"rvol_3bar":[1.357712,1.195563,1.275457],"trend_3bar":"MIXED","projected_rvol":1.058789},"flow":{"window_s":30,"trades":185,"trade_rate":6.166667,"buy_vol":79573.0,"sell_vol":83515.0,"unclassified_vol":0.0,"imbalance":-0.024171,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.189077},"context":{"vwap":7.248048,"price_vs_vwap_pct":2.096455,"ema9":7.388757,"ema20":7.372515,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.134953,"dist_to_hod_atr":0.313231,"atr":0.031925,"spread_atr":0.313231,"own_change_pct":0.13541,"rel_strength_pct":{"SPY":0.157847,"IWM":0.137163}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.030829},"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":"b68bf6b49742","ts":"2026-09-15T16:52:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.1,"target_label":"clear air (typical 60-min move)","reward_risk":2.0,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6473,"ext_from_open_pct":4.97,"max_ext_allowed_pct":4.0,"volume_pace":3.846,"trend":"flat","recent_slope_pct":0.0303,"volatility":"low"},"price":9.92,"volume":{"bars":202,"last_bar_volume":202.0,"baseline_avg":3518.9,"bar_rvol":0.057404,"raw_accel":-0.770383,"smooth_accel":-0.937657,"accel_momentum":-0.194529,"rvol_3bar":[0.156885,0.042554,0.057404],"trend_3bar":"MIXED","projected_rvol":0.484811},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":706.0,"sell_vol":147.0,"unclassified_vol":0.0,"imbalance":0.655334,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":0.571013},"context":{"vwap":9.64713,"price_vs_vwap_pct":2.828506,"ema9":9.907128,"ema20":9.902544,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":7.161328,"atr":0.039099,"spread_atr":1.023047,"own_change_pct":0.202224,"rel_strength_pct":{"SPY":0.224662,"IWM":0.203978}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.037619},"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":"fbe6eb48ed52","ts":"2026-09-15T16:52:30+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1962,"target":5.43,"target_label":"prev_day_high","reward_risk":3.79,"pos_in_5d_range_pct":1.3,"room_to_5d_high_atr":1.97},"price":5.245,"vwap":5.2348,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":0.0088,"volatility":"medium"},"price":5.245,"volume":{"bars":202,"last_bar_volume":1387.0,"baseline_avg":3996.7,"bar_rvol":0.347036,"raw_accel":0.388145,"smooth_accel":-0.463443,"accel_momentum":-0.311565,"rvol_3bar":[0.237356,0.230089,0.347036],"trend_3bar":"MIXED","projected_rvol":0.495409},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":814.0,"sell_vol":176.0,"unclassified_vol":0.0,"imbalance":0.644444,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":7.521451},"context":{"vwap":5.234771,"price_vs_vwap_pct":0.19541,"ema9":5.239205,"ema20":5.237617,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.960222,"dist_to_hod_atr":14.181717,"atr":0.011282,"spread_atr":0.886357,"own_change_pct":0.202607,"rel_strength_pct":{"SPY":0.225044,"IWM":0.204361}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.223646},"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":"1505a83bfe70","ts":"2026-09-15T16:52:30+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2887,"target":7.47,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":1.17},"price":7.3931,"vwap":7.2488,"ext_from_open_pct":3.4,"max_ext_allowed_pct":3.0,"volume_pace":0.799,"trend":"flat","recent_slope_pct":0.0467,"volatility":"medium"},"price":7.3931,"volume":{"bars":202,"last_bar_volume":337854.0,"baseline_avg":264888.5,"bar_rvol":1.275457,"raw_accel":0.085551,"smooth_accel":0.236305,"accel_momentum":0.649606,"rvol_3bar":[1.357712,1.195563,1.275457],"trend_3bar":"MIXED","projected_rvol":1.420205},"flow":{"window_s":30,"trades":189,"trade_rate":6.3,"buy_vol":90180.0,"sell_vol":97918.0,"unclassified_vol":0.0,"imbalance":-0.041138,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.590955},"context":{"vwap":7.248048,"price_vs_vwap_pct":2.001257,"ema9":7.388757,"ema20":7.372515,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.22807,"dist_to_hod_atr":0.529361,"atr":0.031925,"spread_atr":0.313231,"own_change_pct":0.13541,"rel_strength_pct":{"SPY":0.157847,"IWM":0.137163}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.05247},"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":"6f8f0aa1bc03","ts":"2026-09-15T16:52:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 990.0s, plan says PASS; stop 7.74, target 7.91 (prev_day_high), R:R 0.89; target 0.08 away > ~0.07 reachable in 182 min","plan":{"state":"PASS","setup":"","stop":7.7442,"target":7.91,"target_label":"prev_day_high","reward_risk":0.89,"pos_in_5d_range_pct":68.3,"room_to_5d_high_atr":0.49},"price":7.8321,"vwap":7.7395,"ext_from_open_pct":1.72,"max_ext_allowed_pct":4.0,"volume_pace":0.568,"trend":"flat","recent_slope_pct":0.0613,"volatility":"medium"},"price":7.8321,"volume":{"bars":202,"last_bar_volume":58941.0,"baseline_avg":9788.6,"bar_rvol":6.021392,"raw_accel":18.785498,"smooth_accel":0.738721,"accel_momentum":1.200841,"rvol_3bar":[1.171263,0.252646,6.021392],"trend_3bar":"MIXED","projected_rvol":0.299999},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":781.0,"sell_vol":881.0,"unclassified_vol":0.0,"imbalance":-0.060168,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.741774},"context":{"vwap":7.739461,"price_vs_vwap_pct":1.196964,"ema9":7.823485,"ema20":7.813867,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.228025,"dist_to_hod_atr":0.923933,"atr":0.019374,"spread_atr":0.516164,"own_change_pct":0.512164,"rel_strength_pct":{"SPY":0.534601,"IWM":0.513918}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.362298},"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":"69e81b135617","ts":"2026-09-15T16:52:40+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 995.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.74; broke premarket_high 7.83 but R:R 0.74 < 2.0; R:R 0.74 < 2.0 at 7.84; breakout: 1-min close > 7.86 on >= 18870 sh","plan":{"state":"WATCH","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7396,"ext_from_open_pct":1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.568,"trend":"flat","recent_slope_pct":0.0942,"volatility":"medium"},"price":7.845,"volume":{"bars":202,"last_bar_volume":58941.0,"baseline_avg":9788.6,"bar_rvol":6.021392,"raw_accel":18.785498,"smooth_accel":0.738721,"accel_momentum":1.200841,"rvol_3bar":[1.171263,0.252646,6.021392],"trend_3bar":"MIXED","projected_rvol":0.566067},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":851.0,"sell_vol":2781.0,"unclassified_vol":0.0,"imbalance":-0.531388,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":6.741774},"context":{"vwap":7.739461,"price_vs_vwap_pct":1.363642,"ema9":7.823485,"ema20":7.813867,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.063694,"dist_to_hod_atr":0.258082,"atr":0.019374,"spread_atr":0.516164,"own_change_pct":0.512164,"rel_strength_pct":{"SPY":0.534601,"IWM":0.513918}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.199694},"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":"3f4510b39b60","ts":"2026-09-15T16:52:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.82,"target":9.97,"target_label":"ceiling","reward_risk":0.88,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.6481,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":3.855,"trend":"flat","recent_slope_pct":-0.0101,"volatility":"low"},"price":9.9,"volume":{"bars":202,"last_bar_volume":202.0,"baseline_avg":3518.9,"bar_rvol":0.057404,"raw_accel":-0.770383,"smooth_accel":-0.937657,"accel_momentum":-0.194529,"rvol_3bar":[0.156885,0.042554,0.057404],"trend_3bar":"MIXED","projected_rvol":2.709559},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":468.0,"sell_vol":6096.0,"unclassified_vol":0.0,"imbalance":-0.857404,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":8.724864},"context":{"vwap":9.64713,"price_vs_vwap_pct":2.62119,"ema9":9.907128,"ema20":9.902544,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":7.672851,"atr":0.039099,"spread_atr":1.023047,"own_change_pct":0.202224,"rel_strength_pct":{"SPY":0.224662,"IWM":0.203978}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.049219},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8ebef97993cc","ts":"2026-09-15T16:52:50+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.1,"target_label":"clear air (typical 60-min move)","reward_risk":2.0,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6482,"ext_from_open_pct":4.97,"max_ext_allowed_pct":4.0,"volume_pace":3.854,"trend":"flat","recent_slope_pct":0.0303,"volatility":"low"},"price":9.92,"volume":{"bars":202,"last_bar_volume":202.0,"baseline_avg":3518.9,"bar_rvol":0.057404,"raw_accel":-0.770383,"smooth_accel":-0.937657,"accel_momentum":-0.194529,"rvol_3bar":[0.156885,0.042554,0.057404],"trend_3bar":"MIXED","projected_rvol":2.454631},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":515.0,"sell_vol":6096.0,"unclassified_vol":0.0,"imbalance":-0.844199,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":13.724864},"context":{"vwap":9.64713,"price_vs_vwap_pct":2.828506,"ema9":9.907128,"ema20":9.902544,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":7.161328,"atr":0.039099,"spread_atr":1.023047,"own_change_pct":0.202224,"rel_strength_pct":{"SPY":0.224662,"IWM":0.203978}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.048461},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3c89fd8a3016","ts":"2026-09-15T16:52:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1005.0s, plan says PASS; stop 7.75, target 7.91 (prev_day_high), R:R 0.87; target 0.08 away > ~0.07 reachable in 182 min","plan":{"state":"PASS","setup":"","stop":7.7457,"target":7.91,"target_label":"prev_day_high","reward_risk":0.87,"pos_in_5d_range_pct":68.6,"room_to_5d_high_atr":0.49},"price":7.8336,"vwap":7.7396,"ext_from_open_pct":1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.568,"trend":"flat","recent_slope_pct":0.0651,"volatility":"medium"},"price":7.8336,"volume":{"bars":202,"last_bar_volume":58941.0,"baseline_avg":9788.6,"bar_rvol":6.021392,"raw_accel":18.785498,"smooth_accel":0.738721,"accel_momentum":1.200841,"rvol_3bar":[1.171263,0.252646,6.021392],"trend_3bar":"MIXED","projected_rvol":0.593466},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":755.0,"sell_vol":3579.0,"unclassified_vol":0.0,"imbalance":-0.651592,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.127637},"context":{"vwap":7.739461,"price_vs_vwap_pct":1.216345,"ema9":7.823485,"ema20":7.813867,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.208917,"dist_to_hod_atr":0.846508,"atr":0.019374,"spread_atr":0.516164,"own_change_pct":0.512164,"rel_strength_pct":{"SPY":0.534601,"IWM":0.513918}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.923491},"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":"a14bf2861e09","ts":"2026-09-15T16:52:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1010.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.74; broke premarket_high 7.83 but R:R 0.74 < 2.0; R:R 0.74 < 2.0 at 7.84; breakout: 1-min close > 7.86 on >= 18870 sh","plan":{"state":"WATCH","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7396,"ext_from_open_pct":1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.568,"trend":"flat","recent_slope_pct":0.0942,"volatility":"medium"},"price":7.845,"volume":{"bars":202,"last_bar_volume":58941.0,"baseline_avg":9788.6,"bar_rvol":6.021392,"raw_accel":18.785498,"smooth_accel":0.738721,"accel_momentum":1.200841,"rvol_3bar":[1.171263,0.252646,6.021392],"trend_3bar":"MIXED","projected_rvol":0.574732},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":862.0,"sell_vol":3779.0,"unclassified_vol":0.0,"imbalance":-0.628528,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":2.229663},"context":{"vwap":7.739461,"price_vs_vwap_pct":1.363642,"ema9":7.823485,"ema20":7.813867,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.063694,"dist_to_hod_atr":0.258082,"atr":0.019374,"spread_atr":0.516164,"own_change_pct":0.512164,"rel_strength_pct":{"SPY":0.534601,"IWM":0.513918}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.784616},"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":"7c11df52bb25","ts":"2026-09-15T16:53:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1015.0s, plan says PASS; stop 7.75, target 7.91 (prev_day_high), R:R 0.88; target 0.08 away > ~0.07 reachable in 182 min","plan":{"state":"PASS","setup":"","stop":7.745,"target":7.91,"target_label":"prev_day_high","reward_risk":0.88,"pos_in_5d_range_pct":68.4,"room_to_5d_high_atr":0.49},"price":7.8329,"vwap":7.7396,"ext_from_open_pct":1.73,"max_ext_allowed_pct":4.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":0.0633,"volatility":"medium"},"price":7.8329,"volume":{"bars":202,"last_bar_volume":58941.0,"baseline_avg":9788.6,"bar_rvol":6.021392,"raw_accel":18.785498,"smooth_accel":0.738721,"accel_momentum":1.200841,"rvol_3bar":[1.171263,0.252646,6.021392],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":584.0,"sell_vol":3218.0,"unclassified_vol":0.0,"imbalance":-0.692793,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":2.450707},"context":{"vwap":7.739461,"price_vs_vwap_pct":1.2073,"ema9":7.823485,"ema20":7.813867,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.217834,"dist_to_hod_atr":0.88264,"atr":0.019374,"spread_atr":0.516164,"own_change_pct":0.512164,"rel_strength_pct":{"SPY":0.474543,"IWM":0.475336}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.17158},"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":"8b2712bfc9b4","ts":"2026-09-15T16:53:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.7174,"target":5.9089,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":97.6,"room_to_5d_high_atr":0.03},"price":5.817,"vwap":5.7401,"ext_from_open_pct":2.05,"max_ext_allowed_pct":4.0,"volume_pace":0.555,"trend":"flat","recent_slope_pct":-0.0151,"volatility":"high"},"price":5.817,"volume":{"bars":203,"last_bar_volume":1148.0,"baseline_avg":2853.65,"bar_rvol":0.402292,"raw_accel":0.444025,"smooth_accel":0.724925,"accel_momentum":0.169756,"rvol_3bar":[1.863556,0.280493,0.402292],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":426.0,"sell_vol":182.0,"unclassified_vol":0.0,"imbalance":0.401316,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":4.302509},"context":{"vwap":5.740075,"price_vs_vwap_pct":1.340136,"ema9":5.821453,"ema20":5.824699,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.564103,"dist_to_hod_atr":3.160655,"atr":0.010441,"spread_atr":0.957774,"own_change_pct":-0.233332,"rel_strength_pct":{"SPY":-0.270953,"IWM":-0.27016}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.161446},"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":"d329e5ab8e09","ts":"2026-09-15T16:53:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.35x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.144,"target":8.5558,"target_label":"ceiling","reward_risk":1.16,"pos_in_5d_range_pct":122.8,"room_to_5d_high_atr":-0.83},"price":8.335,"vwap":8.1601,"ext_from_open_pct":8.81,"max_ext_allowed_pct":4.0,"volume_pace":0.345,"trend":"flat","recent_slope_pct":0.0965,"volatility":"high"},"price":8.335,"volume":{"bars":202,"last_bar_volume":61.0,"baseline_avg":957.25,"bar_rvol":0.063724,"raw_accel":-0.745103,"smooth_accel":-0.845534,"accel_momentum":-0.362306,"rvol_3bar":[0.050967,0.12325,0.063724],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":435.0,"sell_vol":217.0,"unclassified_vol":0.0,"imbalance":0.334356,"bid":8.32,"ask":8.35,"spread_pct":0.359928,"quote_size_imbalance":null,"quote_age_s":0.916971},"context":{"vwap":8.159975,"price_vs_vwap_pct":2.144922,"ema9":8.323279,"ema20":8.316515,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-2.580705,"dist_to_hod_atr":4.999447,"atr":0.044165,"spread_atr":0.679273,"own_change_pct":-0.479042,"rel_strength_pct":{"SPY":-0.516663,"IWM":-0.51587}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.021307},"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":"c6469f44935e","ts":"2026-09-15T16:53:05+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.23","plan":{"state":"PASS","setup":"","stop":5.1783,"target":5.43,"target_label":"prev_day_high","reward_risk":4.15,"pos_in_5d_range_pct":-3.3,"room_to_5d_high_atr":2.06},"price":5.2271,"vwap":5.2348,"ext_from_open_pct":-1.93,"max_ext_allowed_pct":3.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":-0.0685,"volatility":"medium"},"price":5.2271,"volume":{"bars":203,"last_bar_volume":1367.0,"baseline_avg":3903.7,"bar_rvol":0.350181,"raw_accel":-0.01442,"smooth_accel":-0.456589,"accel_momentum":0.006854,"rvol_3bar":[0.230089,0.347036,0.350181],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":352.0,"sell_vol":119.0,"unclassified_vol":0.0,"imbalance":0.494692,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":2.474338},"context":{"vwap":5.234781,"price_vs_vwap_pct":-0.14673,"ema9":5.240344,"ema20":5.238311,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.291397,"dist_to_hod_atr":15.226722,"atr":0.011683,"spread_atr":0.855915,"own_change_pct":0.269557,"rel_strength_pct":{"SPY":0.231936,"IWM":0.232729}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.173232},"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":"45a21056a258","ts":"2026-09-15T16:53:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1025.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.74; broke premarket_high 7.83 but R:R 0.74 < 2.0; R:R 0.74 < 2.0 at 7.84; breakout: 1-min close > 7.86 on >= 18809 sh","plan":{"state":"WATCH","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7396,"ext_from_open_pct":1.88,"max_ext_allowed_pct":3.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":0.0882,"volatility":"medium"},"price":7.845,"volume":{"bars":203,"last_bar_volume":5191.0,"baseline_avg":11800.8,"bar_rvol":0.439885,"raw_accel":-0.911929,"smooth_accel":0.502373,"accel_momentum":-0.236348,"rvol_3bar":[0.252646,6.021392,0.439885],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":270.0,"sell_vol":1390.0,"unclassified_vol":0.0,"imbalance":-0.674699,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.658884},"context":{"vwap":7.739639,"price_vs_vwap_pct":1.361318,"ema9":7.825368,"ema20":7.815679,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.063694,"dist_to_hod_atr":0.250664,"atr":0.019947,"spread_atr":0.501328,"own_change_pct":0.100958,"rel_strength_pct":{"SPY":0.063337,"IWM":0.064131}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.29679},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a674c7f0139a","ts":"2026-09-15T16:53:10+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1948,"target":5.43,"target_label":"prev_day_high","reward_risk":3.82,"pos_in_5d_range_pct":0.9,"room_to_5d_high_atr":1.98},"price":5.2436,"vwap":5.2348,"ext_from_open_pct":-1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":-0.0055,"volatility":"medium"},"price":5.2436,"volume":{"bars":203,"last_bar_volume":1367.0,"baseline_avg":3903.7,"bar_rvol":0.350181,"raw_accel":-0.01442,"smooth_accel":-0.456589,"accel_momentum":0.006854,"rvol_3bar":[0.230089,0.347036,0.350181],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":252.0,"sell_vol":119.0,"unclassified_vol":0.0,"imbalance":0.358491,"bid":5.24,"ask":5.25,"spread_pct":0.190658,"quote_size_imbalance":null,"quote_age_s":7.474338},"context":{"vwap":5.234781,"price_vs_vwap_pct":0.16847,"ema9":5.240344,"ema20":5.238311,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.986124,"dist_to_hod_atr":13.814463,"atr":0.011683,"spread_atr":0.855915,"own_change_pct":0.269557,"rel_strength_pct":{"SPY":0.231936,"IWM":0.232729}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.125536},"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":"dd85f7d6733c","ts":"2026-09-15T16:53:10+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.1682,"target":11.44,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":29.8,"room_to_5d_high_atr":1.15},"price":11.385,"vwap":11.2846,"ext_from_open_pct":1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.848,"trend":"flat","recent_slope_pct":-0.0351,"volatility":"high"},"price":11.385,"volume":{"bars":203,"last_bar_volume":29855.0,"baseline_avg":63500.95,"bar_rvol":0.47015,"raw_accel":-0.47164,"smooth_accel":0.359712,"accel_momentum":0.428159,"rvol_3bar":[1.469234,0.90033,0.47015],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":8291.0,"sell_vol":27922.0,"unclassified_vol":0.0,"imbalance":-0.542098,"bid":11.38,"ask":11.39,"spread_pct":0.087835,"quote_size_imbalance":null,"quote_age_s":0.105933},"context":{"vwap":11.284545,"price_vs_vwap_pct":0.890204,"ema9":11.390536,"ema20":11.385671,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-0.827526,"dist_to_hod_atr":3.617989,"atr":0.026258,"spread_atr":0.380841,"own_change_pct":-0.041265,"rel_strength_pct":{"SPY":-0.078887,"IWM":-0.078093}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.254868},"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":"786cb2b2b00f","ts":"2026-09-15T16:53:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1030.0s, plan says PASS; stop 7.75, target 7.91 (prev_day_high), R:R 0.87; target 0.08 away > ~0.07 reachable in 182 min","plan":{"state":"PASS","setup":"","stop":7.7453,"target":7.91,"target_label":"prev_day_high","reward_risk":0.87,"pos_in_5d_range_pct":68.5,"room_to_5d_high_atr":0.49},"price":7.8332,"vwap":7.7397,"ext_from_open_pct":1.73,"max_ext_allowed_pct":4.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":0.0581,"volatility":"medium"},"price":7.8332,"volume":{"bars":203,"last_bar_volume":5191.0,"baseline_avg":11800.8,"bar_rvol":0.439885,"raw_accel":-0.911929,"smooth_accel":0.502373,"accel_momentum":-0.236348,"rvol_3bar":[0.252646,6.021392,0.439885],"trend_3bar":"MIXED","projected_rvol":0.194224},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":678.0,"sell_vol":285.0,"unclassified_vol":0.0,"imbalance":0.4081,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.017124},"context":{"vwap":7.739639,"price_vs_vwap_pct":1.208856,"ema9":7.825368,"ema20":7.815679,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.214013,"dist_to_hod_atr":0.842231,"atr":0.019947,"spread_atr":0.501328,"own_change_pct":0.100958,"rel_strength_pct":{"SPY":0.063337,"IWM":0.064131}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.179517},"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":"e92f64ac01ed","ts":"2026-09-15T16:53:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1040.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.74; broke premarket_high 7.83 but R:R 0.74 < 2.0; R:R 0.74 < 2.0 at 7.84; breakout: 1-min close > 7.86 on >= 18809 sh","plan":{"state":"WATCH","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7397,"ext_from_open_pct":1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":0.0882,"volatility":"medium"},"price":7.845,"volume":{"bars":203,"last_bar_volume":5191.0,"baseline_avg":11800.8,"bar_rvol":0.439885,"raw_accel":-0.911929,"smooth_accel":0.502373,"accel_momentum":-0.236348,"rvol_3bar":[0.252646,6.021392,0.439885],"trend_3bar":"MIXED","projected_rvol":0.527557},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":644.0,"sell_vol":1984.0,"unclassified_vol":0.0,"imbalance":-0.509893,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.810374},"context":{"vwap":7.739639,"price_vs_vwap_pct":1.361318,"ema9":7.825368,"ema20":7.815679,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.063694,"dist_to_hod_atr":0.250664,"atr":0.019947,"spread_atr":0.501328,"own_change_pct":0.100958,"rel_strength_pct":{"SPY":0.063337,"IWM":0.064131}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.224295},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bee7526cdf58","ts":"2026-09-15T16:53:35+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.7216,"target":5.9089,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":98.4,"room_to_5d_high_atr":0.02},"price":5.8212,"vwap":5.7401,"ext_from_open_pct":2.13,"max_ext_allowed_pct":3.0,"volume_pace":0.553,"trend":"flat","recent_slope_pct":-0.0007,"volatility":"high"},"price":5.8212,"volume":{"bars":203,"last_bar_volume":1148.0,"baseline_avg":2853.65,"bar_rvol":0.402292,"raw_accel":0.444025,"smooth_accel":0.724925,"accel_momentum":0.169756,"rvol_3bar":[1.863556,0.280493,0.402292],"trend_3bar":"MIXED","projected_rvol":0.153788},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":37.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-0.467626,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":4.349678},"context":{"vwap":5.740075,"price_vs_vwap_pct":1.413306,"ema9":5.821453,"ema20":5.824699,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.492308,"dist_to_hod_atr":2.75839,"atr":0.010441,"spread_atr":0.957774,"own_change_pct":-0.233332,"rel_strength_pct":{"SPY":-0.270953,"IWM":-0.27016}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.188122},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"12977f55fa15","ts":"2026-09-15T16:53:35+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.825,"vwap":10.5119,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.994,"trend":"flat","recent_slope_pct":0.1142,"volatility":"medium"},"price":10.825,"volume":{"bars":203,"last_bar_volume":62776.0,"baseline_avg":33405.25,"bar_rvol":1.879226,"raw_accel":-0.617173,"smooth_accel":0.809363,"accel_momentum":-1.683734,"rvol_3bar":[1.362409,5.994933,1.879226],"trend_3bar":"MIXED","projected_rvol":1.120012},"flow":{"window_s":30,"trades":189,"trade_rate":6.3,"buy_vol":13080.0,"sell_vol":5180.0,"unclassified_vol":0.0,"imbalance":0.43264,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":1.413716},"context":{"vwap":10.510571,"price_vs_vwap_pct":2.99155,"ema9":10.758655,"ema20":10.689459,"ema_stack":true,"ema_warm":true,"hod":10.895,"dist_to_hod_pct":-0.642497,"dist_to_hod_atr":0.90959,"atr":0.076958,"spread_atr":0.129941,"own_change_pct":1.666448,"rel_strength_pct":{"SPY":1.628826,"IWM":1.62962}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.813027},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d5ddac9a625e","ts":"2026-09-15T16:53:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":1.13},"price":10.8307,"vwap":10.512,"ext_from_open_pct":4.04,"max_ext_allowed_pct":4.0,"volume_pace":0.994,"trend":"flat","recent_slope_pct":0.1247,"volatility":"medium"},"price":10.8307,"volume":{"bars":203,"last_bar_volume":62776.0,"baseline_avg":33405.25,"bar_rvol":1.879226,"raw_accel":-0.617173,"smooth_accel":0.809363,"accel_momentum":-1.683734,"rvol_3bar":[1.362409,5.994933,1.879226],"trend_3bar":"MIXED","projected_rvol":1.00098},"flow":{"window_s":30,"trades":193,"trade_rate":6.433333,"buy_vol":13502.0,"sell_vol":5015.0,"unclassified_vol":0.0,"imbalance":0.458336,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":2.927906},"context":{"vwap":10.510571,"price_vs_vwap_pct":3.045781,"ema9":10.758655,"ema20":10.689459,"ema_stack":true,"ema_warm":true,"hod":10.895,"dist_to_hod_pct":-0.590179,"dist_to_hod_atr":0.835523,"atr":0.076958,"spread_atr":0.129941,"own_change_pct":1.666448,"rel_strength_pct":{"SPY":1.628826,"IWM":1.62962}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.861316},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f8d3c9c46ab1","ts":"2026-09-15T16:53:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":46.9,"room_to_5d_high_atr":1.15},"price":10.8151,"vwap":10.5121,"ext_from_open_pct":3.89,"max_ext_allowed_pct":4.0,"volume_pace":0.994,"trend":"flat","recent_slope_pct":0.0959,"volatility":"medium"},"price":10.8151,"volume":{"bars":203,"last_bar_volume":62776.0,"baseline_avg":33405.25,"bar_rvol":1.879226,"raw_accel":-0.617173,"smooth_accel":0.809363,"accel_momentum":-1.683734,"rvol_3bar":[1.362409,5.994933,1.879226],"trend_3bar":"MIXED","projected_rvol":0.964519},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":9105.0,"sell_vol":5147.0,"unclassified_vol":0.0,"imbalance":0.277715,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.178745},"context":{"vwap":10.510571,"price_vs_vwap_pct":2.897359,"ema9":10.758655,"ema20":10.689459,"ema_stack":true,"ema_warm":true,"hod":10.895,"dist_to_hod_pct":-0.733364,"dist_to_hod_atr":1.038232,"atr":0.076958,"spread_atr":0.129941,"own_change_pct":1.666448,"rel_strength_pct":{"SPY":1.628826,"IWM":1.62962}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.52189},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d2698dc0d867","ts":"2026-09-15T16:53:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1070.0s, plan says PASS; stop 7.75, target 7.91 (prev_day_high), R:R 0.86; target 0.08 away > ~0.07 reachable in 181 min","plan":{"state":"PASS","setup":"","stop":7.7462,"target":7.91,"target_label":"prev_day_high","reward_risk":0.86,"pos_in_5d_range_pct":68.6,"room_to_5d_high_atr":0.49},"price":7.8341,"vwap":7.7397,"ext_from_open_pct":1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":0.0604,"volatility":"medium"},"price":7.8341,"volume":{"bars":203,"last_bar_volume":5191.0,"baseline_avg":11800.8,"bar_rvol":0.439885,"raw_accel":-0.911929,"smooth_accel":0.502373,"accel_momentum":-0.236348,"rvol_3bar":[0.252646,6.021392,0.439885],"trend_3bar":"MIXED","projected_rvol":0.295357},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":453.0,"sell_vol":148.0,"unclassified_vol":0.0,"imbalance":0.507488,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":2.170981},"context":{"vwap":7.739639,"price_vs_vwap_pct":1.220484,"ema9":7.825368,"ema20":7.815679,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":-0.202548,"dist_to_hod_atr":0.797112,"atr":0.019947,"spread_atr":0.501328,"own_change_pct":0.100958,"rel_strength_pct":{"SPY":0.063337,"IWM":0.064131}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.223236},"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":"06af6a3d2b24","ts":"2026-09-15T16:53:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2751,"target":7.47,"target_label":"prev_day_high","reward_risk":0.87,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.3795,"vwap":7.2494,"ext_from_open_pct":3.21,"max_ext_allowed_pct":4.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":-0.1142,"volatility":"medium"},"price":7.3795,"volume":{"bars":203,"last_bar_volume":276358.0,"baseline_avg":260328.45,"bar_rvol":1.061574,"raw_accel":-0.182019,"smooth_accel":0.168786,"accel_momentum":-0.067519,"rvol_3bar":[1.195563,1.275457,1.061574],"trend_3bar":"MIXED","projected_rvol":0.333116},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":27977.0,"sell_vol":28723.0,"unclassified_vol":0.0,"imbalance":-0.013157,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.126572},"context":{"vwap":7.24909,"price_vs_vwap_pct":1.798985,"ema9":7.385005,"ema20":7.372275,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.411606,"dist_to_hod_atr":0.957981,"atr":0.031838,"spread_atr":0.314092,"own_change_pct":-0.067797,"rel_strength_pct":{"SPY":-0.105418,"IWM":-0.104625}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.013967},"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":"1ba2612d0c81","ts":"2026-09-15T16:54:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1075.0s, plan says WATCH; stop 7.77, target 7.91 (prev_day_high), R:R 0.63; broke premarket_high 7.83 but R:R 0.63 < 2.0; R:R 0.63 < 2.0 at 7.86; breakout: 1-min close > 7.86 on >= 18809 sh","plan":{"state":"WATCH","setup":"","stop":7.7671,"target":7.91,"target_label":"prev_day_high","reward_risk":0.63,"pos_in_5d_range_pct":72.5,"room_to_5d_high_atr":0.43},"price":7.855,"vwap":7.74,"ext_from_open_pct":2.01,"max_ext_allowed_pct":4.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":0.1137,"volatility":"medium"},"price":7.855,"volume":{"bars":203,"last_bar_volume":5191.0,"baseline_avg":11800.8,"bar_rvol":0.439885,"raw_accel":-0.911929,"smooth_accel":0.502373,"accel_momentum":-0.236348,"rvol_3bar":[0.252646,6.021392,0.439885],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3678.0,"sell_vol":2075.0,"unclassified_vol":0.0,"imbalance":0.278637,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.202349},"context":{"vwap":7.739639,"price_vs_vwap_pct":1.490523,"ema9":7.825368,"ema20":7.815679,"ema_stack":true,"ema_warm":true,"hod":7.85,"dist_to_hod_pct":0.063694,"dist_to_hod_atr":-0.250664,"atr":0.019947,"spread_atr":0.501328,"own_change_pct":0.100958,"rel_strength_pct":{"SPY":0.023054,"IWM":0.015004}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.122568},"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":"8f4af3fc55e6","ts":"2026-09-15T16:54:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.47,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.15},"price":10.8176,"vwap":10.5121,"ext_from_open_pct":3.92,"max_ext_allowed_pct":3.0,"volume_pace":0.993,"trend":"flat","recent_slope_pct":0.1005,"volatility":"medium"},"price":10.8176,"volume":{"bars":203,"last_bar_volume":62776.0,"baseline_avg":33405.25,"bar_rvol":1.879226,"raw_accel":-0.617173,"smooth_accel":0.809363,"accel_momentum":-1.683734,"rvol_3bar":[1.362409,5.994933,1.879226],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":9039.0,"sell_vol":4630.0,"unclassified_vol":0.0,"imbalance":0.322555,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.879777},"context":{"vwap":10.510571,"price_vs_vwap_pct":2.921145,"ema9":10.758655,"ema20":10.689459,"ema_stack":true,"ema_warm":true,"hod":10.895,"dist_to_hod_pct":-0.710418,"dist_to_hod_atr":1.005747,"atr":0.076958,"spread_atr":0.129941,"own_change_pct":1.666448,"rel_strength_pct":{"SPY":1.588543,"IWM":1.580493}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.606153},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8409463e61e6","ts":"2026-09-15T16:54:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2756,"target":7.47,"target_label":"prev_day_high","reward_risk":0.86,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2495,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":-0.1129,"volatility":"medium"},"price":7.38,"volume":{"bars":203,"last_bar_volume":276358.0,"baseline_avg":260328.45,"bar_rvol":1.061574,"raw_accel":-0.182019,"smooth_accel":0.168786,"accel_momentum":-0.067519,"rvol_3bar":[1.195563,1.275457,1.061574],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":31917.0,"sell_vol":45974.0,"unclassified_vol":0.0,"imbalance":-0.18047,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.011311},"context":{"vwap":7.24909,"price_vs_vwap_pct":1.805882,"ema9":7.385005,"ema20":7.372275,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.404858,"dist_to_hod_atr":0.942277,"atr":0.031838,"spread_atr":0.314092,"own_change_pct":-0.067797,"rel_strength_pct":{"SPY":-0.145701,"IWM":-0.153751}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.191582},"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":"66c2a6e8228b","ts":"2026-09-15T16:54:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.4338,"target":8.8,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":12.4,"room_to_5d_high_atr":3.59},"price":8.625,"vwap":8.3766,"ext_from_open_pct":3.05,"max_ext_allowed_pct":3.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":0.2068,"volatility":"high"},"price":8.625,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":8315.0,"sell_vol":12142.0,"unclassified_vol":0.0,"imbalance":-0.187075,"bid":8.62,"ask":8.63,"spread_pct":0.115942,"quote_size_imbalance":null,"quote_age_s":0.58734},"context":{"vwap":8.376617,"price_vs_vwap_pct":2.965191,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":-0.057937,"dist_to_hod_atr":0.119148,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.11182},"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":"f1f168fb19e0","ts":"2026-09-15T16:54:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.7154,"target":5.9089,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":97.2,"room_to_5d_high_atr":0.04},"price":5.815,"vwap":5.7402,"ext_from_open_pct":2.02,"max_ext_allowed_pct":4.0,"volume_pace":0.552,"trend":"flat","recent_slope_pct":-0.0014,"volatility":"high"},"price":5.815,"volume":{"bars":204,"last_bar_volume":876.0,"baseline_avg":2803.35,"bar_rvol":0.312483,"raw_accel":-0.236934,"smooth_accel":-0.633229,"accel_momentum":-1.358154,"rvol_3bar":[0.280493,0.402292,0.312483],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":221.0,"sell_vol":23.0,"unclassified_vol":0.0,"imbalance":0.811475,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":1.315247},"context":{"vwap":5.74016,"price_vs_vwap_pct":1.303803,"ema9":5.820222,"ema20":5.823804,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.598291,"dist_to_hod_atr":3.330357,"atr":0.010509,"spread_atr":0.951531,"own_change_pct":-0.133949,"rel_strength_pct":{"SPY":-0.211854,"IWM":-0.219904}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.253572},"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":"0ced437d51d1","ts":"2026-09-15T16:54:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1085.0s, plan says PASS; stop 7.75, target 7.91 (prev_day_high), R:R 0.84; target 0.07 away > ~0.07 reachable in 181 min","plan":{"state":"PASS","setup":"","stop":7.748,"target":7.91,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":69.0,"room_to_5d_high_atr":0.48},"price":7.8359,"vwap":7.74,"ext_from_open_pct":1.76,"max_ext_allowed_pct":4.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":0.0342,"volatility":"medium"},"price":7.8359,"volume":{"bars":204,"last_bar_volume":8358.0,"baseline_avg":11198.65,"bar_rvol":0.74634,"raw_accel":0.610094,"smooth_accel":1.933155,"accel_momentum":1.430782,"rvol_3bar":[6.021392,0.439885,0.74634],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":5601.0,"sell_vol":2236.0,"unclassified_vol":0.0,"imbalance":0.429373,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.105124},"context":{"vwap":7.739956,"price_vs_vwap_pct":1.239589,"ema9":7.831295,"ema20":7.819424,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.306616,"dist_to_hod_atr":1.141751,"atr":0.021108,"spread_atr":0.473755,"own_change_pct":0.371842,"rel_strength_pct":{"SPY":0.293938,"IWM":0.285888}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.320459},"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":"adc9407e8caf","ts":"2026-09-15T16:54:10+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4288,"target":8.8,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":12.3,"room_to_5d_high_atr":3.6},"price":8.62,"vwap":8.3767,"ext_from_open_pct":2.99,"max_ext_allowed_pct":3.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":0.1952,"volatility":"high"},"price":8.62,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":8590.0,"sell_vol":10765.0,"unclassified_vol":0.0,"imbalance":-0.112374,"bid":8.62,"ask":8.63,"spread_pct":0.115942,"quote_size_imbalance":null,"quote_age_s":0.003559},"context":{"vwap":8.376617,"price_vs_vwap_pct":2.905501,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":-0.115875,"dist_to_hod_atr":0.238296,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.067169},"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":"193d1f713e18","ts":"2026-09-15T16:54:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1090.0s, plan says WATCH; stop 7.77, target 7.91 (prev_day_high), R:R 0.63; R:R 0.63 < 2.0 at 7.86; breakout: 1-min close > 7.87 on >= 18666 sh","plan":{"state":"WATCH","setup":"","stop":7.7671,"target":7.91,"target_label":"prev_day_high","reward_risk":0.63,"pos_in_5d_range_pct":72.5,"room_to_5d_high_atr":0.43},"price":7.855,"vwap":7.74,"ext_from_open_pct":2.01,"max_ext_allowed_pct":4.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":0.0829,"volatility":"medium"},"price":7.855,"volume":{"bars":204,"last_bar_volume":8358.0,"baseline_avg":11198.65,"bar_rvol":0.74634,"raw_accel":0.610094,"smooth_accel":1.933155,"accel_momentum":1.430782,"rvol_3bar":[6.021392,0.439885,0.74634],"trend_3bar":"MIXED","projected_rvol":0.78188},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":5702.0,"sell_vol":2238.0,"unclassified_vol":0.0,"imbalance":0.436272,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":7.105124},"context":{"vwap":7.739956,"price_vs_vwap_pct":1.48636,"ema9":7.831295,"ema20":7.819424,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.063613,"dist_to_hod_atr":0.236878,"atr":0.021108,"spread_atr":0.473755,"own_change_pct":0.371842,"rel_strength_pct":{"SPY":0.293938,"IWM":0.285888}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.325607},"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":"beeec32c54bd","ts":"2026-09-15T16:54:15+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.4338,"target":8.8,"target_label":"prev_day_high","reward_risk":0.92,"pos_in_5d_range_pct":12.4,"room_to_5d_high_atr":3.59},"price":8.625,"vwap":8.3767,"ext_from_open_pct":3.05,"max_ext_allowed_pct":3.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":0.2068,"volatility":"high"},"price":8.625,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":0.20412},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":3764.0,"sell_vol":5433.0,"unclassified_vol":0.0,"imbalance":-0.181472,"bid":8.62,"ask":8.63,"spread_pct":0.115942,"quote_size_imbalance":null,"quote_age_s":0.661029},"context":{"vwap":8.376617,"price_vs_vwap_pct":2.965191,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":-0.057937,"dist_to_hod_atr":0.119148,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.108471},"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":"c5e6188450b6","ts":"2026-09-15T16:54:20+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.4236,"target":9.87,"target_label":"premarket_high","reward_risk":1.95,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.21},"price":9.575,"vwap":9.5675,"ext_from_open_pct":-1.79,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":-0.0544,"volatility":"high"},"price":9.575,"volume":{"bars":204,"last_bar_volume":8003.0,"baseline_avg":17026.05,"bar_rvol":0.470044,"raw_accel":-0.955059,"smooth_accel":12.943233,"accel_momentum":-21.929749,"rvol_3bar":[1.562255,21.299548,0.470044],"trend_3bar":"MIXED","projected_rvol":2.491124},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":1086.0,"sell_vol":13117.0,"unclassified_vol":0.0,"imbalance":-0.847075,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":0.050675},"context":{"vwap":9.567459,"price_vs_vwap_pct":0.078823,"ema9":9.588476,"ema20":9.588071,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.5941,"dist_to_hod_atr":13.391675,"atr":0.019042,"spread_atr":0.525164,"own_change_pct":-0.14174,"rel_strength_pct":{"SPY":-0.219645,"IWM":-0.227695}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.398163},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9c8ad2ba3f06","ts":"2026-09-15T16:54:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1095.0s, plan says PASS; stop 7.75, target 7.91 (prev_day_high), R:R 0.81; target 0.07 away > ~0.07 reachable in 181 min","plan":{"state":"PASS","setup":"","stop":7.7507,"target":7.91,"target_label":"prev_day_high","reward_risk":0.81,"pos_in_5d_range_pct":69.5,"room_to_5d_high_atr":0.47},"price":7.8386,"vwap":7.74,"ext_from_open_pct":1.8,"max_ext_allowed_pct":4.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":0.0411,"volatility":"medium"},"price":7.8386,"volume":{"bars":204,"last_bar_volume":8358.0,"baseline_avg":11198.65,"bar_rvol":0.74634,"raw_accel":0.610094,"smooth_accel":1.933155,"accel_momentum":1.430782,"rvol_3bar":[6.021392,0.439885,0.74634],"trend_3bar":"MIXED","projected_rvol":0.591768},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":5591.0,"sell_vol":2154.0,"unclassified_vol":0.0,"imbalance":0.44377,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":12.105124},"context":{"vwap":7.739956,"price_vs_vwap_pct":1.274473,"ema9":7.831295,"ema20":7.819424,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.272265,"dist_to_hod_atr":1.013837,"atr":0.021108,"spread_atr":0.473755,"own_change_pct":0.371842,"rel_strength_pct":{"SPY":0.293938,"IWM":0.285888}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.331203},"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":"1c00d140f2d5","ts":"2026-09-15T16:54:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1100.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.66; R:R 0.66 < 2.0 at 7.85; breakout: 1-min close > 7.87 on >= 18666 sh","plan":{"state":"WATCH","setup":"","stop":7.7637,"target":7.91,"target_label":"prev_day_high","reward_risk":0.66,"pos_in_5d_range_pct":71.9,"room_to_5d_high_atr":0.44},"price":7.8516,"vwap":7.7402,"ext_from_open_pct":1.97,"max_ext_allowed_pct":3.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":0.0742,"volatility":"medium"},"price":7.8516,"volume":{"bars":204,"last_bar_volume":8358.0,"baseline_avg":11198.65,"bar_rvol":0.74634,"raw_accel":0.610094,"smooth_accel":1.933155,"accel_momentum":1.430782,"rvol_3bar":[6.021392,0.439885,0.74634],"trend_3bar":"MIXED","projected_rvol":1.411456},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":5490.0,"sell_vol":6259.0,"unclassified_vol":0.0,"imbalance":-0.065452,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":3.973155},"context":{"vwap":7.739956,"price_vs_vwap_pct":1.442433,"ema9":7.831295,"ema20":7.819424,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.10687,"dist_to_hod_atr":0.397955,"atr":0.021108,"spread_atr":0.473755,"own_change_pct":0.371842,"rel_strength_pct":{"SPY":0.293938,"IWM":0.285888}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.04885},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ffe1760c51a1","ts":"2026-09-15T16:54:25+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4103,"target":8.8,"target_label":"prev_day_high","reward_risk":1.04,"pos_in_5d_range_pct":11.7,"room_to_5d_high_atr":3.62},"price":8.6015,"vwap":8.3767,"ext_from_open_pct":2.77,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":0.1522,"volatility":"high"},"price":8.6015,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":0.311562},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":5796.0,"sell_vol":7991.0,"unclassified_vol":0.0,"imbalance":-0.159208,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":1.642702},"context":{"vwap":8.376617,"price_vs_vwap_pct":2.684648,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":-0.330243,"dist_to_hod_atr":0.679144,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.095163},"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":"f60d02cf3894","ts":"2026-09-15T16:54:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2756,"target":7.47,"target_label":"prev_day_high","reward_risk":0.86,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2501,"ext_from_open_pct":3.22,"max_ext_allowed_pct":4.0,"volume_pace":0.8,"trend":"flat","recent_slope_pct":-0.0745,"volatility":"medium"},"price":7.38,"volume":{"bars":204,"last_bar_volume":102409.0,"baseline_avg":260682.65,"bar_rvol":0.392849,"raw_accel":-0.629434,"smooth_accel":-0.089819,"accel_momentum":-0.258605,"rvol_3bar":[1.275457,1.061574,0.392849],"trend_3bar":"DECELERATING","projected_rvol":1.482492},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":86867.0,"sell_vol":97074.0,"unclassified_vol":0.0,"imbalance":-0.055491,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.886769},"context":{"vwap":7.249479,"price_vs_vwap_pct":1.800417,"ema9":7.384004,"ema20":7.373011,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.404858,"dist_to_hod_atr":0.950245,"atr":0.031571,"spread_atr":0.316748,"own_change_pct":0.135685,"rel_strength_pct":{"SPY":0.057781,"IWM":0.049731}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.021799},"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":"d6dc5dd22d0a","ts":"2026-09-15T16:54:30+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4488,"target":8.8,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":12.9,"room_to_5d_high_atr":3.57},"price":8.64,"vwap":8.3768,"ext_from_open_pct":3.23,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":0.2417,"volatility":"high"},"price":8.64,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":0.343488},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":7785.0,"sell_vol":3742.0,"unclassified_vol":0.0,"imbalance":0.350742,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":4.566362},"context":{"vwap":8.376617,"price_vs_vwap_pct":3.144261,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":0.115875,"dist_to_hod_atr":-0.238296,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.209649},"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":"37426c26e853","ts":"2026-09-15T16:54:35+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4588,"target":8.8,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":13.2,"room_to_5d_high_atr":3.56},"price":8.65,"vwap":8.3771,"ext_from_open_pct":3.35,"max_ext_allowed_pct":4.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":0.2649,"volatility":"high"},"price":8.65,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":0.70362},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":17482.0,"sell_vol":8239.0,"unclassified_vol":0.0,"imbalance":0.359356,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":0.006863},"context":{"vwap":8.376617,"price_vs_vwap_pct":3.26364,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":0.23175,"dist_to_hod_atr":-0.476592,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.214798},"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":"40d0853571ed","ts":"2026-09-15T16:54:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.83,"target":9.97,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.65,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":3.844,"trend":"flat","recent_slope_pct":-0.0252,"volatility":"low"},"price":9.9,"volume":{"bars":204,"last_bar_volume":9191.0,"baseline_avg":3629.1,"bar_rvol":2.532584,"raw_accel":0.238512,"smooth_accel":2.902971,"accel_momentum":3.233469,"rvol_3bar":[0.057404,2.203679,2.532584],"trend_3bar":"ACCELERATING","projected_rvol":0.957675},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1102.0,"sell_vol":669.0,"unclassified_vol":0.0,"imbalance":0.244495,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":4.762597},"context":{"vwap":9.649643,"price_vs_vwap_pct":2.594468,"ema9":9.914362,"ema20":9.907048,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":7.512252,"atr":0.039935,"spread_atr":0.751225,"own_change_pct":0.353893,"rel_strength_pct":{"SPY":0.275989,"IWM":0.267938}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.619203},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"25f915a0309f","ts":"2026-09-15T16:54:40+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4638,"target":8.8,"target_label":"prev_day_high","reward_risk":0.76,"pos_in_5d_range_pct":13.4,"room_to_5d_high_atr":3.55},"price":8.655,"vwap":8.3776,"ext_from_open_pct":3.41,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.2764,"volatility":"high"},"price":8.655,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":1.360311},"flow":{"window_s":30,"trades":171,"trade_rate":5.7,"buy_vol":30303.0,"sell_vol":27541.0,"unclassified_vol":0.0,"imbalance":0.047749,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":0.052268},"context":{"vwap":8.376617,"price_vs_vwap_pct":3.32333,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":0.289687,"dist_to_hod_atr":-0.59574,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.028541},"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":"1c436aa56071","ts":"2026-09-15T16:54:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2506,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.0474,"volatility":"medium"},"price":7.39,"volume":{"bars":204,"last_bar_volume":102409.0,"baseline_avg":260682.65,"bar_rvol":0.392849,"raw_accel":-0.629434,"smooth_accel":-0.089819,"accel_momentum":-0.258605,"rvol_3bar":[1.275457,1.061574,0.392849],"trend_3bar":"DECELERATING","projected_rvol":1.729068},"flow":{"window_s":30,"trades":201,"trade_rate":6.7,"buy_vol":160822.0,"sell_vol":107653.0,"unclassified_vol":0.0,"imbalance":0.198041,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.184588},"context":{"vwap":7.249479,"price_vs_vwap_pct":1.938358,"ema9":7.384004,"ema20":7.373011,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.269906,"dist_to_hod_atr":0.633497,"atr":0.031571,"spread_atr":0.316748,"own_change_pct":0.135685,"rel_strength_pct":{"SPY":0.057781,"IWM":0.049731}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.0778},"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":"08c21783772d","ts":"2026-09-15T16:54:50+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.1008,"target_label":"clear air (typical 60-min move)","reward_risk":1.83,"pos_in_5d_range_pct":504.3,"room_to_5d_high_atr":-5.82},"price":9.9258,"vwap":9.65,"ext_from_open_pct":5.03,"max_ext_allowed_pct":4.0,"volume_pace":3.841,"trend":"flat","recent_slope_pct":0.0268,"volatility":"low"},"price":9.9258,"volume":{"bars":204,"last_bar_volume":9191.0,"baseline_avg":3629.1,"bar_rvol":2.532584,"raw_accel":0.238512,"smooth_accel":2.902971,"accel_momentum":3.233469,"rvol_3bar":[0.057404,2.203679,2.532584],"trend_3bar":"ACCELERATING","projected_rvol":0.803505},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1213.0,"sell_vol":669.0,"unclassified_vol":0.0,"imbalance":0.289054,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":1.642743},"context":{"vwap":9.649643,"price_vs_vwap_pct":2.861835,"ema9":9.914362,"ema20":9.907048,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.688235,"dist_to_hod_atr":6.866199,"atr":0.039935,"spread_atr":0.751225,"own_change_pct":0.353893,"rel_strength_pct":{"SPY":0.275989,"IWM":0.267938}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.732054},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"020282559538","ts":"2026-09-15T16:54:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1125.0s, plan says PASS; stop 7.75, target 7.91 (prev_day_high), R:R 0.80; target 0.07 away > ~0.07 reachable in 180 min","plan":{"state":"PASS","setup":"","stop":7.7515,"target":7.91,"target_label":"prev_day_high","reward_risk":0.8,"pos_in_5d_range_pct":69.6,"room_to_5d_high_atr":0.47},"price":7.8394,"vwap":7.7405,"ext_from_open_pct":1.81,"max_ext_allowed_pct":3.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":0.0431,"volatility":"medium"},"price":7.8394,"volume":{"bars":204,"last_bar_volume":8358.0,"baseline_avg":11198.65,"bar_rvol":0.74634,"raw_accel":0.610094,"smooth_accel":1.933155,"accel_momentum":1.430782,"rvol_3bar":[6.021392,0.439885,0.74634],"trend_3bar":"MIXED","projected_rvol":1.58044},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1766.0,"sell_vol":10774.0,"unclassified_vol":0.0,"imbalance":-0.718341,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.725761},"context":{"vwap":7.739956,"price_vs_vwap_pct":1.284809,"ema9":7.831295,"ema20":7.819424,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.262087,"dist_to_hod_atr":0.975936,"atr":0.021108,"spread_atr":0.473755,"own_change_pct":0.371842,"rel_strength_pct":{"SPY":0.293938,"IWM":0.285888}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.536127},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f2c2d9fef45e","ts":"2026-09-15T16:54:50+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4181,"target":8.8,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":11.9,"room_to_5d_high_atr":3.61},"price":8.6093,"vwap":8.3778,"ext_from_open_pct":2.86,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.1704,"volatility":"high"},"price":8.6093,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":1.293966},"flow":{"window_s":30,"trades":182,"trade_rate":6.066667,"buy_vol":38972.0,"sell_vol":29398.0,"unclassified_vol":0.0,"imbalance":0.140032,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":0.612559},"context":{"vwap":8.376617,"price_vs_vwap_pct":2.777764,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":-0.239861,"dist_to_hod_atr":0.493273,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.083701},"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":"0ce775facfed","ts":"2026-09-15T16:54:55+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4688,"target":8.8,"target_label":"prev_day_high","reward_risk":0.73,"pos_in_5d_range_pct":13.6,"room_to_5d_high_atr":3.54},"price":8.66,"vwap":8.3779,"ext_from_open_pct":3.46,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.288,"volatility":"high"},"price":8.66,"volume":{"bars":204,"last_bar_volume":40118.0,"baseline_avg":67117.35,"bar_rvol":0.597729,"raw_accel":-0.497457,"smooth_accel":-0.342766,"accel_momentum":-0.499734,"rvol_3bar":[2.210652,1.216926,0.597729],"trend_3bar":"DECELERATING","projected_rvol":1.21869},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":37085.0,"sell_vol":29181.0,"unclassified_vol":0.0,"imbalance":0.119277,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":0.730968},"context":{"vwap":8.376617,"price_vs_vwap_pct":3.38302,"ema9":8.57628,"ema20":8.544484,"ema_stack":true,"ema_warm":true,"hod":8.63,"dist_to_hod_pct":0.347625,"dist_to_hod_atr":-0.714888,"atr":0.041965,"spread_atr":0.238296,"own_change_pct":0.838273,"rel_strength_pct":{"SPY":0.760369,"IWM":0.752319}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.071295},"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":"78e8db2c1f30","ts":"2026-09-15T16:55:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.83,"target":10.09,"target_label":"clear air (typical 60-min move)","reward_risk":2.06,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.65,"ext_from_open_pct":4.92,"max_ext_allowed_pct":5.0,"volume_pace":3.838,"trend":"flat","recent_slope_pct":0.005,"volatility":"low"},"price":9.915,"volume":{"bars":204,"last_bar_volume":9191.0,"baseline_avg":3629.1,"bar_rvol":2.532584,"raw_accel":0.238512,"smooth_accel":2.902971,"accel_momentum":3.233469,"rvol_3bar":[0.057404,2.203679,2.532584],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":113.0,"sell_vol":221.0,"unclassified_vol":0.0,"imbalance":-0.323353,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":7.911482},"context":{"vwap":9.649643,"price_vs_vwap_pct":2.749914,"ema9":9.914362,"ema20":9.907048,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":7.13664,"atr":0.039935,"spread_atr":0.751225,"own_change_pct":0.353893,"rel_strength_pct":{"SPY":0.285902,"IWM":0.253919}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.818919},"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":"1381c4c20f19","ts":"2026-09-15T16:55:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1135.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; R:R 0.68 < 2.0 at 7.85; breakout: 1-min close > 7.87 on >= 18666 sh","plan":{"state":"WATCH","setup":"","stop":7.7627,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.7,"room_to_5d_high_atr":0.44},"price":7.8506,"vwap":7.7405,"ext_from_open_pct":1.96,"max_ext_allowed_pct":4.0,"volume_pace":0.567,"trend":"flat","recent_slope_pct":0.0717,"volatility":"medium"},"price":7.8506,"volume":{"bars":204,"last_bar_volume":8358.0,"baseline_avg":11198.65,"bar_rvol":0.74634,"raw_accel":0.610094,"smooth_accel":1.933155,"accel_momentum":1.430782,"rvol_3bar":[6.021392,0.439885,0.74634],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1521.0,"sell_vol":6622.0,"unclassified_vol":0.0,"imbalance":-0.626428,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.122612},"context":{"vwap":7.739956,"price_vs_vwap_pct":1.429513,"ema9":7.831295,"ema20":7.819424,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.119593,"dist_to_hod_atr":0.44533,"atr":0.021108,"spread_atr":0.473755,"own_change_pct":0.371842,"rel_strength_pct":{"SPY":0.303852,"IWM":0.271869}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.467528},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1152a25dce33","ts":"2026-09-15T16:55:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8458,"target":9.97,"target_label":"ceiling","reward_risk":0.93,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.65,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":3.837,"trend":"flat","recent_slope_pct":-0.0151,"volatility":"low"},"price":9.91,"volume":{"bars":205,"last_bar_volume":2591.0,"baseline_avg":3958.7,"bar_rvol":0.654508,"raw_accel":-0.718094,"smooth_accel":14.830998,"accel_momentum":11.928026,"rvol_3bar":[2.203679,2.532584,0.654508],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":113.0,"sell_vol":240.0,"unclassified_vol":0.0,"imbalance":-0.359773,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":4.989538},"context":{"vwap":9.650027,"price_vs_vwap_pct":2.694013,"ema9":9.914489,"ema20":9.907806,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":7.260997,"atr":0.039939,"spread_atr":0.751138,"own_change_pct":-0.251509,"rel_strength_pct":{"SPY":-0.319499,"IWM":-0.351483}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.235474},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e1f18af3c027","ts":"2026-09-15T16:55:05+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.4335,"target":9.87,"target_label":"premarket_high","reward_risk":1.88,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.2},"price":9.5849,"vwap":9.5676,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":4.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":-0.016,"volatility":"high"},"price":9.5849,"volume":{"bars":205,"last_bar_volume":28058.0,"baseline_avg":16142.4,"bar_rvol":1.738155,"raw_accel":2.505935,"smooth_accel":7.834805,"accel_momentum":-5.108428,"rvol_3bar":[21.299548,0.470044,1.738155],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":99.0,"sell_vol":3754.0,"unclassified_vol":0.0,"imbalance":-0.948611,"bid":9.57,"ask":9.58,"spread_pct":0.104439,"quote_size_imbalance":null,"quote_age_s":1.909313},"context":{"vwap":9.567599,"price_vs_vwap_pct":0.180834,"ema9":9.58738,"ema20":9.587588,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.493388,"dist_to_hod_atr":12.608865,"atr":0.019439,"spread_atr":0.514438,"own_change_pct":-0.125065,"rel_strength_pct":{"SPY":-0.193056,"IWM":-0.225039}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.648834},"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":"86763502aea7","ts":"2026-09-15T16:55:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2756,"target":7.47,"target_label":"prev_day_high","reward_risk":0.86,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2509,"ext_from_open_pct":3.22,"max_ext_allowed_pct":4.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.0135,"volatility":"medium"},"price":7.38,"volume":{"bars":205,"last_bar_volume":357577.0,"baseline_avg":254685.65,"bar_rvol":1.403994,"raw_accel":2.491656,"smooth_accel":-0.249733,"accel_momentum":-0.159914,"rvol_3bar":[1.061574,0.392849,1.403994],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":54865.0,"sell_vol":52729.0,"unclassified_vol":0.0,"imbalance":0.019852,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.819365},"context":{"vwap":7.25085,"price_vs_vwap_pct":1.781172,"ema9":7.385203,"ema20":7.374629,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.404858,"dist_to_hod_atr":0.960394,"atr":0.031237,"spread_atr":0.320131,"own_change_pct":-0.225472,"rel_strength_pct":{"SPY":-0.293462,"IWM":-0.325445}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.027873},"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":"8ad870dc6775","ts":"2026-09-15T16:55:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 480.0s, plan says PASS; stop 12.29, target 13.18 (prev_day_high), R:R 1.11; target 0.46 away > ~0.22 reachable in 180 min","plan":{"state":"PASS","setup":"","stop":12.295,"target":13.18,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":16.8,"room_to_5d_high_atr":2.0},"price":12.715,"vwap":12.6017,"ext_from_open_pct":1.72,"max_ext_allowed_pct":4.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":0.0985,"volatility":"high"},"price":12.715,"volume":{"bars":205,"last_bar_volume":11733.0,"baseline_avg":18840.1,"bar_rvol":0.622767,"raw_accel":-0.64173,"smooth_accel":0.18585,"accel_momentum":0.136846,"rvol_3bar":[0.806169,1.864372,0.622767],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":2282.0,"sell_vol":5492.0,"unclassified_vol":0.0,"imbalance":-0.412915,"bid":12.71,"ask":12.72,"spread_pct":0.078647,"quote_size_imbalance":null,"quote_age_s":0.262964},"context":{"vwap":12.60166,"price_vs_vwap_pct":0.899409,"ema9":12.661108,"ema20":12.607592,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.34255,"dist_to_hod_atr":5.093683,"atr":0.059878,"spread_atr":0.167006,"own_change_pct":0.276243,"rel_strength_pct":{"SPY":0.208253,"IWM":0.176269}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.25715},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f36e803ee56f","ts":"2026-09-15T16:55:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2806,"target":7.47,"target_label":"prev_day_high","reward_risk":0.81,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.251,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":0.0,"volatility":"medium"},"price":7.385,"volume":{"bars":205,"last_bar_volume":357577.0,"baseline_avg":254685.65,"bar_rvol":1.403994,"raw_accel":2.491656,"smooth_accel":-0.249733,"accel_momentum":-0.159914,"rvol_3bar":[1.061574,0.392849,1.403994],"trend_3bar":"MIXED","projected_rvol":0.532421},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":21962.0,"sell_vol":35907.0,"unclassified_vol":0.0,"imbalance":-0.240975,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.052924},"context":{"vwap":7.25085,"price_vs_vwap_pct":1.85013,"ema9":7.385203,"ema20":7.374629,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.337382,"dist_to_hod_atr":0.800329,"atr":0.031237,"spread_atr":0.320131,"own_change_pct":-0.225472,"rel_strength_pct":{"SPY":-0.293462,"IWM":-0.325445}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.338328},"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":"523b10e25c2e","ts":"2026-09-15T16:55:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8508,"target":10.0925,"target_label":"clear air (typical 60-min move)","reward_risk":2.76,"pos_in_5d_range_pct":501.4,"room_to_5d_high_atr":-5.78},"price":9.915,"vwap":9.6502,"ext_from_open_pct":4.92,"max_ext_allowed_pct":4.0,"volume_pace":3.834,"trend":"flat","recent_slope_pct":-0.005,"volatility":"low"},"price":9.915,"volume":{"bars":205,"last_bar_volume":2591.0,"baseline_avg":3958.7,"bar_rvol":0.654508,"raw_accel":-0.718094,"smooth_accel":14.830998,"accel_momentum":11.928026,"rvol_3bar":[2.203679,2.532584,0.654508],"trend_3bar":"MIXED","projected_rvol":0.644909},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":4.0,"sell_vol":1008.0,"unclassified_vol":0.0,"imbalance":-0.992095,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":10.361614},"context":{"vwap":9.650027,"price_vs_vwap_pct":2.745826,"ema9":9.914489,"ema20":9.907806,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.794118,"dist_to_hod_atr":7.135807,"atr":0.039939,"spread_atr":0.751138,"own_change_pct":-0.251509,"rel_strength_pct":{"SPY":-0.319499,"IWM":-0.351483}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.649334},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bad9850958fd","ts":"2026-09-15T16:55:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1155.0s, plan says PASS; stop 7.74, target 7.91 (prev_day_high), R:R 0.89; target 0.08 away > ~0.07 reachable in 180 min","plan":{"state":"PASS","setup":"","stop":7.7438,"target":7.91,"target_label":"prev_day_high","reward_risk":0.89,"pos_in_5d_range_pct":68.2,"room_to_5d_high_atr":0.49},"price":7.8317,"vwap":7.7405,"ext_from_open_pct":1.71,"max_ext_allowed_pct":3.0,"volume_pace":0.566,"trend":"flat","recent_slope_pct":-0.0241,"volatility":"medium"},"price":7.8317,"volume":{"bars":205,"last_bar_volume":14759.0,"baseline_avg":11467.85,"bar_rvol":1.286989,"raw_accel":0.765853,"smooth_accel":-0.623519,"accel_momentum":-2.556674,"rvol_3bar":[0.439885,0.74634,1.286989],"trend_3bar":"ACCELERATING","projected_rvol":0.068278},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":49.0,"sell_vol":222.0,"unclassified_vol":0.0,"imbalance":-0.638376,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.07193},"context":{"vwap":7.740513,"price_vs_vwap_pct":1.178047,"ema9":7.835156,"ema20":7.822393,"ema_stack":false,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.360051,"dist_to_hod_atr":1.296028,"atr":0.021836,"spread_atr":0.457961,"own_change_pct":0.463247,"rel_strength_pct":{"SPY":0.395257,"IWM":0.363274}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.821584},"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":"44055685471f","ts":"2026-09-15T16:55:20+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.4319,"target":8.8,"target_label":"prev_day_high","reward_risk":0.93,"pos_in_5d_range_pct":12.4,"room_to_5d_high_atr":3.59},"price":8.6231,"vwap":8.3788,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":0.1716,"volatility":"high"},"price":8.6231,"volume":{"bars":205,"last_bar_volume":122176.0,"baseline_avg":65924.0,"bar_rvol":1.853286,"raw_accel":2.045416,"smooth_accel":-0.49381,"accel_momentum":-0.151044,"rvol_3bar":[1.216926,0.597729,1.853286],"trend_3bar":"MIXED","projected_rvol":0.519553},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":698.0,"sell_vol":60522.0,"unclassified_vol":0.0,"imbalance":-0.977197,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":1.531667},"context":{"vwap":8.378656,"price_vs_vwap_pct":2.917461,"ema9":8.592024,"ema20":8.555009,"ema_stack":true,"ema_warm":true,"hod":8.66,"dist_to_hod_pct":-0.426097,"dist_to_hod_atr":0.826904,"atr":0.044624,"spread_atr":0.224093,"own_change_pct":0.815376,"rel_strength_pct":{"SPY":0.747385,"IWM":0.715402}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.811025},"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":"ab545180bb16","ts":"2026-09-15T16:55:25+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4638,"target":8.8,"target_label":"prev_day_high","reward_risk":0.76,"pos_in_5d_range_pct":13.4,"room_to_5d_high_atr":3.55},"price":8.655,"vwap":8.3789,"ext_from_open_pct":3.41,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":0.2454,"volatility":"high"},"price":8.655,"volume":{"bars":205,"last_bar_volume":122176.0,"baseline_avg":65924.0,"bar_rvol":1.853286,"raw_accel":2.045416,"smooth_accel":-0.49381,"accel_momentum":-0.151044,"rvol_3bar":[1.216926,0.597729,1.853286],"trend_3bar":"MIXED","projected_rvol":0.451283},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":723.0,"sell_vol":58870.0,"unclassified_vol":0.0,"imbalance":-0.975735,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":1.333538},"context":{"vwap":8.378656,"price_vs_vwap_pct":3.29819,"ema9":8.592024,"ema20":8.555009,"ema_stack":true,"ema_warm":true,"hod":8.66,"dist_to_hod_pct":-0.057737,"dist_to_hod_atr":0.112047,"atr":0.044624,"spread_atr":0.224093,"own_change_pct":0.815376,"rel_strength_pct":{"SPY":0.747385,"IWM":0.715402}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.808316},"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":"c6031b3cf771","ts":"2026-09-15T16:55:30+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1165.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; R:R 0.68 < 2.0 at 7.85; breakout: 1-min close > 7.87 on >= 18942 sh","plan":{"state":"WATCH","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7405,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":0.565,"trend":"flat","recent_slope_pct":0.0226,"volatility":"medium"},"price":7.85,"volume":{"bars":205,"last_bar_volume":14759.0,"baseline_avg":11467.85,"bar_rvol":1.286989,"raw_accel":0.765853,"smooth_accel":-0.623519,"accel_momentum":-2.556674,"rvol_3bar":[0.439885,0.74634,1.286989],"trend_3bar":"ACCELERATING","projected_rvol":0.118069},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":254.0,"sell_vol":423.0,"unclassified_vol":0.0,"imbalance":-0.249631,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.10929},"context":{"vwap":7.740513,"price_vs_vwap_pct":1.414465,"ema9":7.835156,"ema20":7.822393,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.127226,"dist_to_hod_atr":0.457961,"atr":0.021836,"spread_atr":0.457961,"own_change_pct":0.463247,"rel_strength_pct":{"SPY":0.395257,"IWM":0.363274}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.321272},"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":"e8a55a76d463","ts":"2026-09-15T16:55:30+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1732,"target":11.44,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":30.2,"room_to_5d_high_atr":1.15},"price":11.39,"vwap":11.2857,"ext_from_open_pct":1.15,"max_ext_allowed_pct":3.0,"volume_pace":0.848,"trend":"flat","recent_slope_pct":-0.0132,"volatility":"high"},"price":11.39,"volume":{"bars":205,"last_bar_volume":118059.0,"baseline_avg":62777.65,"bar_rvol":1.88059,"raw_accel":0.443599,"smooth_accel":0.250796,"accel_momentum":0.40858,"rvol_3bar":[0.47015,1.288818,1.88059],"trend_3bar":"ACCELERATING","projected_rvol":2.299831},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":31531.0,"sell_vol":40658.0,"unclassified_vol":0.0,"imbalance":-0.126432,"bid":11.39,"ask":11.4,"spread_pct":0.087758,"quote_size_imbalance":null,"quote_age_s":0.006038},"context":{"vwap":11.285358,"price_vs_vwap_pct":0.92724,"ema9":11.388759,"ema20":11.385728,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-0.783972,"dist_to_hod_atr":3.410575,"atr":0.026389,"spread_atr":0.378953,"own_change_pct":-0.175439,"rel_strength_pct":{"SPY":-0.243429,"IWM":-0.275412}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.237767},"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":"34fededf45e8","ts":"2026-09-15T16:55:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8343,"target":9.97,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":496.9,"room_to_5d_high_atr":-5.72},"price":9.8985,"vwap":9.6501,"ext_from_open_pct":4.75,"max_ext_allowed_pct":4.0,"volume_pace":3.829,"trend":"flat","recent_slope_pct":-0.0383,"volatility":"low"},"price":9.8985,"volume":{"bars":205,"last_bar_volume":2591.0,"baseline_avg":3958.7,"bar_rvol":0.654508,"raw_accel":-0.718094,"smooth_accel":14.830998,"accel_momentum":11.928026,"rvol_3bar":[2.203679,2.532584,0.654508],"trend_3bar":"MIXED","projected_rvol":0.369385},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":4.0,"sell_vol":830.0,"unclassified_vol":0.0,"imbalance":-0.990408,"bid":9.9,"ask":9.93,"spread_pct":0.302572,"quote_size_imbalance":null,"quote_age_s":4.989529},"context":{"vwap":9.650027,"price_vs_vwap_pct":2.574843,"ema9":9.914489,"ema20":9.907806,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.955882,"dist_to_hod_atr":7.548933,"atr":0.039939,"spread_atr":0.751138,"own_change_pct":-0.251509,"rel_strength_pct":{"SPY":-0.319499,"IWM":-0.351483}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.64823},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3206df66a34e","ts":"2026-09-15T16:55:50+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.56 below VWAP $9.57","plan":{"state":"PASS","setup":"","stop":9.4136,"target":9.87,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.5676,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0575,"volatility":"high"},"price":9.565,"volume":{"bars":205,"last_bar_volume":28058.0,"baseline_avg":16142.4,"bar_rvol":1.738155,"raw_accel":2.505935,"smooth_accel":7.834805,"accel_momentum":-5.108428,"rvol_3bar":[21.299548,0.470044,1.738155],"trend_3bar":"MIXED","projected_rvol":0.460824},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":3439.0,"sell_vol":2022.0,"unclassified_vol":0.0,"imbalance":0.259476,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.408167},"context":{"vwap":9.567599,"price_vs_vwap_pct":-0.02716,"ema9":9.58738,"ema20":9.587588,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":13.632596,"atr":0.019439,"spread_atr":0.514438,"own_change_pct":-0.125065,"rel_strength_pct":{"SPY":-0.193056,"IWM":-0.225039}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.45101},"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":"2531f4e469b9","ts":"2026-09-15T16:55:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1185.0s, plan says PASS; stop 7.74, target 7.91 (prev_day_high), R:R 0.88; target 0.08 away > ~0.07 reachable in 179 min","plan":{"state":"PASS","setup":"","stop":7.7448,"target":7.91,"target_label":"prev_day_high","reward_risk":0.88,"pos_in_5d_range_pct":68.4,"room_to_5d_high_atr":0.49},"price":7.8327,"vwap":7.7406,"ext_from_open_pct":1.72,"max_ext_allowed_pct":3.0,"volume_pace":0.565,"trend":"flat","recent_slope_pct":-0.0215,"volatility":"medium"},"price":7.8327,"volume":{"bars":205,"last_bar_volume":14759.0,"baseline_avg":11467.85,"bar_rvol":1.286989,"raw_accel":0.765853,"smooth_accel":-0.623519,"accel_momentum":-2.556674,"rvol_3bar":[0.439885,0.74634,1.286989],"trend_3bar":"ACCELERATING","projected_rvol":0.393134},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":2960.0,"sell_vol":536.0,"unclassified_vol":0.0,"imbalance":0.693364,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.387304},"context":{"vwap":7.740513,"price_vs_vwap_pct":1.190966,"ema9":7.835156,"ema20":7.822393,"ema_stack":false,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.347328,"dist_to_hod_atr":1.250232,"atr":0.021836,"spread_atr":0.457961,"own_change_pct":0.463247,"rel_strength_pct":{"SPY":0.395257,"IWM":0.363274}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.892352},"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":"50c08e64fa18","ts":"2026-09-15T16:55:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 1190.0s, plan says WATCH; stop 7.75, target 7.91 (prev_day_high), R:R 0.79; R:R 0.79 < 2.0 at 7.84; breakout: 1-min close > 7.87 on >= 18942 sh","plan":{"state":"WATCH","setup":"","stop":7.7525,"target":7.91,"target_label":"prev_day_high","reward_risk":0.79,"pos_in_5d_range_pct":69.8,"room_to_5d_high_atr":0.47},"price":7.8404,"vwap":7.7406,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.565,"trend":"flat","recent_slope_pct":-0.0019,"volatility":"medium"},"price":7.8404,"volume":{"bars":205,"last_bar_volume":14759.0,"baseline_avg":11467.85,"bar_rvol":1.286989,"raw_accel":0.765853,"smooth_accel":-0.623519,"accel_momentum":-2.556674,"rvol_3bar":[0.439885,0.74634,1.286989],"trend_3bar":"ACCELERATING","projected_rvol":0.358821},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2973.0,"sell_vol":338.0,"unclassified_vol":0.0,"imbalance":0.795832,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":5.387304},"context":{"vwap":7.740513,"price_vs_vwap_pct":1.290442,"ema9":7.835156,"ema20":7.822393,"ema_stack":true,"ema_warm":true,"hod":7.86,"dist_to_hod_pct":-0.249364,"dist_to_hod_atr":0.897603,"atr":0.021836,"spread_atr":0.457961,"own_change_pct":0.463247,"rel_strength_pct":{"SPY":0.395257,"IWM":0.363274}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.024227},"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":"2eebe0784221","ts":"2026-09-15T16:55:55+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.15},"price":10.817,"vwap":10.5197,"ext_from_open_pct":3.91,"max_ext_allowed_pct":4.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":-0.1231,"volatility":"medium"},"price":10.817,"volume":{"bars":205,"last_bar_volume":62360.0,"baseline_avg":35357.05,"bar_rvol":1.763722,"raw_accel":1.48962,"smooth_accel":-0.486994,"accel_momentum":-1.125938,"rvol_3bar":[1.879226,0.712357,1.763722],"trend_3bar":"MIXED","projected_rvol":1.728137},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":43986.0,"sell_vol":7632.0,"unclassified_vol":0.0,"imbalance":0.704289,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.870847},"context":{"vwap":10.516127,"price_vs_vwap_pct":2.861067,"ema9":10.786816,"ema20":10.716009,"ema_stack":true,"ema_warm":true,"hod":10.895,"dist_to_hod_pct":-0.715925,"dist_to_hod_atr":1.041221,"atr":0.074912,"spread_atr":0.13349,"own_change_pct":0.298521,"rel_strength_pct":{"SPY":0.230531,"IWM":0.198548}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.24217},"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":"2478a3634d26","ts":"2026-09-15T16:56:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.12,"pos_in_5d_range_pct":53.1,"room_to_5d_high_atr":1.02},"price":10.895,"vwap":10.5204,"ext_from_open_pct":4.66,"max_ext_allowed_pct":4.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":0.0207,"volatility":"medium"},"price":10.895,"volume":{"bars":205,"last_bar_volume":62360.0,"baseline_avg":35357.05,"bar_rvol":1.763722,"raw_accel":1.48962,"smooth_accel":-0.486994,"accel_momentum":-1.125938,"rvol_3bar":[1.879226,0.712357,1.763722],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":170,"trade_rate":5.666667,"buy_vol":46331.0,"sell_vol":9005.0,"unclassified_vol":0.0,"imbalance":0.674534,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.164259},"context":{"vwap":10.516127,"price_vs_vwap_pct":3.602785,"ema9":10.786816,"ema20":10.716009,"ema_stack":true,"ema_warm":true,"hod":10.895,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.074912,"spread_atr":0.13349,"own_change_pct":0.298521,"rel_strength_pct":{"SPY":0.229871,"IWM":0.186311}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.18969},"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":"3b3e0bf1fef5","ts":"2026-09-15T16:56:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.825,"target":10.1,"target_label":"clear air (typical 60-min move)","reward_risk":1.75,"pos_in_5d_range_pct":504.1,"room_to_5d_high_atr":-5.82},"price":9.925,"vwap":9.6503,"ext_from_open_pct":5.03,"max_ext_allowed_pct":5.0,"volume_pace":3.822,"trend":"flat","recent_slope_pct":-0.0252,"volatility":"low"},"price":9.925,"volume":{"bars":206,"last_bar_volume":861.0,"baseline_avg":3582.45,"bar_rvol":0.240338,"raw_accel":-0.667696,"smooth_accel":0.62277,"accel_momentum":-14.208228,"rvol_3bar":[2.532584,0.654508,0.240338],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":100.0,"sell_vol":1008.0,"unclassified_vol":0.0,"imbalance":-0.819495,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":2.83221},"context":{"vwap":9.650151,"price_vs_vwap_pct":2.848129,"ema9":9.913591,"ema20":9.908015,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.696078,"dist_to_hod_atr":7.007486,"atr":0.039244,"spread_atr":1.274088,"own_change_pct":-0.100806,"rel_strength_pct":{"SPY":-0.169457,"IWM":-0.213017}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.196956},"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":"738e4e79d64d","ts":"2026-09-15T16:56:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7104,"target":5.83,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":96.3,"room_to_5d_high_atr":0.05},"price":5.81,"vwap":5.7404,"ext_from_open_pct":1.93,"max_ext_allowed_pct":3.0,"volume_pace":0.549,"trend":"flat","recent_slope_pct":-0.0177,"volatility":"high"},"price":5.81,"volume":{"bars":206,"last_bar_volume":1562.0,"baseline_avg":2057.75,"bar_rvol":0.759082,"raw_accel":1.93609,"smooth_accel":-0.568251,"accel_momentum":0.023312,"rvol_3bar":[0.312483,0.22218,0.759082],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":306.0,"sell_vol":162.0,"unclassified_vol":0.0,"imbalance":0.307692,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":2.571869},"context":{"vwap":5.740361,"price_vs_vwap_pct":1.213154,"ema9":5.81919,"ema20":5.822664,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.683761,"dist_to_hod_atr":3.804559,"atr":0.010514,"spread_atr":0.95114,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.06865,"IWM":-0.11221}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.233564},"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":"653d477d4651","ts":"2026-09-15T16:56:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.12,"pos_in_5d_range_pct":53.1,"room_to_5d_high_atr":1.02},"price":10.895,"vwap":10.5205,"ext_from_open_pct":4.66,"max_ext_allowed_pct":4.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":0.1818,"volatility":"medium"},"price":10.895,"volume":{"bars":206,"last_bar_volume":62436.0,"baseline_avg":37058.25,"bar_rvol":1.684807,"raw_accel":0.001219,"smooth_accel":-0.429592,"accel_momentum":0.057403,"rvol_3bar":[0.712357,1.763722,1.684807],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":173,"trade_rate":5.766667,"buy_vol":46175.0,"sell_vol":9077.0,"unclassified_vol":0.0,"imbalance":0.671433,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.537759},"context":{"vwap":10.520439,"price_vs_vwap_pct":3.560314,"ema9":10.808452,"ema20":10.733056,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.137489,"dist_to_hod_atr":0.195266,"atr":0.076818,"spread_atr":0.130177,"own_change_pct":1.618244,"rel_strength_pct":{"SPY":1.549593,"IWM":1.506034}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.131235},"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":"bb71a8cca178","ts":"2026-09-15T16:56:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4111,"target":8.8,"target_label":"prev_day_high","reward_risk":1.03,"pos_in_5d_range_pct":11.7,"room_to_5d_high_atr":3.62},"price":8.6023,"vwap":8.381,"ext_from_open_pct":2.78,"max_ext_allowed_pct":3.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":0.0619,"volatility":"high"},"price":8.6023,"volume":{"bars":206,"last_bar_volume":122139.0,"baseline_avg":70607.6,"bar_rvol":1.729828,"raw_accel":-0.000303,"smooth_accel":-0.252039,"accel_momentum":0.24177,"rvol_3bar":[0.597729,1.853286,1.729828],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":191,"trade_rate":6.366667,"buy_vol":29668.0,"sell_vol":59580.0,"unclassified_vol":0.0,"imbalance":-0.335156,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":2.237324},"context":{"vwap":8.380692,"price_vs_vwap_pct":2.644264,"ema9":8.604619,"ema20":8.564532,"ema_stack":false,"ema_warm":true,"hod":8.66,"dist_to_hod_pct":-0.666282,"dist_to_hod_atr":1.247152,"atr":0.046265,"spread_atr":0.216144,"own_change_pct":1.134624,"rel_strength_pct":{"SPY":1.065974,"IWM":1.022414}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.579762},"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":"bd27346fcc44","ts":"2026-09-15T16:56:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8173,"target":10.0923,"target_label":"clear air (typical 60-min move)","reward_risk":1.75,"pos_in_5d_range_pct":502.0,"room_to_5d_high_atr":-5.79},"price":9.9173,"vwap":9.6503,"ext_from_open_pct":4.94,"max_ext_allowed_pct":5.0,"volume_pace":3.821,"trend":"flat","recent_slope_pct":-0.0407,"volatility":"low"},"price":9.9173,"volume":{"bars":206,"last_bar_volume":861.0,"baseline_avg":3582.45,"bar_rvol":0.240338,"raw_accel":-0.667696,"smooth_accel":0.62277,"accel_momentum":-14.208228,"rvol_3bar":[2.532584,0.654508,0.240338],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":100.0,"sell_vol":1027.0,"unclassified_vol":0.0,"imbalance":-0.822538,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":0.724985},"context":{"vwap":9.650151,"price_vs_vwap_pct":2.768337,"ema9":9.913591,"ema20":9.908015,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.771569,"dist_to_hod_atr":7.203695,"atr":0.039244,"spread_atr":1.274088,"own_change_pct":-0.100806,"rel_strength_pct":{"SPY":-0.169457,"IWM":-0.213017}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.197687},"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":"1b8bc83629af","ts":"2026-09-15T16:56:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1090.0s, plan says PASS; stop 8.37, target 8.56 (premarket_high), R:R 1.04; target 0.09 away > ~0.09 reachable in 179 min","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3511,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":-0.0336,"volatility":"medium"},"price":8.465,"volume":{"bars":206,"last_bar_volume":8086.0,"baseline_avg":699.35,"bar_rvol":11.562165,"raw_accel":17.008909,"smooth_accel":5.675676,"accel_momentum":6.1715,"rvol_3bar":[0.131179,0.636383,11.562165],"trend_3bar":"ACCELERATING","projected_rvol":null},"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":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":1.013458},"context":{"vwap":8.351082,"price_vs_vwap_pct":1.364108,"ema9":8.47524,"ema20":8.472964,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":2.528499,"atr":0.013842,"spread_atr":0.722428,"own_change_pct":0.017699,"rel_strength_pct":{"SPY":-0.050951,"IWM":-0.094511}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-11.562165},"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":"91e62652435b","ts":"2026-09-15T16:56:10+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.7156,"target":5.9089,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":97.3,"room_to_5d_high_atr":0.04},"price":5.8152,"vwap":5.7404,"ext_from_open_pct":2.02,"max_ext_allowed_pct":3.0,"volume_pace":0.548,"trend":"flat","recent_slope_pct":0.0002,"volatility":"high"},"price":5.8152,"volume":{"bars":206,"last_bar_volume":1562.0,"baseline_avg":2057.75,"bar_rvol":0.759082,"raw_accel":1.93609,"smooth_accel":-0.568251,"accel_momentum":0.023312,"rvol_3bar":[0.312483,0.22218,0.759082],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":211.0,"sell_vol":162.0,"unclassified_vol":0.0,"imbalance":0.131367,"bid":5.81,"ask":5.82,"spread_pct":0.171969,"quote_size_imbalance":null,"quote_age_s":7.571869},"context":{"vwap":5.740361,"price_vs_vwap_pct":1.303741,"ema9":5.81919,"ema20":5.822664,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.594872,"dist_to_hod_atr":3.309966,"atr":0.010514,"spread_atr":0.95114,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.06865,"IWM":-0.11221}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.099718},"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":"24bc11d79f8e","ts":"2026-09-15T16:56:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.34,"pos_in_5d_range_pct":49.1,"room_to_5d_high_atr":1.11},"price":10.8433,"vwap":10.5207,"ext_from_open_pct":4.16,"max_ext_allowed_pct":3.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":0.0866,"volatility":"medium"},"price":10.8433,"volume":{"bars":206,"last_bar_volume":62436.0,"baseline_avg":37058.25,"bar_rvol":1.684807,"raw_accel":0.001219,"smooth_accel":-0.429592,"accel_momentum":0.057403,"rvol_3bar":[0.712357,1.763722,1.684807],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":175,"trade_rate":5.833333,"buy_vol":48245.0,"sell_vol":9940.0,"unclassified_vol":0.0,"imbalance":0.658331,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.184818},"context":{"vwap":10.520439,"price_vs_vwap_pct":3.06889,"ema9":10.808452,"ema20":10.733056,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.611366,"dist_to_hod_atr":0.868282,"atr":0.076818,"spread_atr":0.130177,"own_change_pct":1.618244,"rel_strength_pct":{"SPY":1.549593,"IWM":1.506034}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.109161},"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":"ebc4406c311b","ts":"2026-09-15T16:56:10+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4688,"target":8.8,"target_label":"prev_day_high","reward_risk":0.73,"pos_in_5d_range_pct":13.6,"room_to_5d_high_atr":3.54},"price":8.66,"vwap":8.3811,"ext_from_open_pct":3.46,"max_ext_allowed_pct":3.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":0.1954,"volatility":"high"},"price":8.66,"volume":{"bars":206,"last_bar_volume":122139.0,"baseline_avg":70607.6,"bar_rvol":1.729828,"raw_accel":-0.000303,"smooth_accel":-0.252039,"accel_momentum":0.24177,"rvol_3bar":[0.597729,1.853286,1.729828],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":84,"trade_rate":2.8,"buy_vol":23801.0,"sell_vol":43259.0,"unclassified_vol":0.0,"imbalance":-0.290158,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":7.237324},"context":{"vwap":8.380692,"price_vs_vwap_pct":3.332752,"ema9":8.604619,"ema20":8.564532,"ema_stack":true,"ema_warm":true,"hod":8.66,"dist_to_hod_pct":0.0,"dist_to_hod_atr":0.0,"atr":0.046265,"spread_atr":0.216144,"own_change_pct":1.134624,"rel_strength_pct":{"SPY":1.065974,"IWM":1.022414}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.501924},"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":"0d347dabc361","ts":"2026-09-15T16:56:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.803,"target":9.97,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":498.1,"room_to_5d_high_atr":-5.74},"price":9.903,"vwap":9.6503,"ext_from_open_pct":4.79,"max_ext_allowed_pct":5.0,"volume_pace":3.819,"trend":"flat","recent_slope_pct":-0.0696,"volatility":"low"},"price":9.903,"volume":{"bars":206,"last_bar_volume":861.0,"baseline_avg":3582.45,"bar_rvol":0.240338,"raw_accel":-0.667696,"smooth_accel":0.62277,"accel_momentum":-14.208228,"rvol_3bar":[2.532584,0.654508,0.240338],"trend_3bar":"DECELERATING","projected_rvol":1.252774},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":100.0,"sell_vol":1030.0,"unclassified_vol":0.0,"imbalance":-0.823009,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":2.625343},"context":{"vwap":9.650151,"price_vs_vwap_pct":2.620153,"ema9":9.913591,"ema20":9.908015,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.911765,"dist_to_hod_atr":7.568084,"atr":0.039244,"spread_atr":1.274088,"own_change_pct":-0.100806,"rel_strength_pct":{"SPY":-0.169457,"IWM":-0.213017}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.197801},"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":"a10332eae2ae","ts":"2026-09-15T16:56:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.14,"pos_in_5d_range_pct":52.8,"room_to_5d_high_atr":1.03},"price":10.89,"vwap":10.5209,"ext_from_open_pct":4.61,"max_ext_allowed_pct":3.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":0.1726,"volatility":"medium"},"price":10.89,"volume":{"bars":206,"last_bar_volume":62436.0,"baseline_avg":37058.25,"bar_rvol":1.684807,"raw_accel":0.001219,"smooth_accel":-0.429592,"accel_momentum":0.057403,"rvol_3bar":[0.712357,1.763722,1.684807],"trend_3bar":"MIXED","projected_rvol":0.715738},"flow":{"window_s":30,"trades":179,"trade_rate":5.966667,"buy_vol":49403.0,"sell_vol":10109.0,"unclassified_vol":0.0,"imbalance":0.66027,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.252471},"context":{"vwap":10.520439,"price_vs_vwap_pct":3.512788,"ema9":10.808452,"ema20":10.733056,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.183318,"dist_to_hod_atr":0.260355,"atr":0.076818,"spread_atr":0.130177,"own_change_pct":1.618244,"rel_strength_pct":{"SPY":1.549593,"IWM":1.506034}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.112428},"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":"6e8479897219","ts":"2026-09-15T16:56:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1100.0s, plan says WATCH; stop 8.38, target 8.56 (premarket_high), R:R 0.98; R:R 0.98 < 2.0 at 8.47; breakout: 1-min close > 8.51 on >= 1606 sh","plan":{"state":"WATCH","setup":"","stop":8.3805,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.6,"room_to_5d_high_atr":0.83},"price":8.4706,"vwap":8.3511,"ext_from_open_pct":1.69,"max_ext_allowed_pct":4.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":-0.0204,"volatility":"medium"},"price":8.4706,"volume":{"bars":206,"last_bar_volume":8086.0,"baseline_avg":699.35,"bar_rvol":11.562165,"raw_accel":17.008909,"smooth_accel":5.675676,"accel_momentum":6.1715,"rvol_3bar":[0.131179,0.636383,11.562165],"trend_3bar":"ACCELERATING","projected_rvol":0.090084},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":19.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.809524,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.193254},"context":{"vwap":8.351082,"price_vs_vwap_pct":1.431165,"ema9":8.47524,"ema20":8.472964,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.345882,"dist_to_hod_atr":2.123939,"atr":0.013842,"spread_atr":0.722428,"own_change_pct":0.017699,"rel_strength_pct":{"SPY":-0.050951,"IWM":-0.094511}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":9.359848},"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":"c43a9f56234a","ts":"2026-09-15T16:56:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.819,"target":10.094,"target_label":"clear air (typical 60-min move)","reward_risk":1.75,"pos_in_5d_range_pct":502.4,"room_to_5d_high_atr":-5.8},"price":9.919,"vwap":9.6503,"ext_from_open_pct":4.96,"max_ext_allowed_pct":4.0,"volume_pace":3.816,"trend":"flat","recent_slope_pct":-0.0373,"volatility":"low"},"price":9.919,"volume":{"bars":206,"last_bar_volume":861.0,"baseline_avg":3582.45,"bar_rvol":0.240338,"raw_accel":-0.667696,"smooth_accel":0.62277,"accel_momentum":-14.208228,"rvol_3bar":[2.532584,0.654508,0.240338],"trend_3bar":"DECELERATING","projected_rvol":0.760373},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":113.0,"sell_vol":1022.0,"unclassified_vol":0.0,"imbalance":-0.800881,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":4.892539},"context":{"vwap":9.650151,"price_vs_vwap_pct":2.785953,"ema9":9.913591,"ema20":9.908015,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.754902,"dist_to_hod_atr":7.160376,"atr":0.039244,"spread_atr":1.274088,"own_change_pct":-0.100806,"rel_strength_pct":{"SPY":-0.169457,"IWM":-0.213017}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.192482},"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":"e0a0df9d1a6c","ts":"2026-09-15T16:56:30+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.7016,"target":5.83,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":94.7,"room_to_5d_high_atr":0.07},"price":5.8012,"vwap":5.7422,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":0.564,"trend":"flat","recent_slope_pct":-0.048,"volatility":"high"},"price":5.8012,"volume":{"bars":206,"last_bar_volume":1562.0,"baseline_avg":2057.75,"bar_rvol":0.759082,"raw_accel":1.93609,"smooth_accel":-0.568251,"accel_momentum":0.023312,"rvol_3bar":[0.312483,0.22218,0.759082],"trend_3bar":"MIXED","projected_rvol":23.243834},"flow":{"window_s":30,"trades":170,"trade_rate":5.666667,"buy_vol":13622.0,"sell_vol":10293.0,"unclassified_vol":0.0,"imbalance":0.139201,"bid":5.79,"ask":5.8,"spread_pct":0.172563,"quote_size_imbalance":null,"quote_age_s":1.892234},"context":{"vwap":5.740361,"price_vs_vwap_pct":1.059854,"ema9":5.81919,"ema20":5.822664,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.834188,"dist_to_hod_atr":4.641562,"atr":0.010514,"spread_atr":0.95114,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.06865,"IWM":-0.11221}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.105665},"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":"f4096e7324d4","ts":"2026-09-15T16:56:30+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.4738,"target":8.8,"target_label":"prev_day_high","reward_risk":0.71,"pos_in_5d_range_pct":13.7,"room_to_5d_high_atr":3.54},"price":8.665,"vwap":8.3814,"ext_from_open_pct":3.52,"max_ext_allowed_pct":4.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":0.207,"volatility":"high"},"price":8.665,"volume":{"bars":206,"last_bar_volume":122139.0,"baseline_avg":70607.6,"bar_rvol":1.729828,"raw_accel":-0.000303,"smooth_accel":-0.252039,"accel_momentum":0.24177,"rvol_3bar":[0.597729,1.853286,1.729828],"trend_3bar":"MIXED","projected_rvol":1.139367},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":16469.0,"sell_vol":23755.0,"unclassified_vol":0.0,"imbalance":-0.181136,"bid":8.66,"ask":8.67,"spread_pct":0.115407,"quote_size_imbalance":null,"quote_age_s":0.240093},"context":{"vwap":8.380692,"price_vs_vwap_pct":3.392413,"ema9":8.604619,"ema20":8.564532,"ema_stack":true,"ema_warm":true,"hod":8.66,"dist_to_hod_pct":0.057737,"dist_to_hod_atr":-0.108072,"atr":0.046265,"spread_atr":0.216144,"own_change_pct":1.134624,"rel_strength_pct":{"SPY":1.065974,"IWM":1.022414}},"vas":{"raw":0,"score":4.4,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.313333},"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":"14673289f4ef","ts":"2026-09-15T16:56:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2523,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":0.088,"volatility":"medium"},"price":7.395,"volume":{"bars":206,"last_bar_volume":112895.0,"baseline_avg":257313.0,"bar_rvol":0.438746,"raw_accel":-0.684278,"smooth_accel":-0.380964,"accel_momentum":-0.13123,"rvol_3bar":[0.392849,1.403994,0.438746],"trend_3bar":"MIXED","projected_rvol":1.916817},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":131919.0,"sell_vol":114692.0,"unclassified_vol":0.0,"imbalance":0.069855,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.234141},"context":{"vwap":7.251295,"price_vs_vwap_pct":1.981786,"ema9":7.387163,"ema20":7.376569,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.202429,"dist_to_hod_atr":0.491592,"atr":0.030513,"spread_atr":0.327728,"own_change_pct":-0.067568,"rel_strength_pct":{"SPY":-0.136218,"IWM":-0.179778}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.030649},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"de8ee4f5c885","ts":"2026-09-15T16:56:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.81,"target":9.97,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6503,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":3.813,"trend":"flat","recent_slope_pct":-0.0555,"volatility":"low"},"price":9.91,"volume":{"bars":206,"last_bar_volume":861.0,"baseline_avg":3582.45,"bar_rvol":0.240338,"raw_accel":-0.667696,"smooth_accel":0.62277,"accel_momentum":-14.208228,"rvol_3bar":[2.532584,0.654508,0.240338],"trend_3bar":"DECELERATING","projected_rvol":0.57997},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":63.0,"sell_vol":49.0,"unclassified_vol":0.0,"imbalance":0.125,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":4.98951},"context":{"vwap":9.650151,"price_vs_vwap_pct":2.692691,"ema9":9.913591,"ema20":9.908015,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":7.389712,"atr":0.039244,"spread_atr":1.274088,"own_change_pct":-0.100806,"rel_strength_pct":{"SPY":-0.169457,"IWM":-0.213017}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.030042},"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":"84be7a48d78b","ts":"2026-09-15T16:56:35+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4638,"target":8.8,"target_label":"prev_day_high","reward_risk":0.76,"pos_in_5d_range_pct":13.4,"room_to_5d_high_atr":3.55},"price":8.655,"vwap":8.3821,"ext_from_open_pct":3.41,"max_ext_allowed_pct":3.0,"volume_pace":0.789,"trend":"flat","recent_slope_pct":0.1839,"volatility":"high"},"price":8.655,"volume":{"bars":206,"last_bar_volume":122139.0,"baseline_avg":70607.6,"bar_rvol":1.729828,"raw_accel":-0.000303,"smooth_accel":-0.252039,"accel_momentum":0.24177,"rvol_3bar":[0.597729,1.853286,1.729828],"trend_3bar":"MIXED","projected_rvol":2.020673},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":19371.0,"sell_vol":41093.0,"unclassified_vol":0.0,"imbalance":-0.359255,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":2.408593},"context":{"vwap":8.380692,"price_vs_vwap_pct":3.273091,"ema9":8.604619,"ema20":8.564532,"ema_stack":true,"ema_warm":true,"hod":8.66,"dist_to_hod_pct":-0.057737,"dist_to_hod_atr":0.108072,"atr":0.046265,"spread_atr":0.216144,"own_change_pct":1.134624,"rel_strength_pct":{"SPY":1.065974,"IWM":1.022414}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.62145},"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":"5c9d8b03c353","ts":"2026-09-15T16:56:35+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2523,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":0.1015,"volatility":"medium"},"price":7.4,"volume":{"bars":206,"last_bar_volume":112895.0,"baseline_avg":257313.0,"bar_rvol":0.438746,"raw_accel":-0.684278,"smooth_accel":-0.380964,"accel_momentum":-0.13123,"rvol_3bar":[0.392849,1.403994,0.438746],"trend_3bar":"MIXED","projected_rvol":1.646837},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":67617.0,"sell_vol":43363.0,"unclassified_vol":0.0,"imbalance":0.218544,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.652089},"context":{"vwap":7.251295,"price_vs_vwap_pct":2.050739,"ema9":7.387163,"ema20":7.376569,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.134953,"dist_to_hod_atr":0.327728,"atr":0.030513,"spread_atr":0.327728,"own_change_pct":-0.067568,"rel_strength_pct":{"SPY":-0.136218,"IWM":-0.179778}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.095885},"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":"8122d1802c13","ts":"2026-09-15T16:56:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1120.0s, plan says PASS; stop 8.37, target 8.56 (premarket_high), R:R 1.04; target 0.09 away > ~0.09 reachable in 178 min","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3511,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":-0.0336,"volatility":"medium"},"price":8.465,"volume":{"bars":206,"last_bar_volume":8086.0,"baseline_avg":699.35,"bar_rvol":11.562165,"raw_accel":17.008909,"smooth_accel":5.675676,"accel_momentum":6.1715,"rvol_3bar":[0.131179,0.636383,11.562165],"trend_3bar":"ACCELERATING","projected_rvol":0.261672},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":21.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-0.652893,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":8.680489},"context":{"vwap":8.351082,"price_vs_vwap_pct":1.364108,"ema9":8.47524,"ema20":8.472964,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":2.528499,"atr":0.013842,"spread_atr":0.722428,"own_change_pct":0.017699,"rel_strength_pct":{"SPY":-0.050951,"IWM":-0.094511}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-7.548851},"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":"4eaed12919f3","ts":"2026-09-15T16:56:40+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2523,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":0.088,"volatility":"medium"},"price":7.395,"volume":{"bars":206,"last_bar_volume":112895.0,"baseline_avg":257313.0,"bar_rvol":0.438746,"raw_accel":-0.684278,"smooth_accel":-0.380964,"accel_momentum":-0.13123,"rvol_3bar":[0.392849,1.403994,0.438746],"trend_3bar":"MIXED","projected_rvol":1.536388},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":75663.0,"sell_vol":31808.0,"unclassified_vol":0.0,"imbalance":0.408064,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.790705},"context":{"vwap":7.251295,"price_vs_vwap_pct":1.981786,"ema9":7.387163,"ema20":7.376569,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.202429,"dist_to_hod_atr":0.491592,"atr":0.030513,"spread_atr":0.327728,"own_change_pct":-0.067568,"rel_strength_pct":{"SPY":-0.136218,"IWM":-0.179778}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.179036},"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":"3530ece97454","ts":"2026-09-15T16:56:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":47.8,"room_to_5d_high_atr":1.14},"price":10.8259,"vwap":10.5213,"ext_from_open_pct":4.0,"max_ext_allowed_pct":3.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":0.0546,"volatility":"medium"},"price":10.8259,"volume":{"bars":206,"last_bar_volume":62436.0,"baseline_avg":37058.25,"bar_rvol":1.684807,"raw_accel":0.001219,"smooth_accel":-0.429592,"accel_momentum":0.057403,"rvol_3bar":[0.712357,1.763722,1.684807],"trend_3bar":"MIXED","projected_rvol":0.473453},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3311.0,"sell_vol":3217.0,"unclassified_vol":0.0,"imbalance":0.0144,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.326089},"context":{"vwap":10.520439,"price_vs_vwap_pct":2.903498,"ema9":10.808452,"ema20":10.733056,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.770852,"dist_to_hod_atr":1.094791,"atr":0.076818,"spread_atr":0.130177,"own_change_pct":1.618244,"rel_strength_pct":{"SPY":1.549593,"IWM":1.506034}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.02426},"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":"c39cb7f3f472","ts":"2026-09-15T16:56:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":52.9,"room_to_5d_high_atr":1.02},"price":10.892,"vwap":10.5215,"ext_from_open_pct":4.63,"max_ext_allowed_pct":3.0,"volume_pace":1.006,"trend":"flat","recent_slope_pct":0.1763,"volatility":"medium"},"price":10.892,"volume":{"bars":206,"last_bar_volume":62436.0,"baseline_avg":37058.25,"bar_rvol":1.684807,"raw_accel":0.001219,"smooth_accel":-0.429592,"accel_momentum":0.057403,"rvol_3bar":[0.712357,1.763722,1.684807],"trend_3bar":"MIXED","projected_rvol":0.463025},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":3147.0,"sell_vol":3176.0,"unclassified_vol":0.0,"imbalance":-0.004586,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.172659},"context":{"vwap":10.520439,"price_vs_vwap_pct":3.531799,"ema9":10.808452,"ema20":10.733056,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.164986,"dist_to_hod_atr":0.234319,"atr":0.076818,"spread_atr":0.130177,"own_change_pct":1.618244,"rel_strength_pct":{"SPY":1.549593,"IWM":1.506034}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.007727},"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":"e7f8bc52f766","ts":"2026-09-15T16:57:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.42,"pos_in_5d_range_pct":47.8,"room_to_5d_high_atr":1.13},"price":10.8264,"vwap":10.5215,"ext_from_open_pct":4.0,"max_ext_allowed_pct":3.0,"volume_pace":1.006,"trend":"flat","recent_slope_pct":0.0555,"volatility":"medium"},"price":10.8264,"volume":{"bars":206,"last_bar_volume":62436.0,"baseline_avg":37058.25,"bar_rvol":1.684807,"raw_accel":0.001219,"smooth_accel":-0.429592,"accel_momentum":0.057403,"rvol_3bar":[0.712357,1.763722,1.684807],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":3045.0,"sell_vol":2733.0,"unclassified_vol":0.0,"imbalance":0.053998,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.421217},"context":{"vwap":10.520439,"price_vs_vwap_pct":2.90825,"ema9":10.808452,"ema20":10.733056,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.766269,"dist_to_hod_atr":1.088282,"atr":0.076818,"spread_atr":0.130177,"own_change_pct":1.618244,"rel_strength_pct":{"SPY":1.591181,"IWM":1.527041}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.090976},"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":"9cbb6c320229","ts":"2026-09-15T16:57:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.845,"target":10.1,"target_label":"clear air (typical 60-min move)","reward_risk":2.19,"pos_in_5d_range_pct":504.1,"room_to_5d_high_atr":-5.82},"price":9.925,"vwap":9.6503,"ext_from_open_pct":5.03,"max_ext_allowed_pct":4.0,"volume_pace":3.804,"trend":"flat","recent_slope_pct":-0.0114,"volatility":"low"},"price":9.925,"volume":{"bars":207,"last_bar_volume":1245.0,"baseline_avg":3491.75,"bar_rvol":0.356555,"raw_accel":0.426219,"smooth_accel":-0.720649,"accel_momentum":-1.343419,"rvol_3bar":[0.654508,0.240338,0.356555],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":1.0,"sell_vol":33.0,"unclassified_vol":0.0,"imbalance":-0.941176,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":0.04148},"context":{"vwap":9.650331,"price_vs_vwap_pct":2.846213,"ema9":9.911613,"ema20":9.907604,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.696078,"dist_to_hod_atr":7.167208,"atr":0.038369,"spread_atr":1.042503,"own_change_pct":-0.063572,"rel_strength_pct":{"SPY":-0.090635,"IWM":-0.154775}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.335581},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"af3f02c88ec9","ts":"2026-09-15T16:57:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 1145.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.91; R:R 0.91 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1540 sh","plan":{"state":"WATCH","setup":"","stop":8.3862,"target":8.5586,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":0.81},"price":8.4763,"vwap":8.3513,"ext_from_open_pct":1.76,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0126,"volatility":"medium"},"price":8.4763,"volume":{"bars":207,"last_bar_volume":390.0,"baseline_avg":1024.85,"bar_rvol":0.380543,"raw_accel":-0.951768,"smooth_accel":9.765983,"accel_momentum":4.090307,"rvol_3bar":[0.636383,11.562165,0.380543],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":77.0,"sell_vol":321.0,"unclassified_vol":0.0,"imbalance":-0.613065,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.260517},"context":{"vwap":8.351247,"price_vs_vwap_pct":1.497416,"ema9":8.473192,"ema20":8.472205,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.278824,"dist_to_hod_atr":1.733102,"atr":0.013675,"spread_atr":0.731267,"own_change_pct":-0.059032,"rel_strength_pct":{"SPY":-0.086094,"IWM":-0.150234}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.233298},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"36735dfeea63","ts":"2026-09-15T16:57:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.16,"pos_in_5d_range_pct":52.4,"room_to_5d_high_atr":1.04},"price":10.885,"vwap":10.5217,"ext_from_open_pct":4.56,"max_ext_allowed_pct":3.0,"volume_pace":1.006,"trend":"flat","recent_slope_pct":0.1003,"volatility":"medium"},"price":10.885,"volume":{"bars":207,"last_bar_volume":15883.0,"baseline_avg":39354.1,"bar_rvol":0.403592,"raw_accel":-0.745612,"smooth_accel":-0.441315,"accel_momentum":-0.011724,"rvol_3bar":[1.763722,1.684807,0.403592],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":3135.0,"sell_vol":6183.0,"unclassified_vol":0.0,"imbalance":-0.327109,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.962731},"context":{"vwap":10.521459,"price_vs_vwap_pct":3.455237,"ema9":10.812042,"ema20":10.741946,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.229148,"dist_to_hod_atr":0.323733,"atr":0.077224,"spread_atr":0.129493,"own_change_pct":-0.605927,"rel_strength_pct":{"SPY":-0.63299,"IWM":-0.69713}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.132019},"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":"dcca0ca09c9f","ts":"2026-09-15T16:57:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2942,"target":7.47,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":45.9,"room_to_5d_high_atr":1.15},"price":7.3986,"vwap":7.2524,"ext_from_open_pct":3.48,"max_ext_allowed_pct":3.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":0.0571,"volatility":"medium"},"price":7.3986,"volume":{"bars":207,"last_bar_volume":274591.0,"baseline_avg":247528.0,"bar_rvol":1.109333,"raw_accel":1.432269,"smooth_accel":0.039689,"accel_momentum":0.420653,"rvol_3bar":[1.403994,0.438746,1.109333],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":17574.0,"sell_vol":10598.0,"unclassified_vol":0.0,"imbalance":0.247622,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.852172},"context":{"vwap":7.252378,"price_vs_vwap_pct":2.016189,"ema9":7.38873,"ema20":7.378325,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.153846,"dist_to_hod_atr":0.386656,"atr":0.029484,"spread_atr":0.339172,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.027063,"IWM":-0.091202}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.274695},"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":"9abd62d8fbb1","ts":"2026-09-15T16:57:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3513,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0393,"volatility":"medium"},"price":8.465,"volume":{"bars":207,"last_bar_volume":390.0,"baseline_avg":1024.85,"bar_rvol":0.380543,"raw_accel":-0.951768,"smooth_accel":9.765983,"accel_momentum":4.090307,"rvol_3bar":[0.636383,11.562165,0.380543],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":77.0,"sell_vol":242.0,"unclassified_vol":0.0,"imbalance":-0.517241,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":3.015763},"context":{"vwap":8.351247,"price_vs_vwap_pct":1.362107,"ema9":8.473192,"ema20":8.472205,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":2.559433,"atr":0.013675,"spread_atr":0.731267,"own_change_pct":-0.059032,"rel_strength_pct":{"SPY":-0.086094,"IWM":-0.150234}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.196833},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d4b55b5f50bf","ts":"2026-09-15T16:57:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2946,"target":7.47,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":1.15},"price":7.399,"vwap":7.2524,"ext_from_open_pct":3.48,"max_ext_allowed_pct":4.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":0.0582,"volatility":"medium"},"price":7.399,"volume":{"bars":207,"last_bar_volume":274591.0,"baseline_avg":247528.0,"bar_rvol":1.109333,"raw_accel":1.432269,"smooth_accel":0.039689,"accel_momentum":0.420653,"rvol_3bar":[1.403994,0.438746,1.109333],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":2277.0,"sell_vol":10598.0,"unclassified_vol":0.0,"imbalance":-0.646291,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":1.009371},"context":{"vwap":7.252378,"price_vs_vwap_pct":2.021705,"ema9":7.38873,"ema20":7.378325,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.148448,"dist_to_hod_atr":0.373089,"atr":0.029484,"spread_atr":0.339172,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.027063,"IWM":-0.091202}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.716952},"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":"4a00f32f56e5","ts":"2026-09-15T16:57:15+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.3514,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"medium"},"price":8.47,"volume":{"bars":207,"last_bar_volume":390.0,"baseline_avg":1024.85,"bar_rvol":0.380543,"raw_accel":-0.951768,"smooth_accel":9.765983,"accel_momentum":4.090307,"rvol_3bar":[0.636383,11.562165,0.380543],"trend_3bar":"MIXED","projected_rvol":0.967947},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":274.0,"sell_vol":242.0,"unclassified_vol":0.0,"imbalance":0.062016,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.649645},"context":{"vwap":8.351247,"price_vs_vwap_pct":1.421978,"ema9":8.473192,"ema20":8.472205,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":2.1938,"atr":0.013675,"spread_atr":0.731267,"own_change_pct":-0.059032,"rel_strength_pct":{"SPY":-0.086094,"IWM":-0.150234}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.0236},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d4fb40ef49e2","ts":"2026-09-15T16:57:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2524,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":0.0609,"volatility":"medium"},"price":7.4,"volume":{"bars":207,"last_bar_volume":274591.0,"baseline_avg":247528.0,"bar_rvol":1.109333,"raw_accel":1.432269,"smooth_accel":0.039689,"accel_momentum":0.420653,"rvol_3bar":[1.403994,0.438746,1.109333],"trend_3bar":"MIXED","projected_rvol":0.098397},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":5854.0,"sell_vol":10942.0,"unclassified_vol":0.0,"imbalance":-0.302929,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.750429},"context":{"vwap":7.252378,"price_vs_vwap_pct":2.035493,"ema9":7.38873,"ema20":7.378325,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.134953,"dist_to_hod_atr":0.339172,"atr":0.029484,"spread_atr":0.339172,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.027063,"IWM":-0.091202}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.336049},"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":"3f1207a54912","ts":"2026-09-15T16:57:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":49.8,"room_to_5d_high_atr":1.09},"price":10.852,"vwap":10.5231,"ext_from_open_pct":4.25,"max_ext_allowed_pct":4.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":0.0395,"volatility":"medium"},"price":10.852,"volume":{"bars":207,"last_bar_volume":15883.0,"baseline_avg":39354.1,"bar_rvol":0.403592,"raw_accel":-0.745612,"smooth_accel":-0.441315,"accel_momentum":-0.011724,"rvol_3bar":[1.763722,1.684807,0.403592],"trend_3bar":"DECELERATING","projected_rvol":1.923688},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":20273.0,"sell_vol":6592.0,"unclassified_vol":0.0,"imbalance":0.50925,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.049181},"context":{"vwap":10.521459,"price_vs_vwap_pct":3.141593,"ema9":10.812042,"ema20":10.741946,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.531622,"dist_to_hod_atr":0.75106,"atr":0.077224,"spread_atr":0.129493,"own_change_pct":-0.605927,"rel_strength_pct":{"SPY":-0.63299,"IWM":-0.69713}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.205529},"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":"3d25145393fc","ts":"2026-09-15T16:57:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.84,"target":10.095,"target_label":"clear air (typical 60-min move)","reward_risk":2.19,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6505,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":3.799,"trend":"flat","recent_slope_pct":-0.0215,"volatility":"low"},"price":9.92,"volume":{"bars":207,"last_bar_volume":1245.0,"baseline_avg":3491.75,"bar_rvol":0.356555,"raw_accel":0.426219,"smooth_accel":-0.720649,"accel_momentum":-1.343419,"rvol_3bar":[0.654508,0.240338,0.356555],"trend_3bar":"MIXED","projected_rvol":0.639794},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":101.0,"sell_vol":1016.0,"unclassified_vol":0.0,"imbalance":-0.819158,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":3.785822},"context":{"vwap":9.650331,"price_vs_vwap_pct":2.794402,"ema9":9.911613,"ema20":9.907604,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":7.297521,"atr":0.038369,"spread_atr":1.042503,"own_change_pct":-0.063572,"rel_strength_pct":{"SPY":-0.090635,"IWM":-0.154775}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.292075},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0167d80f9b47","ts":"2026-09-15T16:57:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3899,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.8},"price":8.48,"vwap":8.3523,"ext_from_open_pct":1.8,"max_ext_allowed_pct":4.0,"volume_pace":0.874,"trend":"flat","recent_slope_pct":-0.0039,"volatility":"medium"},"price":8.48,"volume":{"bars":207,"last_bar_volume":390.0,"baseline_avg":1024.85,"bar_rvol":0.380543,"raw_accel":-0.951768,"smooth_accel":9.765983,"accel_momentum":4.090307,"rvol_3bar":[0.636383,11.562165,0.380543],"trend_3bar":"MIXED","projected_rvol":4.755818},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":2117.0,"sell_vol":320.0,"unclassified_vol":0.0,"imbalance":0.737382,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.01976},"context":{"vwap":8.351247,"price_vs_vwap_pct":1.541721,"ema9":8.473192,"ema20":8.472205,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.235294,"dist_to_hod_atr":1.462533,"atr":0.013675,"spread_atr":0.731267,"own_change_pct":-0.059032,"rel_strength_pct":{"SPY":-0.086094,"IWM":-0.150234}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.280606},"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":"7cab3232a20b","ts":"2026-09-15T16:57:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5232,"ext_from_open_pct":4.47,"max_ext_allowed_pct":4.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":0.0819,"volatility":"medium"},"price":10.875,"volume":{"bars":207,"last_bar_volume":15883.0,"baseline_avg":39354.1,"bar_rvol":0.403592,"raw_accel":-0.745612,"smooth_accel":-0.441315,"accel_momentum":-0.011724,"rvol_3bar":[1.763722,1.684807,0.403592],"trend_3bar":"DECELERATING","projected_rvol":1.32464},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":19404.0,"sell_vol":6661.0,"unclassified_vol":0.0,"imbalance":0.488893,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.595433},"context":{"vwap":10.521459,"price_vs_vwap_pct":3.360194,"ema9":10.812042,"ema20":10.741946,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.320807,"dist_to_hod_atr":0.453226,"atr":0.077224,"spread_atr":0.129493,"own_change_pct":-0.605927,"rel_strength_pct":{"SPY":-0.63299,"IWM":-0.69713}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.197313},"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":"43301a100cff","ts":"2026-09-15T16:57:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.8431,"target":10.0981,"target_label":"clear air (typical 60-min move)","reward_risk":2.19,"pos_in_5d_range_pct":503.5,"room_to_5d_high_atr":-5.81},"price":9.9231,"vwap":9.6505,"ext_from_open_pct":5.01,"max_ext_allowed_pct":5.0,"volume_pace":3.797,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"low"},"price":9.9231,"volume":{"bars":207,"last_bar_volume":1245.0,"baseline_avg":3491.75,"bar_rvol":0.356555,"raw_accel":0.426219,"smooth_accel":-0.720649,"accel_momentum":-1.343419,"rvol_3bar":[0.654508,0.240338,0.356555],"trend_3bar":"MIXED","projected_rvol":0.548886},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":101.0,"sell_vol":1016.0,"unclassified_vol":0.0,"imbalance":-0.819158,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":4.989472},"context":{"vwap":9.650331,"price_vs_vwap_pct":2.826525,"ema9":9.911613,"ema20":9.907604,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.714706,"dist_to_hod_atr":7.216727,"atr":0.038369,"spread_atr":1.042503,"own_change_pct":-0.063572,"rel_strength_pct":{"SPY":-0.090635,"IWM":-0.154775}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.292075},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b2f90dda3079","ts":"2026-09-15T16:57:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.37,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":1.12},"price":10.836,"vwap":10.5234,"ext_from_open_pct":4.09,"max_ext_allowed_pct":3.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":0.0101,"volatility":"medium"},"price":10.836,"volume":{"bars":207,"last_bar_volume":15883.0,"baseline_avg":39354.1,"bar_rvol":0.403592,"raw_accel":-0.745612,"smooth_accel":-0.441315,"accel_momentum":-0.011724,"rvol_3bar":[1.763722,1.684807,0.403592],"trend_3bar":"DECELERATING","projected_rvol":0.906843},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":2212.0,"sell_vol":2293.0,"unclassified_vol":0.0,"imbalance":-0.01798,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":0.553583},"context":{"vwap":10.521459,"price_vs_vwap_pct":2.989523,"ema9":10.812042,"ema20":10.741946,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.678277,"dist_to_hod_atr":0.958249,"atr":0.077224,"spread_atr":0.129493,"own_change_pct":-0.605927,"rel_strength_pct":{"SPY":-0.63299,"IWM":-0.69713}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.007257},"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":"452f82b8d994","ts":"2026-09-15T16:57:55+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4261,"target":8.8,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":12.2,"room_to_5d_high_atr":3.6},"price":8.6173,"vwap":8.3846,"ext_from_open_pct":2.95,"max_ext_allowed_pct":3.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":-0.0236,"volatility":"high"},"price":8.6173,"volume":{"bars":207,"last_bar_volume":128831.0,"baseline_avg":75787.85,"bar_rvol":1.69989,"raw_accel":0.05479,"smooth_accel":0.463622,"accel_momentum":0.715661,"rvol_3bar":[1.853286,1.729828,1.69989],"trend_3bar":"DECELERATING","projected_rvol":1.557328},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":23403.0,"sell_vol":22359.0,"unclassified_vol":0.0,"imbalance":0.022814,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":10.979082},"context":{"vwap":8.382847,"price_vs_vwap_pct":2.796821,"ema9":8.613695,"ema20":8.572672,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.607843,"dist_to_hod_atr":1.102592,"atr":0.047796,"spread_atr":0.209221,"own_change_pct":0.799403,"rel_strength_pct":{"SPY":0.772341,"IWM":0.708201}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.038781},"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":"399cf4c9a432","ts":"2026-09-15T16:58:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":51.2,"room_to_5d_high_atr":1.06},"price":10.8701,"vwap":10.5237,"ext_from_open_pct":4.42,"max_ext_allowed_pct":3.0,"volume_pace":1.008,"trend":"flat","recent_slope_pct":0.0006,"volatility":"medium"},"price":10.8701,"volume":{"bars":208,"last_bar_volume":32229.0,"baseline_avg":39682.5,"bar_rvol":0.812172,"raw_accel":1.029151,"smooth_accel":-0.263916,"accel_momentum":0.177399,"rvol_3bar":[1.684807,0.403592,0.812172],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":4773.0,"sell_vol":3075.0,"unclassified_vol":0.0,"imbalance":0.216361,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.052319},"context":{"vwap":10.523575,"price_vs_vwap_pct":3.292841,"ema9":10.821634,"ema20":10.753189,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.36572,"dist_to_hod_atr":0.519524,"atr":0.076801,"spread_atr":0.130207,"own_change_pct":0.230734,"rel_strength_pct":{"SPY":0.251187,"IWM":0.172883}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.175722},"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":"0fb1af091b85","ts":"2026-09-15T16:58:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4588,"target":8.8,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":13.2,"room_to_5d_high_atr":3.56},"price":8.65,"vwap":8.3852,"ext_from_open_pct":3.35,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0546,"volatility":"high"},"price":8.65,"volume":{"bars":208,"last_bar_volume":131907.0,"baseline_avg":80239.9,"bar_rvol":1.643908,"raw_accel":0.023876,"smooth_accel":0.581326,"accel_momentum":0.117704,"rvol_3bar":[1.729828,1.69989,1.643908],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":29360.0,"sell_vol":40884.0,"unclassified_vol":0.0,"imbalance":-0.164057,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":0.067289},"context":{"vwap":8.384941,"price_vs_vwap_pct":3.16113,"ema9":8.614516,"ema20":8.57697,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.230681,"dist_to_hod_atr":0.414843,"atr":0.048211,"spread_atr":0.207422,"own_change_pct":0.316625,"rel_strength_pct":{"SPY":0.337078,"IWM":0.258774}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.269694},"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":"d6c2a2d2b20d","ts":"2026-09-15T16:58:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.26,"pos_in_5d_range_pct":50.4,"room_to_5d_high_atr":1.08},"price":10.86,"vwap":10.5239,"ext_from_open_pct":4.32,"max_ext_allowed_pct":4.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":-0.018,"volatility":"medium"},"price":10.86,"volume":{"bars":208,"last_bar_volume":32229.0,"baseline_avg":39682.5,"bar_rvol":0.812172,"raw_accel":1.029151,"smooth_accel":-0.263916,"accel_momentum":0.177399,"rvol_3bar":[1.684807,0.403592,0.812172],"trend_3bar":"MIXED","projected_rvol":0.399546},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":5166.0,"sell_vol":2608.0,"unclassified_vol":0.0,"imbalance":0.329046,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.558167},"context":{"vwap":10.523575,"price_vs_vwap_pct":3.196866,"ema9":10.821634,"ema20":10.753189,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.458295,"dist_to_hod_atr":0.651033,"atr":0.076801,"spread_atr":0.130207,"own_change_pct":0.230734,"rel_strength_pct":{"SPY":0.251187,"IWM":0.172883}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.267241},"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":"94d42fc176c6","ts":"2026-09-15T16:58:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5242,"ext_from_open_pct":4.47,"max_ext_allowed_pct":4.0,"volume_pace":1.007,"trend":"flat","recent_slope_pct":0.0096,"volatility":"medium"},"price":10.875,"volume":{"bars":208,"last_bar_volume":32229.0,"baseline_avg":39682.5,"bar_rvol":0.812172,"raw_accel":1.029151,"smooth_accel":-0.263916,"accel_momentum":0.177399,"rvol_3bar":[1.684807,0.403592,0.812172],"trend_3bar":"MIXED","projected_rvol":0.612058},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":9951.0,"sell_vol":2118.0,"unclassified_vol":0.0,"imbalance":0.649018,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.625314},"context":{"vwap":10.523575,"price_vs_vwap_pct":3.339404,"ema9":10.821634,"ema20":10.753189,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.320807,"dist_to_hod_atr":0.455723,"atr":0.076801,"spread_atr":0.130207,"own_change_pct":0.230734,"rel_strength_pct":{"SPY":0.251187,"IWM":0.172883}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.527114},"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":"1c8c1823cd48","ts":"2026-09-15T16:58:25+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4292,"target":8.8,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":12.3,"room_to_5d_high_atr":3.6},"price":8.6204,"vwap":8.3856,"ext_from_open_pct":2.99,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.1232,"volatility":"high"},"price":8.6204,"volume":{"bars":208,"last_bar_volume":131907.0,"baseline_avg":80239.9,"bar_rvol":1.643908,"raw_accel":0.023876,"smooth_accel":0.581326,"accel_momentum":0.117704,"rvol_3bar":[1.729828,1.69989,1.643908],"trend_3bar":"DECELERATING","projected_rvol":1.191926},"flow":{"window_s":30,"trades":101,"trade_rate":3.366667,"buy_vol":24547.0,"sell_vol":39019.0,"unclassified_vol":0.0,"imbalance":-0.227669,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":2.924759},"context":{"vwap":8.384941,"price_vs_vwap_pct":2.808116,"ema9":8.614516,"ema20":8.57697,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.572088,"dist_to_hod_atr":1.028811,"atr":0.048211,"spread_atr":0.207422,"own_change_pct":0.316625,"rel_strength_pct":{"SPY":0.337078,"IWM":0.258774}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.374267},"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":"80152b71dc5f","ts":"2026-09-15T16:58:30+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4565,"target":8.8,"target_label":"prev_day_high","reward_risk":0.8,"pos_in_5d_range_pct":13.2,"room_to_5d_high_atr":3.56},"price":8.6477,"vwap":8.3856,"ext_from_open_pct":3.32,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0599,"volatility":"high"},"price":8.6477,"volume":{"bars":208,"last_bar_volume":131907.0,"baseline_avg":80239.9,"bar_rvol":1.643908,"raw_accel":0.023876,"smooth_accel":0.581326,"accel_momentum":0.117704,"rvol_3bar":[1.729828,1.69989,1.643908],"trend_3bar":"DECELERATING","projected_rvol":1.023057},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":21133.0,"sell_vol":19912.0,"unclassified_vol":0.0,"imbalance":0.029748,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":0.15147},"context":{"vwap":8.384941,"price_vs_vwap_pct":3.1337,"ema9":8.614516,"ema20":8.57697,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.257209,"dist_to_hod_atr":0.46255,"atr":0.048211,"spread_atr":0.207422,"own_change_pct":0.316625,"rel_strength_pct":{"SPY":0.337078,"IWM":0.258774}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.048903},"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":"bad641b27baf","ts":"2026-09-15T16:58:45+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.43,"target":8.8,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":12.3,"room_to_5d_high_atr":3.59},"price":8.6212,"vwap":8.3859,"ext_from_open_pct":3.0,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.1213,"volatility":"high"},"price":8.6212,"volume":{"bars":208,"last_bar_volume":131907.0,"baseline_avg":80239.9,"bar_rvol":1.643908,"raw_accel":0.023876,"smooth_accel":0.581326,"accel_momentum":0.117704,"rvol_3bar":[1.729828,1.69989,1.643908],"trend_3bar":"DECELERATING","projected_rvol":0.992291},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":7543.0,"sell_vol":21029.0,"unclassified_vol":0.0,"imbalance":-0.472001,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":0.572939},"context":{"vwap":8.384941,"price_vs_vwap_pct":2.817657,"ema9":8.614516,"ema20":8.57697,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.56286,"dist_to_hod_atr":1.012217,"atr":0.048211,"spread_atr":0.207422,"own_change_pct":0.316625,"rel_strength_pct":{"SPY":0.337078,"IWM":0.258774}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.775925},"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":"90e780e6e6de","ts":"2026-09-15T16:58:50+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4588,"target":8.8,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":13.2,"room_to_5d_high_atr":3.56},"price":8.65,"vwap":8.3859,"ext_from_open_pct":3.35,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0546,"volatility":"high"},"price":8.65,"volume":{"bars":208,"last_bar_volume":131907.0,"baseline_avg":80239.9,"bar_rvol":1.643908,"raw_accel":0.023876,"smooth_accel":0.581326,"accel_momentum":0.117704,"rvol_3bar":[1.729828,1.69989,1.643908],"trend_3bar":"DECELERATING","projected_rvol":0.919413},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":6922.0,"sell_vol":14991.0,"unclassified_vol":0.0,"imbalance":-0.368229,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":1.155094},"context":{"vwap":8.384941,"price_vs_vwap_pct":3.16113,"ema9":8.614516,"ema20":8.57697,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.230681,"dist_to_hod_atr":0.414843,"atr":0.048211,"spread_atr":0.207422,"own_change_pct":0.316625,"rel_strength_pct":{"SPY":0.337078,"IWM":0.258774}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.605334},"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":"e0c25803adc3","ts":"2026-09-15T16:58:55+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.4309,"target":8.8,"target_label":"prev_day_high","reward_risk":0.93,"pos_in_5d_range_pct":12.3,"room_to_5d_high_atr":3.59},"price":8.6221,"vwap":8.3861,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.1192,"volatility":"high"},"price":8.6221,"volume":{"bars":208,"last_bar_volume":131907.0,"baseline_avg":80239.9,"bar_rvol":1.643908,"raw_accel":0.023876,"smooth_accel":0.581326,"accel_momentum":0.117704,"rvol_3bar":[1.729828,1.69989,1.643908],"trend_3bar":"DECELERATING","projected_rvol":1.013592},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":6784.0,"sell_vol":27919.0,"unclassified_vol":0.0,"imbalance":-0.609025,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":0.019277},"context":{"vwap":8.384941,"price_vs_vwap_pct":2.828391,"ema9":8.614516,"ema20":8.57697,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.55248,"dist_to_hod_atr":0.993549,"atr":0.048211,"spread_atr":0.207422,"own_change_pct":0.316625,"rel_strength_pct":{"SPY":0.337078,"IWM":0.258774}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.001181},"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":"d55dd051e8c8","ts":"2026-09-15T16:59:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.84,"target":10.095,"target_label":"clear air (typical 60-min move)","reward_risk":2.19,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6511,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":3.779,"trend":"flat","recent_slope_pct":0.0249,"volatility":"low"},"price":9.92,"volume":{"bars":208,"last_bar_volume":1726.0,"baseline_avg":3513.55,"bar_rvol":0.491241,"raw_accel":0.386345,"smooth_accel":-0.800448,"accel_momentum":-0.079798,"rvol_3bar":[0.240338,0.356555,0.491241],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":2102.0,"sell_vol":380.0,"unclassified_vol":0.0,"imbalance":0.693795,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":29.989418},"context":{"vwap":9.650595,"price_vs_vwap_pct":2.791592,"ema9":9.914231,"ema20":9.909232,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":7.32574,"atr":0.038221,"spread_atr":1.046534,"own_change_pct":-0.053374,"rel_strength_pct":{"SPY":-0.022368,"IWM":-0.119975}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.340821},"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":"c0b689bc7685","ts":"2026-09-15T16:59:00+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4602,"target":8.8,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":3.56},"price":8.6514,"vwap":8.3862,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.793,"trend":"flat","recent_slope_pct":-0.0514,"volatility":"high"},"price":8.6514,"volume":{"bars":208,"last_bar_volume":131907.0,"baseline_avg":80239.9,"bar_rvol":1.643908,"raw_accel":0.023876,"smooth_accel":0.581326,"accel_momentum":0.117704,"rvol_3bar":[1.729828,1.69989,1.643908],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":5626.0,"sell_vol":28300.0,"unclassified_vol":0.0,"imbalance":-0.668337,"bid":8.65,"ask":8.66,"spread_pct":0.11554,"quote_size_imbalance":null,"quote_age_s":1.330275},"context":{"vwap":8.384941,"price_vs_vwap_pct":3.177827,"ema9":8.614516,"ema20":8.57697,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.214533,"dist_to_hod_atr":0.385804,"atr":0.048211,"spread_atr":0.207422,"own_change_pct":0.316625,"rel_strength_pct":{"SPY":0.347631,"IWM":0.250024}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.098684},"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":"6b049bb1f6d7","ts":"2026-09-15T16:59:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.86,"target":10.1154,"target_label":"clear air (typical 60-min move)","reward_risk":2.19,"pos_in_5d_range_pct":508.1,"room_to_5d_high_atr":-5.88},"price":9.94,"vwap":9.6511,"ext_from_open_pct":5.19,"max_ext_allowed_pct":5.0,"volume_pace":3.778,"trend":"flat","recent_slope_pct":0.0769,"volatility":"low"},"price":9.94,"volume":{"bars":209,"last_bar_volume":3090.0,"baseline_avg":3584.25,"bar_rvol":0.862105,"raw_accel":0.790267,"smooth_accel":-0.520604,"accel_momentum":0.279844,"rvol_3bar":[0.356555,0.491241,0.862105],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":2117.0,"sell_vol":380.0,"unclassified_vol":0.0,"imbalance":0.695635,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":4.989404},"context":{"vwap":9.651063,"price_vs_vwap_pct":2.993832,"ema9":9.915384,"ema20":9.910257,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.54902,"dist_to_hod_atr":7.042279,"atr":0.03692,"spread_atr":1.083428,"own_change_pct":-0.050378,"rel_strength_pct":{"SPY":-0.019372,"IWM":-0.116979}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.59971},"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":"a2cbe1a8f3fb","ts":"2026-09-15T16:59:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.8419,"target":10.0973,"target_label":"clear air (typical 60-min move)","reward_risk":2.19,"pos_in_5d_range_pct":503.2,"room_to_5d_high_atr":-5.81},"price":9.9219,"vwap":9.6511,"ext_from_open_pct":4.99,"max_ext_allowed_pct":5.0,"volume_pace":3.777,"trend":"flat","recent_slope_pct":0.0404,"volatility":"low"},"price":9.9219,"volume":{"bars":209,"last_bar_volume":3090.0,"baseline_avg":3584.25,"bar_rvol":0.862105,"raw_accel":0.790267,"smooth_accel":-0.520604,"accel_momentum":0.279844,"rvol_3bar":[0.356555,0.491241,0.862105],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":2117.0,"sell_vol":869.0,"unclassified_vol":0.0,"imbalance":0.41795,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":9.989404},"context":{"vwap":9.651063,"price_vs_vwap_pct":2.806288,"ema9":9.915384,"ema20":9.910257,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.726471,"dist_to_hod_atr":7.53253,"atr":0.03692,"spread_atr":1.083428,"own_change_pct":-0.050378,"rel_strength_pct":{"SPY":-0.019372,"IWM":-0.116979}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.360317},"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":"6b9e579a7313","ts":"2026-09-15T16:59:10+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.1532,"target":11.44,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":28.8,"room_to_5d_high_atr":1.17},"price":11.37,"vwap":11.2867,"ext_from_open_pct":0.98,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":-0.0703,"volatility":"high"},"price":11.37,"volume":{"bars":209,"last_bar_volume":18450.0,"baseline_avg":65745.0,"bar_rvol":0.28063,"raw_accel":-0.45961,"smooth_accel":-0.650148,"accel_momentum":-0.794861,"rvol_3bar":[1.018889,0.484822,0.28063],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":8241.0,"sell_vol":13988.0,"unclassified_vol":0.0,"imbalance":-0.258536,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.10095},"context":{"vwap":11.286624,"price_vs_vwap_pct":0.738714,"ema9":11.38542,"ema20":11.385317,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-0.958188,"dist_to_hod_atr":4.101018,"atr":0.026823,"spread_atr":0.37282,"own_change_pct":-0.154486,"rel_strength_pct":{"SPY":-0.123481,"IWM":-0.221087}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.072553},"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":"e307d7ece01b","ts":"2026-09-15T16:59:20+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.9392,"target":13.8,"target_label":"premarket_high","reward_risk":3.76,"pos_in_5d_range_pct":58.0,"room_to_5d_high_atr":0.87},"price":13.12,"vwap":12.8881,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":-0.0989,"volatility":"medium"},"price":13.12,"volume":{"bars":209,"last_bar_volume":118.0,"baseline_avg":1318.6,"bar_rvol":0.089489,"raw_accel":-0.642045,"smooth_accel":-0.817207,"accel_momentum":-1.221802,"rvol_3bar":[0.452209,0.138763,0.089489],"trend_3bar":"DECELERATING","projected_rvol":0.687092},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":0.0,"sell_vol":302.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":13.1,"ask":13.18,"spread_pct":0.608828,"quote_size_imbalance":null,"quote_age_s":1.65834},"context":{"vwap":12.887831,"price_vs_vwap_pct":1.801462,"ema9":13.126254,"ema20":13.088318,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-1.427498,"dist_to_hod_atr":4.589638,"atr":0.041398,"spread_atr":1.932479,"own_change_pct":-0.152091,"rel_strength_pct":{"SPY":-0.121086,"IWM":-0.218692}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.089489},"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":"913d237cf0c0","ts":"2026-09-15T16:59:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.31,"pos_in_5d_range_pct":49.6,"room_to_5d_high_atr":1.1},"price":10.849,"vwap":10.5252,"ext_from_open_pct":4.22,"max_ext_allowed_pct":3.0,"volume_pace":1.006,"trend":"flat","recent_slope_pct":-0.0284,"volatility":"medium"},"price":10.849,"volume":{"bars":209,"last_bar_volume":18436.0,"baseline_avg":40034.05,"bar_rvol":0.460508,"raw_accel":-0.427969,"smooth_accel":-0.555885,"accel_momentum":-0.291969,"rvol_3bar":[0.403592,0.812172,0.460508],"trend_3bar":"MIXED","projected_rvol":0.448868},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":2771.0,"sell_vol":6238.0,"unclassified_vol":0.0,"imbalance":-0.384837,"bid":10.84,"ask":10.85,"spread_pct":0.092208,"quote_size_imbalance":null,"quote_age_s":0.092161},"context":{"vwap":10.524807,"price_vs_vwap_pct":3.080274,"ema9":10.834827,"ema20":10.76599,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.55912,"dist_to_hod_atr":0.811931,"atr":0.07513,"spread_atr":0.133103,"own_change_pct":0.647094,"rel_strength_pct":{"SPY":0.678099,"IWM":0.580492}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.177221},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"26d0909d021e","ts":"2026-09-15T16:59:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.85,"target":10.1054,"target_label":"clear air (typical 60-min move)","reward_risk":2.19,"pos_in_5d_range_pct":505.4,"room_to_5d_high_atr":-5.84},"price":9.93,"vwap":9.6512,"ext_from_open_pct":5.08,"max_ext_allowed_pct":5.0,"volume_pace":3.773,"trend":"flat","recent_slope_pct":0.0568,"volatility":"low"},"price":9.93,"volume":{"bars":209,"last_bar_volume":3090.0,"baseline_avg":3584.25,"bar_rvol":0.862105,"raw_accel":0.790267,"smooth_accel":-0.520604,"accel_momentum":0.279844,"rvol_3bar":[0.356555,0.491241,0.862105],"trend_3bar":"ACCELERATING","projected_rvol":0.440594},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":17.0,"sell_vol":856.0,"unclassified_vol":0.0,"imbalance":-0.961054,"bid":9.9,"ask":9.94,"spread_pct":0.403226,"quote_size_imbalance":null,"quote_age_s":24.989404},"context":{"vwap":9.651063,"price_vs_vwap_pct":2.890216,"ema9":9.915384,"ema20":9.910257,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.647059,"dist_to_hod_atr":7.313136,"atr":0.03692,"spread_atr":1.083428,"own_change_pct":-0.050378,"rel_strength_pct":{"SPY":-0.019372,"IWM":-0.116979}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.828529},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3708dc8c8fdc","ts":"2026-09-15T16:59:25+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.4388,"target":8.8,"target_label":"prev_day_high","reward_risk":0.89,"pos_in_5d_range_pct":12.6,"room_to_5d_high_atr":3.58},"price":8.63,"vwap":8.3869,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":-0.0562,"volatility":"high"},"price":8.63,"volume":{"bars":209,"last_bar_volume":74971.0,"baseline_avg":86115.35,"bar_rvol":0.870588,"raw_accel":-0.431637,"smooth_accel":0.180274,"accel_momentum":-0.401052,"rvol_3bar":[1.69989,1.643908,0.870588],"trend_3bar":"DECELERATING","projected_rvol":1.206614},"flow":{"window_s":30,"trades":140,"trade_rate":4.666667,"buy_vol":7586.0,"sell_vol":36127.0,"unclassified_vol":0.0,"imbalance":-0.652918,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":0.912037},"context":{"vwap":8.386171,"price_vs_vwap_pct":2.907519,"ema9":8.621893,"ema20":8.584059,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.461361,"dist_to_hod_atr":0.837142,"atr":0.047782,"spread_atr":0.209285,"own_change_pct":0.306087,"rel_strength_pct":{"SPY":0.337092,"IWM":0.239486}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.568423},"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":"3cabcfaed6b0","ts":"2026-09-15T16:59:25+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.38,"target":5.5297,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":1.67},"price":5.4744,"vwap":5.4033,"ext_from_open_pct":0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.769,"trend":"flat","recent_slope_pct":-0.0673,"volatility":"medium"},"price":5.4744,"volume":{"bars":209,"last_bar_volume":68037.0,"baseline_avg":66654.85,"bar_rvol":1.020736,"raw_accel":0.293553,"smooth_accel":0.344731,"accel_momentum":-0.006657,"rvol_3bar":[1.782594,0.81175,1.020736],"trend_3bar":"MIXED","projected_rvol":2.014161},"flow":{"window_s":30,"trades":158,"trade_rate":5.266667,"buy_vol":12872.0,"sell_vol":43497.0,"unclassified_vol":0.0,"imbalance":-0.543295,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.740774},"context":{"vwap":5.402912,"price_vs_vwap_pct":1.323145,"ema9":5.482101,"ema20":5.470397,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.362162,"dist_to_hod_atr":2.610526,"atr":0.02896,"spread_atr":0.345308,"own_change_pct":-0.180328,"rel_strength_pct":{"SPY":-0.149322,"IWM":-0.246929}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.554561},"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":"7c20971f8193","ts":"2026-09-15T16:59:30+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4488,"target":8.8,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":12.9,"room_to_5d_high_atr":3.57},"price":8.64,"vwap":8.3873,"ext_from_open_pct":3.23,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":-0.0331,"volatility":"high"},"price":8.64,"volume":{"bars":209,"last_bar_volume":74971.0,"baseline_avg":86115.35,"bar_rvol":0.870588,"raw_accel":-0.431637,"smooth_accel":0.180274,"accel_momentum":-0.401052,"rvol_3bar":[1.69989,1.643908,0.870588],"trend_3bar":"DECELERATING","projected_rvol":1.63504},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":12829.0,"sell_vol":57572.0,"unclassified_vol":0.0,"imbalance":-0.635545,"bid":8.64,"ask":8.65,"spread_pct":0.115674,"quote_size_imbalance":null,"quote_age_s":0.055333},"context":{"vwap":8.386171,"price_vs_vwap_pct":3.026762,"ema9":8.621893,"ema20":8.584059,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.346021,"dist_to_hod_atr":0.627856,"atr":0.047782,"spread_atr":0.209285,"own_change_pct":0.306087,"rel_strength_pct":{"SPY":0.337092,"IWM":0.239486}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.553298},"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":"87a29f06b43c","ts":"2026-09-15T16:59:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.19,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":1.05},"price":10.8772,"vwap":10.5254,"ext_from_open_pct":4.49,"max_ext_allowed_pct":3.0,"volume_pace":1.005,"trend":"flat","recent_slope_pct":0.0236,"volatility":"medium"},"price":10.8772,"volume":{"bars":209,"last_bar_volume":18436.0,"baseline_avg":40034.05,"bar_rvol":0.460508,"raw_accel":-0.427969,"smooth_accel":-0.555885,"accel_momentum":-0.291969,"rvol_3bar":[0.403592,0.812172,0.460508],"trend_3bar":"MIXED","projected_rvol":0.366716},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":2590.0,"sell_vol":4628.0,"unclassified_vol":0.0,"imbalance":-0.28235,"bid":10.84,"ask":10.85,"spread_pct":0.092208,"quote_size_imbalance":null,"quote_age_s":0.146297},"context":{"vwap":10.524807,"price_vs_vwap_pct":3.348212,"ema9":10.834827,"ema20":10.76599,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.300642,"dist_to_hod_atr":0.436579,"atr":0.07513,"spread_atr":0.133103,"own_change_pct":0.647094,"rel_strength_pct":{"SPY":0.678099,"IWM":0.580492}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.130024},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7a737061c112","ts":"2026-09-15T16:59:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":48.9,"room_to_5d_high_atr":1.11},"price":10.84,"vwap":10.5255,"ext_from_open_pct":4.13,"max_ext_allowed_pct":3.0,"volume_pace":1.005,"trend":"flat","recent_slope_pct":-0.0449,"volatility":"medium"},"price":10.84,"volume":{"bars":209,"last_bar_volume":18436.0,"baseline_avg":40034.05,"bar_rvol":0.460508,"raw_accel":-0.427969,"smooth_accel":-0.555885,"accel_momentum":-0.291969,"rvol_3bar":[0.403592,0.812172,0.460508],"trend_3bar":"MIXED","projected_rvol":0.388582},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":2065.0,"sell_vol":4684.0,"unclassified_vol":0.0,"imbalance":-0.388057,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":0.084853},"context":{"vwap":10.524807,"price_vs_vwap_pct":2.994762,"ema9":10.834827,"ema20":10.76599,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.641613,"dist_to_hod_atr":0.931724,"atr":0.07513,"spread_atr":0.133103,"own_change_pct":0.647094,"rel_strength_pct":{"SPY":0.678099,"IWM":0.580492}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.178704},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"65cf78d956a7","ts":"2026-09-15T16:59:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.19,"pos_in_5d_range_pct":51.7,"room_to_5d_high_atr":1.05},"price":10.8761,"vwap":10.526,"ext_from_open_pct":4.48,"max_ext_allowed_pct":3.0,"volume_pace":1.005,"trend":"flat","recent_slope_pct":0.0215,"volatility":"medium"},"price":10.8761,"volume":{"bars":209,"last_bar_volume":18436.0,"baseline_avg":40034.05,"bar_rvol":0.460508,"raw_accel":-0.427969,"smooth_accel":-0.555885,"accel_momentum":-0.291969,"rvol_3bar":[0.403592,0.812172,0.460508],"trend_3bar":"MIXED","projected_rvol":0.504144},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":5081.0,"sell_vol":7378.0,"unclassified_vol":0.0,"imbalance":-0.184365,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":2.12984},"context":{"vwap":10.524807,"price_vs_vwap_pct":3.337761,"ema9":10.834827,"ema20":10.76599,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.310724,"dist_to_hod_atr":0.451221,"atr":0.07513,"spread_atr":0.133103,"own_change_pct":0.647094,"rel_strength_pct":{"SPY":0.678099,"IWM":0.580492}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.084901},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"39c7f7f560c1","ts":"2026-09-15T17:00:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.82,"target":10.0954,"target_label":"clear air (typical 60-min move)","reward_risk":1.75,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.6514,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":3.765,"trend":"flat","recent_slope_pct":0.0366,"volatility":"low"},"price":9.92,"volume":{"bars":209,"last_bar_volume":3090.0,"baseline_avg":3584.25,"bar_rvol":0.862105,"raw_accel":0.790267,"smooth_accel":-0.520604,"accel_momentum":0.279844,"rvol_3bar":[0.356555,0.491241,0.862105],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1154.0,"sell_vol":88.0,"unclassified_vol":0.0,"imbalance":0.858293,"bid":9.91,"ask":9.96,"spread_pct":0.503271,"quote_size_imbalance":null,"quote_age_s":0.758932},"context":{"vwap":9.651063,"price_vs_vwap_pct":2.786601,"ema9":9.915384,"ema20":9.910257,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":7.583993,"atr":0.03692,"spread_atr":1.354284,"own_change_pct":-0.050378,"rel_strength_pct":{"SPY":-0.019374,"IWM":-0.102943}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.739939},"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":"6387b38c2989","ts":"2026-09-15T17:00:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":48.9,"room_to_5d_high_atr":1.11},"price":10.84,"vwap":10.5262,"ext_from_open_pct":4.13,"max_ext_allowed_pct":3.0,"volume_pace":1.006,"trend":"flat","recent_slope_pct":-0.0449,"volatility":"medium"},"price":10.84,"volume":{"bars":209,"last_bar_volume":18436.0,"baseline_avg":40034.05,"bar_rvol":0.460508,"raw_accel":-0.427969,"smooth_accel":-0.555885,"accel_momentum":-0.291969,"rvol_3bar":[0.403592,0.812172,0.460508],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":4999.0,"sell_vol":10131.0,"unclassified_vol":0.0,"imbalance":-0.339194,"bid":10.84,"ask":10.85,"spread_pct":0.092208,"quote_size_imbalance":null,"quote_age_s":0.008405},"context":{"vwap":10.524807,"price_vs_vwap_pct":2.994762,"ema9":10.834827,"ema20":10.76599,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.641613,"dist_to_hod_atr":0.931724,"atr":0.07513,"spread_atr":0.133103,"own_change_pct":0.647094,"rel_strength_pct":{"SPY":0.678097,"IWM":0.594528}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.156201},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a991da543d4b","ts":"2026-09-15T17:00:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.9592,"target":13.8,"target_label":"premarket_high","reward_risk":3.65,"pos_in_5d_range_pct":59.3,"room_to_5d_high_atr":0.84},"price":13.14,"vwap":12.892,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.836,"trend":"flat","recent_slope_pct":-0.0266,"volatility":"medium"},"price":13.14,"volume":{"bars":210,"last_bar_volume":4306.0,"baseline_avg":1283.05,"bar_rvol":3.356066,"raw_accel":12.424262,"smooth_accel":0.27406,"accel_momentum":1.091266,"rvol_3bar":[0.138763,0.089489,3.356066],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":318.0,"sell_vol":313.0,"unclassified_vol":0.0,"imbalance":0.007924,"bid":13.1,"ask":13.18,"spread_pct":0.608828,"quote_size_imbalance":null,"quote_age_s":1.601938},"context":{"vwap":12.891673,"price_vs_vwap_pct":1.926258,"ema9":13.128023,"ema20":13.092774,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-1.277235,"dist_to_hod_atr":4.116445,"atr":0.041298,"spread_atr":1.937151,"own_change_pct":-0.113308,"rel_strength_pct":{"SPY":-0.082304,"IWM":-0.165873}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.026593},"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":"862a13a6c974","ts":"2026-09-15T17:00:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.38,"target":5.5297,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.67},"price":5.475,"vwap":5.404,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.0919,"volatility":"medium"},"price":5.475,"volume":{"bars":210,"last_bar_volume":182591.0,"baseline_avg":64781.3,"bar_rvol":2.818576,"raw_accel":1.683702,"smooth_accel":0.370416,"accel_momentum":0.025684,"rvol_3bar":[0.81175,1.020736,2.818576],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":228,"trade_rate":7.6,"buy_vol":65223.0,"sell_vol":27926.0,"unclassified_vol":0.0,"imbalance":0.400402,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.045676},"context":{"vwap":5.404024,"price_vs_vwap_pct":1.313391,"ema9":5.480681,"ema20":5.470835,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":2.64167,"atr":0.028391,"spread_atr":0.352223,"own_change_pct":-0.091241,"rel_strength_pct":{"SPY":-0.060237,"IWM":-0.143806}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.128562},"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":"23cbf4b64358","ts":"2026-09-15T17:00:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.8323,"target":10.1081,"target_label":"clear air (typical 60-min move)","reward_risk":1.76,"pos_in_5d_range_pct":506.0,"room_to_5d_high_atr":-5.85},"price":9.9323,"vwap":9.6514,"ext_from_open_pct":5.1,"max_ext_allowed_pct":4.0,"volume_pace":3.761,"trend":"flat","recent_slope_pct":0.0529,"volatility":"low"},"price":9.9323,"volume":{"bars":210,"last_bar_volume":1900.0,"baseline_avg":3398.8,"bar_rvol":0.559021,"raw_accel":-0.385113,"smooth_accel":0.429849,"accel_momentum":0.950453,"rvol_3bar":[0.491241,0.862105,0.559021],"trend_3bar":"MIXED","projected_rvol":0.021184},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":20.0,"sell_vol":50.0,"unclassified_vol":0.0,"imbalance":-0.428571,"bid":9.91,"ask":9.96,"spread_pct":0.503271,"quote_size_imbalance":null,"quote_age_s":14.989355},"context":{"vwap":9.651351,"price_vs_vwap_pct":2.910984,"ema9":9.916308,"ema20":9.911185,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.62451,"dist_to_hod_atr":7.207886,"atr":0.03714,"spread_atr":1.346262,"own_change_pct":0.050429,"rel_strength_pct":{"SPY":0.081432,"IWM":-0.002137}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.23958},"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":"3f4d8511d162","ts":"2026-09-15T17:00:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2638,"target":7.47,"target_label":"prev_day_high","reward_risk":0.98,"pos_in_5d_range_pct":42.5,"room_to_5d_high_atr":1.23},"price":7.3682,"vwap":7.2544,"ext_from_open_pct":3.05,"max_ext_allowed_pct":4.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.1056,"volatility":"medium"},"price":7.3682,"volume":{"bars":210,"last_bar_volume":127863.0,"baseline_avg":254835.45,"bar_rvol":0.501747,"raw_accel":0.043754,"smooth_accel":-0.447355,"accel_momentum":-0.422223,"rvol_3bar":[0.635574,0.476164,0.501747],"trend_3bar":"MIXED","projected_rvol":1.287833},"flow":{"window_s":30,"trades":192,"trade_rate":6.4,"buy_vol":50143.0,"sell_vol":88175.0,"unclassified_vol":0.0,"imbalance":-0.274961,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":0.344688},"context":{"vwap":7.25394,"price_vs_vwap_pct":1.575146,"ema9":7.38775,"ema20":7.380761,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.564103,"dist_to_hod_atr":1.516469,"atr":0.027564,"spread_atr":0.362792,"own_change_pct":-0.194858,"rel_strength_pct":{"SPY":-0.163854,"IWM":-0.247423}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.137961},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"49cd25befad4","ts":"2026-09-15T17:00:50+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says PASS; stop 5.38, target 5.51 (ceiling), R:R 0.44; R:R 0.44 < 2.0 at 5.47; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.38,"target":5.51,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":1.69},"price":5.47,"vwap":5.4041,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.1102,"volatility":"medium"},"price":5.47,"volume":{"bars":210,"last_bar_volume":182591.0,"baseline_avg":64781.3,"bar_rvol":2.818576,"raw_accel":1.683702,"smooth_accel":0.370416,"accel_momentum":0.025684,"rvol_3bar":[0.81175,1.020736,2.818576],"trend_3bar":"ACCELERATING","projected_rvol":0.233512},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":4752.0,"sell_vol":2813.0,"unclassified_vol":0.0,"imbalance":0.256312,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.05588},"context":{"vwap":5.404024,"price_vs_vwap_pct":1.220868,"ema9":5.480681,"ema20":5.470835,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.441441,"dist_to_hod_atr":2.817782,"atr":0.028391,"spread_atr":0.352223,"own_change_pct":-0.091241,"rel_strength_pct":{"SPY":-0.060237,"IWM":-0.143806}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.722435},"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":"0efa6fb290ec","ts":"2026-09-15T17:00:55+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2606,"target":7.41,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":42.1,"room_to_5d_high_atr":1.23},"price":7.365,"vwap":7.255,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.805,"trend":"flat","recent_slope_pct":-0.1143,"volatility":"medium"},"price":7.365,"volume":{"bars":210,"last_bar_volume":127863.0,"baseline_avg":254835.45,"bar_rvol":0.501747,"raw_accel":0.043754,"smooth_accel":-0.447355,"accel_momentum":-0.422223,"rvol_3bar":[0.635574,0.476164,0.501747],"trend_3bar":"MIXED","projected_rvol":1.466906},"flow":{"window_s":30,"trades":297,"trade_rate":9.9,"buy_vol":89753.0,"sell_vol":116171.0,"unclassified_vol":0.0,"imbalance":-0.12829,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":2.403878},"context":{"vwap":7.25394,"price_vs_vwap_pct":1.531032,"ema9":7.38775,"ema20":7.380761,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.607287,"dist_to_hod_atr":1.632562,"atr":0.027564,"spread_atr":0.362792,"own_change_pct":-0.194858,"rel_strength_pct":{"SPY":-0.163854,"IWM":-0.247423}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.064369},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e7724cb76a67","ts":"2026-09-15T17:00:55+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 50.0s, plan says WATCH; stop 5.38, target 5.53 (premarket_high), R:R 0.42; R:R 0.42 < 2.0 at 5.49; breakout: 1-min close > 5.52 on >= 90634 sh","plan":{"state":"WATCH","setup":"","stop":5.38,"target":5.5297,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":25.0,"room_to_5d_high_atr":1.63},"price":5.4852,"vwap":5.4041,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0547,"volatility":"medium"},"price":5.4852,"volume":{"bars":210,"last_bar_volume":182591.0,"baseline_avg":64781.3,"bar_rvol":2.818576,"raw_accel":1.683702,"smooth_accel":0.370416,"accel_momentum":0.025684,"rvol_3bar":[0.81175,1.020736,2.818576],"trend_3bar":"ACCELERATING","projected_rvol":0.260765},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":7067.0,"sell_vol":3271.0,"unclassified_vol":0.0,"imbalance":0.367189,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":4.329495},"context":{"vwap":5.404024,"price_vs_vwap_pct":1.50214,"ema9":5.480681,"ema20":5.470835,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.167568,"dist_to_hod_atr":2.282403,"atr":0.028391,"spread_atr":0.352223,"own_change_pct":-0.091241,"rel_strength_pct":{"SPY":-0.060237,"IWM":-0.143806}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.03495},"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":"a570a522597c","ts":"2026-09-15T17:01:00+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.4421,"target":8.8,"target_label":"prev_day_high","reward_risk":0.87,"pos_in_5d_range_pct":12.7,"room_to_5d_high_atr":3.58},"price":8.6333,"vwap":8.3891,"ext_from_open_pct":3.15,"max_ext_allowed_pct":3.0,"volume_pace":0.795,"trend":"flat","recent_slope_pct":0.0044,"volatility":"high"},"price":8.6333,"volume":{"bars":210,"last_bar_volume":131916.0,"baseline_avg":88127.9,"bar_rvol":1.49687,"raw_accel":0.75956,"smooth_accel":-0.09206,"accel_momentum":-0.272335,"rvol_3bar":[1.643908,0.870588,1.49687],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":129,"trade_rate":4.3,"buy_vol":9591.0,"sell_vol":24989.0,"unclassified_vol":0.0,"imbalance":-0.445286,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":0.793638},"context":{"vwap":8.388333,"price_vs_vwap_pct":2.920326,"ema9":8.628514,"ema20":8.590815,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.423299,"dist_to_hod_atr":0.783159,"atr":0.046862,"spread_atr":0.213395,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.035621,"IWM":-0.021022}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.666536},"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":"a2fc5f804f98","ts":"2026-09-15T17:01:00+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2656,"target":7.47,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.255,"ext_from_open_pct":3.08,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.1007,"volatility":"medium"},"price":7.37,"volume":{"bars":210,"last_bar_volume":127863.0,"baseline_avg":254835.45,"bar_rvol":0.501747,"raw_accel":0.043754,"smooth_accel":-0.447355,"accel_momentum":-0.422223,"rvol_3bar":[0.635574,0.476164,0.501747],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":279,"trade_rate":9.3,"buy_vol":84795.0,"sell_vol":111520.0,"unclassified_vol":0.0,"imbalance":-0.136133,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":1.449997},"context":{"vwap":7.25394,"price_vs_vwap_pct":1.59996,"ema9":7.38775,"ema20":7.380761,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.451166,"atr":0.027564,"spread_atr":0.362792,"own_change_pct":-0.194858,"rel_strength_pct":{"SPY":-0.159237,"IWM":-0.21588}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.068304},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0c16d0b8e58d","ts":"2026-09-15T17:01:15+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.38,"target":5.51,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":1.69},"price":5.47,"vwap":5.4042,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0655,"volatility":"medium"},"price":5.47,"volume":{"bars":211,"last_bar_volume":17295.0,"baseline_avg":73442.7,"bar_rvol":0.23549,"raw_accel":-0.90528,"smooth_accel":0.080117,"accel_momentum":-0.290299,"rvol_3bar":[1.020736,2.818576,0.23549],"trend_3bar":"MIXED","projected_rvol":1.139501},"flow":{"window_s":30,"trades":162,"trade_rate":5.4,"buy_vol":9992.0,"sell_vol":20164.0,"unclassified_vol":0.0,"imbalance":-0.337313,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.05162},"context":{"vwap":5.404126,"price_vs_vwap_pct":1.218967,"ema9":5.479545,"ema20":5.471232,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.441441,"dist_to_hod_atr":2.906187,"atr":0.027527,"spread_atr":0.363273,"own_change_pct":-0.189594,"rel_strength_pct":{"SPY":-0.153973,"IWM":-0.210617}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.079434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"18879d90da24","ts":"2026-09-15T17:01:20+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4438,"target":8.8,"target_label":"prev_day_high","reward_risk":0.86,"pos_in_5d_range_pct":12.8,"room_to_5d_high_atr":3.58},"price":8.635,"vwap":8.3892,"ext_from_open_pct":3.17,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0189,"volatility":"high"},"price":8.635,"volume":{"bars":211,"last_bar_volume":50448.0,"baseline_avg":93081.35,"bar_rvol":0.541978,"raw_accel":-0.617575,"smooth_accel":-0.327891,"accel_momentum":-0.235831,"rvol_3bar":[0.870588,1.49687,0.541978],"trend_3bar":"MIXED","projected_rvol":0.22851},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":2823.0,"sell_vol":10350.0,"unclassified_vol":0.0,"imbalance":-0.571396,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":5.83978},"context":{"vwap":8.389128,"price_vs_vwap_pct":2.930842,"ema9":8.629471,"ema20":8.594861,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.403691,"dist_to_hod_atr":0.772627,"atr":0.0453,"spread_atr":0.220751,"own_change_pct":-0.250722,"rel_strength_pct":{"SPY":-0.215101,"IWM":-0.271745}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.309684},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8df0102bce52","ts":"2026-09-15T17:01:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.41,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2552,"ext_from_open_pct":2.94,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.1355,"volatility":"medium"},"price":7.36,"volume":{"bars":211,"last_bar_volume":342839.0,"baseline_avg":257477.05,"bar_rvol":1.331532,"raw_accel":1.6813,"smooth_accel":0.080765,"accel_momentum":0.528121,"rvol_3bar":[0.476164,0.501747,1.331532],"trend_3bar":"ACCELERATING","projected_rvol":0.752106},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":52961.0,"sell_vol":50459.0,"unclassified_vol":0.0,"imbalance":0.024193,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":4.86189},"context":{"vwap":7.255028,"price_vs_vwap_pct":1.44689,"ema9":7.3842,"ema20":7.379736,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.674764,"dist_to_hod_atr":1.753804,"atr":0.028509,"spread_atr":0.350761,"own_change_pct":-0.338066,"rel_strength_pct":{"SPY":-0.302445,"IWM":-0.359089}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.032213},"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":"d04b63cd8cc7","ts":"2026-09-15T17:01:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2656,"target":7.47,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2553,"ext_from_open_pct":3.08,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.1084,"volatility":"medium"},"price":7.37,"volume":{"bars":211,"last_bar_volume":342839.0,"baseline_avg":257477.05,"bar_rvol":1.331532,"raw_accel":1.6813,"smooth_accel":0.080765,"accel_momentum":0.528121,"rvol_3bar":[0.476164,0.501747,1.331532],"trend_3bar":"ACCELERATING","projected_rvol":0.663773},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":22335.0,"sell_vol":49047.0,"unclassified_vol":0.0,"imbalance":-0.374212,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":3.220347},"context":{"vwap":7.255028,"price_vs_vwap_pct":1.584726,"ema9":7.3842,"ema20":7.379736,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.403043,"atr":0.028509,"spread_atr":0.350761,"own_change_pct":-0.338066,"rel_strength_pct":{"SPY":-0.302445,"IWM":-0.359089}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.498275},"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":"6087bc5fb2f7","ts":"2026-09-15T17:01:30+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.24,"target":7.41,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":41.6,"room_to_5d_high_atr":1.25},"price":7.36,"vwap":7.2553,"ext_from_open_pct":2.94,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.1355,"volatility":"medium"},"price":7.36,"volume":{"bars":211,"last_bar_volume":342839.0,"baseline_avg":257477.05,"bar_rvol":1.331532,"raw_accel":1.6813,"smooth_accel":0.080765,"accel_momentum":0.528121,"rvol_3bar":[0.476164,0.501747,1.331532],"trend_3bar":"ACCELERATING","projected_rvol":0.698299},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":22783.0,"sell_vol":67115.0,"unclassified_vol":0.0,"imbalance":-0.493137,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":8.220347},"context":{"vwap":7.255028,"price_vs_vwap_pct":1.44689,"ema9":7.3842,"ema20":7.379736,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.674764,"dist_to_hod_atr":1.753804,"atr":0.028509,"spread_atr":0.350761,"own_change_pct":-0.338066,"rel_strength_pct":{"SPY":-0.302445,"IWM":-0.359089}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.656627},"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":"155cd2a92cbf","ts":"2026-09-15T17:01:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.38,"target":5.51,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":21.8,"room_to_5d_high_atr":1.7},"price":5.4676,"vwap":5.4043,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0743,"volatility":"medium"},"price":5.4676,"volume":{"bars":211,"last_bar_volume":17295.0,"baseline_avg":73442.7,"bar_rvol":0.23549,"raw_accel":-0.90528,"smooth_accel":0.080117,"accel_momentum":-0.290299,"rvol_3bar":[1.020736,2.818576,0.23549],"trend_3bar":"MIXED","projected_rvol":0.726716},"flow":{"window_s":30,"trades":166,"trade_rate":5.533333,"buy_vol":8680.0,"sell_vol":18006.0,"unclassified_vol":0.0,"imbalance":-0.349472,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":2.971056},"context":{"vwap":5.404126,"price_vs_vwap_pct":1.174556,"ema9":5.479545,"ema20":5.471232,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.484685,"dist_to_hod_atr":2.993373,"atr":0.027527,"spread_atr":0.363273,"own_change_pct":-0.189594,"rel_strength_pct":{"SPY":-0.153973,"IWM":-0.210617}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.082297},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"20d3222906cf","ts":"2026-09-15T17:01:35+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.9084,"target":12.59,"target_label":"prev_day_high","reward_risk":2.22,"pos_in_5d_range_pct":10.6,"room_to_5d_high_atr":2.09},"price":12.12,"vwap":12.0952,"ext_from_open_pct":-2.96,"max_ext_allowed_pct":3.0,"volume_pace":0.615,"trend":"flat","recent_slope_pct":-0.026,"volatility":"high"},"price":12.12,"volume":{"bars":211,"last_bar_volume":347.0,"baseline_avg":1015.35,"bar_rvol":0.341754,"raw_accel":0.029674,"smooth_accel":-0.705146,"accel_momentum":-0.113527,"rvol_3bar":[0.117256,0.273906,0.341754],"trend_3bar":"ACCELERATING","projected_rvol":1.122766},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":426.0,"sell_vol":115.0,"unclassified_vol":0.0,"imbalance":0.574861,"bid":12.12,"ask":12.15,"spread_pct":0.247219,"quote_size_imbalance":null,"quote_age_s":49.544775},"context":{"vwap":12.095124,"price_vs_vwap_pct":0.205666,"ema9":12.131753,"ema20":12.125122,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.038005,"dist_to_hod_atr":17.018721,"atr":0.029967,"spread_atr":1.001101,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.035621,"IWM":-0.021022}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.196461},"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":"4a8f7ef271d5","ts":"2026-09-15T17:01:35+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2656,"target":7.47,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.2553,"ext_from_open_pct":3.08,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.1084,"volatility":"medium"},"price":7.37,"volume":{"bars":211,"last_bar_volume":342839.0,"baseline_avg":257477.05,"bar_rvol":1.331532,"raw_accel":1.6813,"smooth_accel":0.080765,"accel_momentum":0.528121,"rvol_3bar":[0.476164,0.501747,1.331532],"trend_3bar":"ACCELERATING","projected_rvol":0.599341},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":22816.0,"sell_vol":64183.0,"unclassified_vol":0.0,"imbalance":-0.475488,"bid":7.36,"ask":7.37,"spread_pct":0.135777,"quote_size_imbalance":null,"quote_age_s":1.270578},"context":{"vwap":7.255028,"price_vs_vwap_pct":1.584726,"ema9":7.3842,"ema20":7.379736,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.403043,"atr":0.028509,"spread_atr":0.350761,"own_change_pct":-0.338066,"rel_strength_pct":{"SPY":-0.302445,"IWM":-0.359089}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.633128},"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":"b9d8628d1fe4","ts":"2026-09-15T17:01:40+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9484,"target":12.59,"target_label":"prev_day_high","reward_risk":2.03,"pos_in_5d_range_pct":12.6,"room_to_5d_high_atr":2.04},"price":12.16,"vwap":12.0965,"ext_from_open_pct":-2.64,"max_ext_allowed_pct":3.0,"volume_pace":0.63,"trend":"flat","recent_slope_pct":0.0399,"volatility":"high"},"price":12.16,"volume":{"bars":211,"last_bar_volume":347.0,"baseline_avg":1015.35,"bar_rvol":0.341754,"raw_accel":0.029674,"smooth_accel":-0.705146,"accel_momentum":-0.113527,"rvol_3bar":[0.117256,0.273906,0.341754],"trend_3bar":"ACCELERATING","projected_rvol":14.019796},"flow":{"window_s":30,"trades":146,"trade_rate":4.866667,"buy_vol":5167.0,"sell_vol":4198.0,"unclassified_vol":0.0,"imbalance":0.10347,"bid":12.15,"ask":12.17,"spread_pct":0.164474,"quote_size_imbalance":null,"quote_age_s":1.317347},"context":{"vwap":12.095124,"price_vs_vwap_pct":0.536377,"ema9":12.131753,"ema20":12.125122,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-3.721298,"dist_to_hod_atr":15.683919,"atr":0.029967,"spread_atr":0.667401,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.035621,"IWM":-0.021022}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.035361},"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":"6981e7573149","ts":"2026-09-15T17:01:40+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":8.4389,"target":8.8,"target_label":"prev_day_high","reward_risk":0.89,"pos_in_5d_range_pct":12.6,"room_to_5d_high_atr":3.58},"price":8.6301,"vwap":8.3899,"ext_from_open_pct":3.11,"max_ext_allowed_pct":3.0,"volume_pace":0.794,"trend":"flat","recent_slope_pct":0.0075,"volatility":"high"},"price":8.6301,"volume":{"bars":211,"last_bar_volume":50448.0,"baseline_avg":93081.35,"bar_rvol":0.541978,"raw_accel":-0.617575,"smooth_accel":-0.327891,"accel_momentum":-0.235831,"rvol_3bar":[0.870588,1.49687,0.541978],"trend_3bar":"MIXED","projected_rvol":0.753067},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":5870.0,"sell_vol":37340.0,"unclassified_vol":0.0,"imbalance":-0.728304,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":0.43132},"context":{"vwap":8.389128,"price_vs_vwap_pct":2.872433,"ema9":8.629471,"ema20":8.594861,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.460208,"dist_to_hod_atr":0.880795,"atr":0.0453,"spread_atr":0.220751,"own_change_pct":-0.250722,"rel_strength_pct":{"SPY":-0.215101,"IWM":-0.271745}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.394724},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"bad96b382756","ts":"2026-09-15T17:01:45+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $8.37 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":8.4468,"target":8.8,"target_label":"prev_day_high","reward_risk":0.85,"pos_in_5d_range_pct":12.9,"room_to_5d_high_atr":3.57},"price":8.638,"vwap":8.3905,"ext_from_open_pct":3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.0258,"volatility":"high"},"price":8.638,"volume":{"bars":211,"last_bar_volume":50448.0,"baseline_avg":93081.35,"bar_rvol":0.541978,"raw_accel":-0.617575,"smooth_accel":-0.327891,"accel_momentum":-0.235831,"rvol_3bar":[0.870588,1.49687,0.541978],"trend_3bar":"MIXED","projected_rvol":1.233817},"flow":{"window_s":30,"trades":148,"trade_rate":4.933333,"buy_vol":24190.0,"sell_vol":57352.0,"unclassified_vol":0.0,"imbalance":-0.406686,"bid":8.63,"ask":8.64,"spread_pct":0.115808,"quote_size_imbalance":null,"quote_age_s":0.480995},"context":{"vwap":8.389128,"price_vs_vwap_pct":2.966602,"ema9":8.629471,"ema20":8.594861,"ema_stack":true,"ema_warm":true,"hod":8.67,"dist_to_hod_pct":-0.369089,"dist_to_hod_atr":0.706402,"atr":0.0453,"spread_atr":0.220751,"own_change_pct":-0.250722,"rel_strength_pct":{"SPY":-0.215101,"IWM":-0.271745}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.220415},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7b1ed0801fb5","ts":"2026-09-15T17:01:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"WATCH","setup":"","stop":5.38,"target":5.5297,"target_label":"premarket_high","reward_risk":0.58,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.67},"price":5.475,"vwap":5.4045,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":-0.0473,"volatility":"medium"},"price":5.475,"volume":{"bars":211,"last_bar_volume":17295.0,"baseline_avg":73442.7,"bar_rvol":0.23549,"raw_accel":-0.90528,"smooth_accel":0.080117,"accel_momentum":-0.290299,"rvol_3bar":[1.020736,2.818576,0.23549],"trend_3bar":"MIXED","projected_rvol":1.133237},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":36525.0,"sell_vol":4974.0,"unclassified_vol":0.0,"imbalance":0.760283,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.019246},"context":{"vwap":5.404126,"price_vs_vwap_pct":1.311489,"ema9":5.479545,"ema20":5.471232,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":2.72455,"atr":0.027527,"spread_atr":0.363273,"own_change_pct":-0.189594,"rel_strength_pct":{"SPY":-0.153973,"IWM":-0.210617}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.179039},"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":"eead44a32609","ts":"2026-09-15T17:02:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":50.8,"room_to_5d_high_atr":1.07},"price":10.865,"vwap":10.5335,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":1.021,"trend":"flat","recent_slope_pct":-0.0461,"volatility":"medium"},"price":10.865,"volume":{"bars":211,"last_bar_volume":115182.0,"baseline_avg":39828.25,"bar_rvol":2.891967,"raw_accel":4.305237,"smooth_accel":0.405082,"accel_momentum":0.890606,"rvol_3bar":[0.460508,0.545181,2.891967],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":8403.0,"sell_vol":2173.0,"unclassified_vol":0.0,"imbalance":0.58907,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.927343},"context":{"vwap":10.532776,"price_vs_vwap_pct":3.154195,"ema9":10.834209,"ema20":10.778235,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.412466,"dist_to_hod_atr":0.604081,"atr":0.074493,"spread_atr":0.13424,"own_change_pct":-0.618632,"rel_strength_pct":{"SPY":-0.63381,"IWM":-0.681715}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.70357},"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":"1afdc6e56f95","ts":"2026-09-15T17:02:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2656,"target":7.47,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.22},"price":7.37,"vwap":7.256,"ext_from_open_pct":3.08,"max_ext_allowed_pct":3.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.0628,"volatility":"medium"},"price":7.37,"volume":{"bars":212,"last_bar_volume":283882.0,"baseline_avg":271048.0,"bar_rvol":1.04735,"raw_accel":-0.171967,"smooth_accel":0.351132,"accel_momentum":0.270366,"rvol_3bar":[0.501747,1.331532,1.04735],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":136,"trade_rate":4.533333,"buy_vol":106488.0,"sell_vol":130477.0,"unclassified_vol":0.0,"imbalance":-0.101234,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.384912},"context":{"vwap":7.25591,"price_vs_vwap_pct":1.572371,"ema9":7.38122,"ema20":7.378742,"ema_stack":false,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.539811,"dist_to_hod_atr":1.432507,"atr":0.027923,"spread_atr":0.358127,"own_change_pct":-0.347532,"rel_strength_pct":{"SPY":-0.362709,"IWM":-0.410615}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.106028},"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":"07d1ca2b7e9c","ts":"2026-09-15T17:02:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.1434,"target":11.44,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":28.1,"room_to_5d_high_atr":1.18},"price":11.3602,"vwap":11.2874,"ext_from_open_pct":0.89,"max_ext_allowed_pct":3.0,"volume_pace":0.838,"trend":"flat","recent_slope_pct":-0.0328,"volatility":"high"},"price":11.3602,"volume":{"bars":212,"last_bar_volume":110882.0,"baseline_avg":66184.3,"bar_rvol":1.675352,"raw_accel":0.20316,"smooth_accel":1.106925,"accel_momentum":1.459046,"rvol_3bar":[0.945802,1.439595,1.675352],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":37382.0,"sell_vol":38809.0,"unclassified_vol":0.0,"imbalance":-0.018729,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.055546},"context":{"vwap":11.287415,"price_vs_vwap_pct":0.644833,"ema9":11.371733,"ema20":11.378135,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.043554,"dist_to_hod_atr":3.982069,"atr":0.030085,"spread_atr":0.332393,"own_change_pct":-0.231884,"rel_strength_pct":{"SPY":-0.247061,"IWM":-0.294967}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.031378},"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":"efed4aec8708","ts":"2026-09-15T17:02:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says PASS; stop 5.38, target 5.52 (ceiling), R:R 0.40; R:R 0.40 < 2.0 at 5.48; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.38,"target":5.52,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4046,"ext_from_open_pct":0.37,"max_ext_allowed_pct":4.0,"volume_pace":0.773,"trend":"flat","recent_slope_pct":0.0179,"volatility":"medium"},"price":5.48,"volume":{"bars":212,"last_bar_volume":88250.0,"baseline_avg":73347.65,"bar_rvol":1.203174,"raw_accel":3.812697,"smooth_accel":0.223793,"accel_momentum":0.143676,"rvol_3bar":[2.818576,0.23549,1.203174],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":197,"trade_rate":6.566667,"buy_vol":52444.0,"sell_vol":7980.0,"unclassified_vol":0.0,"imbalance":0.735867,"bid":5.48,"ask":5.49,"spread_pct":0.182315,"quote_size_imbalance":null,"quote_age_s":1.433621},"context":{"vwap":5.404648,"price_vs_vwap_pct":1.394213,"ema9":5.480636,"ema20":5.472543,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":2.188197,"atr":0.03199,"spread_atr":0.3126,"own_change_pct":-0.181984,"rel_strength_pct":{"SPY":-0.197161,"IWM":-0.245066}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.885376},"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":"77648eac424d","ts":"2026-09-15T17:02:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.33,"pos_in_5d_range_pct":49.2,"room_to_5d_high_atr":1.1},"price":10.8441,"vwap":10.5337,"ext_from_open_pct":4.17,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":-0.0571,"volatility":"medium"},"price":10.8441,"volume":{"bars":212,"last_bar_volume":13117.0,"baseline_avg":45135.75,"bar_rvol":0.290612,"raw_accel":-0.886119,"smooth_accel":1.254162,"accel_momentum":0.84908,"rvol_3bar":[0.545181,2.891967,0.290612],"trend_3bar":"MIXED","projected_rvol":0.235556},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":3934.0,"sell_vol":1098.0,"unclassified_vol":0.0,"imbalance":0.563593,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.513817},"context":{"vwap":10.533536,"price_vs_vwap_pct":2.948333,"ema9":10.840367,"ema20":10.786498,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.604033,"dist_to_hod_atr":0.89277,"atr":0.073815,"spread_atr":0.135473,"own_change_pct":0.356536,"rel_strength_pct":{"SPY":0.341359,"IWM":0.293453}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.163787},"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":"1db02fdbc9f6","ts":"2026-09-15T17:02:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":50.8,"room_to_5d_high_atr":1.07},"price":10.865,"vwap":10.5337,"ext_from_open_pct":4.37,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":-0.0186,"volatility":"medium"},"price":10.865,"volume":{"bars":212,"last_bar_volume":13117.0,"baseline_avg":45135.75,"bar_rvol":0.290612,"raw_accel":-0.886119,"smooth_accel":1.254162,"accel_momentum":0.84908,"rvol_3bar":[0.545181,2.891967,0.290612],"trend_3bar":"MIXED","projected_rvol":0.212891},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":4104.0,"sell_vol":1242.0,"unclassified_vol":0.0,"imbalance":0.535354,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.040134},"context":{"vwap":10.533536,"price_vs_vwap_pct":3.146747,"ema9":10.840367,"ema20":10.786498,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.412466,"dist_to_hod_atr":0.60963,"atr":0.073815,"spread_atr":0.135473,"own_change_pct":0.356536,"rel_strength_pct":{"SPY":0.341359,"IWM":0.293453}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.15558},"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":"e626aa934a5c","ts":"2026-09-15T17:02:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.38,"pos_in_5d_range_pct":48.4,"room_to_5d_high_atr":1.12},"price":10.834,"vwap":10.534,"ext_from_open_pct":4.07,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":-0.0758,"volatility":"medium"},"price":10.834,"volume":{"bars":212,"last_bar_volume":13117.0,"baseline_avg":45135.75,"bar_rvol":0.290612,"raw_accel":-0.886119,"smooth_accel":1.254162,"accel_momentum":0.84908,"rvol_3bar":[0.545181,2.891967,0.290612],"trend_3bar":"MIXED","projected_rvol":0.321253},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":4878.0,"sell_vol":2372.0,"unclassified_vol":0.0,"imbalance":0.345655,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":1.545275},"context":{"vwap":10.533536,"price_vs_vwap_pct":2.852449,"ema9":10.840367,"ema20":10.786498,"ema_stack":false,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.696609,"dist_to_hod_atr":1.029598,"atr":0.073815,"spread_atr":0.135473,"own_change_pct":0.356536,"rel_strength_pct":{"SPY":0.341359,"IWM":0.293453}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.100452},"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":"450a7d56a81a","ts":"2026-09-15T17:02:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.534,"ext_from_open_pct":4.47,"max_ext_allowed_pct":3.0,"volume_pace":1.019,"trend":"flat","recent_slope_pct":-0.0002,"volatility":"medium"},"price":10.875,"volume":{"bars":212,"last_bar_volume":13117.0,"baseline_avg":45135.75,"bar_rvol":0.290612,"raw_accel":-0.886119,"smooth_accel":1.254162,"accel_momentum":0.84908,"rvol_3bar":[0.545181,2.891967,0.290612],"trend_3bar":"MIXED","projected_rvol":0.277107},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":3893.0,"sell_vol":2268.0,"unclassified_vol":0.0,"imbalance":0.263756,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.162245},"context":{"vwap":10.533536,"price_vs_vwap_pct":3.241682,"ema9":10.840367,"ema20":10.786498,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.320807,"dist_to_hod_atr":0.474157,"atr":0.073815,"spread_atr":0.135473,"own_change_pct":0.356536,"rel_strength_pct":{"SPY":0.341359,"IWM":0.293453}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.076651},"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":"942af68c3a30","ts":"2026-09-15T17:03:10+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.295,"target":13.18,"target_label":"prev_day_high","reward_risk":1.1,"pos_in_5d_range_pct":16.9,"room_to_5d_high_atr":2.0},"price":12.7163,"vwap":12.6106,"ext_from_open_pct":1.73,"max_ext_allowed_pct":3.0,"volume_pace":0.958,"trend":"flat","recent_slope_pct":-0.104,"volatility":"high"},"price":12.7163,"volume":{"bars":213,"last_bar_volume":33086.0,"baseline_avg":25691.35,"bar_rvol":1.287826,"raw_accel":-0.678833,"smooth_accel":1.826182,"accel_momentum":1.348104,"rvol_3bar":[0.670509,4.77018,1.287826],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":1096.0,"sell_vol":3792.0,"unclassified_vol":0.0,"imbalance":-0.551555,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.048322},"context":{"vwap":12.610557,"price_vs_vwap_pct":0.838526,"ema9":12.722593,"ema20":12.681394,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.332565,"dist_to_hod_atr":4.781833,"atr":0.063511,"spread_atr":0.157453,"own_change_pct":-0.431203,"rel_strength_pct":{"SPY":-0.395568,"IWM":-0.406675}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.710307},"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":"5a72f1077eb3","ts":"2026-09-15T17:03:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7819,"target":14.19,"target_label":"range_20d_high","reward_risk":21.99,"pos_in_5d_range_pct":55.9,"room_to_5d_high_atr":0.96},"price":10.9301,"vwap":10.5364,"ext_from_open_pct":5.0,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":0.2186,"volatility":"medium"},"price":10.9301,"volume":{"bars":213,"last_bar_volume":11807.0,"baseline_avg":43650.85,"bar_rvol":0.270487,"raw_accel":-0.09987,"smooth_accel":0.935807,"accel_momentum":-0.318355,"rvol_3bar":[2.891967,0.290612,0.270487],"trend_3bar":"DECELERATING","projected_rvol":1.704764},"flow":{"window_s":30,"trades":239,"trade_rate":7.966667,"buy_vol":15171.0,"sell_vol":16665.0,"unclassified_vol":0.0,"imbalance":-0.046928,"bid":10.93,"ask":10.94,"spread_pct":0.091449,"quote_size_imbalance":null,"quote_age_s":0.452287},"context":{"vwap":10.534267,"price_vs_vwap_pct":3.757572,"ema9":10.849294,"ema20":10.795879,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":0.184235,"dist_to_hod_atr":-0.274029,"atr":0.07335,"spread_atr":0.136333,"own_change_pct":0.230203,"rel_strength_pct":{"SPY":0.265838,"IWM":0.254731}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.012693},"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":"35c39ded3e3b","ts":"2026-09-15T17:03:35+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2573,"ext_from_open_pct":3.5,"max_ext_allowed_pct":4.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":0.0824,"volatility":"medium"},"price":7.4,"volume":{"bars":213,"last_bar_volume":254247.0,"baseline_avg":272334.55,"bar_rvol":0.933583,"raw_accel":-0.104392,"smooth_accel":1.139544,"accel_momentum":0.788413,"rvol_3bar":[1.331532,1.04735,0.933583],"trend_3bar":"DECELERATING","projected_rvol":0.987002},"flow":{"window_s":30,"trades":167,"trade_rate":5.566667,"buy_vol":81032.0,"sell_vol":58285.0,"unclassified_vol":0.0,"imbalance":0.163275,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":1.393829},"context":{"vwap":7.256753,"price_vs_vwap_pct":1.973987,"ema9":7.381376,"ema20":7.379052,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.134953,"dist_to_hod_atr":0.36129,"atr":0.027679,"spread_atr":0.36129,"own_change_pct":-0.243243,"rel_strength_pct":{"SPY":-0.207608,"IWM":-0.218715}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.152431},"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":"c484def48435","ts":"2026-09-15T17:03:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7002,"target":10.935,"target_label":"prev_day_high","reward_risk":0.58,"pos_in_5d_range_pct":49.5,"room_to_5d_high_atr":1.1},"price":10.8484,"vwap":10.5371,"ext_from_open_pct":4.21,"max_ext_allowed_pct":3.0,"volume_pace":1.023,"trend":"flat","recent_slope_pct":0.0684,"volatility":"medium"},"price":10.8484,"volume":{"bars":213,"last_bar_volume":11807.0,"baseline_avg":43650.85,"bar_rvol":0.270487,"raw_accel":-0.09987,"smooth_accel":0.935807,"accel_momentum":-0.318355,"rvol_3bar":[2.891967,0.290612,0.270487],"trend_3bar":"DECELERATING","projected_rvol":1.362509},"flow":{"window_s":30,"trades":250,"trade_rate":8.333333,"buy_vol":20672.0,"sell_vol":16422.0,"unclassified_vol":0.0,"imbalance":0.114574,"bid":10.93,"ask":10.94,"spread_pct":0.091449,"quote_size_imbalance":null,"quote_age_s":0.716168},"context":{"vwap":10.534267,"price_vs_vwap_pct":2.982008,"ema9":10.849294,"ema20":10.795879,"ema_stack":false,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.56462,"dist_to_hod_atr":0.839811,"atr":0.07335,"spread_atr":0.136333,"own_change_pct":0.230203,"rel_strength_pct":{"SPY":0.265838,"IWM":0.254731}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.030991},"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":"8841ada9affb","ts":"2026-09-15T17:03:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2573,"ext_from_open_pct":3.43,"max_ext_allowed_pct":3.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":0.0688,"volatility":"medium"},"price":7.395,"volume":{"bars":213,"last_bar_volume":254247.0,"baseline_avg":272334.55,"bar_rvol":0.933583,"raw_accel":-0.104392,"smooth_accel":1.139544,"accel_momentum":0.788413,"rvol_3bar":[1.331532,1.04735,0.933583],"trend_3bar":"DECELERATING","projected_rvol":0.816941},"flow":{"window_s":30,"trades":152,"trade_rate":5.066667,"buy_vol":64630.0,"sell_vol":56073.0,"unclassified_vol":0.0,"imbalance":0.070893,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":1.639555},"context":{"vwap":7.256753,"price_vs_vwap_pct":1.905086,"ema9":7.381376,"ema20":7.379052,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.202429,"dist_to_hod_atr":0.541936,"atr":0.027679,"spread_atr":0.36129,"own_change_pct":-0.243243,"rel_strength_pct":{"SPY":-0.207608,"IWM":-0.218715}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.066185},"shadow":{"decision":"FAIL","failed":["imbalance","bar_rvol","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":true,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"dbcded1b4068","ts":"2026-09-15T17:03:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7841,"target":14.19,"target_label":"range_20d_high","reward_risk":21.98,"pos_in_5d_range_pct":56.0,"room_to_5d_high_atr":0.96},"price":10.9323,"vwap":10.5374,"ext_from_open_pct":5.02,"max_ext_allowed_pct":3.0,"volume_pace":1.023,"trend":"flat","recent_slope_pct":0.2226,"volatility":"medium"},"price":10.9323,"volume":{"bars":213,"last_bar_volume":11807.0,"baseline_avg":43650.85,"bar_rvol":0.270487,"raw_accel":-0.09987,"smooth_accel":0.935807,"accel_momentum":-0.318355,"rvol_3bar":[2.891967,0.290612,0.270487],"trend_3bar":"DECELERATING","projected_rvol":1.27904},"flow":{"window_s":30,"trades":261,"trade_rate":8.7,"buy_vol":22271.0,"sell_vol":16315.0,"unclassified_vol":0.0,"imbalance":0.154357,"bid":10.93,"ask":10.94,"spread_pct":0.091449,"quote_size_imbalance":null,"quote_age_s":1.015818},"context":{"vwap":10.534267,"price_vs_vwap_pct":3.778456,"ema9":10.849294,"ema20":10.795879,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":0.2044,"dist_to_hod_atr":-0.304022,"atr":0.07335,"spread_atr":0.136333,"own_change_pct":0.230203,"rel_strength_pct":{"SPY":0.265838,"IWM":0.254731}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.041751},"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":"4b418282c5ce","ts":"2026-09-15T17:03:50+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2574,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":0.0688,"volatility":"medium"},"price":7.395,"volume":{"bars":213,"last_bar_volume":254247.0,"baseline_avg":272334.55,"bar_rvol":0.933583,"raw_accel":-0.104392,"smooth_accel":1.139544,"accel_momentum":0.788413,"rvol_3bar":[1.331532,1.04735,0.933583],"trend_3bar":"DECELERATING","projected_rvol":0.859347},"flow":{"window_s":30,"trades":139,"trade_rate":4.633333,"buy_vol":78248.0,"sell_vol":57614.0,"unclassified_vol":0.0,"imbalance":0.151875,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.285211},"context":{"vwap":7.256753,"price_vs_vwap_pct":1.905086,"ema9":7.381376,"ema20":7.379052,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":-0.202429,"dist_to_hod_atr":0.541936,"atr":0.027679,"spread_atr":0.36129,"own_change_pct":-0.243243,"rel_strength_pct":{"SPY":-0.207608,"IWM":-0.218715}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.141788},"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":"cfcc215cb451","ts":"2026-09-15T17:03:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7015,"target":10.935,"target_label":"prev_day_high","reward_risk":0.58,"pos_in_5d_range_pct":49.6,"room_to_5d_high_atr":1.1},"price":10.8497,"vwap":10.5374,"ext_from_open_pct":4.22,"max_ext_allowed_pct":3.0,"volume_pace":1.023,"trend":"flat","recent_slope_pct":0.0708,"volatility":"medium"},"price":10.8497,"volume":{"bars":213,"last_bar_volume":11807.0,"baseline_avg":43650.85,"bar_rvol":0.270487,"raw_accel":-0.09987,"smooth_accel":0.935807,"accel_momentum":-0.318355,"rvol_3bar":[2.891967,0.290612,0.270487],"trend_3bar":"DECELERATING","projected_rvol":1.244637},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":10062.0,"sell_vol":8734.0,"unclassified_vol":0.0,"imbalance":0.070653,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.874429},"context":{"vwap":10.534267,"price_vs_vwap_pct":2.994348,"ema9":10.849294,"ema20":10.795879,"ema_stack":true,"ema_warm":true,"hod":10.91,"dist_to_hod_pct":-0.552704,"dist_to_hod_atr":0.822088,"atr":0.07335,"spread_atr":0.136333,"own_change_pct":0.230203,"rel_strength_pct":{"SPY":0.265838,"IWM":0.254731}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.019111},"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":"f2a79d3e79b2","ts":"2026-09-15T17:03:55+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says WATCH; stop 5.38, target 5.61 (prev_day_high), R:R 0.84; R:R 0.84 < 2.0 at 5.50; breakout: 1-min close > 5.53 on >= 92719 sh","plan":{"state":"WATCH","setup":"","stop":5.38,"target":5.61,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":28.7,"room_to_5d_high_atr":1.55},"price":5.505,"vwap":5.4067,"ext_from_open_pct":0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":0.1276,"volatility":"medium"},"price":5.505,"volume":{"bars":213,"last_bar_volume":94911.0,"baseline_avg":76828.9,"bar_rvol":1.235355,"raw_accel":0.075479,"smooth_accel":-0.33892,"accel_momentum":-0.562713,"rvol_3bar":[0.23549,1.203174,1.235355],"trend_3bar":"ACCELERATING","projected_rvol":2.870681},"flow":{"window_s":30,"trades":160,"trade_rate":5.333333,"buy_vol":91446.0,"sell_vol":43488.0,"unclassified_vol":0.0,"imbalance":0.355418,"bid":5.5,"ask":5.51,"spread_pct":0.181653,"quote_size_imbalance":null,"quote_age_s":2.608795},"context":{"vwap":5.405234,"price_vs_vwap_pct":1.845729,"ema9":5.481509,"ema20":5.473729,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-0.810811,"dist_to_hod_atr":1.455747,"atr":0.030912,"spread_atr":0.323499,"own_change_pct":-0.007292,"rel_strength_pct":{"SPY":0.028343,"IWM":0.017237}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.439068},"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":"e6e13bda83e5","ts":"2026-09-15T17:04:00+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says PASS; stop 5.38, target 5.61 (prev_day_high), R:R 1.14; target 0.12 away > ~0.11 reachable in 171 min","plan":{"state":"PASS","setup":"","stop":5.38,"target":5.61,"target_label":"prev_day_high","reward_risk":1.14,"pos_in_5d_range_pct":25.5,"room_to_5d_high_atr":1.62},"price":5.4876,"vwap":5.4067,"ext_from_open_pct":0.51,"max_ext_allowed_pct":3.0,"volume_pace":0.785,"trend":"flat","recent_slope_pct":0.0642,"volatility":"medium"},"price":5.4876,"volume":{"bars":213,"last_bar_volume":94911.0,"baseline_avg":76828.9,"bar_rvol":1.235355,"raw_accel":0.075479,"smooth_accel":-0.33892,"accel_momentum":-0.562713,"rvol_3bar":[0.23549,1.203174,1.235355],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":201,"trade_rate":6.7,"buy_vol":98073.0,"sell_vol":42698.0,"unclassified_vol":0.0,"imbalance":0.393369,"bid":5.49,"ask":5.5,"spread_pct":0.181984,"quote_size_imbalance":null,"quote_age_s":1.392597},"context":{"vwap":5.405234,"price_vs_vwap_pct":1.523819,"ema9":5.481509,"ema20":5.473729,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.124324,"dist_to_hod_atr":2.018636,"atr":0.030912,"spread_atr":0.323499,"own_change_pct":-0.007292,"rel_strength_pct":{"SPY":0.04154,"IWM":0.062768}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.485951},"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":"a3f8c35ebb56","ts":"2026-09-15T17:04:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7768,"target":14.19,"target_label":"range_20d_high","reward_risk":22.03,"pos_in_5d_range_pct":55.5,"room_to_5d_high_atr":0.97},"price":10.925,"vwap":10.5377,"ext_from_open_pct":4.95,"max_ext_allowed_pct":3.0,"volume_pace":1.023,"trend":"flat","recent_slope_pct":0.2249,"volatility":"medium"},"price":10.925,"volume":{"bars":214,"last_bar_volume":50513.0,"baseline_avg":43216.4,"bar_rvol":1.168839,"raw_accel":3.278225,"smooth_accel":-0.514341,"accel_momentum":-1.450148,"rvol_3bar":[0.290612,0.270487,1.168839],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":7956.0,"sell_vol":7740.0,"unclassified_vol":0.0,"imbalance":0.013761,"bid":10.92,"ask":10.93,"spread_pct":0.091533,"quote_size_imbalance":null,"quote_age_s":0.137031},"context":{"vwap":10.537642,"price_vs_vwap_pct":3.675951,"ema9":10.862435,"ema20":10.807224,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.137112,"dist_to_hod_atr":0.198123,"atr":0.075711,"spread_atr":0.132082,"own_change_pct":0.251662,"rel_strength_pct":{"SPY":0.300495,"IWM":0.321722}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.016085},"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":"eda1ddb3033f","ts":"2026-09-15T17:04:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.4859,"target":12.72,"target_label":"premarket_high","reward_risk":0.07,"pos_in_5d_range_pct":16.4,"room_to_5d_high_atr":2.01},"price":12.705,"vwap":12.6108,"ext_from_open_pct":1.64,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":-0.0478,"volatility":"high"},"price":12.705,"volume":{"bars":214,"last_bar_volume":10047.0,"baseline_avg":26706.25,"bar_rvol":0.376204,"raw_accel":-0.696337,"smooth_accel":2.555293,"accel_momentum":0.729112,"rvol_3bar":[4.77018,1.287826,0.376204],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":685.0,"sell_vol":1545.0,"unclassified_vol":0.0,"imbalance":-0.38565,"bid":12.7,"ask":12.71,"spread_pct":0.078709,"quote_size_imbalance":null,"quote_age_s":0.269422},"context":{"vwap":12.610779,"price_vs_vwap_pct":0.74715,"ema9":12.720915,"ema20":12.684518,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.419355,"dist_to_hod_atr":5.009396,"atr":0.062882,"spread_atr":0.159028,"own_change_pct":-0.397963,"rel_strength_pct":{"SPY":-0.349131,"IWM":-0.327903}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.145083},"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":"5ffa56017aca","ts":"2026-09-15T17:04:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.139,"target":8.5558,"target_label":"ceiling","reward_risk":1.18,"pos_in_5d_range_pct":122.6,"room_to_5d_high_atr":-0.82},"price":8.33,"vwap":8.1627,"ext_from_open_pct":8.75,"max_ext_allowed_pct":3.0,"volume_pace":0.332,"trend":"flat","recent_slope_pct":-0.058,"volatility":"high"},"price":8.33,"volume":{"bars":213,"last_bar_volume":90.0,"baseline_avg":675.2,"bar_rvol":0.133294,"raw_accel":-0.466825,"smooth_accel":-0.890772,"accel_momentum":-0.200229,"rvol_3bar":[0.696334,0.200252,0.133294],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.33,"ask":8.38,"spread_pct":0.598444,"quote_size_imbalance":null,"quote_age_s":61.730962},"context":{"vwap":8.162702,"price_vs_vwap_pct":2.049541,"ema9":8.350716,"ema20":8.337081,"ema_stack":false,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-2.639145,"dist_to_hod_atr":5.894103,"atr":0.038309,"spread_atr":1.30516,"own_change_pct":0.13756,"rel_strength_pct":{"SPY":0.186392,"IWM":0.20762}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.133294},"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":"3d8057ded2f5","ts":"2026-09-15T17:04:10+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4932,"target":13.18,"target_label":"prev_day_high","reward_risk":2.13,"pos_in_5d_range_pct":16.7,"room_to_5d_high_atr":2.01},"price":12.7123,"vwap":12.6108,"ext_from_open_pct":1.7,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":-0.0363,"volatility":"high"},"price":12.7123,"volume":{"bars":214,"last_bar_volume":10047.0,"baseline_avg":26706.25,"bar_rvol":0.376204,"raw_accel":-0.696337,"smooth_accel":2.555293,"accel_momentum":0.729112,"rvol_3bar":[4.77018,1.287826,0.376204],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1030.0,"sell_vol":1405.0,"unclassified_vol":0.0,"imbalance":-0.154004,"bid":12.7,"ask":12.71,"spread_pct":0.078709,"quote_size_imbalance":null,"quote_age_s":1.958324},"context":{"vwap":12.610779,"price_vs_vwap_pct":0.805037,"ema9":12.720915,"ema20":12.684518,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.363287,"dist_to_hod_atr":4.893305,"atr":0.062882,"spread_atr":0.159028,"own_change_pct":-0.397963,"rel_strength_pct":{"SPY":-0.349131,"IWM":-0.327903}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.057937},"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":"d05de792da5c","ts":"2026-09-15T17:04:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.307,"target":7.47,"target_label":"prev_day_high","reward_risk":0.56,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":1.12},"price":7.4114,"vwap":7.2583,"ext_from_open_pct":3.66,"max_ext_allowed_pct":3.0,"volume_pace":0.813,"trend":"flat","recent_slope_pct":0.1433,"volatility":"medium"},"price":7.4114,"volume":{"bars":214,"last_bar_volume":208375.0,"baseline_avg":273525.3,"bar_rvol":0.761813,"raw_accel":-0.180423,"smooth_accel":0.258425,"accel_momentum":-0.881119,"rvol_3bar":[1.04735,0.933583,0.761813],"trend_3bar":"DECELERATING","projected_rvol":3.039909},"flow":{"window_s":30,"trades":294,"trade_rate":9.8,"buy_vol":151541.0,"sell_vol":97846.0,"unclassified_vol":0.0,"imbalance":0.215308,"bid":7.41,"ask":7.42,"spread_pct":0.134862,"quote_size_imbalance":null,"quote_age_s":0.210792},"context":{"vwap":7.257462,"price_vs_vwap_pct":2.121099,"ema9":7.383561,"ema20":7.380314,"ema_stack":true,"ema_warm":true,"hod":7.41,"dist_to_hod_pct":0.018893,"dist_to_hod_atr":-0.049022,"atr":0.028559,"spread_atr":0.350156,"own_change_pct":0.031123,"rel_strength_pct":{"SPY":0.079955,"IWM":0.101183}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.164024},"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":"8c66b58a4463","ts":"2026-09-15T17:04:15+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.4754,"target":12.72,"target_label":"premarket_high","reward_risk":0.12,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.03},"price":12.6945,"vwap":12.6108,"ext_from_open_pct":1.56,"max_ext_allowed_pct":3.0,"volume_pace":0.955,"trend":"flat","recent_slope_pct":-0.0643,"volatility":"high"},"price":12.6945,"volume":{"bars":214,"last_bar_volume":10047.0,"baseline_avg":26706.25,"bar_rvol":0.376204,"raw_accel":-0.696337,"smooth_accel":2.555293,"accel_momentum":0.729112,"rvol_3bar":[4.77018,1.287826,0.376204],"trend_3bar":"DECELERATING","projected_rvol":0.133751},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":1015.0,"sell_vol":501.0,"unclassified_vol":0.0,"imbalance":0.33905,"bid":12.7,"ask":12.71,"spread_pct":0.078709,"quote_size_imbalance":null,"quote_age_s":0.363743},"context":{"vwap":12.610779,"price_vs_vwap_pct":0.663888,"ema9":12.720915,"ema20":12.684518,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.5,"dist_to_hod_atr":5.176376,"atr":0.062882,"spread_atr":0.159028,"own_change_pct":-0.397963,"rel_strength_pct":{"SPY":-0.349131,"IWM":-0.327903}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.127552},"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":"c58876a6bb1e","ts":"2026-09-15T17:04:20+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 15.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4926,"target":13.18,"target_label":"prev_day_high","reward_risk":2.14,"pos_in_5d_range_pct":16.7,"room_to_5d_high_atr":2.01},"price":12.7117,"vwap":12.6108,"ext_from_open_pct":1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":-0.0373,"volatility":"high"},"price":12.7117,"volume":{"bars":214,"last_bar_volume":10047.0,"baseline_avg":26706.25,"bar_rvol":0.376204,"raw_accel":-0.696337,"smooth_accel":2.555293,"accel_momentum":0.729112,"rvol_3bar":[4.77018,1.287826,0.376204],"trend_3bar":"DECELERATING","projected_rvol":0.138282},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1194.0,"sell_vol":638.0,"unclassified_vol":0.0,"imbalance":0.303493,"bid":12.7,"ask":12.71,"spread_pct":0.078709,"quote_size_imbalance":null,"quote_age_s":0.068421},"context":{"vwap":12.610779,"price_vs_vwap_pct":0.800279,"ema9":12.720915,"ema20":12.684518,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.367896,"dist_to_hod_atr":4.902847,"atr":0.062882,"spread_atr":0.159028,"own_change_pct":-0.397963,"rel_strength_pct":{"SPY":-0.349131,"IWM":-0.327903}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.114175},"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":"12a25ab17460","ts":"2026-09-15T17:04:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7518,"target":10.935,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":53.5,"room_to_5d_high_atr":1.01},"price":10.9,"vwap":10.5381,"ext_from_open_pct":4.71,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":0.1791,"volatility":"medium"},"price":10.9,"volume":{"bars":214,"last_bar_volume":50513.0,"baseline_avg":43216.4,"bar_rvol":1.168839,"raw_accel":3.278225,"smooth_accel":-0.514341,"accel_momentum":-1.450148,"rvol_3bar":[0.290612,0.270487,1.168839],"trend_3bar":"MIXED","projected_rvol":0.354588},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":4550.0,"sell_vol":2546.0,"unclassified_vol":0.0,"imbalance":0.282413,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.197458},"context":{"vwap":10.537642,"price_vs_vwap_pct":3.438706,"ema9":10.862435,"ema20":10.807224,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.365631,"dist_to_hod_atr":0.528328,"atr":0.075711,"spread_atr":0.132082,"own_change_pct":0.251662,"rel_strength_pct":{"SPY":0.300495,"IWM":0.321722}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.330095},"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":"723625e67fb4","ts":"2026-09-15T17:04:25+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.4194,"target":8.8,"target_label":"prev_day_high","reward_risk":0.99,"pos_in_5d_range_pct":12.0,"room_to_5d_high_atr":3.61},"price":8.6106,"vwap":8.3944,"ext_from_open_pct":2.87,"max_ext_allowed_pct":3.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":-0.0641,"volatility":"high"},"price":8.6106,"volume":{"bars":214,"last_bar_volume":92697.0,"baseline_avg":97228.4,"bar_rvol":0.953394,"raw_accel":1.561469,"smooth_accel":0.023813,"accel_momentum":0.370868,"rvol_3bar":[1.432273,0.36932,0.953394],"trend_3bar":"MIXED","projected_rvol":1.609011},"flow":{"window_s":30,"trades":239,"trade_rate":7.966667,"buy_vol":27420.0,"sell_vol":39917.0,"unclassified_vol":0.0,"imbalance":-0.185589,"bid":8.61,"ask":8.62,"spread_pct":0.116077,"quote_size_imbalance":null,"quote_age_s":0.20038},"context":{"vwap":8.393443,"price_vs_vwap_pct":2.587218,"ema9":8.643209,"ema20":8.611239,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.742363,"dist_to_hod_atr":1.533766,"atr":0.041988,"spread_atr":0.238162,"own_change_pct":0.041612,"rel_strength_pct":{"SPY":0.090444,"IWM":0.111672}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.176939},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"02c3c39ab3c1","ts":"2026-09-15T17:04:25+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says WATCH; stop 12.47, target 12.72 (premarket_high), R:R 0.14; selling not fading: red-bar volume 1.94x the advance (max 0.7); no reclaim yet (needs a close > 12.73); R:R 0.14 < 2.0","plan":{"state":"WATCH","setup":"","stop":12.4709,"target":12.72,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":15.6,"room_to_5d_high_atr":2.03},"price":12.69,"vwap":12.6108,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":-0.0714,"volatility":"high"},"price":12.69,"volume":{"bars":214,"last_bar_volume":10047.0,"baseline_avg":26706.25,"bar_rvol":0.376204,"raw_accel":-0.696337,"smooth_accel":2.555293,"accel_momentum":0.729112,"rvol_3bar":[4.77018,1.287826,0.376204],"trend_3bar":"DECELERATING","projected_rvol":0.27652},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1856.0,"sell_vol":1222.0,"unclassified_vol":0.0,"imbalance":0.205978,"bid":12.68,"ask":12.7,"spread_pct":0.157604,"quote_size_imbalance":null,"quote_age_s":0.07616},"context":{"vwap":12.610779,"price_vs_vwap_pct":0.628204,"ema9":12.720915,"ema20":12.684518,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.534562,"dist_to_hod_atr":5.247938,"atr":0.062882,"spread_atr":0.318057,"own_change_pct":-0.397963,"rel_strength_pct":{"SPY":-0.349131,"IWM":-0.327903}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.07749},"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":"9c33e7c5e290","ts":"2026-09-15T17:04:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7788,"target":14.19,"target_label":"range_20d_high","reward_risk":22.01,"pos_in_5d_range_pct":55.6,"room_to_5d_high_atr":0.96},"price":10.927,"vwap":10.5381,"ext_from_open_pct":4.97,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":0.2286,"volatility":"medium"},"price":10.927,"volume":{"bars":214,"last_bar_volume":50513.0,"baseline_avg":43216.4,"bar_rvol":1.168839,"raw_accel":3.278225,"smooth_accel":-0.514341,"accel_momentum":-1.450148,"rvol_3bar":[0.290612,0.270487,1.168839],"trend_3bar":"MIXED","projected_rvol":0.297711},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":3854.0,"sell_vol":2579.0,"unclassified_vol":0.0,"imbalance":0.198197,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.334441},"context":{"vwap":10.537642,"price_vs_vwap_pct":3.69493,"ema9":10.862435,"ema20":10.807224,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.11883,"dist_to_hod_atr":0.171707,"atr":0.075711,"spread_atr":0.132082,"own_change_pct":0.251662,"rel_strength_pct":{"SPY":0.300495,"IWM":0.321722}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.23166},"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":"44ba65572444","ts":"2026-09-15T17:04:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7718,"target":10.935,"target_label":"prev_day_high","reward_risk":0.1,"pos_in_5d_range_pct":55.1,"room_to_5d_high_atr":0.98},"price":10.92,"vwap":10.5382,"ext_from_open_pct":4.9,"max_ext_allowed_pct":3.0,"volume_pace":1.022,"trend":"flat","recent_slope_pct":0.2158,"volatility":"medium"},"price":10.92,"volume":{"bars":214,"last_bar_volume":50513.0,"baseline_avg":43216.4,"bar_rvol":1.168839,"raw_accel":3.278225,"smooth_accel":-0.514341,"accel_momentum":-1.450148,"rvol_3bar":[0.290612,0.270487,1.168839],"trend_3bar":"MIXED","projected_rvol":0.354191},"flow":{"window_s":30,"trades":122,"trade_rate":4.066667,"buy_vol":4418.0,"sell_vol":3093.0,"unclassified_vol":0.0,"imbalance":0.176408,"bid":10.92,"ask":10.93,"spread_pct":0.091533,"quote_size_imbalance":null,"quote_age_s":0.210614},"context":{"vwap":10.537642,"price_vs_vwap_pct":3.628502,"ema9":10.862435,"ema20":10.807224,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.182815,"dist_to_hod_atr":0.264164,"atr":0.075711,"spread_atr":0.132082,"own_change_pct":0.251662,"rel_strength_pct":{"SPY":0.300495,"IWM":0.321722}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.206192},"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":"12cf11cb046f","ts":"2026-09-15T17:04:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7768,"target":14.19,"target_label":"range_20d_high","reward_risk":22.03,"pos_in_5d_range_pct":55.5,"room_to_5d_high_atr":0.97},"price":10.925,"vwap":10.5383,"ext_from_open_pct":4.95,"max_ext_allowed_pct":3.0,"volume_pace":1.021,"trend":"flat","recent_slope_pct":0.2249,"volatility":"medium"},"price":10.925,"volume":{"bars":214,"last_bar_volume":50513.0,"baseline_avg":43216.4,"bar_rvol":1.168839,"raw_accel":3.278225,"smooth_accel":-0.514341,"accel_momentum":-1.450148,"rvol_3bar":[0.290612,0.270487,1.168839],"trend_3bar":"MIXED","projected_rvol":0.317206},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":4119.0,"sell_vol":3169.0,"unclassified_vol":0.0,"imbalance":0.130351,"bid":10.92,"ask":10.93,"spread_pct":0.091533,"quote_size_imbalance":null,"quote_age_s":0.182895},"context":{"vwap":10.537642,"price_vs_vwap_pct":3.675951,"ema9":10.862435,"ema20":10.807224,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.137112,"dist_to_hod_atr":0.198123,"atr":0.075711,"spread_atr":0.132082,"own_change_pct":0.251662,"rel_strength_pct":{"SPY":0.300495,"IWM":0.321722}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.15236},"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":"52ed81c752e3","ts":"2026-09-15T17:04:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7618,"target":10.935,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":54.3,"room_to_5d_high_atr":0.99},"price":10.91,"vwap":10.5383,"ext_from_open_pct":4.8,"max_ext_allowed_pct":3.0,"volume_pace":1.021,"trend":"flat","recent_slope_pct":0.1974,"volatility":"medium"},"price":10.91,"volume":{"bars":214,"last_bar_volume":50513.0,"baseline_avg":43216.4,"bar_rvol":1.168839,"raw_accel":3.278225,"smooth_accel":-0.514341,"accel_momentum":-1.450148,"rvol_3bar":[0.290612,0.270487,1.168839],"trend_3bar":"MIXED","projected_rvol":0.311178},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":4153.0,"sell_vol":3171.0,"unclassified_vol":0.0,"imbalance":0.13408,"bid":10.91,"ask":10.92,"spread_pct":0.091617,"quote_size_imbalance":null,"quote_age_s":0.031543},"context":{"vwap":10.537642,"price_vs_vwap_pct":3.533604,"ema9":10.862435,"ema20":10.807224,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.274223,"dist_to_hod_atr":0.396246,"atr":0.075711,"spread_atr":0.132082,"own_change_pct":0.251662,"rel_strength_pct":{"SPY":0.300495,"IWM":0.321722}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.156718},"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":"8e9295706722","ts":"2026-09-15T17:04:45+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says PASS; stop 12.51, target 13.18 (prev_day_high), R:R 2.04; target 0.45 away > ~0.23 reachable in 170 min","plan":{"state":"PASS","setup":"","stop":12.5147,"target":13.18,"target_label":"prev_day_high","reward_risk":2.04,"pos_in_5d_range_pct":17.7,"room_to_5d_high_atr":1.98},"price":12.7338,"vwap":12.6109,"ext_from_open_pct":1.87,"max_ext_allowed_pct":4.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":-0.0025,"volatility":"high"},"price":12.7338,"volume":{"bars":214,"last_bar_volume":10047.0,"baseline_avg":26706.25,"bar_rvol":0.376204,"raw_accel":-0.696337,"smooth_accel":2.555293,"accel_momentum":0.729112,"rvol_3bar":[4.77018,1.287826,0.376204],"trend_3bar":"DECELERATING","projected_rvol":0.312087},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":4194.0,"sell_vol":1164.0,"unclassified_vol":0.0,"imbalance":0.56551,"bid":12.7,"ask":12.71,"spread_pct":0.078709,"quote_size_imbalance":null,"quote_age_s":0.035205},"context":{"vwap":12.610779,"price_vs_vwap_pct":0.975526,"ema9":12.720915,"ema20":12.684518,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.198157,"dist_to_hod_atr":4.551394,"atr":0.062882,"spread_atr":0.159028,"own_change_pct":-0.397963,"rel_strength_pct":{"SPY":-0.349131,"IWM":-0.327903}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.212747},"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":"e10be7a9fb3d","ts":"2026-09-15T17:04:50+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says WATCH; stop 12.47, target 12.72 (premarket_high), R:R 0.14; selling not fading: red-bar volume 1.94x the advance (max 0.7); imbalance -31% still heavy selling; no reclaim yet (ne","plan":{"state":"WATCH","setup":"","stop":12.4709,"target":12.72,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":15.6,"room_to_5d_high_atr":2.03},"price":12.69,"vwap":12.611,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.954,"trend":"flat","recent_slope_pct":-0.0714,"volatility":"high"},"price":12.69,"volume":{"bars":214,"last_bar_volume":10047.0,"baseline_avg":26706.25,"bar_rvol":0.376204,"raw_accel":-0.696337,"smooth_accel":2.555293,"accel_momentum":0.729112,"rvol_3bar":[4.77018,1.287826,0.376204],"trend_3bar":"DECELERATING","projected_rvol":0.431944},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":4660.0,"sell_vol":3722.0,"unclassified_vol":0.0,"imbalance":0.111906,"bid":12.69,"ask":12.7,"spread_pct":0.078771,"quote_size_imbalance":null,"quote_age_s":1.088013},"context":{"vwap":12.610779,"price_vs_vwap_pct":0.628204,"ema9":12.720915,"ema20":12.684518,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.534562,"dist_to_hod_atr":5.247938,"atr":0.062882,"spread_atr":0.159028,"own_change_pct":-0.397963,"rel_strength_pct":{"SPY":-0.349131,"IWM":-0.327903}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.0421},"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":"c1d97869884a","ts":"2026-09-15T17:05:05+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.9192,"target":13.8,"target_label":"premarket_high","reward_risk":3.87,"pos_in_5d_range_pct":56.7,"room_to_5d_high_atr":0.9},"price":13.1,"vwap":12.8953,"ext_from_open_pct":0.38,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0838,"volatility":"medium"},"price":13.1,"volume":{"bars":215,"last_bar_volume":1316.0,"baseline_avg":1222.7,"bar_rvol":1.076307,"raw_accel":1.764706,"smooth_accel":-0.721251,"accel_momentum":-0.13411,"rvol_3bar":[0.016754,0.312244,1.076307],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":5.0,"sell_vol":1480.0,"unclassified_vol":0.0,"imbalance":-0.993266,"bid":13.08,"ask":13.13,"spread_pct":0.381534,"quote_size_imbalance":null,"quote_age_s":0.744685},"context":{"vwap":12.895129,"price_vs_vwap_pct":1.588747,"ema9":13.126534,"ema20":13.106596,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-1.577761,"dist_to_hod_atr":5.011392,"atr":0.041905,"spread_atr":1.193189,"own_change_pct":-0.267223,"rel_strength_pct":{"SPY":-0.193319,"IWM":-0.134128}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.069059},"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":"857e2a00c361","ts":"2026-09-15T17:05:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7518,"target":14.19,"target_label":"range_20d_high","reward_risk":22.2,"pos_in_5d_range_pct":53.5,"room_to_5d_high_atr":1.01},"price":10.9,"vwap":10.5385,"ext_from_open_pct":4.71,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":0.078,"volatility":"medium"},"price":10.9,"volume":{"bars":215,"last_bar_volume":12607.0,"baseline_avg":45236.55,"bar_rvol":0.278691,"raw_accel":-0.750421,"smooth_accel":-0.50052,"accel_momentum":0.013821,"rvol_3bar":[0.270487,1.168839,0.278691],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":2123.0,"sell_vol":2702.0,"unclassified_vol":0.0,"imbalance":-0.12,"bid":10.89,"ask":10.9,"spread_pct":0.091785,"quote_size_imbalance":null,"quote_age_s":0.152644},"context":{"vwap":10.538473,"price_vs_vwap_pct":3.430545,"ema9":10.869948,"ema20":10.81606,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.365631,"dist_to_hod_atr":0.522419,"atr":0.076567,"spread_atr":0.130605,"own_change_pct":0.553506,"rel_strength_pct":{"SPY":0.62741,"IWM":0.686601}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.033443},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a549fddac279","ts":"2026-09-15T17:05:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2828,"target":7.43,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.18},"price":7.3872,"vwap":7.2618,"ext_from_open_pct":3.32,"max_ext_allowed_pct":3.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.0796,"volatility":"medium"},"price":7.3872,"volume":{"bars":215,"last_bar_volume":1156041.0,"baseline_avg":272238.75,"bar_rvol":4.246423,"raw_accel":4.547887,"smooth_accel":1.145106,"accel_momentum":0.886681,"rvol_3bar":[0.933583,0.761813,4.246423],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":559,"trade_rate":18.633333,"buy_vol":179240.0,"sell_vol":687920.0,"unclassified_vol":0.0,"imbalance":-0.586605,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":1.215192},"context":{"vwap":7.261824,"price_vs_vwap_pct":1.726508,"ema9":7.387849,"ema20":7.382665,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.576043,"dist_to_hod_atr":1.402088,"atr":0.030526,"spread_atr":0.327591,"own_change_pct":0.398612,"rel_strength_pct":{"SPY":0.472516,"IWM":0.531707}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.490971},"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":"996592ebb3b6","ts":"2026-09-15T17:05:10+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.3006,"target":7.47,"target_label":"prev_day_high","reward_risk":0.62,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.14},"price":7.405,"vwap":7.2618,"ext_from_open_pct":3.57,"max_ext_allowed_pct":3.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.1277,"volatility":"medium"},"price":7.405,"volume":{"bars":215,"last_bar_volume":1156041.0,"baseline_avg":272238.75,"bar_rvol":4.246423,"raw_accel":4.547887,"smooth_accel":1.145106,"accel_momentum":0.886681,"rvol_3bar":[0.933583,0.761813,4.246423],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":555,"trade_rate":18.5,"buy_vol":178881.0,"sell_vol":688049.0,"unclassified_vol":0.0,"imbalance":-0.587323,"bid":7.4,"ask":7.41,"spread_pct":0.135044,"quote_size_imbalance":null,"quote_age_s":0.545891},"context":{"vwap":7.261824,"price_vs_vwap_pct":1.971625,"ema9":7.387849,"ema20":7.382665,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.336474,"dist_to_hod_atr":0.818976,"atr":0.030526,"spread_atr":0.327591,"own_change_pct":0.398612,"rel_strength_pct":{"SPY":0.472516,"IWM":0.531707}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.494022},"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":"036ecc5bca75","ts":"2026-09-15T17:05:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7218,"target":10.935,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":51.2,"room_to_5d_high_atr":1.06},"price":10.87,"vwap":10.5392,"ext_from_open_pct":4.42,"max_ext_allowed_pct":3.0,"volume_pace":1.02,"trend":"flat","recent_slope_pct":0.023,"volatility":"medium"},"price":10.87,"volume":{"bars":215,"last_bar_volume":12607.0,"baseline_avg":45236.55,"bar_rvol":0.278691,"raw_accel":-0.750421,"smooth_accel":-0.50052,"accel_momentum":0.013821,"rvol_3bar":[0.270487,1.168839,0.278691],"trend_3bar":"MIXED","projected_rvol":0.541863},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":553.0,"sell_vol":11703.0,"unclassified_vol":0.0,"imbalance":-0.909758,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.305569},"context":{"vwap":10.538473,"price_vs_vwap_pct":3.145873,"ema9":10.869948,"ema20":10.81606,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.639854,"dist_to_hod_atr":0.914233,"atr":0.076567,"spread_atr":0.130605,"own_change_pct":0.553506,"rel_strength_pct":{"SPY":0.62741,"IWM":0.686601}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.253541},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"847da83bdf87","ts":"2026-09-15T17:05:35+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.3563,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":-0.0481,"volatility":"medium"},"price":8.47,"volume":{"bars":215,"last_bar_volume":3422.0,"baseline_avg":981.4,"bar_rvol":3.486856,"raw_accel":5.631783,"smooth_accel":0.528267,"accel_momentum":1.049427,"rvol_3bar":[0.196928,0.449243,3.486856],"trend_3bar":"ACCELERATING","projected_rvol":3.334595},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1085.0,"sell_vol":824.0,"unclassified_vol":0.0,"imbalance":0.136721,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.335326},"context":{"vwap":8.355573,"price_vs_vwap_pct":1.36947,"ema9":8.480912,"ema20":8.477796,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":2.441919,"atr":0.012285,"spread_atr":0.813973,"own_change_pct":-0.029481,"rel_strength_pct":{"SPY":0.044423,"IWM":0.103614}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.476726},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"011671d17f1c","ts":"2026-09-15T17:05:35+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2619,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0601,"volatility":"medium"},"price":7.38,"volume":{"bars":215,"last_bar_volume":1156041.0,"baseline_avg":272238.75,"bar_rvol":4.246423,"raw_accel":4.547887,"smooth_accel":1.145106,"accel_momentum":0.886681,"rvol_3bar":[0.933583,0.761813,4.246423],"trend_3bar":"MIXED","projected_rvol":0.18687},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":12059.0,"sell_vol":15139.0,"unclassified_vol":0.0,"imbalance":-0.113244,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.720043},"context":{"vwap":7.261824,"price_vs_vwap_pct":1.627359,"ema9":7.387849,"ema20":7.382665,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.637953,"atr":0.030526,"spread_atr":0.327591,"own_change_pct":0.398612,"rel_strength_pct":{"SPY":0.472516,"IWM":0.531707}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.48088},"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":"11c745d476c1","ts":"2026-09-15T17:05:40+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3846,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.4747,"vwap":8.3564,"ext_from_open_pct":1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.037,"volatility":"medium"},"price":8.4747,"volume":{"bars":215,"last_bar_volume":3422.0,"baseline_avg":981.4,"bar_rvol":3.486856,"raw_accel":5.631783,"smooth_accel":0.528267,"accel_momentum":1.049427,"rvol_3bar":[0.196928,0.449243,3.486856],"trend_3bar":"ACCELERATING","projected_rvol":2.922356},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1088.0,"sell_vol":823.0,"unclassified_vol":0.0,"imbalance":0.138671,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.1055},"context":{"vwap":8.355573,"price_vs_vwap_pct":1.42572,"ema9":8.480912,"ema20":8.477796,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.297647,"dist_to_hod_atr":2.059351,"atr":0.012285,"spread_atr":0.813973,"own_change_pct":-0.029481,"rel_strength_pct":{"SPY":0.044423,"IWM":0.103614}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.483525},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bec4e233d331","ts":"2026-09-15T17:05:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2853,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.3897,"vwap":7.2619,"ext_from_open_pct":3.35,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0864,"volatility":"medium"},"price":7.3897,"volume":{"bars":215,"last_bar_volume":1156041.0,"baseline_avg":272238.75,"bar_rvol":4.246423,"raw_accel":4.547887,"smooth_accel":1.145106,"accel_momentum":0.886681,"rvol_3bar":[0.933583,0.761813,4.246423],"trend_3bar":"MIXED","projected_rvol":0.180724},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":14110.0,"sell_vol":12872.0,"unclassified_vol":0.0,"imbalance":0.045882,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.267535},"context":{"vwap":7.261824,"price_vs_vwap_pct":1.760935,"ema9":7.387849,"ema20":7.382665,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.542396,"dist_to_hod_atr":1.32019,"atr":0.030526,"spread_atr":0.327591,"own_change_pct":0.398612,"rel_strength_pct":{"SPY":0.472516,"IWM":0.531707}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.194836},"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":"343639710406","ts":"2026-09-15T17:05:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2757,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.3801,"vwap":7.2619,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0604,"volatility":"medium"},"price":7.3801,"volume":{"bars":215,"last_bar_volume":1156041.0,"baseline_avg":272238.75,"bar_rvol":4.246423,"raw_accel":4.547887,"smooth_accel":1.145106,"accel_momentum":0.886681,"rvol_3bar":[0.933583,0.761813,4.246423],"trend_3bar":"MIXED","projected_rvol":0.163288},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":9074.0,"sell_vol":9560.0,"unclassified_vol":0.0,"imbalance":-0.026081,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.135952},"context":{"vwap":7.261824,"price_vs_vwap_pct":1.628736,"ema9":7.387849,"ema20":7.382665,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.671602,"dist_to_hod_atr":1.634677,"atr":0.030526,"spread_atr":0.327591,"own_change_pct":0.398612,"rel_strength_pct":{"SPY":0.472516,"IWM":0.531707}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.110752},"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":"a76427344647","ts":"2026-09-15T17:05:50+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3563,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0599,"volatility":"medium"},"price":8.465,"volume":{"bars":215,"last_bar_volume":3422.0,"baseline_avg":981.4,"bar_rvol":3.486856,"raw_accel":5.631783,"smooth_accel":0.528267,"accel_momentum":1.049427,"rvol_3bar":[0.196928,0.449243,3.486856],"trend_3bar":"ACCELERATING","projected_rvol":2.341553},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1088.0,"sell_vol":819.0,"unclassified_vol":0.0,"imbalance":0.141059,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.166872},"context":{"vwap":8.355573,"price_vs_vwap_pct":1.30963,"ema9":8.480912,"ema20":8.477796,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":2.848905,"atr":0.012285,"spread_atr":0.813973,"own_change_pct":-0.029481,"rel_strength_pct":{"SPY":0.044423,"IWM":0.103614}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.491853},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a298684bd45e","ts":"2026-09-15T17:05:50+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2839,"target":7.47,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.18},"price":7.3883,"vwap":7.2619,"ext_from_open_pct":3.33,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0826,"volatility":"medium"},"price":7.3883,"volume":{"bars":215,"last_bar_volume":1156041.0,"baseline_avg":272238.75,"bar_rvol":4.246423,"raw_accel":4.547887,"smooth_accel":1.145106,"accel_momentum":0.886681,"rvol_3bar":[0.933583,0.761813,4.246423],"trend_3bar":"MIXED","projected_rvol":0.150776},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":8719.0,"sell_vol":10126.0,"unclassified_vol":0.0,"imbalance":-0.074662,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.458097},"context":{"vwap":7.261824,"price_vs_vwap_pct":1.741656,"ema9":7.387849,"ema20":7.382665,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.561238,"dist_to_hod_atr":1.366053,"atr":0.030526,"spread_atr":0.327591,"own_change_pct":0.398612,"rel_strength_pct":{"SPY":0.472516,"IWM":0.531707}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.317045},"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":"1867e6e57b32","ts":"2026-09-15T17:06:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3863,"target":8.5586,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":66.3,"room_to_5d_high_atr":0.81},"price":8.4764,"vwap":8.3565,"ext_from_open_pct":1.76,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0368,"volatility":"medium"},"price":8.4764,"volume":{"bars":216,"last_bar_volume":2257.0,"baseline_avg":1058.05,"bar_rvol":2.13317,"raw_accel":-0.340444,"smooth_accel":1.727873,"accel_momentum":1.199606,"rvol_3bar":[0.449243,3.486856,2.13317],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":397.0,"sell_vol":34.0,"unclassified_vol":0.0,"imbalance":0.842227,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.448559},"context":{"vwap":8.356467,"price_vs_vwap_pct":1.435208,"ema9":8.47873,"ema20":8.477053,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.277647,"dist_to_hod_atr":1.918583,"atr":0.012301,"spread_atr":0.812959,"own_change_pct":-0.235571,"rel_strength_pct":{"SPY":-0.155066,"IWM":-0.112966}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.796614},"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":"108b3b063d47","ts":"2026-09-15T17:06:10+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3516,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.549,"trend":"flat","recent_slope_pct":-0.0662,"volatility":"high"},"price":9.41,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":602.0,"sell_vol":1350.0,"unclassified_vol":0.0,"imbalance":-0.383197,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.154679},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.624872,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":5.101416,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.472655},"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":"20af6a8b606d","ts":"2026-09-15T17:06:10+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.262,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":-0.0061,"volatility":"medium"},"price":7.38,"volume":{"bars":216,"last_bar_volume":38131.0,"baseline_avg":312407.2,"bar_rvol":0.122055,"raw_accel":-0.967016,"smooth_accel":0.592052,"accel_momentum":-0.553054,"rvol_3bar":[0.761813,4.246423,0.122055],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":1037.0,"sell_vol":5064.0,"unclassified_vol":0.0,"imbalance":-0.660056,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.848969},"context":{"vwap":7.261955,"price_vs_vwap_pct":1.625533,"ema9":7.388639,"ema20":7.383535,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.639971,"atr":0.030488,"spread_atr":0.327994,"own_change_pct":0.295794,"rel_strength_pct":{"SPY":0.376299,"IWM":0.418399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.080563},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"99ce1c5f70b0","ts":"2026-09-15T17:06:10+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.4185,"target":5.61,"target_label":"prev_day_high","reward_risk":2.08,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":1.64},"price":5.4807,"vwap":5.4077,"ext_from_open_pct":0.38,"max_ext_allowed_pct":4.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":-0.0182,"volatility":"medium"},"price":5.4807,"volume":{"bars":216,"last_bar_volume":84156.0,"baseline_avg":86951.95,"bar_rvol":0.967845,"raw_accel":0.056095,"smooth_accel":0.884049,"accel_momentum":0.535992,"rvol_3bar":[2.759678,0.920036,0.967845],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":15678.0,"sell_vol":13940.0,"unclassified_vol":0.0,"imbalance":0.058681,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.016112},"context":{"vwap":5.407668,"price_vs_vwap_pct":1.350518,"ema9":5.484233,"ema20":5.477211,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.248649,"dist_to_hod_atr":2.280481,"atr":0.030388,"spread_atr":0.329074,"own_change_pct":0.204566,"rel_strength_pct":{"SPY":0.285072,"IWM":0.327171}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.056794},"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":"e3e940835650","ts":"2026-09-15T17:06:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.2421,"target":9.48,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.395,"vwap":9.3516,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.549,"trend":"flat","recent_slope_pct":-0.0981,"volatility":"high"},"price":9.395,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":1.768927},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1314.0,"sell_vol":1402.0,"unclassified_vol":0.0,"imbalance":-0.032401,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":0.229191},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.464471,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.416579,"dist_to_hod_atr":5.739093,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.039965},"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":"5842a541f7fd","ts":"2026-09-15T17:06:20+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3565,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0637,"volatility":"medium"},"price":8.465,"volume":{"bars":216,"last_bar_volume":2257.0,"baseline_avg":1058.05,"bar_rvol":2.13317,"raw_accel":-0.340444,"smooth_accel":1.727873,"accel_momentum":1.199606,"rvol_3bar":[0.449243,3.486856,2.13317],"trend_3bar":"MIXED","projected_rvol":0.453665},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":420.0,"sell_vol":82.0,"unclassified_vol":0.0,"imbalance":0.673307,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":4.554496},"context":{"vwap":8.356467,"price_vs_vwap_pct":1.298787,"ema9":8.47873,"ema20":8.477053,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":2.845355,"atr":0.012301,"spread_atr":0.812959,"own_change_pct":-0.235571,"rel_strength_pct":{"SPY":-0.155066,"IWM":-0.112966}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.436277},"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":"c52b30479e27","ts":"2026-09-15T17:06:20+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2617,"target":9.48,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":3.2},"price":9.4146,"vwap":9.3516,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.549,"trend":"flat","recent_slope_pct":-0.0564,"volatility":"high"},"price":9.4146,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":1.342811},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1342.0,"sell_vol":1027.0,"unclassified_vol":0.0,"imbalance":0.132967,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":1.548199},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.674062,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.210913,"dist_to_hod_atr":4.905862,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.164009},"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":"2b9d02b6c4c8","ts":"2026-09-15T17:06:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.2745,"target":9.48,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":8.8,"room_to_5d_high_atr":3.18},"price":9.4274,"vwap":9.3518,"ext_from_open_pct":0.83,"max_ext_allowed_pct":3.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.0293,"volatility":"high"},"price":9.4274,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":3.436399},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1442.0,"sell_vol":6043.0,"unclassified_vol":0.0,"imbalance":-0.614696,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":2.943862},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.810937,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.0766,"dist_to_hod_atr":4.361711,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.758198},"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":"9fce35ff8799","ts":"2026-09-15T17:06:25+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.262,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.826,"trend":"flat","recent_slope_pct":0.021,"volatility":"medium"},"price":7.39,"volume":{"bars":216,"last_bar_volume":38131.0,"baseline_avg":312407.2,"bar_rvol":0.122055,"raw_accel":-0.967016,"smooth_accel":0.592052,"accel_momentum":-0.553054,"rvol_3bar":[0.761813,4.246423,0.122055],"trend_3bar":"MIXED","projected_rvol":0.03679},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2373.0,"sell_vol":3140.0,"unclassified_vol":0.0,"imbalance":-0.139126,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.185364},"context":{"vwap":7.261955,"price_vs_vwap_pct":1.763237,"ema9":7.388639,"ema20":7.383535,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.311977,"atr":0.030488,"spread_atr":0.327994,"own_change_pct":0.295794,"rel_strength_pct":{"SPY":0.376299,"IWM":0.418399}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.016981},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6db2b63fe6b3","ts":"2026-09-15T17:06:30+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says PASS; stop 12.50, target 13.18 (prev_day_high), R:R 2.09; target 0.46 away > ~0.23 reachable in 168 min","plan":{"state":"PASS","setup":"","stop":12.503,"target":13.18,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":17.2,"room_to_5d_high_atr":1.99},"price":12.7221,"vwap":12.6116,"ext_from_open_pct":1.78,"max_ext_allowed_pct":3.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":0.0261,"volatility":"high"},"price":12.7221,"volume":{"bars":216,"last_bar_volume":16273.0,"baseline_avg":26768.55,"bar_rvol":0.607915,"raw_accel":0.622109,"smooth_accel":-0.75814,"accel_momentum":-0.149376,"rvol_3bar":[0.376204,0.371894,0.607915],"trend_3bar":"MIXED","projected_rvol":0.823055},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":4067.0,"sell_vol":6949.0,"unclassified_vol":0.0,"imbalance":-0.261619,"bid":12.68,"ask":12.69,"spread_pct":0.078833,"quote_size_imbalance":null,"quote_age_s":0.415487},"context":{"vwap":12.611347,"price_vs_vwap_pct":0.878198,"ema9":12.715353,"ema20":12.688347,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.288018,"dist_to_hod_atr":4.835786,"atr":0.061603,"spread_atr":0.162329,"own_change_pct":-0.249706,"rel_strength_pct":{"SPY":-0.1692,"IWM":-0.127101}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.159042},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4343d602da09","ts":"2026-09-15T17:06:35+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2622,"target":9.48,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":3.2},"price":9.4151,"vwap":9.3518,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.0554,"volatility":"high"},"price":9.4151,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":2.465753},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1214.0,"sell_vol":5123.0,"unclassified_vol":0.0,"imbalance":-0.616853,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":0.925135},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.679409,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.205666,"dist_to_hod_atr":4.884606,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.760859},"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":"8a314f63f727","ts":"2026-09-15T17:06:35+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3788,"target":8.59,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":10.7,"room_to_5d_high_atr":3.66},"price":8.57,"vwap":8.399,"ext_from_open_pct":2.39,"max_ext_allowed_pct":3.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.2669,"volatility":"high"},"price":8.57,"volume":{"bars":216,"last_bar_volume":217134.0,"baseline_avg":102435.3,"bar_rvol":2.119718,"raw_accel":0.271693,"smooth_accel":1.172444,"accel_momentum":1.227063,"rvol_3bar":[0.953394,1.772273,2.119718],"trend_3bar":"ACCELERATING","projected_rvol":0.473224},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":11637.0,"sell_vol":14610.0,"unclassified_vol":0.0,"imbalance":-0.11327,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":0.136786},"context":{"vwap":8.398628,"price_vs_vwap_pct":2.040482,"ema9":8.627966,"ema20":8.60943,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.210375,"dist_to_hod_atr":2.388414,"atr":0.043962,"spread_atr":0.227468,"own_change_pct":-0.443631,"rel_strength_pct":{"SPY":-0.363125,"IWM":-0.321026}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.240101},"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":"9b8c6cc23fe0","ts":"2026-09-15T17:06:35+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.262,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":0.0074,"volatility":"medium"},"price":7.385,"volume":{"bars":216,"last_bar_volume":38131.0,"baseline_avg":312407.2,"bar_rvol":0.122055,"raw_accel":-0.967016,"smooth_accel":0.592052,"accel_momentum":-0.553054,"rvol_3bar":[0.761813,4.246423,0.122055],"trend_3bar":"MIXED","projected_rvol":0.061667},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2486.0,"sell_vol":8498.0,"unclassified_vol":0.0,"imbalance":-0.547342,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.000658},"context":{"vwap":7.261955,"price_vs_vwap_pct":1.694385,"ema9":7.388639,"ema20":7.383535,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.475974,"atr":0.030488,"spread_atr":0.327994,"own_change_pct":0.295794,"rel_strength_pct":{"SPY":0.376299,"IWM":0.418399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.066806},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a35a26814c4d","ts":"2026-09-15T17:06:35+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says WATCH; stop 12.46, target 12.72 (premarket_high), R:R 0.18; selling not fading: red-bar volume 1.61x the advance (max 0.7); no reclaim yet (needs a close > 12.73); R:R 0.18 < 2.","plan":{"state":"WATCH","setup":"","stop":12.4609,"target":12.72,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":15.2,"room_to_5d_high_atr":2.04},"price":12.68,"vwap":12.6116,"ext_from_open_pct":1.44,"max_ext_allowed_pct":4.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":-0.0402,"volatility":"high"},"price":12.68,"volume":{"bars":216,"last_bar_volume":16273.0,"baseline_avg":26768.55,"bar_rvol":0.607915,"raw_accel":0.622109,"smooth_accel":-0.75814,"accel_momentum":-0.149376,"rvol_3bar":[0.376204,0.371894,0.607915],"trend_3bar":"MIXED","projected_rvol":0.712008},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":3651.0,"sell_vol":6724.0,"unclassified_vol":0.0,"imbalance":-0.296193,"bid":12.68,"ask":12.69,"spread_pct":0.078833,"quote_size_imbalance":null,"quote_age_s":0.547417},"context":{"vwap":12.611347,"price_vs_vwap_pct":0.544372,"ema9":12.715353,"ema20":12.688347,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.611367,"dist_to_hod_atr":5.519192,"atr":0.061603,"spread_atr":0.162329,"own_change_pct":-0.249706,"rel_strength_pct":{"SPY":-0.1692,"IWM":-0.127101}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.18006},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"44023f67aee1","ts":"2026-09-15T17:06:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.2534,"target":9.48,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":7.8,"room_to_5d_high_atr":3.21},"price":9.4063,"vwap":9.3518,"ext_from_open_pct":0.6,"max_ext_allowed_pct":3.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.0741,"volatility":"high"},"price":9.4063,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":2.424888},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":883.0,"sell_vol":6003.0,"unclassified_vol":0.0,"imbalance":-0.743538,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":1.365676},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.585307,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.298006,"dist_to_hod_atr":5.25871,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.917118},"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":"9871521c1724","ts":"2026-09-15T17:06:40+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.4284,"target":8.8,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":12.3,"room_to_5d_high_atr":3.6},"price":8.6196,"vwap":8.3991,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.1516,"volatility":"high"},"price":8.6196,"volume":{"bars":216,"last_bar_volume":217134.0,"baseline_avg":102435.3,"bar_rvol":2.119718,"raw_accel":0.271693,"smooth_accel":1.172444,"accel_momentum":1.227063,"rvol_3bar":[0.953394,1.772273,2.119718],"trend_3bar":"ACCELERATING","projected_rvol":0.582983},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":20411.0,"sell_vol":16796.0,"unclassified_vol":0.0,"imbalance":0.097159,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":1.360677},"context":{"vwap":8.398628,"price_vs_vwap_pct":2.631054,"ema9":8.627966,"ema20":8.60943,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.638617,"dist_to_hod_atr":1.260173,"atr":0.043962,"spread_atr":0.227468,"own_change_pct":-0.443631,"rel_strength_pct":{"SPY":-0.363125,"IWM":-0.321026}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.20595},"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":"86eea1503c9f","ts":"2026-09-15T17:06:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2613,"target":9.48,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":3.2},"price":9.4142,"vwap":9.3519,"ext_from_open_pct":0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.0573,"volatility":"high"},"price":9.4142,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":2.162363},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":189.0,"sell_vol":5959.0,"unclassified_vol":0.0,"imbalance":-0.938517,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":0.011559},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.669785,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.21511,"dist_to_hod_atr":4.922867,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.157615},"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":"83e657767182","ts":"2026-09-15T17:06:45+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3838,"target":8.59,"target_label":"premarket_high","reward_risk":0.08,"pos_in_5d_range_pct":10.8,"room_to_5d_high_atr":3.66},"price":8.575,"vwap":8.3991,"ext_from_open_pct":2.45,"max_ext_allowed_pct":3.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.2553,"volatility":"high"},"price":8.575,"volume":{"bars":216,"last_bar_volume":217134.0,"baseline_avg":102435.3,"bar_rvol":2.119718,"raw_accel":0.271693,"smooth_accel":1.172444,"accel_momentum":1.227063,"rvol_3bar":[0.953394,1.772273,2.119718],"trend_3bar":"ACCELERATING","projected_rvol":0.534725},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":20587.0,"sell_vol":9749.0,"unclassified_vol":0.0,"imbalance":0.357265,"bid":8.57,"ask":8.58,"spread_pct":0.116618,"quote_size_imbalance":null,"quote_age_s":0.070844},"context":{"vwap":8.398628,"price_vs_vwap_pct":2.100015,"ema9":8.627966,"ema20":8.60943,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.152738,"dist_to_hod_atr":2.27468,"atr":0.043962,"spread_atr":0.227468,"own_change_pct":-0.443631,"rel_strength_pct":{"SPY":-0.363125,"IWM":-0.321026}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.757302},"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":"fc9ab2c08686","ts":"2026-09-15T17:06:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.244,"target":9.48,"target_label":"premarket_high","reward_risk":0.54,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":3.23},"price":9.3969,"vwap":9.352,"ext_from_open_pct":0.5,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.094,"volatility":"high"},"price":9.3969,"volume":{"bars":216,"last_bar_volume":6429.0,"baseline_avg":5212.2,"bar_rvol":1.233452,"raw_accel":1.451945,"smooth_accel":-0.369246,"accel_momentum":0.270456,"rvol_3bar":[0.548009,0.501362,1.233452],"trend_3bar":"MIXED","projected_rvol":3.449292},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":666.0,"sell_vol":11983.0,"unclassified_vol":0.0,"imbalance":-0.894695,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":1.073349},"context":{"vwap":9.351565,"price_vs_vwap_pct":0.484789,"ema9":9.429868,"ema20":9.422823,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.396642,"dist_to_hod_atr":5.658321,"atr":0.023523,"spread_atr":0.425118,"own_change_pct":-0.177004,"rel_strength_pct":{"SPY":-0.096499,"IWM":-0.054399}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.103564},"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":"bd2f297ebc0b","ts":"2026-09-15T17:06:50+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3988,"target":8.8,"target_label":"prev_day_high","reward_risk":1.1,"pos_in_5d_range_pct":11.3,"room_to_5d_high_atr":3.64},"price":8.59,"vwap":8.3995,"ext_from_open_pct":2.63,"max_ext_allowed_pct":4.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.2204,"volatility":"high"},"price":8.59,"volume":{"bars":216,"last_bar_volume":217134.0,"baseline_avg":102435.3,"bar_rvol":2.119718,"raw_accel":0.271693,"smooth_accel":1.172444,"accel_momentum":1.227063,"rvol_3bar":[0.953394,1.772273,2.119718],"trend_3bar":"ACCELERATING","projected_rvol":0.830268},"flow":{"window_s":30,"trades":174,"trade_rate":5.8,"buy_vol":28539.0,"sell_vol":30238.0,"unclassified_vol":0.0,"imbalance":-0.028906,"bid":8.58,"ask":8.59,"spread_pct":0.116482,"quote_size_imbalance":null,"quote_age_s":0.205862},"context":{"vwap":8.398628,"price_vs_vwap_pct":2.278616,"ema9":8.627966,"ema20":8.60943,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.979827,"dist_to_hod_atr":1.933478,"atr":0.043962,"spread_atr":0.227468,"own_change_pct":-0.443631,"rel_strength_pct":{"SPY":-0.363125,"IWM":-0.321026}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.061272},"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":"e4d73bdb5477","ts":"2026-09-15T17:07:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.189,"target":8.5558,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":124.4,"room_to_5d_high_atr":-0.89},"price":8.38,"vwap":8.1629,"ext_from_open_pct":9.4,"max_ext_allowed_pct":4.0,"volume_pace":0.328,"trend":"flat","recent_slope_pct":0.0681,"volatility":"high"},"price":8.38,"volume":{"bars":216,"last_bar_volume":68.0,"baseline_avg":624.75,"bar_rvol":0.108844,"raw_accel":-0.868979,"smooth_accel":-0.132184,"accel_momentum":0.49048,"rvol_3bar":[0.025591,0.786364,0.108844],"trend_3bar":"MIXED","projected_rvol":null},"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":8.35,"ask":8.39,"spread_pct":0.477897,"quote_size_imbalance":null,"quote_age_s":2.361585},"context":{"vwap":8.162871,"price_vs_vwap_pct":2.659964,"ema9":8.356686,"ema20":8.343371,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-2.054746,"dist_to_hod_atr":4.617131,"atr":0.038076,"spread_atr":1.050542,"own_change_pct":0.239234,"rel_strength_pct":{"SPY":0.325666,"IWM":0.391588}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.108844},"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":"95888dd692bc","ts":"2026-09-15T17:07:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3566,"ext_from_open_pct":1.62,"max_ext_allowed_pct":4.0,"volume_pace":0.864,"trend":"flat","recent_slope_pct":-0.0535,"volatility":"medium"},"price":8.465,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":84.0,"sell_vol":91.0,"unclassified_vol":0.0,"imbalance":-0.04,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":1.888326},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.297503,"ema9":8.477424,"ema20":8.476591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":2.850333,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.086777,"IWM":-0.020855}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.009219},"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":"945652df8844","ts":"2026-09-15T17:07:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3872,"target":8.5586,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":66.4,"room_to_5d_high_atr":0.81},"price":8.4773,"vwap":8.3566,"ext_from_open_pct":1.77,"max_ext_allowed_pct":4.0,"volume_pace":0.864,"trend":"flat","recent_slope_pct":-0.0244,"volatility":"medium"},"price":8.4773,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":0.574451},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":167.0,"sell_vol":88.0,"unclassified_vol":0.0,"imbalance":0.309804,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":6.888326},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.444692,"ema9":8.477424,"ema20":8.476591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.267059,"dist_to_hod_atr":1.848645,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.086777,"IWM":-0.020855}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.0714},"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":"dfeb8d61d583","ts":"2026-09-15T17:07:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.3566,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.864,"trend":"flat","recent_slope_pct":-0.0417,"volatility":"medium"},"price":8.47,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":0.479856},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":178.0,"sell_vol":96.0,"unclassified_vol":0.0,"imbalance":0.29927,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":4.414313},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.357336,"ema9":8.477424,"ema20":8.476591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":2.443143,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.086777,"IWM":-0.020855}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.068972},"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":"a21a7bbf6c4e","ts":"2026-09-15T17:07:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3852,"target":8.5586,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.4753,"vwap":8.3567,"ext_from_open_pct":1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.864,"trend":"flat","recent_slope_pct":-0.0291,"volatility":"medium"},"price":8.4753,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":0.425162},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":198.0,"sell_vol":75.0,"unclassified_vol":0.0,"imbalance":0.450549,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.296898},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.420759,"ema9":8.477424,"ema20":8.476591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.290588,"dist_to_hod_atr":2.011521,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.086777,"IWM":-0.020855}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.103837},"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":"256534000a57","ts":"2026-09-15T17:07:25+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.2706,"target":7.43,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":43.3,"room_to_5d_high_atr":1.21},"price":7.375,"vwap":7.2623,"ext_from_open_pct":3.15,"max_ext_allowed_pct":4.0,"volume_pace":0.824,"trend":"flat","recent_slope_pct":-0.0807,"volatility":"medium"},"price":7.375,"volume":{"bars":217,"last_bar_volume":20383.0,"baseline_avg":279719.75,"bar_rvol":0.072869,"raw_accel":-0.708523,"smooth_accel":0.626991,"accel_momentum":0.034938,"rvol_3bar":[4.246423,0.122055,0.072869],"trend_3bar":"DECELERATING","projected_rvol":0.768941},"flow":{"window_s":30,"trades":122,"trade_rate":4.066667,"buy_vol":40191.0,"sell_vol":50639.0,"unclassified_vol":0.0,"imbalance":-0.115028,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.036796},"context":{"vwap":7.26202,"price_vs_vwap_pct":1.555769,"ema9":7.386911,"ema20":7.383198,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.740242,"dist_to_hod_atr":1.864188,"atr":0.029503,"spread_atr":0.338943,"own_change_pct":0.145197,"rel_strength_pct":{"SPY":0.231629,"IWM":0.297551}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.008382},"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":"92a3794efc8b","ts":"2026-09-15T17:07:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.3573,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0417,"volatility":"medium"},"price":8.47,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":3.293632},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":691.0,"sell_vol":1224.0,"unclassified_vol":0.0,"imbalance":-0.278329,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.249224},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.357336,"ema9":8.477424,"ema20":8.476591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":2.443143,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.086777,"IWM":-0.020855}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.064146},"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":"5a4143a3ef44","ts":"2026-09-15T17:07:30+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2706,"target":7.43,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":43.3,"room_to_5d_high_atr":1.21},"price":7.375,"vwap":7.2625,"ext_from_open_pct":3.15,"max_ext_allowed_pct":3.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":-0.0807,"volatility":"medium"},"price":7.375,"volume":{"bars":217,"last_bar_volume":20383.0,"baseline_avg":279719.75,"bar_rvol":0.072869,"raw_accel":-0.708523,"smooth_accel":0.626991,"accel_momentum":0.034938,"rvol_3bar":[4.246423,0.122055,0.072869],"trend_3bar":"DECELERATING","projected_rvol":1.020321},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":58143.0,"sell_vol":84559.0,"unclassified_vol":0.0,"imbalance":-0.185113,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.165844},"context":{"vwap":7.26202,"price_vs_vwap_pct":1.555769,"ema9":7.386911,"ema20":7.383198,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.740242,"dist_to_hod_atr":1.864188,"atr":0.029503,"spread_atr":0.338943,"own_change_pct":0.145197,"rel_strength_pct":{"SPY":0.231629,"IWM":0.297551}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.013489},"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":"17aa98122497","ts":"2026-09-15T17:07:30+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says PASS; stop 12.51, target 13.18 (prev_day_high), R:R 2.08; target 0.46 away > ~0.22 reachable in 168 min","plan":{"state":"PASS","setup":"","stop":12.5059,"target":13.18,"target_label":"prev_day_high","reward_risk":2.08,"pos_in_5d_range_pct":17.3,"room_to_5d_high_atr":1.99},"price":12.725,"vwap":12.6119,"ext_from_open_pct":1.8,"max_ext_allowed_pct":3.0,"volume_pace":0.952,"trend":"flat","recent_slope_pct":0.0026,"volatility":"high"},"price":12.725,"volume":{"bars":217,"last_bar_volume":12871.0,"baseline_avg":26562.45,"bar_rvol":0.484556,"raw_accel":-0.209058,"smooth_accel":-0.731948,"accel_momentum":0.026192,"rvol_3bar":[0.371894,0.607915,0.484556],"trend_3bar":"MIXED","projected_rvol":1.125649},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":9077.0,"sell_vol":5873.0,"unclassified_vol":0.0,"imbalance":0.214314,"bid":12.72,"ask":12.73,"spread_pct":0.078585,"quote_size_imbalance":null,"quote_age_s":0.022495},"context":{"vwap":12.6116,"price_vs_vwap_pct":0.89917,"ema9":12.710283,"ema20":12.688504,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.265745,"dist_to_hod_atr":4.839796,"atr":0.060953,"spread_atr":0.164061,"own_change_pct":-0.196618,"rel_strength_pct":{"SPY":-0.110187,"IWM":-0.044265}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.103847},"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":"39fa40f6769d","ts":"2026-09-15T17:07:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3949,"target":8.5586,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":67.2,"room_to_5d_high_atr":0.79},"price":8.485,"vwap":8.3576,"ext_from_open_pct":1.86,"max_ext_allowed_pct":4.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":-0.0063,"volatility":"medium"},"price":8.485,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":3.569064},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1175.0,"sell_vol":1246.0,"unclassified_vol":0.0,"imbalance":-0.029327,"bid":8.48,"ask":8.49,"spread_pct":0.117855,"quote_size_imbalance":null,"quote_age_s":0.943521},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.536835,"ema9":8.477424,"ema20":8.476591,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.176471,"dist_to_hod_atr":1.221571,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.086777,"IWM":-0.020855}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.006759},"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":"2e0220236dd0","ts":"2026-09-15T17:07:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7518,"target":14.19,"target_label":"range_20d_high","reward_risk":22.2,"pos_in_5d_range_pct":53.5,"room_to_5d_high_atr":1.01},"price":10.9,"vwap":10.5416,"ext_from_open_pct":4.71,"max_ext_allowed_pct":4.0,"volume_pace":1.018,"trend":"flat","recent_slope_pct":-0.0597,"volatility":"medium"},"price":10.9,"volume":{"bars":217,"last_bar_volume":17252.0,"baseline_avg":45384.15,"bar_rvol":0.380133,"raw_accel":-0.361415,"smooth_accel":-0.24606,"accel_momentum":0.110599,"rvol_3bar":[0.278691,0.595687,0.380133],"trend_3bar":"MIXED","projected_rvol":0.293306},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":4823.0,"sell_vol":2614.0,"unclassified_vol":0.0,"imbalance":0.297028,"bid":10.9,"ask":10.91,"spread_pct":0.091701,"quote_size_imbalance":null,"quote_age_s":0.218497},"context":{"vwap":10.541132,"price_vs_vwap_pct":3.404456,"ema9":10.866567,"ema20":10.824076,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.365631,"dist_to_hod_atr":0.538051,"atr":0.074342,"spread_atr":0.134513,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.086432,"IWM":0.152354}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.11291},"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":"a8267cc34815","ts":"2026-09-15T17:07:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2843,"target":7.47,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.18},"price":7.3887,"vwap":7.2628,"ext_from_open_pct":3.34,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":-0.0436,"volatility":"medium"},"price":7.3887,"volume":{"bars":217,"last_bar_volume":20383.0,"baseline_avg":279719.75,"bar_rvol":0.072869,"raw_accel":-0.708523,"smooth_accel":0.626991,"accel_momentum":0.034938,"rvol_3bar":[4.246423,0.122055,0.072869],"trend_3bar":"DECELERATING","projected_rvol":1.318502},"flow":{"window_s":30,"trades":185,"trade_rate":6.166667,"buy_vol":93470.0,"sell_vol":147546.0,"unclassified_vol":0.0,"imbalance":-0.224367,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.122679},"context":{"vwap":7.26202,"price_vs_vwap_pct":1.744421,"ema9":7.386911,"ema20":7.383198,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.555855,"dist_to_hod_atr":1.399836,"atr":0.029503,"spread_atr":0.338943,"own_change_pct":0.145197,"rel_strength_pct":{"SPY":0.231629,"IWM":0.297551}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.016349},"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":"ea26a32859e6","ts":"2026-09-15T17:07:40+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 215.0s, plan says WATCH; stop 12.49, target 12.72 (premarket_high), R:R 0.06; R:R 0.06 < 2.0 at 12.71; pullback: buy 12.67-12.69 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":12.4878,"target":12.72,"target_label":"premarket_high","reward_risk":0.06,"pos_in_5d_range_pct":16.4,"room_to_5d_high_atr":2.01},"price":12.7069,"vwap":12.612,"ext_from_open_pct":1.66,"max_ext_allowed_pct":3.0,"volume_pace":0.951,"trend":"flat","recent_slope_pct":-0.0259,"volatility":"high"},"price":12.7069,"volume":{"bars":217,"last_bar_volume":12871.0,"baseline_avg":26562.45,"bar_rvol":0.484556,"raw_accel":-0.209058,"smooth_accel":-0.731948,"accel_momentum":0.026192,"rvol_3bar":[0.371894,0.607915,0.484556],"trend_3bar":"MIXED","projected_rvol":0.896021},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":6805.0,"sell_vol":3994.0,"unclassified_vol":0.0,"imbalance":0.260302,"bid":12.73,"ask":12.74,"spread_pct":0.078524,"quote_size_imbalance":null,"quote_age_s":0.994771},"context":{"vwap":12.6116,"price_vs_vwap_pct":0.755652,"ema9":12.710283,"ema20":12.688504,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.404762,"dist_to_hod_atr":5.136746,"atr":0.060953,"spread_atr":0.164061,"own_change_pct":-0.196618,"rel_strength_pct":{"SPY":-0.110187,"IWM":-0.044265}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.126131},"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":"089e512cde5a","ts":"2026-09-15T17:07:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.382,"target":8.5586,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":65.8,"room_to_5d_high_atr":0.83},"price":8.4721,"vwap":8.3575,"ext_from_open_pct":1.71,"max_ext_allowed_pct":4.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":-0.0367,"volatility":"medium"},"price":8.4721,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":2.780525},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1075.0,"sell_vol":1183.0,"unclassified_vol":0.0,"imbalance":-0.04783,"bid":8.48,"ask":8.49,"spread_pct":0.117855,"quote_size_imbalance":null,"quote_age_s":3.852356},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.382466,"ema9":8.477424,"ema20":8.476591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.328235,"dist_to_hod_atr":2.272123,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.086777,"IWM":-0.020855}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.011023},"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":"d24b0d7f26de","ts":"2026-09-15T17:07:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2661,"target":9.48,"target_label":"premarket_high","reward_risk":0.4,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":3.19},"price":9.419,"vwap":9.3522,"ext_from_open_pct":0.74,"max_ext_allowed_pct":4.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.0535,"volatility":"high"},"price":9.419,"volume":{"bars":217,"last_bar_volume":15382.0,"baseline_avg":5397.45,"bar_rvol":2.849864,"raw_accel":1.392596,"smooth_accel":0.779145,"accel_momentum":1.148391,"rvol_3bar":[0.501362,1.233452,2.849864],"trend_3bar":"ACCELERATING","projected_rvol":0.810259},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":667.0,"sell_vol":330.0,"unclassified_vol":0.0,"imbalance":0.338014,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":2.642715},"context":{"vwap":9.352074,"price_vs_vwap_pct":0.715625,"ema9":9.425594,"ema20":9.421459,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.164743,"dist_to_hod_atr":4.473263,"atr":0.024814,"spread_atr":0.402997,"own_change_pct":-0.197304,"rel_strength_pct":{"SPY":-0.110872,"IWM":-0.04495}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.963294},"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":"5d67cef82daf","ts":"2026-09-15T17:07:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2631,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0671,"volatility":"medium"},"price":7.38,"volume":{"bars":217,"last_bar_volume":20383.0,"baseline_avg":279719.75,"bar_rvol":0.072869,"raw_accel":-0.708523,"smooth_accel":0.626991,"accel_momentum":0.034938,"rvol_3bar":[4.246423,0.122055,0.072869],"trend_3bar":"DECELERATING","projected_rvol":1.663508},"flow":{"window_s":30,"trades":189,"trade_rate":6.3,"buy_vol":126566.0,"sell_vol":206492.0,"unclassified_vol":0.0,"imbalance":-0.239976,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":2.083586},"context":{"vwap":7.26202,"price_vs_vwap_pct":1.62462,"ema9":7.386911,"ema20":7.383198,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.694716,"atr":0.029503,"spread_atr":0.338943,"own_change_pct":0.145197,"rel_strength_pct":{"SPY":0.231629,"IWM":0.297551}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.017487},"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":"c6698621663a","ts":"2026-09-15T17:07:45+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 220.0s, plan says PASS; stop 12.52, target 13.18 (prev_day_high), R:R 2.01; target 0.44 away > ~0.22 reachable in 167 min","plan":{"state":"PASS","setup":"","stop":12.5208,"target":13.18,"target_label":"prev_day_high","reward_risk":2.01,"pos_in_5d_range_pct":18.0,"room_to_5d_high_atr":1.97},"price":12.7399,"vwap":12.612,"ext_from_open_pct":1.92,"max_ext_allowed_pct":4.0,"volume_pace":0.951,"trend":"flat","recent_slope_pct":0.026,"volatility":"high"},"price":12.7399,"volume":{"bars":217,"last_bar_volume":12871.0,"baseline_avg":26562.45,"bar_rvol":0.484556,"raw_accel":-0.209058,"smooth_accel":-0.731948,"accel_momentum":0.026192,"rvol_3bar":[0.371894,0.607915,0.484556],"trend_3bar":"MIXED","projected_rvol":0.821611},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":7305.0,"sell_vol":3494.0,"unclassified_vol":0.0,"imbalance":0.352903,"bid":12.73,"ask":12.74,"spread_pct":0.078524,"quote_size_imbalance":null,"quote_age_s":0.657444},"context":{"vwap":12.6116,"price_vs_vwap_pct":1.017315,"ema9":12.710283,"ema20":12.688504,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.151306,"dist_to_hod_atr":4.595345,"atr":0.060953,"spread_atr":0.164061,"own_change_pct":-0.196618,"rel_strength_pct":{"SPY":-0.110187,"IWM":-0.044265}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.171001},"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":"7a1d15d6b0d5","ts":"2026-09-15T17:07:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":9.2376,"target":9.48,"target_label":"premarket_high","reward_risk":0.59,"pos_in_5d_range_pct":7.1,"room_to_5d_high_atr":3.24},"price":9.3905,"vwap":9.3522,"ext_from_open_pct":0.43,"max_ext_allowed_pct":4.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.1141,"volatility":"high"},"price":9.3905,"volume":{"bars":217,"last_bar_volume":15382.0,"baseline_avg":5397.45,"bar_rvol":2.849864,"raw_accel":1.392596,"smooth_accel":0.779145,"accel_momentum":1.148391,"rvol_3bar":[0.501362,1.233452,2.849864],"trend_3bar":"ACCELERATING","projected_rvol":0.733235},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":665.0,"sell_vol":348.0,"unclassified_vol":0.0,"imbalance":0.312932,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":2.451817},"context":{"vwap":9.352074,"price_vs_vwap_pct":0.41088,"ema9":9.425594,"ema20":9.421459,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.463799,"dist_to_hod_atr":5.621803,"atr":0.024814,"spread_atr":0.402997,"own_change_pct":-0.197304,"rel_strength_pct":{"SPY":-0.110872,"IWM":-0.04495}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.891813},"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":"6e52373eef96","ts":"2026-09-15T17:07:55+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 230.0s, plan says WATCH; stop 12.48, target 12.72 (premarket_high), R:R 0.11; R:R 0.11 < 2.0 at 12.69; pullback: buy 12.67-12.69 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":12.4758,"target":12.72,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.03},"price":12.6949,"vwap":12.612,"ext_from_open_pct":1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":-0.0448,"volatility":"high"},"price":12.6949,"volume":{"bars":217,"last_bar_volume":12871.0,"baseline_avg":26562.45,"bar_rvol":0.484556,"raw_accel":-0.209058,"smooth_accel":-0.731948,"accel_momentum":0.026192,"rvol_3bar":[0.371894,0.607915,0.484556],"trend_3bar":"MIXED","projected_rvol":0.688039},"flow":{"window_s":30,"trades":86,"trade_rate":2.866667,"buy_vol":7214.0,"sell_vol":2768.0,"unclassified_vol":0.0,"imbalance":0.445402,"bid":12.73,"ask":12.74,"spread_pct":0.078524,"quote_size_imbalance":null,"quote_age_s":1.978922},"context":{"vwap":12.6116,"price_vs_vwap_pct":0.660501,"ema9":12.710283,"ema20":12.688504,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.496928,"dist_to_hod_atr":5.333619,"atr":0.060953,"spread_atr":0.164061,"own_change_pct":-0.196618,"rel_strength_pct":{"SPY":-0.110187,"IWM":-0.044265}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.215822},"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":"0eb379760ecb","ts":"2026-09-15T17:07:55+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.0832,"target":11.44,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":23.9,"room_to_5d_high_atr":1.25},"price":11.3,"vwap":11.289,"ext_from_open_pct":0.36,"max_ext_allowed_pct":3.0,"volume_pace":0.836,"trend":"flat","recent_slope_pct":-0.092,"volatility":"high"},"price":11.3,"volume":{"bars":217,"last_bar_volume":74263.0,"baseline_avg":82720.15,"bar_rvol":0.897762,"raw_accel":-0.19687,"smooth_accel":-0.426311,"accel_momentum":0.030362,"rvol_3bar":[1.03709,1.115838,0.897762],"trend_3bar":"MIXED","projected_rvol":0.550887},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":2015.0,"sell_vol":22528.0,"unclassified_vol":0.0,"imbalance":-0.835798,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":1.926565},"context":{"vwap":11.288909,"price_vs_vwap_pct":0.098245,"ema9":11.356721,"ema20":11.366993,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.567944,"dist_to_hod_atr":5.918889,"atr":0.030411,"spread_atr":0.328827,"own_change_pct":-0.11181,"rel_strength_pct":{"SPY":-0.025378,"IWM":0.040544}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.750348},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"45a6820ed683","ts":"2026-09-15T17:08:00+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 25.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.82; R:R 0.82 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1725 sh","plan":{"state":"WATCH","setup":"","stop":8.3949,"target":8.5586,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":67.2,"room_to_5d_high_atr":0.79},"price":8.485,"vwap":8.3576,"ext_from_open_pct":1.86,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0063,"volatility":"medium"},"price":8.485,"volume":{"bars":217,"last_bar_volume":268.0,"baseline_avg":1162.85,"bar_rvol":0.230468,"raw_accel":-0.881258,"smooth_accel":3.866612,"accel_momentum":2.138739,"rvol_3bar":[3.486856,2.13317,0.230468],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":527.0,"sell_vol":31.0,"unclassified_vol":0.0,"imbalance":0.888889,"bid":8.48,"ask":8.49,"spread_pct":0.117855,"quote_size_imbalance":null,"quote_age_s":3.968289},"context":{"vwap":8.356573,"price_vs_vwap_pct":1.536835,"ema9":8.477424,"ema20":8.476591,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.176471,"dist_to_hod_atr":1.221571,"atr":0.012279,"spread_atr":0.814381,"own_change_pct":-0.173208,"rel_strength_pct":{"SPY":-0.165286,"IWM":-0.134654}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.204861},"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":"f67377327a10","ts":"2026-09-15T17:08:00+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"held 235.0s, plan says PASS; stop 12.52, target 13.18 (prev_day_high), R:R 2.03; target 0.45 away > ~0.22 reachable in 167 min","plan":{"state":"PASS","setup":"","stop":12.5159,"target":13.18,"target_label":"prev_day_high","reward_risk":2.03,"pos_in_5d_range_pct":17.8,"room_to_5d_high_atr":1.98},"price":12.735,"vwap":12.612,"ext_from_open_pct":1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.95,"trend":"flat","recent_slope_pct":0.0183,"volatility":"high"},"price":12.735,"volume":{"bars":217,"last_bar_volume":12871.0,"baseline_avg":26562.45,"bar_rvol":0.484556,"raw_accel":-0.209058,"smooth_accel":-0.731948,"accel_momentum":0.026192,"rvol_3bar":[0.371894,0.607915,0.484556],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1507.0,"sell_vol":397.0,"unclassified_vol":0.0,"imbalance":0.582983,"bid":12.73,"ask":12.74,"spread_pct":0.078524,"quote_size_imbalance":null,"quote_age_s":0.176476},"context":{"vwap":12.6116,"price_vs_vwap_pct":0.978462,"ema9":12.710283,"ema20":12.688504,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.18894,"dist_to_hod_atr":4.675735,"atr":0.060953,"spread_atr":0.164061,"own_change_pct":-0.196618,"rel_strength_pct":{"SPY":-0.188696,"IWM":-0.158064}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.282488},"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":"d3e2015ada27","ts":"2026-09-15T17:08:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":8.4088,"target":8.8,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":3.62},"price":8.6,"vwap":8.4009,"ext_from_open_pct":2.75,"max_ext_allowed_pct":3.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":-0.0074,"volatility":"high"},"price":8.6,"volume":{"bars":218,"last_bar_volume":90678.0,"baseline_avg":112993.9,"bar_rvol":0.802503,"raw_accel":-0.06583,"smooth_accel":0.351267,"accel_momentum":-0.489394,"rvol_3bar":[2.119718,0.878554,0.802503],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":19615.0,"sell_vol":37209.0,"unclassified_vol":0.0,"imbalance":-0.309623,"bid":8.6,"ask":8.61,"spread_pct":0.116212,"quote_size_imbalance":null,"quote_age_s":0.461282},"context":{"vwap":8.400891,"price_vs_vwap_pct":2.370093,"ema9":8.617298,"ema20":8.607334,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.864553,"dist_to_hod_atr":1.64761,"atr":0.04552,"spread_atr":0.219681,"own_change_pct":-0.577701,"rel_strength_pct":{"SPY":-0.569779,"IWM":-0.539146}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.248473},"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":"ccfb97f19a9f","ts":"2026-09-15T17:08:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.42,"target":5.61,"target_label":"prev_day_high","reward_risk":1.98,"pos_in_5d_range_pct":24.8,"room_to_5d_high_atr":1.63},"price":5.4837,"vwap":5.4078,"ext_from_open_pct":0.43,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0453,"volatility":"medium"},"price":5.4837,"volume":{"bars":218,"last_bar_volume":15317.0,"baseline_avg":82814.2,"bar_rvol":0.184956,"raw_accel":-0.30021,"smooth_accel":-0.687555,"accel_momentum":-0.155403,"rvol_3bar":[0.967845,0.242849,0.184956],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":765.0,"sell_vol":629.0,"unclassified_vol":0.0,"imbalance":0.097561,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":4.996697},"context":{"vwap":5.407848,"price_vs_vwap_pct":1.402628,"ema9":5.477429,"ema20":5.475003,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.194595,"dist_to_hod_atr":2.205564,"atr":0.03006,"spread_atr":0.332664,"own_change_pct":-0.280766,"rel_strength_pct":{"SPY":-0.272844,"IWM":-0.242211}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.018045},"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":"93f70bf0a514","ts":"2026-09-15T17:08:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.95; target 0.09 away > ~0.08 reachable in 167 min","plan":{"state":"PASS","setup":"","stop":8.3828,"target":8.5586,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":65.9,"room_to_5d_high_atr":0.82},"price":8.4729,"vwap":8.3576,"ext_from_open_pct":1.72,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.0068,"volatility":"medium"},"price":8.4729,"volume":{"bars":218,"last_bar_volume":2473.0,"baseline_avg":1160.05,"bar_rvol":2.131805,"raw_accel":7.527219,"smooth_accel":0.200577,"accel_momentum":-3.666036,"rvol_3bar":[2.13317,0.230468,2.131805],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":43.0,"sell_vol":89.0,"unclassified_vol":0.0,"imbalance":-0.348485,"bid":8.48,"ask":8.49,"spread_pct":0.117855,"quote_size_imbalance":null,"quote_age_s":0.419831},"context":{"vwap":8.3576,"price_vs_vwap_pct":1.379579,"ema9":8.478939,"ema20":8.477392,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.318824,"dist_to_hod_atr":2.112114,"atr":0.012831,"spread_atr":0.779378,"own_change_pct":0.005893,"rel_strength_pct":{"SPY":0.013815,"IWM":0.044448}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.742902},"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":"a5d4ff710e5b","ts":"2026-09-15T17:08:10+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2904,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.3948,"vwap":7.2634,"ext_from_open_pct":3.42,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":-0.0436,"volatility":"medium"},"price":7.3948,"volume":{"bars":218,"last_bar_volume":425552.0,"baseline_avg":264018.05,"bar_rvol":1.611829,"raw_accel":5.447317,"smooth_accel":-0.700947,"accel_momentum":-1.327938,"rvol_3bar":[0.122055,0.072869,1.611829],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":107163.0,"sell_vol":108015.0,"unclassified_vol":0.0,"imbalance":-0.00396,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.469615},"context":{"vwap":7.26333,"price_vs_vwap_pct":1.810052,"ema9":7.385529,"ema20":7.382894,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.473755,"dist_to_hod_atr":1.201233,"atr":0.029303,"spread_atr":0.341259,"own_change_pct":-0.027093,"rel_strength_pct":{"SPY":-0.019171,"IWM":0.011462}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.006382},"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":"21b9cbd5c10c","ts":"2026-09-15T17:08:15+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 40.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.87; R:R 0.87 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1701 sh","plan":{"state":"WATCH","setup":"","stop":8.3899,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.8},"price":8.48,"vwap":8.3579,"ext_from_open_pct":1.8,"max_ext_allowed_pct":3.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":0.0236,"volatility":"medium"},"price":8.48,"volume":{"bars":218,"last_bar_volume":2473.0,"baseline_avg":1160.05,"bar_rvol":2.131805,"raw_accel":7.527219,"smooth_accel":0.200577,"accel_momentum":-3.666036,"rvol_3bar":[2.13317,0.230468,2.131805],"trend_3bar":"MIXED","projected_rvol":2.386104},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":281.0,"sell_vol":459.0,"unclassified_vol":0.0,"imbalance":-0.240541,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.428051},"context":{"vwap":8.3576,"price_vs_vwap_pct":1.464532,"ema9":8.478939,"ema20":8.477392,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.235294,"dist_to_hod_atr":1.558756,"atr":0.012831,"spread_atr":0.779378,"own_change_pct":0.005893,"rel_strength_pct":{"SPY":0.013815,"IWM":0.044448}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.512785},"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":"522aca153a50","ts":"2026-09-15T17:08:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2635,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":-0.0837,"volatility":"medium"},"price":7.38,"volume":{"bars":218,"last_bar_volume":425552.0,"baseline_avg":264018.05,"bar_rvol":1.611829,"raw_accel":5.447317,"smooth_accel":-0.700947,"accel_momentum":-1.327938,"rvol_3bar":[0.122055,0.072869,1.611829],"trend_3bar":"MIXED","projected_rvol":0.700801},"flow":{"window_s":30,"trades":169,"trade_rate":5.633333,"buy_vol":69598.0,"sell_vol":53223.0,"unclassified_vol":0.0,"imbalance":0.133324,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":1.039892},"context":{"vwap":7.26333,"price_vs_vwap_pct":1.606289,"ema9":7.385529,"ema20":7.382894,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.706297,"atr":0.029303,"spread_atr":0.341259,"own_change_pct":-0.027093,"rel_strength_pct":{"SPY":-0.019171,"IWM":0.011462}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.214896},"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":"6c1f35d3906d","ts":"2026-09-15T17:08:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.94; target 0.08 away > ~0.08 reachable in 167 min","plan":{"state":"PASS","setup":"","stop":8.3842,"target":8.5586,"target_label":"premarket_high","reward_risk":0.94,"pos_in_5d_range_pct":66.0,"room_to_5d_high_atr":0.82},"price":8.4743,"vwap":8.3579,"ext_from_open_pct":1.73,"max_ext_allowed_pct":3.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":0.0101,"volatility":"medium"},"price":8.4743,"volume":{"bars":218,"last_bar_volume":2473.0,"baseline_avg":1160.05,"bar_rvol":2.131805,"raw_accel":7.527219,"smooth_accel":0.200577,"accel_momentum":-3.666036,"rvol_3bar":[2.13317,0.230468,2.131805],"trend_3bar":"MIXED","projected_rvol":1.792164},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":281.0,"sell_vol":460.0,"unclassified_vol":0.0,"imbalance":-0.241565,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":1.998395},"context":{"vwap":8.3576,"price_vs_vwap_pct":1.396331,"ema9":8.478939,"ema20":8.477392,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.302353,"dist_to_hod_atr":2.003001,"atr":0.012831,"spread_atr":0.779378,"own_change_pct":0.005893,"rel_strength_pct":{"SPY":0.013815,"IWM":0.044448}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.51497},"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":"74e26bc51f99","ts":"2026-09-15T17:08:30+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6904,"target":5.83,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.1},"price":5.79,"vwap":5.7459,"ext_from_open_pct":1.58,"max_ext_allowed_pct":3.0,"volume_pace":0.571,"trend":"flat","recent_slope_pct":-0.0242,"volatility":"high"},"price":5.79,"volume":{"bars":218,"last_bar_volume":19850.0,"baseline_avg":3721.8,"bar_rvol":5.333441,"raw_accel":20.333763,"smooth_accel":-0.221796,"accel_momentum":0.694347,"rvol_3bar":[0.186032,0.096195,5.333441],"trend_3bar":"MIXED","projected_rvol":0.185394},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":28.0,"sell_vol":317.0,"unclassified_vol":0.0,"imbalance":-0.837681,"bid":5.79,"ask":5.8,"spread_pct":0.172563,"quote_size_imbalance":null,"quote_age_s":3.069889},"context":{"vwap":5.745839,"price_vs_vwap_pct":0.768574,"ema9":5.798675,"ema20":5.805105,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.025641,"dist_to_hod_atr":5.334961,"atr":0.011247,"spread_atr":0.88916,"own_change_pct":-0.155039,"rel_strength_pct":{"SPY":-0.147117,"IWM":-0.116484}},"vas":{"raw":1,"score":5.0,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.467723},"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":"b585bbd060a3","ts":"2026-09-15T17:08:30+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2648,"target":9.48,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":3.19},"price":9.4177,"vwap":9.3522,"ext_from_open_pct":0.72,"max_ext_allowed_pct":3.0,"volume_pace":0.549,"trend":"flat","recent_slope_pct":-0.0651,"volatility":"high"},"price":9.4177,"volume":{"bars":218,"last_bar_volume":3392.0,"baseline_avg":6027.3,"bar_rvol":0.562773,"raw_accel":-0.779483,"smooth_accel":1.71,"accel_momentum":0.930855,"rvol_3bar":[1.233452,2.849864,0.562773],"trend_3bar":"MIXED","projected_rvol":0.404493},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":608.0,"sell_vol":611.0,"unclassified_vol":0.0,"imbalance":-0.002461,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":3.817073},"context":{"vwap":9.352164,"price_vs_vwap_pct":0.700754,"ema9":9.419116,"ema20":9.418767,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.178384,"dist_to_hod_atr":4.409068,"atr":0.02547,"spread_atr":0.392615,"own_change_pct":-0.443031,"rel_strength_pct":{"SPY":-0.43511,"IWM":-0.404477}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.001385},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"870a91818a00","ts":"2026-09-15T17:08:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.2346,"target":9.46,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":6.9,"room_to_5d_high_atr":3.24},"price":9.3875,"vwap":9.3522,"ext_from_open_pct":0.4,"max_ext_allowed_pct":4.0,"volume_pace":0.548,"trend":"flat","recent_slope_pct":-0.1293,"volatility":"high"},"price":9.3875,"volume":{"bars":218,"last_bar_volume":3392.0,"baseline_avg":6027.3,"bar_rvol":0.562773,"raw_accel":-0.779483,"smooth_accel":1.71,"accel_momentum":0.930855,"rvol_3bar":[1.233452,2.849864,0.562773],"trend_3bar":"MIXED","projected_rvol":0.35581},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":517.0,"sell_vol":583.0,"unclassified_vol":0.0,"imbalance":-0.06,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.569804},"context":{"vwap":9.352164,"price_vs_vwap_pct":0.377834,"ema9":9.419116,"ema20":9.418767,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.495278,"dist_to_hod_atr":5.594765,"atr":0.02547,"spread_atr":0.392615,"own_change_pct":-0.443031,"rel_strength_pct":{"SPY":-0.43511,"IWM":-0.404477}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.033766},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"032d0b546b0f","ts":"2026-09-15T17:08:40+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.90; R:R 0.90 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1701 sh","plan":{"state":"WATCH","setup":"","stop":8.3876,"target":8.5586,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":66.4,"room_to_5d_high_atr":0.81},"price":8.4777,"vwap":8.3579,"ext_from_open_pct":1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.0182,"volatility":"medium"},"price":8.4777,"volume":{"bars":218,"last_bar_volume":2473.0,"baseline_avg":1160.05,"bar_rvol":2.131805,"raw_accel":7.527219,"smooth_accel":0.200577,"accel_momentum":-3.666036,"rvol_3bar":[2.13317,0.230468,2.131805],"trend_3bar":"MIXED","projected_rvol":0.916771},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":248.0,"sell_vol":381.0,"unclassified_vol":0.0,"imbalance":-0.211447,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":3.04338},"context":{"vwap":8.3576,"price_vs_vwap_pct":1.437012,"ema9":8.478939,"ema20":8.477392,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.262353,"dist_to_hod_atr":1.738013,"atr":0.012831,"spread_atr":0.779378,"own_change_pct":0.005893,"rel_strength_pct":{"SPY":0.013815,"IWM":0.044448}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.450763},"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":"f24c5fd0519e","ts":"2026-09-15T17:08:40+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2648,"target":9.48,"target_label":"premarket_high","reward_risk":0.41,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":3.19},"price":9.4177,"vwap":9.3522,"ext_from_open_pct":0.72,"max_ext_allowed_pct":4.0,"volume_pace":0.548,"trend":"flat","recent_slope_pct":-0.0651,"volatility":"high"},"price":9.4177,"volume":{"bars":218,"last_bar_volume":3392.0,"baseline_avg":6027.3,"bar_rvol":0.562773,"raw_accel":-0.779483,"smooth_accel":1.71,"accel_momentum":0.930855,"rvol_3bar":[1.233452,2.849864,0.562773],"trend_3bar":"MIXED","projected_rvol":0.314818},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":531.0,"sell_vol":583.0,"unclassified_vol":0.0,"imbalance":-0.046679,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.410775},"context":{"vwap":9.352164,"price_vs_vwap_pct":0.700754,"ema9":9.419116,"ema20":9.418767,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.178384,"dist_to_hod_atr":4.409068,"atr":0.02547,"spread_atr":0.392615,"own_change_pct":-0.443031,"rel_strength_pct":{"SPY":-0.43511,"IWM":-0.404477}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.026269},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ded5b695741d","ts":"2026-09-15T17:08:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7218,"target":10.935,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":51.2,"room_to_5d_high_atr":1.06},"price":10.87,"vwap":10.5435,"ext_from_open_pct":4.42,"max_ext_allowed_pct":3.0,"volume_pace":1.018,"trend":"flat","recent_slope_pct":-0.0064,"volatility":"medium"},"price":10.87,"volume":{"bars":218,"last_bar_volume":17906.0,"baseline_avg":44674.0,"bar_rvol":0.400815,"raw_accel":0.037909,"smooth_accel":-0.170206,"accel_momentum":0.075854,"rvol_3bar":[0.595687,0.380133,0.400815],"trend_3bar":"MIXED","projected_rvol":0.60402},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2760.0,"sell_vol":822.0,"unclassified_vol":0.0,"imbalance":0.541039,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.049706},"context":{"vwap":10.542272,"price_vs_vwap_pct":3.108701,"ema9":10.874853,"ema20":10.832069,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.639854,"dist_to_hod_atr":0.950117,"atr":0.073675,"spread_atr":0.135731,"own_change_pct":0.2113,"rel_strength_pct":{"SPY":0.219222,"IWM":0.249855}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.216856},"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":"c3dfd8722811","ts":"2026-09-15T17:08:50+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7,"target":13.8,"target_label":"premarket_high","reward_risk":3.58,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":1.12},"price":12.94,"vwap":12.9014,"ext_from_open_pct":-0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.86,"trend":"flat","recent_slope_pct":-0.2499,"volatility":"medium"},"price":12.94,"volume":{"bars":218,"last_bar_volume":265.0,"baseline_avg":1903.35,"bar_rvol":0.139228,"raw_accel":-0.443087,"smooth_accel":7.49615,"accel_momentum":0.591502,"rvol_3bar":[12.447041,0.19613,0.139228],"trend_3bar":"DECELERATING","projected_rvol":0.069982},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":12.92,"ask":13.04,"spread_pct":0.924499,"quote_size_imbalance":null,"quote_age_s":0.692399},"context":{"vwap":12.901327,"price_vs_vwap_pct":0.299763,"ema9":13.062377,"ema20":13.077748,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.779865,"dist_to_hod_atr":7.030823,"atr":0.052625,"spread_atr":2.280267,"own_change_pct":-1.179604,"rel_strength_pct":{"SPY":-1.171683,"IWM":-1.14105}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.139228},"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":"83741b13f333","ts":"2026-09-15T17:08:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.2355,"target":9.46,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":7.0,"room_to_5d_high_atr":3.24},"price":9.3884,"vwap":9.3522,"ext_from_open_pct":0.41,"max_ext_allowed_pct":4.0,"volume_pace":0.548,"trend":"flat","recent_slope_pct":-0.1274,"volatility":"high"},"price":9.3884,"volume":{"bars":218,"last_bar_volume":3392.0,"baseline_avg":6027.3,"bar_rvol":0.562773,"raw_accel":-0.779483,"smooth_accel":1.71,"accel_momentum":0.930855,"rvol_3bar":[1.233452,2.849864,0.562773],"trend_3bar":"MIXED","projected_rvol":0.302026},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":291.0,"sell_vol":325.0,"unclassified_vol":0.0,"imbalance":-0.055195,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.849927},"context":{"vwap":9.352164,"price_vs_vwap_pct":0.387457,"ema9":9.419116,"ema20":9.418767,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.485834,"dist_to_hod_atr":5.55943,"atr":0.02547,"spread_atr":0.392615,"own_change_pct":-0.443031,"rel_strength_pct":{"SPY":-0.43511,"IWM":-0.404477}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.031062},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"baac1f1ceca2","ts":"2026-09-15T17:08:55+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6929,"target":5.83,"target_label":"prev_day_high","reward_risk":0.38,"pos_in_5d_range_pct":93.1,"room_to_5d_high_atr":0.09},"price":5.7925,"vwap":5.7459,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.57,"trend":"flat","recent_slope_pct":-0.0155,"volatility":"high"},"price":5.7925,"volume":{"bars":218,"last_bar_volume":19850.0,"baseline_avg":3721.8,"bar_rvol":5.333441,"raw_accel":20.333763,"smooth_accel":-0.221796,"accel_momentum":0.694347,"rvol_3bar":[0.186032,0.096195,5.333441],"trend_3bar":"MIXED","projected_rvol":0.172937},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":244.0,"sell_vol":202.0,"unclassified_vol":0.0,"imbalance":0.09417,"bid":5.79,"ask":5.8,"spread_pct":0.172563,"quote_size_imbalance":null,"quote_age_s":9.247604},"context":{"vwap":5.745839,"price_vs_vwap_pct":0.812084,"ema9":5.798675,"ema20":5.805105,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-0.982906,"dist_to_hod_atr":5.112671,"atr":0.011247,"spread_atr":0.88916,"own_change_pct":-0.155039,"rel_strength_pct":{"SPY":-0.147117,"IWM":-0.116484}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.502252},"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":"46793e44bdc0","ts":"2026-09-15T17:09:00+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 55.0s, plan says WATCH; stop 8.41, target 8.68 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 8.60; pullback: buy 8.49-8.54 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.4084,"target":8.675,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":3.62},"price":8.5996,"vwap":8.4014,"ext_from_open_pct":2.74,"max_ext_allowed_pct":4.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0084,"volatility":"high"},"price":8.5996,"volume":{"bars":218,"last_bar_volume":90678.0,"baseline_avg":112993.9,"bar_rvol":0.802503,"raw_accel":-0.06583,"smooth_accel":0.351267,"accel_momentum":-0.489394,"rvol_3bar":[2.119718,0.878554,0.802503],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":5647.0,"sell_vol":2936.0,"unclassified_vol":0.0,"imbalance":0.315857,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.374936},"context":{"vwap":8.400891,"price_vs_vwap_pct":2.365332,"ema9":8.617298,"ema20":8.607334,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.869164,"dist_to_hod_atr":1.656397,"atr":0.04552,"spread_atr":0.219681,"own_change_pct":-0.577701,"rel_strength_pct":{"SPY":-0.567797,"IWM":-0.521614}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.253476},"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":"96b8ceea5ad5","ts":"2026-09-15T17:09:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7416,"target":7.875,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":2.73},"price":7.8599,"vwap":7.8468,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.157,"trend":"flat","recent_slope_pct":0.0616,"volatility":"high"},"price":7.8599,"volume":{"bars":219,"last_bar_volume":646.0,"baseline_avg":18067.05,"bar_rvol":0.035756,"raw_accel":-0.863713,"smooth_accel":-0.760961,"accel_momentum":-0.098914,"rvol_3bar":[1.748303,0.261283,0.035756],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":4708.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.998726,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.366862},"context":{"vwap":7.8468,"price_vs_vwap_pct":0.166942,"ema9":7.84358,"ema20":7.842494,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.883985,"dist_to_hod_atr":4.284317,"atr":0.016362,"spread_atr":0.611172,"own_change_pct":0.428307,"rel_strength_pct":{"SPY":0.43821,"IWM":0.484394}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.03571},"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":"b3fffde982ab","ts":"2026-09-15T17:09:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.5437,"ext_from_open_pct":4.51,"max_ext_allowed_pct":4.0,"volume_pace":1.017,"trend":"flat","recent_slope_pct":0.046,"volatility":"medium"},"price":10.88,"volume":{"bars":219,"last_bar_volume":21049.0,"baseline_avg":44194.85,"bar_rvol":0.476277,"raw_accel":0.175528,"smooth_accel":-0.37642,"accel_momentum":-0.206214,"rvol_3bar":[0.380133,0.400815,0.476277],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":4281.0,"sell_vol":1262.0,"unclassified_vol":0.0,"imbalance":0.544651,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.544927},"context":{"vwap":10.543541,"price_vs_vwap_pct":3.191139,"ema9":10.872883,"ema20":10.835205,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":0.834263,"atr":0.07192,"spread_atr":0.139044,"own_change_pct":-0.458085,"rel_strength_pct":{"SPY":-0.448182,"IWM":-0.401998}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.259405},"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":"546ba08b1af5","ts":"2026-09-15T17:09:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.72; selling not fading: red-bar volume 1.12x the advance (max 0.7); no reclaim yet (needs a close > 5.49); R:R 0.72 < 2.0 at 5.47; ","plan":{"state":"WATCH","setup":"","stop":5.4128,"target":5.52,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.67},"price":5.475,"vwap":5.4083,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":-0.0005,"volatility":"medium"},"price":5.475,"volume":{"bars":219,"last_bar_volume":74183.0,"baseline_avg":82933.65,"bar_rvol":0.894486,"raw_accel":2.577945,"smooth_accel":-0.705064,"accel_momentum":-0.017509,"rvol_3bar":[0.242849,0.184956,0.894486],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":22885.0,"sell_vol":3662.0,"unclassified_vol":0.0,"imbalance":0.724112,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.568667},"context":{"vwap":5.408233,"price_vs_vwap_pct":1.23455,"ema9":5.478363,"ema20":5.475679,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":2.521708,"atr":0.029742,"spread_atr":0.336228,"own_change_pct":-0.100226,"rel_strength_pct":{"SPY":-0.090323,"IWM":-0.044139}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.647708},"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":"77385ee558db","ts":"2026-09-15T17:09:10+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.755,"target":13.8,"target_label":"premarket_high","reward_risk":3.75,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":1.07},"price":12.975,"vwap":12.9014,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.859,"trend":"flat","recent_slope_pct":-0.0552,"volatility":"medium"},"price":12.975,"volume":{"bars":219,"last_bar_volume":135.0,"baseline_avg":1902.55,"bar_rvol":0.070957,"raw_accel":-0.71617,"smooth_accel":-0.953371,"accel_momentum":-8.44952,"rvol_3bar":[0.19613,0.139228,0.070957],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":31.0,"sell_vol":133.0,"unclassified_vol":0.0,"imbalance":-0.621951,"bid":12.92,"ask":13.03,"spread_pct":0.847784,"quote_size_imbalance":null,"quote_age_s":8.597537},"context":{"vwap":12.901364,"price_vs_vwap_pct":0.570764,"ema9":13.043902,"ema20":13.067487,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.516905,"dist_to_hod_atr":6.067032,"atr":0.055216,"spread_atr":1.99216,"own_change_pct":-1.256186,"rel_strength_pct":{"SPY":-1.246282,"IWM":-1.200099}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.044132},"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":"bef9abd54ad2","ts":"2026-09-15T17:09:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5437,"ext_from_open_pct":4.47,"max_ext_allowed_pct":4.0,"volume_pace":1.017,"trend":"flat","recent_slope_pct":0.0368,"volatility":"medium"},"price":10.875,"volume":{"bars":219,"last_bar_volume":21049.0,"baseline_avg":44194.85,"bar_rvol":0.476277,"raw_accel":0.175528,"smooth_accel":-0.37642,"accel_momentum":-0.206214,"rvol_3bar":[0.380133,0.400815,0.476277],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":2722.0,"sell_vol":975.0,"unclassified_vol":0.0,"imbalance":0.472545,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":1.816601},"context":{"vwap":10.543541,"price_vs_vwap_pct":3.143716,"ema9":10.872883,"ema20":10.835205,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":0.903785,"atr":0.07192,"spread_atr":0.139044,"own_change_pct":-0.458085,"rel_strength_pct":{"SPY":-0.448182,"IWM":-0.401998}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.225063},"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":"b9b937aac809","ts":"2026-09-15T17:09:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7296,"target":14.19,"target_label":"range_20d_high","reward_risk":22.35,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":1.05},"price":10.8778,"vwap":10.5437,"ext_from_open_pct":4.49,"max_ext_allowed_pct":4.0,"volume_pace":1.017,"trend":"flat","recent_slope_pct":0.0419,"volatility":"medium"},"price":10.8778,"volume":{"bars":219,"last_bar_volume":21049.0,"baseline_avg":44194.85,"bar_rvol":0.476277,"raw_accel":0.175528,"smooth_accel":-0.37642,"accel_momentum":-0.206214,"rvol_3bar":[0.380133,0.400815,0.476277],"trend_3bar":"ACCELERATING","projected_rvol":0.306642},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":3372.0,"sell_vol":827.0,"unclassified_vol":0.0,"imbalance":0.606097,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.924478},"context":{"vwap":10.543541,"price_vs_vwap_pct":3.170273,"ema9":10.872883,"ema20":10.835205,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.568556,"dist_to_hod_atr":0.864853,"atr":0.07192,"spread_atr":0.139044,"own_change_pct":-0.458085,"rel_strength_pct":{"SPY":-0.448182,"IWM":-0.401998}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.28867},"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":"0d960b1b42f3","ts":"2026-09-15T17:09:20+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2171,"target":9.46,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.37,"vwap":9.3522,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.547,"trend":"flat","recent_slope_pct":-0.1139,"volatility":"high"},"price":9.37,"volume":{"bars":219,"last_bar_volume":1634.0,"baseline_avg":6087.85,"bar_rvol":0.268403,"raw_accel":-0.518278,"smooth_accel":0.702085,"accel_momentum":-1.007915,"rvol_3bar":[2.849864,0.562773,0.268403],"trend_3bar":"DECELERATING","projected_rvol":0.886027},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":431.0,"sell_vol":1484.0,"unclassified_vol":0.0,"imbalance":-0.549869,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.639926},"context":{"vwap":9.352206,"price_vs_vwap_pct":0.190267,"ema9":9.414832,"ema20":9.416761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.678909,"dist_to_hod_atr":5.976312,"atr":0.026772,"spread_atr":0.37352,"own_change_pct":-0.347808,"rel_strength_pct":{"SPY":-0.337904,"IWM":-0.29172}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.147587},"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":"fd755354ba20","ts":"2026-09-15T17:09:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 110.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.93; target 0.08 away > ~0.08 reachable in 166 min","plan":{"state":"PASS","setup":"","stop":8.3849,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.475,"vwap":8.3579,"ext_from_open_pct":1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.865,"trend":"flat","recent_slope_pct":0.0183,"volatility":"medium"},"price":8.475,"volume":{"bars":219,"last_bar_volume":709.0,"baseline_avg":1260.3,"bar_rvol":0.562564,"raw_accel":-0.713304,"smooth_accel":-0.443099,"accel_momentum":-0.643676,"rvol_3bar":[0.230468,2.131805,0.562564],"trend_3bar":"MIXED","projected_rvol":0.198048},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":100.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.923077,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":18.933637},"context":{"vwap":8.357888,"price_vs_vwap_pct":1.401215,"ema9":8.478691,"ema20":8.477421,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.294118,"dist_to_hod_atr":1.956403,"atr":0.012779,"spread_atr":0.782561,"own_change_pct":-0.086034,"rel_strength_pct":{"SPY":-0.076131,"IWM":-0.029947}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.51929},"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":"2df2abaa1800","ts":"2026-09-15T17:09:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5439,"ext_from_open_pct":4.47,"max_ext_allowed_pct":4.0,"volume_pace":1.016,"trend":"flat","recent_slope_pct":0.0368,"volatility":"medium"},"price":10.875,"volume":{"bars":219,"last_bar_volume":21049.0,"baseline_avg":44194.85,"bar_rvol":0.476277,"raw_accel":0.175528,"smooth_accel":-0.37642,"accel_momentum":-0.206214,"rvol_3bar":[0.380133,0.400815,0.476277],"trend_3bar":"ACCELERATING","projected_rvol":0.28521},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":4740.0,"sell_vol":1189.0,"unclassified_vol":0.0,"imbalance":0.598921,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.888617},"context":{"vwap":10.543541,"price_vs_vwap_pct":3.143716,"ema9":10.872883,"ema20":10.835205,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":0.903785,"atr":0.07192,"spread_atr":0.139044,"own_change_pct":-0.458085,"rel_strength_pct":{"SPY":-0.448182,"IWM":-0.401998}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.285252},"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":"edc43959f5ce","ts":"2026-09-15T17:09:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.2221,"target":9.46,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.26},"price":9.375,"vwap":9.3522,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.547,"trend":"flat","recent_slope_pct":-0.1032,"volatility":"high"},"price":9.375,"volume":{"bars":219,"last_bar_volume":1634.0,"baseline_avg":6087.85,"bar_rvol":0.268403,"raw_accel":-0.518278,"smooth_accel":0.702085,"accel_momentum":-1.007915,"rvol_3bar":[2.849864,0.562773,0.268403],"trend_3bar":"DECELERATING","projected_rvol":0.748244},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":500.0,"sell_vol":1484.0,"unclassified_vol":0.0,"imbalance":-0.495968,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":1.152694},"context":{"vwap":9.352206,"price_vs_vwap_pct":0.24373,"ema9":9.414832,"ema20":9.416761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.626443,"dist_to_hod_atr":5.789552,"atr":0.026772,"spread_atr":0.37352,"own_change_pct":-0.347808,"rel_strength_pct":{"SPY":-0.337904,"IWM":-0.29172}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.133119},"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":"af2a15682df4","ts":"2026-09-15T17:09:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 115.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.91; R:R 0.91 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1650 sh","plan":{"state":"WATCH","setup":"","stop":8.3861,"target":8.5586,"target_label":"premarket_high","reward_risk":0.91,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":0.82},"price":8.4762,"vwap":8.358,"ext_from_open_pct":1.76,"max_ext_allowed_pct":4.0,"volume_pace":0.865,"trend":"flat","recent_slope_pct":0.0211,"volatility":"medium"},"price":8.4762,"volume":{"bars":219,"last_bar_volume":709.0,"baseline_avg":1260.3,"bar_rvol":0.562564,"raw_accel":-0.713304,"smooth_accel":-0.443099,"accel_momentum":-0.643676,"rvol_3bar":[0.230468,2.131805,0.562564],"trend_3bar":"MIXED","projected_rvol":0.276125},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":170.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.954023,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.524825},"context":{"vwap":8.357888,"price_vs_vwap_pct":1.415573,"ema9":8.478691,"ema20":8.477421,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.28,"dist_to_hod_atr":1.862496,"atr":0.012779,"spread_atr":0.782561,"own_change_pct":-0.086034,"rel_strength_pct":{"SPY":-0.076131,"IWM":-0.029947}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.536699},"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":"9a257bd87200","ts":"2026-09-15T17:09:30+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":9.2154,"target":9.46,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.27},"price":9.3683,"vwap":9.3523,"ext_from_open_pct":0.2,"max_ext_allowed_pct":3.0,"volume_pace":0.547,"trend":"flat","recent_slope_pct":-0.1175,"volatility":"high"},"price":9.3683,"volume":{"bars":219,"last_bar_volume":1634.0,"baseline_avg":6087.85,"bar_rvol":0.268403,"raw_accel":-0.518278,"smooth_accel":0.702085,"accel_momentum":-1.007915,"rvol_3bar":[2.849864,0.562773,0.268403],"trend_3bar":"DECELERATING","projected_rvol":1.070657},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":1269.0,"sell_vol":1990.0,"unclassified_vol":0.0,"imbalance":-0.221234,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":1.311298},"context":{"vwap":9.352206,"price_vs_vwap_pct":0.172089,"ema9":9.414832,"ema20":9.416761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.696747,"dist_to_hod_atr":6.03981,"atr":0.026772,"spread_atr":0.37352,"own_change_pct":-0.347808,"rel_strength_pct":{"SPY":-0.337904,"IWM":-0.29172}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.05938},"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":"7dc9ced4498b","ts":"2026-09-15T17:09:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.2221,"target":9.46,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.26},"price":9.375,"vwap":9.3523,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.547,"trend":"flat","recent_slope_pct":-0.1032,"volatility":"high"},"price":9.375,"volume":{"bars":219,"last_bar_volume":1634.0,"baseline_avg":6087.85,"bar_rvol":0.268403,"raw_accel":-0.518278,"smooth_accel":0.702085,"accel_momentum":-1.007915,"rvol_3bar":[2.849864,0.562773,0.268403],"trend_3bar":"DECELERATING","projected_rvol":1.233088},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":2270.0,"sell_vol":1944.0,"unclassified_vol":0.0,"imbalance":0.077361,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.285381},"context":{"vwap":9.352206,"price_vs_vwap_pct":0.24373,"ema9":9.414832,"ema20":9.416761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.626443,"dist_to_hod_atr":5.789552,"atr":0.026772,"spread_atr":0.37352,"own_change_pct":-0.347808,"rel_strength_pct":{"SPY":-0.337904,"IWM":-0.29172}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.020764},"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":"5dc308f14f35","ts":"2026-09-15T17:09:35+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 90.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.09; target 0.13 away > ~0.11 reachable in 165 min","plan":{"state":"PASS","setup":"","stop":5.4178,"target":5.61,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4086,"ext_from_open_pct":0.37,"max_ext_allowed_pct":4.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":0.0177,"volatility":"medium"},"price":5.48,"volume":{"bars":219,"last_bar_volume":74183.0,"baseline_avg":82933.65,"bar_rvol":0.894486,"raw_accel":2.577945,"smooth_accel":-0.705064,"accel_momentum":-0.017509,"rvol_3bar":[0.242849,0.184956,0.894486],"trend_3bar":"MIXED","projected_rvol":1.573402},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":50839.0,"sell_vol":11149.0,"unclassified_vol":0.0,"imbalance":0.640285,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":1.140982},"context":{"vwap":5.408233,"price_vs_vwap_pct":1.327002,"ema9":5.478363,"ema20":5.475679,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":2.353594,"atr":0.029742,"spread_atr":0.336228,"own_change_pct":-0.100226,"rel_strength_pct":{"SPY":-0.090323,"IWM":-0.044139}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.572726},"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":"b5fc9e0b4c58","ts":"2026-09-15T17:09:40+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.8024,"target":13.8,"target_label":"premarket_high","reward_risk":3.53,"pos_in_5d_range_pct":51.5,"room_to_5d_high_atr":1.01},"price":13.0224,"vwap":12.9014,"ext_from_open_pct":-0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":0.0178,"volatility":"medium"},"price":13.0224,"volume":{"bars":219,"last_bar_volume":135.0,"baseline_avg":1902.55,"bar_rvol":0.070957,"raw_accel":-0.71617,"smooth_accel":-0.953371,"accel_momentum":-8.44952,"rvol_3bar":[0.19613,0.139228,0.070957],"trend_3bar":"DECELERATING","projected_rvol":0.10959},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":23.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":12.92,"ask":13.03,"spread_pct":0.847784,"quote_size_imbalance":null,"quote_age_s":3.073578},"context":{"vwap":12.901364,"price_vs_vwap_pct":0.938167,"ema9":13.043902,"ema20":13.067487,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.160781,"dist_to_hod_atr":5.208592,"atr":0.055216,"spread_atr":1.99216,"own_change_pct":-1.256186,"rel_strength_pct":{"SPY":-1.246282,"IWM":-1.200099}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.070957},"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":"083869f9ddcc","ts":"2026-09-15T17:09:40+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 95.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.72; selling not fading: red-bar volume 1.12x the advance (max 0.7); no reclaim yet (needs a close > 5.49); R:R 0.72 < 2.0 at 5.47; ","plan":{"state":"WATCH","setup":"","stop":5.4128,"target":5.52,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.67},"price":5.475,"vwap":5.4086,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":-0.0005,"volatility":"medium"},"price":5.475,"volume":{"bars":219,"last_bar_volume":74183.0,"baseline_avg":82933.65,"bar_rvol":0.894486,"raw_accel":2.577945,"smooth_accel":-0.705064,"accel_momentum":-0.017509,"rvol_3bar":[0.242849,0.184956,0.894486],"trend_3bar":"MIXED","projected_rvol":1.40109},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":34506.0,"sell_vol":6880.0,"unclassified_vol":0.0,"imbalance":0.66752,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.30347},"context":{"vwap":5.408233,"price_vs_vwap_pct":1.23455,"ema9":5.478363,"ema20":5.475679,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":2.521708,"atr":0.029742,"spread_atr":0.336228,"own_change_pct":-0.100226,"rel_strength_pct":{"SPY":-0.090323,"IWM":-0.044139}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.597088},"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":"373d6098126b","ts":"2026-09-15T17:09:55+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 140.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.93; target 0.08 away > ~0.08 reachable in 165 min","plan":{"state":"PASS","setup":"","stop":8.3849,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.475,"vwap":8.358,"ext_from_open_pct":1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.863,"trend":"flat","recent_slope_pct":0.0183,"volatility":"medium"},"price":8.475,"volume":{"bars":219,"last_bar_volume":709.0,"baseline_avg":1260.3,"bar_rvol":0.562564,"raw_accel":-0.713304,"smooth_accel":-0.443099,"accel_momentum":-0.643676,"rvol_3bar":[0.230468,2.131805,0.562564],"trend_3bar":"MIXED","projected_rvol":0.169657},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":83.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.804348,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":1.38161},"context":{"vwap":8.357888,"price_vs_vwap_pct":1.401215,"ema9":8.478691,"ema20":8.477421,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.294118,"dist_to_hod_atr":1.956403,"atr":0.012779,"spread_atr":0.782561,"own_change_pct":-0.086034,"rel_strength_pct":{"SPY":-0.076131,"IWM":-0.029947}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.452498},"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":"1d1543399832","ts":"2026-09-15T17:10:05+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.755,"target":13.2,"target_label":"ceiling","reward_risk":1.02,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":1.07},"price":12.975,"vwap":12.9014,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":-0.0277,"volatility":"medium"},"price":12.975,"volume":{"bars":220,"last_bar_volume":139.0,"baseline_avg":1647.7,"bar_rvol":0.08436,"raw_accel":-0.66256,"smooth_accel":-0.967327,"accel_momentum":-0.013957,"rvol_3bar":[0.139228,0.070957,0.08436],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":8.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.142857,"bid":12.92,"ask":13.03,"spread_pct":0.847784,"quote_size_imbalance":null,"quote_age_s":3.440572},"context":{"vwap":12.901408,"price_vs_vwap_pct":0.570422,"ema9":13.039602,"ema20":13.063193,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.516905,"dist_to_hod_atr":5.788595,"atr":0.057872,"spread_atr":1.900733,"own_change_pct":-0.592366,"rel_strength_pct":{"SPY":-0.59897,"IWM":-0.578338}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.012051},"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":"d40109696056","ts":"2026-09-15T17:10:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7752,"target":7.91,"target_label":"prev_day_high","reward_risk":0.53,"pos_in_5d_range_pct":74.0,"room_to_5d_high_atr":0.4},"price":7.8631,"vwap":7.7502,"ext_from_open_pct":2.12,"max_ext_allowed_pct":3.0,"volume_pace":0.571,"trend":"flat","recent_slope_pct":-0.0576,"volatility":"medium"},"price":7.8631,"volume":{"bars":220,"last_bar_volume":6184.0,"baseline_avg":16482.35,"bar_rvol":0.375189,"raw_accel":-0.432869,"smooth_accel":-0.470526,"accel_momentum":0.166343,"rvol_3bar":[0.194015,0.666489,0.375189],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":837.0,"sell_vol":1664.0,"unclassified_vol":0.0,"imbalance":-0.330668,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.712974},"context":{"vwap":7.750143,"price_vs_vwap_pct":1.45748,"ema9":7.866099,"ema20":7.857711,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.340938,"dist_to_hod_atr":1.284862,"atr":0.020936,"spread_atr":0.477644,"own_change_pct":-0.312199,"rel_strength_pct":{"SPY":-0.318802,"IWM":-0.29817}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.124063},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"39bf53140169","ts":"2026-09-15T17:10:10+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.799,"target":13.2,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":51.3,"room_to_5d_high_atr":1.01},"price":13.019,"vwap":12.9014,"ext_from_open_pct":-0.24,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.04,"volatility":"medium"},"price":13.019,"volume":{"bars":220,"last_bar_volume":139.0,"baseline_avg":1647.7,"bar_rvol":0.08436,"raw_accel":-0.66256,"smooth_accel":-0.967327,"accel_momentum":-0.013957,"rvol_3bar":[0.139228,0.070957,0.08436],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":10.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.25,"bid":12.92,"ask":13.03,"spread_pct":0.847784,"quote_size_imbalance":null,"quote_age_s":8.440572},"context":{"vwap":12.901408,"price_vs_vwap_pct":0.91147,"ema9":13.039602,"ema20":13.063193,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.186326,"dist_to_hod_atr":5.028302,"atr":0.057872,"spread_atr":1.900733,"own_change_pct":-0.592366,"rel_strength_pct":{"SPY":-0.59897,"IWM":-0.578338}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.02109},"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":"03eab4856fc0","ts":"2026-09-15T17:10:10+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2645,"ext_from_open_pct":3.22,"max_ext_allowed_pct":4.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.0064,"volatility":"medium"},"price":7.38,"volume":{"bars":220,"last_bar_volume":125146.0,"baseline_avg":274533.7,"bar_rvol":0.455849,"raw_accel":-0.487518,"smooth_accel":-0.345527,"accel_momentum":0.162418,"rvol_3bar":[1.611829,0.906069,0.455849],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":46165.0,"sell_vol":11670.0,"unclassified_vol":0.0,"imbalance":0.596438,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.054153},"context":{"vwap":7.264383,"price_vs_vwap_pct":1.591562,"ema9":7.382078,"ema20":7.381524,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.69637,"atr":0.029475,"spread_atr":0.339274,"own_change_pct":-0.274139,"rel_strength_pct":{"SPY":-0.280743,"IWM":-0.26011}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.271886},"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":"fba185fa9e1f","ts":"2026-09-15T17:10:15+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2646,"ext_from_open_pct":3.36,"max_ext_allowed_pct":4.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.0335,"volatility":"medium"},"price":7.39,"volume":{"bars":220,"last_bar_volume":125146.0,"baseline_avg":274533.7,"bar_rvol":0.455849,"raw_accel":-0.487518,"smooth_accel":-0.345527,"accel_momentum":0.162418,"rvol_3bar":[1.611829,0.906069,0.455849],"trend_3bar":"DECELERATING","projected_rvol":0.861592},"flow":{"window_s":30,"trades":152,"trade_rate":5.066667,"buy_vol":47232.0,"sell_vol":13593.0,"unclassified_vol":0.0,"imbalance":0.553046,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.918264},"context":{"vwap":7.264383,"price_vs_vwap_pct":1.72922,"ema9":7.382078,"ema20":7.381524,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.357096,"atr":0.029475,"spread_atr":0.339274,"own_change_pct":-0.274139,"rel_strength_pct":{"SPY":-0.280743,"IWM":-0.26011}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.252105},"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":"bf906969d1c2","ts":"2026-09-15T17:10:20+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 10.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2646,"ext_from_open_pct":3.22,"max_ext_allowed_pct":4.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0064,"volatility":"medium"},"price":7.38,"volume":{"bars":220,"last_bar_volume":125146.0,"baseline_avg":274533.7,"bar_rvol":0.455849,"raw_accel":-0.487518,"smooth_accel":-0.345527,"accel_momentum":0.162418,"rvol_3bar":[1.611829,0.906069,0.455849],"trend_3bar":"DECELERATING","projected_rvol":0.660509},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":48296.0,"sell_vol":13635.0,"unclassified_vol":0.0,"imbalance":0.559671,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":2.739517},"context":{"vwap":7.264383,"price_vs_vwap_pct":1.591562,"ema9":7.382078,"ema20":7.381524,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.69637,"atr":0.029475,"spread_atr":0.339274,"own_change_pct":-0.274139,"rel_strength_pct":{"SPY":-0.280743,"IWM":-0.26011}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.255126},"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":"8669305caabf","ts":"2026-09-15T17:10:20+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 135.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.09; target 0.13 away > ~0.11 reachable in 165 min","plan":{"state":"PASS","setup":"","stop":5.4178,"target":5.61,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4087,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":0.0829,"volatility":"medium"},"price":5.48,"volume":{"bars":220,"last_bar_volume":84414.0,"baseline_avg":85920.35,"bar_rvol":0.982468,"raw_accel":0.137916,"smooth_accel":-0.063619,"accel_momentum":0.641445,"rvol_3bar":[0.184956,0.894486,0.982468],"trend_3bar":"ACCELERATING","projected_rvol":0.127164},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":4975.0,"sell_vol":2429.0,"unclassified_vol":0.0,"imbalance":0.343868,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":1.489416},"context":{"vwap":5.408659,"price_vs_vwap_pct":1.31902,"ema9":5.477691,"ema20":5.475614,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":2.44607,"atr":0.028617,"spread_atr":0.349439,"own_change_pct":-0.233245,"rel_strength_pct":{"SPY":-0.239848,"IWM":-0.219216}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.33784},"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":"f1439d18bbb6","ts":"2026-09-15T17:10:25+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7219,"target":7.875,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":18.1,"room_to_5d_high_atr":2.77},"price":7.8402,"vwap":7.8469,"ext_from_open_pct":-0.76,"max_ext_allowed_pct":4.0,"volume_pace":1.168,"trend":"flat","recent_slope_pct":-0.0107,"volatility":"high"},"price":7.8402,"volume":{"bars":220,"last_bar_volume":24768.0,"baseline_avg":17936.05,"bar_rvol":1.380906,"raw_accel":4.523624,"smooth_accel":-0.807946,"accel_momentum":-0.046985,"rvol_3bar":[0.261283,0.035756,1.380906],"trend_3bar":"MIXED","projected_rvol":2.748431},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":17074.0,"sell_vol":18771.0,"unclassified_vol":0.0,"imbalance":-0.047343,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.50611},"context":{"vwap":7.846861,"price_vs_vwap_pct":-0.084891,"ema9":7.845864,"ema20":7.843685,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.132409,"dist_to_hod_atr":5.156558,"atr":0.017415,"spread_atr":0.574227,"own_change_pct":0.197717,"rel_strength_pct":{"SPY":0.191113,"IWM":0.211745}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.065376},"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":"34ff3e0d9bac","ts":"2026-09-15T17:10:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":8.3873,"target":8.5586,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":66.4,"room_to_5d_high_atr":0.81},"price":8.4774,"vwap":8.358,"ext_from_open_pct":1.77,"max_ext_allowed_pct":4.0,"volume_pace":0.861,"trend":"flat","recent_slope_pct":-0.0053,"volatility":"medium"},"price":8.4774,"volume":{"bars":220,"last_bar_volume":242.0,"baseline_avg":1293.4,"bar_rvol":0.187104,"raw_accel":-0.658674,"smooth_accel":-0.424248,"accel_momentum":0.018852,"rvol_3bar":[2.131805,0.562564,0.187104],"trend_3bar":"DECELERATING","projected_rvol":0.040823},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":21.0,"sell_vol":47.0,"unclassified_vol":0.0,"imbalance":-0.382353,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":8.684095},"context":{"vwap":8.357982,"price_vs_vwap_pct":1.428785,"ema9":8.476973,"ema20":8.476724,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.265882,"dist_to_hod_atr":1.821309,"atr":0.012409,"spread_atr":0.805889,"own_change_pct":-0.08729,"rel_strength_pct":{"SPY":-0.093893,"IWM":-0.073261}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.07154},"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":"aea677d64a0a","ts":"2026-09-15T17:10:30+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7467,"target":7.91,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.72},"price":7.865,"vwap":7.8469,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":1.167,"trend":"flat","recent_slope_pct":0.0525,"volatility":"high"},"price":7.865,"volume":{"bars":220,"last_bar_volume":24768.0,"baseline_avg":17936.05,"bar_rvol":1.380906,"raw_accel":4.523624,"smooth_accel":-0.807946,"accel_momentum":-0.046985,"rvol_3bar":[0.261283,0.035756,1.380906],"trend_3bar":"MIXED","projected_rvol":2.302402},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":15627.0,"sell_vol":5021.0,"unclassified_vol":0.0,"imbalance":0.513657,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":3.725918},"context":{"vwap":7.846861,"price_vs_vwap_pct":0.231159,"ema9":7.845864,"ema20":7.843685,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.819672,"dist_to_hod_atr":3.732475,"atr":0.017415,"spread_atr":0.574227,"own_change_pct":0.197717,"rel_strength_pct":{"SPY":0.191113,"IWM":0.211745}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.709313},"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":"50dfe4b8d55d","ts":"2026-09-15T17:10:30+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2646,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0199,"volatility":"medium"},"price":7.385,"volume":{"bars":220,"last_bar_volume":125146.0,"baseline_avg":274533.7,"bar_rvol":0.455849,"raw_accel":-0.487518,"smooth_accel":-0.345527,"accel_momentum":0.162418,"rvol_3bar":[1.611829,0.906069,0.455849],"trend_3bar":"DECELERATING","projected_rvol":0.471709},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":51615.0,"sell_vol":13135.0,"unclassified_vol":0.0,"imbalance":0.594286,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.230647},"context":{"vwap":7.264383,"price_vs_vwap_pct":1.660391,"ema9":7.382078,"ema20":7.381524,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.526733,"atr":0.029475,"spread_atr":0.339274,"own_change_pct":-0.274139,"rel_strength_pct":{"SPY":-0.280743,"IWM":-0.26011}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.270905},"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":"af52833dc015","ts":"2026-09-15T17:10:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.72; selling not fading: red-bar volume 1.12x the advance (max 0.7); imbalance -81% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":5.4128,"target":5.52,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.67},"price":5.475,"vwap":5.4087,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":0.0647,"volatility":"medium"},"price":5.475,"volume":{"bars":220,"last_bar_volume":84414.0,"baseline_avg":85920.35,"bar_rvol":0.982468,"raw_accel":0.137916,"smooth_accel":-0.063619,"accel_momentum":0.641445,"rvol_3bar":[0.184956,0.894486,0.982468],"trend_3bar":"ACCELERATING","projected_rvol":0.094692},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2647.0,"sell_vol":1421.0,"unclassified_vol":0.0,"imbalance":0.301377,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.620526},"context":{"vwap":5.408659,"price_vs_vwap_pct":1.226576,"ema9":5.477691,"ema20":5.475614,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":2.620789,"atr":0.028617,"spread_atr":0.349439,"own_change_pct":-0.233245,"rel_strength_pct":{"SPY":-0.239848,"IWM":-0.219216}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.296093},"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":"4ae6a3ccf938","ts":"2026-09-15T17:10:35+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 150.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.06; target 0.13 away > ~0.11 reachable in 164 min","plan":{"state":"PASS","setup":"","stop":5.4197,"target":5.61,"target_label":"prev_day_high","reward_risk":2.06,"pos_in_5d_range_pct":24.4,"room_to_5d_high_atr":1.64},"price":5.4819,"vwap":5.4087,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":0.0899,"volatility":"medium"},"price":5.4819,"volume":{"bars":220,"last_bar_volume":84414.0,"baseline_avg":85920.35,"bar_rvol":0.982468,"raw_accel":0.137916,"smooth_accel":-0.063619,"accel_momentum":0.641445,"rvol_3bar":[0.184956,0.894486,0.982468],"trend_3bar":"ACCELERATING","projected_rvol":0.206404},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":2927.0,"sell_vol":7123.0,"unclassified_vol":0.0,"imbalance":-0.417512,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":2.688216},"context":{"vwap":5.408659,"price_vs_vwap_pct":1.354149,"ema9":5.477691,"ema20":5.475614,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.227027,"dist_to_hod_atr":2.379676,"atr":0.028617,"spread_atr":0.349439,"own_change_pct":-0.233245,"rel_strength_pct":{"SPY":-0.239848,"IWM":-0.219216}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.410193},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4486676b5181","ts":"2026-09-15T17:10:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 20.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.93; target 0.08 away > ~0.08 reachable in 164 min","plan":{"state":"PASS","setup":"","stop":8.385,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.4751,"vwap":8.358,"ext_from_open_pct":1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.86,"trend":"flat","recent_slope_pct":-0.0107,"volatility":"medium"},"price":8.4751,"volume":{"bars":220,"last_bar_volume":242.0,"baseline_avg":1293.4,"bar_rvol":0.187104,"raw_accel":-0.658674,"smooth_accel":-0.424248,"accel_momentum":0.018852,"rvol_3bar":[2.131805,0.562564,0.187104],"trend_3bar":"DECELERATING","projected_rvol":0.024741},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":20.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.73913,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":19.024231},"context":{"vwap":8.357982,"price_vs_vwap_pct":1.401266,"ema9":8.476973,"ema20":8.476724,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.292941,"dist_to_hod_atr":2.006664,"atr":0.012409,"spread_atr":0.805889,"own_change_pct":-0.08729,"rel_strength_pct":{"SPY":-0.093893,"IWM":-0.073261}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.138294},"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":"dcae5f558927","ts":"2026-09-15T17:10:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2646,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0335,"volatility":"medium"},"price":7.39,"volume":{"bars":220,"last_bar_volume":125146.0,"baseline_avg":274533.7,"bar_rvol":0.455849,"raw_accel":-0.487518,"smooth_accel":-0.345527,"accel_momentum":0.162418,"rvol_3bar":[1.611829,0.906069,0.455849],"trend_3bar":"DECELERATING","projected_rvol":0.31864},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":5681.0,"sell_vol":793.0,"unclassified_vol":0.0,"imbalance":0.75502,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.067881},"context":{"vwap":7.264383,"price_vs_vwap_pct":1.72922,"ema9":7.382078,"ema20":7.381524,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.357096,"atr":0.029475,"spread_atr":0.339274,"own_change_pct":-0.274139,"rel_strength_pct":{"SPY":-0.280743,"IWM":-0.26011}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.344175},"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":"db07e385cd28","ts":"2026-09-15T17:10:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 160.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.73; selling not fading: red-bar volume 1.12x the advance (max 0.7); imbalance -53% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":5.4122,"target":5.52,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":23.0,"room_to_5d_high_atr":1.67},"price":5.4744,"vwap":5.4087,"ext_from_open_pct":0.26,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.0625,"volatility":"medium"},"price":5.4744,"volume":{"bars":220,"last_bar_volume":84414.0,"baseline_avg":85920.35,"bar_rvol":0.982468,"raw_accel":0.137916,"smooth_accel":-0.063619,"accel_momentum":0.641445,"rvol_3bar":[0.184956,0.894486,0.982468],"trend_3bar":"ACCELERATING","projected_rvol":0.226272},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3294.0,"sell_vol":8068.0,"unclassified_vol":0.0,"imbalance":-0.420173,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.117009},"context":{"vwap":5.408659,"price_vs_vwap_pct":1.215483,"ema9":5.477691,"ema20":5.475614,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.362162,"dist_to_hod_atr":2.641755,"atr":0.028617,"spread_atr":0.349439,"own_change_pct":-0.233245,"rel_strength_pct":{"SPY":-0.239848,"IWM":-0.219216}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.412806},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f4b2d8e8d615","ts":"2026-09-15T17:10:50+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 165.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.09; target 0.13 away > ~0.11 reachable in 164 min","plan":{"state":"PASS","setup":"","stop":5.4178,"target":5.61,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4088,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":0.0829,"volatility":"medium"},"price":5.48,"volume":{"bars":220,"last_bar_volume":84414.0,"baseline_avg":85920.35,"bar_rvol":0.982468,"raw_accel":0.137916,"smooth_accel":-0.063619,"accel_momentum":0.641445,"rvol_3bar":[0.184956,0.894486,0.982468],"trend_3bar":"ACCELERATING","projected_rvol":0.296158},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":3246.0,"sell_vol":14317.0,"unclassified_vol":0.0,"imbalance":-0.630359,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.638066},"context":{"vwap":5.408659,"price_vs_vwap_pct":1.31902,"ema9":5.477691,"ema20":5.475614,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":2.44607,"atr":0.028617,"spread_atr":0.349439,"own_change_pct":-0.233245,"rel_strength_pct":{"SPY":-0.239848,"IWM":-0.219216}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.619308},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"63df86a1a0a5","ts":"2026-09-15T17:10:55+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2647,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0199,"volatility":"medium"},"price":7.385,"volume":{"bars":220,"last_bar_volume":125146.0,"baseline_avg":274533.7,"bar_rvol":0.455849,"raw_accel":-0.487518,"smooth_accel":-0.345527,"accel_momentum":0.162418,"rvol_3bar":[1.611829,0.906069,0.455849],"trend_3bar":"DECELERATING","projected_rvol":0.413545},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":25365.0,"sell_vol":18056.0,"unclassified_vol":0.0,"imbalance":0.168329,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.186837},"context":{"vwap":7.264383,"price_vs_vwap_pct":1.660391,"ema9":7.382078,"ema20":7.381524,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.526733,"atr":0.029475,"spread_atr":0.339274,"own_change_pct":-0.274139,"rel_strength_pct":{"SPY":-0.280743,"IWM":-0.26011}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.076733},"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":"1f7e91c874f0","ts":"2026-09-15T17:10:55+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 170.0s, plan says WATCH; stop 5.42, target 5.52 (ceiling), R:R 0.67; selling not fading: red-bar volume 1.12x the advance (max 0.7); imbalance -52% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":5.4164,"target":5.52,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":23.8,"room_to_5d_high_atr":1.65},"price":5.4786,"vwap":5.4088,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":0.0778,"volatility":"medium"},"price":5.4786,"volume":{"bars":220,"last_bar_volume":84414.0,"baseline_avg":85920.35,"bar_rvol":0.982468,"raw_accel":0.137916,"smooth_accel":-0.063619,"accel_momentum":0.641445,"rvol_3bar":[0.184956,0.894486,0.982468],"trend_3bar":"ACCELERATING","projected_rvol":0.279811},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":3575.0,"sell_vol":14496.0,"unclassified_vol":0.0,"imbalance":-0.604338,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.366718},"context":{"vwap":5.408659,"price_vs_vwap_pct":1.293136,"ema9":5.477691,"ema20":5.475614,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.286486,"dist_to_hod_atr":2.494991,"atr":0.028617,"spread_atr":0.349439,"own_change_pct":-0.233245,"rel_strength_pct":{"SPY":-0.239848,"IWM":-0.219216}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.593743},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e95ec0c165cb","ts":"2026-09-15T17:11:00+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 35.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.87; R:R 0.87 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1602 sh","plan":{"state":"WATCH","setup":"","stop":8.3899,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.8},"price":8.48,"vwap":8.358,"ext_from_open_pct":1.8,"max_ext_allowed_pct":3.0,"volume_pace":0.859,"trend":"flat","recent_slope_pct":0.0008,"volatility":"medium"},"price":8.48,"volume":{"bars":220,"last_bar_volume":242.0,"baseline_avg":1293.4,"bar_rvol":0.187104,"raw_accel":-0.658674,"smooth_accel":-0.424248,"accel_momentum":0.018852,"rvol_3bar":[2.131805,0.562564,0.187104],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":48.0,"sell_vol":27.0,"unclassified_vol":0.0,"imbalance":0.28,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":1.224627},"context":{"vwap":8.357982,"price_vs_vwap_pct":1.459893,"ema9":8.476973,"ema20":8.476724,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.235294,"dist_to_hod_atr":1.611778,"atr":0.012409,"spread_atr":0.805889,"own_change_pct":-0.08729,"rel_strength_pct":{"SPY":-0.132198,"IWM":-0.12587}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.052389},"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":"d89aeb2a3a19","ts":"2026-09-15T17:11:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2855,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.3899,"vwap":7.265,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.0332,"volatility":"medium"},"price":7.3899,"volume":{"bars":220,"last_bar_volume":125146.0,"baseline_avg":274533.7,"bar_rvol":0.455849,"raw_accel":-0.487518,"smooth_accel":-0.345527,"accel_momentum":0.162418,"rvol_3bar":[1.611829,0.906069,0.455849],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":49195.0,"sell_vol":82412.0,"unclassified_vol":0.0,"imbalance":-0.252395,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.165495},"context":{"vwap":7.264383,"price_vs_vwap_pct":1.727843,"ema9":7.382078,"ema20":7.381524,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.539704,"dist_to_hod_atr":1.360488,"atr":0.029475,"spread_atr":0.339274,"own_change_pct":-0.274139,"rel_strength_pct":{"SPY":-0.319047,"IWM":-0.312719}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.115054},"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":"7f27ee66a2cd","ts":"2026-09-15T17:11:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.0832,"target":11.44,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":23.9,"room_to_5d_high_atr":1.25},"price":11.3,"vwap":11.2889,"ext_from_open_pct":0.36,"max_ext_allowed_pct":4.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":0.0133,"volatility":"high"},"price":11.3,"volume":{"bars":221,"last_bar_volume":140145.0,"baseline_avg":92681.7,"bar_rvol":1.512111,"raw_accel":0.491031,"smooth_accel":1.066753,"accel_momentum":0.618078,"rvol_3bar":[2.615079,1.044787,1.512111],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":8324.0,"sell_vol":3439.0,"unclassified_vol":0.0,"imbalance":0.415285,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.424377},"context":{"vwap":11.288924,"price_vs_vwap_pct":0.098117,"ema9":11.316929,"ema20":11.341335,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.567944,"dist_to_hod_atr":4.521315,"atr":0.039811,"spread_atr":0.251184,"own_change_pct":-0.440529,"rel_strength_pct":{"SPY":-0.485437,"IWM":-0.479109}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.627957},"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":"4cf95a843fa7","ts":"2026-09-15T17:11:10+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.8884,"target":12.18,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":2.11},"price":12.1,"vwap":12.0976,"ext_from_open_pct":-3.12,"max_ext_allowed_pct":4.0,"volume_pace":0.621,"trend":"flat","recent_slope_pct":-0.0248,"volatility":"high"},"price":12.1,"volume":{"bars":221,"last_bar_volume":1561.0,"baseline_avg":1492.95,"bar_rvol":1.045581,"raw_accel":3.182324,"smooth_accel":-0.426233,"accel_momentum":-3.106141,"rvol_3bar":[0.5998,0.202909,1.045581],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":545.0,"sell_vol":864.0,"unclassified_vol":0.0,"imbalance":-0.226402,"bid":12.1,"ask":12.12,"spread_pct":0.165153,"quote_size_imbalance":null,"quote_age_s":26.57433},"context":{"vwap":12.097624,"price_vs_vwap_pct":0.019636,"ema9":12.12647,"ema20":12.127542,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.196358,"dist_to_hod_atr":17.542941,"atr":0.030212,"spread_atr":0.661998,"own_change_pct":-0.042851,"rel_strength_pct":{"SPY":-0.087759,"IWM":-0.081431}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.236721},"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":"f973252e26e5","ts":"2026-09-15T17:11:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says PASS; stop 8.39, target 8.56 (premarket_high), R:R 0.92; target 0.08 away > ~0.08 reachable in 164 min","plan":{"state":"PASS","setup":"","stop":8.3855,"target":8.5586,"target_label":"premarket_high","reward_risk":0.92,"pos_in_5d_range_pct":66.2,"room_to_5d_high_atr":0.82},"price":8.4756,"vwap":8.358,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.859,"trend":"flat","recent_slope_pct":-0.0195,"volatility":"medium"},"price":8.4756,"volume":{"bars":221,"last_bar_volume":97.0,"baseline_avg":1299.15,"bar_rvol":0.074664,"raw_accel":-0.701343,"smooth_accel":-0.790316,"accel_momentum":-0.366069,"rvol_3bar":[0.562564,0.187104,0.074664],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":48.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.263158,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.011778},"context":{"vwap":8.358022,"price_vs_vwap_pct":1.406774,"ema9":8.477578,"ema20":8.477036,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.287059,"dist_to_hod_atr":1.994017,"atr":0.012237,"spread_atr":0.81722,"own_change_pct":0.118064,"rel_strength_pct":{"SPY":0.073156,"IWM":0.079484}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.019648},"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":"c5707a592cbb","ts":"2026-09-15T17:11:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2654,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":0.0473,"volatility":"medium"},"price":7.385,"volume":{"bars":221,"last_bar_volume":196357.0,"baseline_avg":264172.95,"bar_rvol":0.74329,"raw_accel":0.569023,"smooth_accel":0.16864,"accel_momentum":0.514167,"rvol_3bar":[0.906069,0.455849,0.74329],"trend_3bar":"MIXED","projected_rvol":2.021903},"flow":{"window_s":30,"trades":157,"trade_rate":5.233333,"buy_vol":117989.0,"sell_vol":146293.0,"unclassified_vol":0.0,"imbalance":-0.107098,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.271124},"context":{"vwap":7.264972,"price_vs_vwap_pct":1.652142,"ema9":7.383643,"ema20":7.382322,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.562612,"atr":0.028798,"spread_atr":0.347247,"own_change_pct":-0.025704,"rel_strength_pct":{"SPY":-0.070612,"IWM":-0.064284}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.079605},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9cd423ed6c31","ts":"2026-09-15T17:11:20+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.28 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0653,"target":11.44,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":22.6,"room_to_5d_high_atr":1.27},"price":11.2821,"vwap":11.2889,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":-0.0184,"volatility":"high"},"price":11.2821,"volume":{"bars":221,"last_bar_volume":140145.0,"baseline_avg":92681.7,"bar_rvol":1.512111,"raw_accel":0.491031,"smooth_accel":1.066753,"accel_momentum":0.618078,"rvol_3bar":[2.615079,1.044787,1.512111],"trend_3bar":"MIXED","projected_rvol":0.412573},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":5434.0,"sell_vol":10774.0,"unclassified_vol":0.0,"imbalance":-0.329467,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":1.780718},"context":{"vwap":11.288924,"price_vs_vwap_pct":-0.060446,"ema9":11.316929,"ema20":11.341335,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.723868,"dist_to_hod_atr":4.970935,"atr":0.039811,"spread_atr":0.251184,"own_change_pct":-0.440529,"rel_strength_pct":{"SPY":-0.485437,"IWM":-0.479109}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.498191},"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":"365d0dc1e92e","ts":"2026-09-15T17:11:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 60.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.87; R:R 0.87 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1604 sh","plan":{"state":"WATCH","setup":"","stop":8.3899,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.8},"price":8.48,"vwap":8.3581,"ext_from_open_pct":1.8,"max_ext_allowed_pct":4.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"medium"},"price":8.48,"volume":{"bars":221,"last_bar_volume":97.0,"baseline_avg":1299.15,"bar_rvol":0.074664,"raw_accel":-0.701343,"smooth_accel":-0.790316,"accel_momentum":-0.366069,"rvol_3bar":[0.562564,0.187104,0.074664],"trend_3bar":"DECELERATING","projected_rvol":0.147789},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":114.0,"sell_vol":14.0,"unclassified_vol":0.0,"imbalance":0.78125,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.639368},"context":{"vwap":8.358022,"price_vs_vwap_pct":1.459418,"ema9":8.477578,"ema20":8.477036,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.235294,"dist_to_hod_atr":1.63444,"atr":0.012237,"spread_atr":0.81722,"own_change_pct":0.118064,"rel_strength_pct":{"SPY":0.073156,"IWM":0.079484}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.058331},"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":"e4d8bb941285","ts":"2026-09-15T17:11:25+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2654,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":0.0608,"volatility":"medium"},"price":7.39,"volume":{"bars":221,"last_bar_volume":196357.0,"baseline_avg":264172.95,"bar_rvol":0.74329,"raw_accel":0.569023,"smooth_accel":0.16864,"accel_momentum":0.514167,"rvol_3bar":[0.906069,0.455849,0.74329],"trend_3bar":"MIXED","projected_rvol":1.40259},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":115553.0,"sell_vol":131119.0,"unclassified_vol":0.0,"imbalance":-0.063104,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.960759},"context":{"vwap":7.264972,"price_vs_vwap_pct":1.720966,"ema9":7.383643,"ema20":7.382322,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.388988,"atr":0.028798,"spread_atr":0.347247,"own_change_pct":-0.025704,"rel_strength_pct":{"SPY":-0.070612,"IWM":-0.064284}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.046905},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"5efff82201dd","ts":"2026-09-15T17:11:25+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.0782,"target":11.44,"target_label":"premarket_high","reward_risk":0.67,"pos_in_5d_range_pct":23.5,"room_to_5d_high_atr":1.26},"price":11.295,"vwap":11.2889,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":0.0044,"volatility":"high"},"price":11.295,"volume":{"bars":221,"last_bar_volume":140145.0,"baseline_avg":92681.7,"bar_rvol":1.512111,"raw_accel":0.491031,"smooth_accel":1.066753,"accel_momentum":0.618078,"rvol_3bar":[2.615079,1.044787,1.512111],"trend_3bar":"MIXED","projected_rvol":1.366354},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":33132.0,"sell_vol":20797.0,"unclassified_vol":0.0,"imbalance":0.228727,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.345733},"context":{"vwap":11.288924,"price_vs_vwap_pct":0.053825,"ema9":11.316929,"ema20":11.341335,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.611498,"dist_to_hod_atr":4.646907,"atr":0.039811,"spread_atr":0.251184,"own_change_pct":-0.440529,"rel_strength_pct":{"SPY":-0.485437,"IWM":-0.479109}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.34586},"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":"b0f06a30ca72","ts":"2026-09-15T17:11:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 65.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.93; target 0.08 away > ~0.08 reachable in 164 min","plan":{"state":"PASS","setup":"","stop":8.3849,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.475,"vwap":8.3581,"ext_from_open_pct":1.74,"max_ext_allowed_pct":4.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.0209,"volatility":"medium"},"price":8.475,"volume":{"bars":221,"last_bar_volume":97.0,"baseline_avg":1299.15,"bar_rvol":0.074664,"raw_accel":-0.701343,"smooth_accel":-0.790316,"accel_momentum":-0.366069,"rvol_3bar":[0.562564,0.187104,0.074664],"trend_3bar":"DECELERATING","projected_rvol":0.157026},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":66.0,"sell_vol":36.0,"unclassified_vol":0.0,"imbalance":0.294118,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":4.793349},"context":{"vwap":8.358022,"price_vs_vwap_pct":1.399595,"ema9":8.477578,"ema20":8.477036,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.294118,"dist_to_hod_atr":2.04305,"atr":0.012237,"spread_atr":0.81722,"own_change_pct":0.118064,"rel_strength_pct":{"SPY":0.073156,"IWM":0.079484}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.02196},"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":"3fc04cb4ae63","ts":"2026-09-15T17:11:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.32,"target":8.76,"target_label":"clear air (typical 60-min move)","reward_risk":1.1,"pos_in_5d_range_pct":129.7,"room_to_5d_high_atr":-1.09},"price":8.53,"vwap":8.1684,"ext_from_open_pct":11.36,"max_ext_allowed_pct":4.0,"volume_pace":0.327,"trend":"flat","recent_slope_pct":0.484,"volatility":"high"},"price":8.53,"volume":{"bars":220,"last_bar_volume":1745.0,"baseline_avg":622.65,"bar_rvol":2.802538,"raw_accel":10.21015,"smooth_accel":0.646307,"accel_momentum":-0.66164,"rvol_3bar":[0.66107,0.207515,2.802538],"trend_3bar":"MIXED","projected_rvol":29.111058},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":9041.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.995145,"bid":8.5,"ask":8.53,"spread_pct":0.352319,"quote_size_imbalance":null,"quote_age_s":1.609722},"context":{"vwap":8.164099,"price_vs_vwap_pct":4.481834,"ema9":8.400458,"ema20":8.370281,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.30155,"dist_to_hod_atr":0.643063,"atr":0.04012,"spread_atr":0.747748,"own_change_pct":1.555024,"rel_strength_pct":{"SPY":1.510116,"IWM":1.516444}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.788931},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7a09b0b11820","ts":"2026-09-15T17:11:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7293,"target":14.19,"target_label":"range_20d_high","reward_risk":22.35,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":1.05},"price":10.8775,"vwap":10.5468,"ext_from_open_pct":4.49,"max_ext_allowed_pct":3.0,"volume_pace":1.016,"trend":"flat","recent_slope_pct":-0.0469,"volatility":"medium"},"price":10.8775,"volume":{"bars":221,"last_bar_volume":28722.0,"baseline_avg":40450.85,"bar_rvol":0.710047,"raw_accel":0.319399,"smooth_accel":0.150642,"accel_momentum":0.082967,"rvol_3bar":[0.476277,0.494704,0.710047],"trend_3bar":"ACCELERATING","projected_rvol":0.215669},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1888.0,"sell_vol":2474.0,"unclassified_vol":0.0,"imbalance":-0.134342,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":1.619795},"context":{"vwap":10.546525,"price_vs_vwap_pct":3.138239,"ema9":10.872461,"ema20":10.841787,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.571298,"dist_to_hod_atr":0.951143,"atr":0.06571,"spread_atr":0.152183,"own_change_pct":0.184247,"rel_strength_pct":{"SPY":0.139339,"IWM":0.145667}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.095389},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7b6ce66b22dd","ts":"2026-09-15T17:11:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2654,"ext_from_open_pct":3.29,"max_ext_allowed_pct":4.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":0.0473,"volatility":"medium"},"price":7.385,"volume":{"bars":221,"last_bar_volume":196357.0,"baseline_avg":264172.95,"bar_rvol":0.74329,"raw_accel":0.569023,"smooth_accel":0.16864,"accel_momentum":0.514167,"rvol_3bar":[0.906069,0.455849,0.74329],"trend_3bar":"MIXED","projected_rvol":1.173542},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":88226.0,"sell_vol":66783.0,"unclassified_vol":0.0,"imbalance":0.138334,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":1.223563},"context":{"vwap":7.264972,"price_vs_vwap_pct":1.652142,"ema9":7.383643,"ema20":7.382322,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.562612,"atr":0.028798,"spread_atr":0.347247,"own_change_pct":-0.025704,"rel_strength_pct":{"SPY":-0.070612,"IWM":-0.064284}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.102822},"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":"3e2ae3d72fb8","ts":"2026-09-15T17:11:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 205.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.09; target 0.13 away > ~0.11 reachable in 164 min","plan":{"state":"PASS","setup":"","stop":5.4178,"target":5.61,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4088,"ext_from_open_pct":0.37,"max_ext_allowed_pct":4.0,"volume_pace":0.782,"trend":"flat","recent_slope_pct":0.0168,"volatility":"medium"},"price":5.48,"volume":{"bars":221,"last_bar_volume":23579.0,"baseline_avg":80504.4,"bar_rvol":0.292891,"raw_accel":-0.720674,"smooth_accel":0.501108,"accel_momentum":0.564727,"rvol_3bar":[0.894486,0.982468,0.292891],"trend_3bar":"MIXED","projected_rvol":0.093833},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2389.0,"sell_vol":1388.0,"unclassified_vol":0.0,"imbalance":0.265025,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.062312},"context":{"vwap":5.408775,"price_vs_vwap_pct":1.316834,"ema9":5.476253,"ema20":5.475127,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":2.551915,"atr":0.02743,"spread_atr":0.364559,"own_change_pct":-0.286173,"rel_strength_pct":{"SPY":-0.331081,"IWM":-0.324753}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.077623},"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":"d638261f26bf","ts":"2026-09-15T17:11:35+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 210.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.74; selling not fading: red-bar volume 1.12x the advance (max 0.7); no reclaim yet (needs a close > 5.48); R:R 0.74 < 2.0 at 5.47;","plan":{"state":"WATCH","setup":"","stop":5.4117,"target":5.52,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":22.9,"room_to_5d_high_atr":1.67},"price":5.4739,"vwap":5.4088,"ext_from_open_pct":0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0055,"volatility":"medium"},"price":5.4739,"volume":{"bars":221,"last_bar_volume":23579.0,"baseline_avg":80504.4,"bar_rvol":0.292891,"raw_accel":-0.720674,"smooth_accel":0.501108,"accel_momentum":0.564727,"rvol_3bar":[0.894486,0.982468,0.292891],"trend_3bar":"MIXED","projected_rvol":0.08309},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2479.0,"sell_vol":1413.0,"unclassified_vol":0.0,"imbalance":0.273895,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":4.773159},"context":{"vwap":5.408775,"price_vs_vwap_pct":1.204054,"ema9":5.476253,"ema20":5.475127,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.371171,"dist_to_hod_atr":2.774296,"atr":0.02743,"spread_atr":0.364559,"own_change_pct":-0.286173,"rel_strength_pct":{"SPY":-0.331081,"IWM":-0.324753}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.080221},"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":"8e482c01cc3e","ts":"2026-09-15T17:11:45+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7227,"target":7.875,"target_label":"prev_day_high","reward_risk":0.29,"pos_in_5d_range_pct":18.2,"room_to_5d_high_atr":2.77},"price":7.841,"vwap":7.847,"ext_from_open_pct":-0.75,"max_ext_allowed_pct":3.0,"volume_pace":1.164,"trend":"flat","recent_slope_pct":-0.0229,"volatility":"high"},"price":7.841,"volume":{"bars":221,"last_bar_volume":26005.0,"baseline_avg":17847.35,"bar_rvol":1.457079,"raw_accel":0.049943,"smooth_accel":0.098744,"accel_momentum":0.90669,"rvol_3bar":[0.035756,1.380906,1.457079],"trend_3bar":"ACCELERATING","projected_rvol":0.115423},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":1351.0,"sell_vol":49.0,"unclassified_vol":0.0,"imbalance":0.93,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":2.290291},"context":{"vwap":7.846955,"price_vs_vwap_pct":-0.075895,"ema9":7.849691,"ema20":7.845715,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.12232,"dist_to_hod_atr":4.960363,"atr":0.017942,"spread_atr":0.557344,"own_change_pct":0.306083,"rel_strength_pct":{"SPY":0.261175,"IWM":0.267503}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.355084},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9d5958f3cd83","ts":"2026-09-15T17:11:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 80.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.89; R:R 0.89 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1604 sh","plan":{"state":"WATCH","setup":"","stop":8.3879,"target":8.5586,"target_label":"premarket_high","reward_risk":0.89,"pos_in_5d_range_pct":66.4,"room_to_5d_high_atr":0.81},"price":8.478,"vwap":8.3581,"ext_from_open_pct":1.78,"max_ext_allowed_pct":4.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":-0.0138,"volatility":"medium"},"price":8.478,"volume":{"bars":221,"last_bar_volume":97.0,"baseline_avg":1299.15,"bar_rvol":0.074664,"raw_accel":-0.701343,"smooth_accel":-0.790316,"accel_momentum":-0.366069,"rvol_3bar":[0.562564,0.187104,0.074664],"trend_3bar":"DECELERATING","projected_rvol":0.131368},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":92.0,"sell_vol":35.0,"unclassified_vol":0.0,"imbalance":0.448819,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":12.95997},"context":{"vwap":8.358022,"price_vs_vwap_pct":1.435489,"ema9":8.477578,"ema20":8.477036,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.258824,"dist_to_hod_atr":1.797884,"atr":0.012237,"spread_atr":0.81722,"own_change_pct":0.118064,"rel_strength_pct":{"SPY":0.073156,"IWM":0.079484}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.033511},"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":"05358b9e4d2a","ts":"2026-09-15T17:11:45+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.32,"target":8.5558,"target_label":"ceiling","reward_risk":0.18,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-1.07},"price":8.52,"vwap":8.1684,"ext_from_open_pct":11.23,"max_ext_allowed_pct":4.0,"volume_pace":0.327,"trend":"flat","recent_slope_pct":0.4604,"volatility":"high"},"price":8.52,"volume":{"bars":220,"last_bar_volume":1745.0,"baseline_avg":622.65,"bar_rvol":2.802538,"raw_accel":10.21015,"smooth_accel":0.646307,"accel_momentum":-0.66164,"rvol_3bar":[0.66107,0.207515,2.802538],"trend_3bar":"MIXED","projected_rvol":19.649348},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":200.0,"sell_vol":113.0,"unclassified_vol":0.0,"imbalance":0.277955,"bid":8.5,"ask":8.53,"spread_pct":0.352319,"quote_size_imbalance":null,"quote_age_s":10.110385},"context":{"vwap":8.164099,"price_vs_vwap_pct":4.359346,"ema9":8.400458,"ema20":8.370281,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.41843,"dist_to_hod_atr":0.892312,"atr":0.04012,"spread_atr":0.747748,"own_change_pct":1.555024,"rel_strength_pct":{"SPY":1.510116,"IWM":1.516444}},"vas":{"raw":5,"score":7.5,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.77898},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"172458bb66f8","ts":"2026-09-15T17:11:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7168,"target":10.935,"target_label":"prev_day_high","reward_risk":0.47,"pos_in_5d_range_pct":50.8,"room_to_5d_high_atr":1.07},"price":10.865,"vwap":10.5469,"ext_from_open_pct":4.37,"max_ext_allowed_pct":4.0,"volume_pace":1.015,"trend":"flat","recent_slope_pct":-0.0699,"volatility":"medium"},"price":10.865,"volume":{"bars":221,"last_bar_volume":28722.0,"baseline_avg":40450.85,"bar_rvol":0.710047,"raw_accel":0.319399,"smooth_accel":0.150642,"accel_momentum":0.082967,"rvol_3bar":[0.476277,0.494704,0.710047],"trend_3bar":"ACCELERATING","projected_rvol":0.21445},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1807.0,"sell_vol":821.0,"unclassified_vol":0.0,"imbalance":0.37519,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.74808},"context":{"vwap":10.546525,"price_vs_vwap_pct":3.019716,"ema9":10.872461,"ema20":10.841787,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.685558,"dist_to_hod_atr":1.141372,"atr":0.06571,"spread_atr":0.152183,"own_change_pct":0.184247,"rel_strength_pct":{"SPY":0.139339,"IWM":0.145667}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.266403},"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":"516a8e98b5ff","ts":"2026-09-15T17:11:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2835,"target":7.47,"target_label":"prev_day_high","reward_risk":0.79,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.18},"price":7.3879,"vwap":7.2655,"ext_from_open_pct":3.33,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":0.0551,"volatility":"medium"},"price":7.3879,"volume":{"bars":221,"last_bar_volume":196357.0,"baseline_avg":264172.95,"bar_rvol":0.74329,"raw_accel":0.569023,"smooth_accel":0.16864,"accel_momentum":0.514167,"rvol_3bar":[0.906069,0.455849,0.74329],"trend_3bar":"MIXED","projected_rvol":0.879908},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":20777.0,"sell_vol":20026.0,"unclassified_vol":0.0,"imbalance":0.018406,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.069926},"context":{"vwap":7.264972,"price_vs_vwap_pct":1.69206,"ema9":7.383643,"ema20":7.382322,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.566622,"dist_to_hod_atr":1.46191,"atr":0.028798,"spread_atr":0.347247,"own_change_pct":-0.025704,"rel_strength_pct":{"SPY":-0.070612,"IWM":-0.064284}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.013681},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6eb54c0f6896","ts":"2026-09-15T17:11:50+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7467,"target":7.91,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.72},"price":7.865,"vwap":7.847,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":1.163,"trend":"flat","recent_slope_pct":0.0382,"volatility":"high"},"price":7.865,"volume":{"bars":221,"last_bar_volume":26005.0,"baseline_avg":17847.35,"bar_rvol":1.457079,"raw_accel":0.049943,"smooth_accel":0.098744,"accel_momentum":0.90669,"rvol_3bar":[0.035756,1.380906,1.457079],"trend_3bar":"ACCELERATING","projected_rvol":0.104284},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":1155.0,"sell_vol":32.0,"unclassified_vol":0.0,"imbalance":0.946083,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.45204},"context":{"vwap":7.846955,"price_vs_vwap_pct":0.229956,"ema9":7.849691,"ema20":7.845715,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.819672,"dist_to_hod_atr":3.622737,"atr":0.017942,"spread_atr":0.557344,"own_change_pct":0.306083,"rel_strength_pct":{"SPY":0.261175,"IWM":0.267503}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.378517},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"90b309051794","ts":"2026-09-15T17:11:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.32,"target":8.765,"target_label":"clear air (typical 60-min move)","reward_risk":1.07,"pos_in_5d_range_pct":129.9,"room_to_5d_high_atr":-1.09},"price":8.535,"vwap":8.1687,"ext_from_open_pct":11.42,"max_ext_allowed_pct":4.0,"volume_pace":0.327,"trend":"flat","recent_slope_pct":0.4958,"volatility":"high"},"price":8.535,"volume":{"bars":220,"last_bar_volume":1745.0,"baseline_avg":622.65,"bar_rvol":2.802538,"raw_accel":10.21015,"smooth_accel":0.646307,"accel_momentum":-0.66164,"rvol_3bar":[0.66107,0.207515,2.802538],"trend_3bar":"MIXED","projected_rvol":18.285714},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":412.0,"sell_vol":213.0,"unclassified_vol":0.0,"imbalance":0.3184,"bid":8.52,"ask":8.55,"spread_pct":0.351494,"quote_size_imbalance":null,"quote_age_s":0.446427},"context":{"vwap":8.164099,"price_vs_vwap_pct":4.543078,"ema9":8.400458,"ema20":8.370281,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.24311,"dist_to_hod_atr":0.518438,"atr":0.04012,"spread_atr":0.747748,"own_change_pct":1.555024,"rel_strength_pct":{"SPY":1.510116,"IWM":1.516444}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.892328},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"57ab85421677","ts":"2026-09-15T17:11:50+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2655,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.0473,"volatility":"medium"},"price":7.385,"volume":{"bars":221,"last_bar_volume":196357.0,"baseline_avg":264172.95,"bar_rvol":0.74329,"raw_accel":0.569023,"smooth_accel":0.16864,"accel_momentum":0.514167,"rvol_3bar":[0.906069,0.455849,0.74329],"trend_3bar":"MIXED","projected_rvol":0.796733},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":15205.0,"sell_vol":17870.0,"unclassified_vol":0.0,"imbalance":-0.080574,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":5.069926},"context":{"vwap":7.264972,"price_vs_vwap_pct":1.652142,"ema9":7.383643,"ema20":7.382322,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.562612,"atr":0.028798,"spread_atr":0.347247,"own_change_pct":-0.025704,"rel_strength_pct":{"SPY":-0.070612,"IWM":-0.064284}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.05989},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0e533d1ad8e4","ts":"2026-09-15T17:11:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.32,"target":8.5558,"target_label":"ceiling","reward_risk":0.18,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-1.07},"price":8.52,"vwap":8.1692,"ext_from_open_pct":11.23,"max_ext_allowed_pct":3.0,"volume_pace":0.327,"trend":"flat","recent_slope_pct":0.4604,"volatility":"high"},"price":8.52,"volume":{"bars":220,"last_bar_volume":1745.0,"baseline_avg":622.65,"bar_rvol":2.802538,"raw_accel":10.21015,"smooth_accel":0.646307,"accel_momentum":-0.66164,"rvol_3bar":[0.66107,0.207515,2.802538],"trend_3bar":"MIXED","projected_rvol":18.815181},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":717.0,"sell_vol":1159.0,"unclassified_vol":0.0,"imbalance":-0.235608,"bid":8.51,"ask":8.54,"spread_pct":0.351906,"quote_size_imbalance":null,"quote_age_s":0.098232},"context":{"vwap":8.164099,"price_vs_vwap_pct":4.359346,"ema9":8.400458,"ema20":8.370281,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.41843,"dist_to_hod_atr":0.892312,"atr":0.04012,"spread_atr":0.747748,"own_change_pct":1.555024,"rel_strength_pct":{"SPY":1.510116,"IWM":1.516444}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.660299},"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":"ab427757e30d","ts":"2026-09-15T17:12:00+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.00% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":12.7126,"target":13.2,"target_label":"ceiling","reward_risk":0.87,"pos_in_5d_range_pct":48.2,"room_to_5d_high_atr":1.08},"price":12.9726,"vwap":12.9014,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.849,"trend":"flat","recent_slope_pct":0.0176,"volatility":"medium"},"price":12.9726,"volume":{"bars":221,"last_bar_volume":41.0,"baseline_avg":1647.7,"bar_rvol":0.024883,"raw_accel":-0.900467,"smooth_accel":-0.979606,"accel_momentum":-0.012279,"rvol_3bar":[0.070957,0.08436,0.024883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":46.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":12.9,"ask":13.03,"spread_pct":1.0027,"quote_size_imbalance":null,"quote_age_s":0.051221},"context":{"vwap":12.90142,"price_vs_vwap_pct":0.551721,"ema9":13.035221,"ema20":13.05886,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.534936,"dist_to_hod_atr":5.59177,"atr":0.060339,"spread_atr":2.154505,"own_change_pct":0.213241,"rel_strength_pct":{"SPY":0.180884,"IWM":0.175533}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.024883},"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":"bbfa1e8e99e2","ts":"2026-09-15T17:12:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2656,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":0.0879,"volatility":"medium"},"price":7.4,"volume":{"bars":221,"last_bar_volume":196357.0,"baseline_avg":264172.95,"bar_rvol":0.74329,"raw_accel":0.569023,"smooth_accel":0.16864,"accel_momentum":0.514167,"rvol_3bar":[0.906069,0.455849,0.74329],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":17478.0,"sell_vol":25860.0,"unclassified_vol":0.0,"imbalance":-0.19341,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.025907},"context":{"vwap":7.264972,"price_vs_vwap_pct":1.858613,"ema9":7.383643,"ema20":7.382322,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.403769,"dist_to_hod_atr":1.041741,"atr":0.028798,"spread_atr":0.347247,"own_change_pct":-0.025704,"rel_strength_pct":{"SPY":-0.058061,"IWM":-0.063412}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.14376},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"822a288a6023","ts":"2026-09-15T17:12:00+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.29 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0682,"target":11.44,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":22.8,"room_to_5d_high_atr":1.27},"price":11.285,"vwap":11.2889,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"high"},"price":11.285,"volume":{"bars":221,"last_bar_volume":140145.0,"baseline_avg":92681.7,"bar_rvol":1.512111,"raw_accel":0.491031,"smooth_accel":1.066753,"accel_momentum":0.618078,"rvol_3bar":[2.615079,1.044787,1.512111],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":18873.0,"sell_vol":19464.0,"unclassified_vol":0.0,"imbalance":-0.015416,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":0.129019},"context":{"vwap":11.288924,"price_vs_vwap_pct":-0.034757,"ema9":11.316929,"ema20":11.341335,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.698606,"dist_to_hod_atr":4.898091,"atr":0.039811,"spread_atr":0.251184,"own_change_pct":-0.440529,"rel_strength_pct":{"SPY":-0.472886,"IWM":-0.478237}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.023311},"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":"13e93820a93b","ts":"2026-09-15T17:12:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7326,"target":13.2,"target_label":"ceiling","reward_risk":0.95,"pos_in_5d_range_pct":48.2,"room_to_5d_high_atr":1.08},"price":12.9726,"vwap":12.9014,"ext_from_open_pct":-0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.848,"trend":"flat","recent_slope_pct":0.0176,"volatility":"medium"},"price":12.9726,"volume":{"bars":221,"last_bar_volume":41.0,"baseline_avg":1647.7,"bar_rvol":0.024883,"raw_accel":-0.900467,"smooth_accel":-0.979606,"accel_momentum":-0.012279,"rvol_3bar":[0.070957,0.08436,0.024883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":46.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":12.9,"ask":13.02,"spread_pct":0.925926,"quote_size_imbalance":null,"quote_age_s":1.384119},"context":{"vwap":12.90142,"price_vs_vwap_pct":0.551721,"ema9":13.035221,"ema20":13.05886,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.534936,"dist_to_hod_atr":5.59177,"atr":0.060339,"spread_atr":1.988774,"own_change_pct":0.213241,"rel_strength_pct":{"SPY":0.180884,"IWM":0.175533}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.024883},"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":"5911855d45c3","ts":"2026-09-15T17:12:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.18% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.32,"target":8.7588,"target_label":"clear air (typical 60-min move)","reward_risk":1.1,"pos_in_5d_range_pct":129.7,"room_to_5d_high_atr":-1.08},"price":8.5288,"vwap":8.1696,"ext_from_open_pct":11.34,"max_ext_allowed_pct":3.0,"volume_pace":0.328,"trend":"flat","recent_slope_pct":0.4104,"volatility":"high"},"price":8.5288,"volume":{"bars":221,"last_bar_volume":11600.0,"baseline_avg":707.35,"bar_rvol":16.399237,"raw_accel":5.647564,"smooth_accel":9.133083,"accel_momentum":8.486776,"rvol_3bar":[0.207515,2.802538,16.399237],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":1167.0,"sell_vol":1499.0,"unclassified_vol":0.0,"imbalance":-0.124531,"bid":8.43,"ask":8.53,"spread_pct":1.179245,"quote_size_imbalance":null,"quote_age_s":3.066108},"context":{"vwap":8.169558,"price_vs_vwap_pct":4.39733,"ema9":8.422367,"ema20":8.383588,"ema_stack":true,"ema_warm":true,"hod":8.5558,"dist_to_hod_pct":-0.315575,"dist_to_hod_atr":0.589183,"atr":0.045826,"spread_atr":2.182159,"own_change_pct":1.551313,"rel_strength_pct":{"SPY":1.518955,"IWM":1.513605}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-2.042216},"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":"4a24b8f42460","ts":"2026-09-15T17:12:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7757,"target":7.91,"target_label":"prev_day_high","reward_risk":0.53,"pos_in_5d_range_pct":74.1,"room_to_5d_high_atr":0.4},"price":7.8636,"vwap":7.7509,"ext_from_open_pct":2.12,"max_ext_allowed_pct":3.0,"volume_pace":0.57,"trend":"flat","recent_slope_pct":0.0092,"volatility":"medium"},"price":7.8636,"volume":{"bars":222,"last_bar_volume":9662.0,"baseline_avg":16506.45,"bar_rvol":0.585347,"raw_accel":-0.083997,"smooth_accel":0.270775,"accel_momentum":0.11769,"rvol_3bar":[0.375189,0.654018,0.585347],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":2057.0,"sell_vol":980.0,"unclassified_vol":0.0,"imbalance":0.354626,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.081191},"context":{"vwap":7.75088,"price_vs_vwap_pct":1.454284,"ema9":7.864903,"ema20":7.858602,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.334601,"dist_to_hod_atr":1.274828,"atr":0.020709,"spread_atr":0.482889,"own_change_pct":-0.104151,"rel_strength_pct":{"SPY":-0.136508,"IWM":-0.141859}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.207579},"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":"798db1b763d7","ts":"2026-09-15T17:12:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2171,"target":9.46,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.37,"vwap":9.3526,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.546,"trend":"flat","recent_slope_pct":-0.0737,"volatility":"high"},"price":9.37,"volume":{"bars":222,"last_bar_volume":999.0,"baseline_avg":6324.55,"bar_rvol":0.157956,"raw_accel":-0.928897,"smooth_accel":-0.021756,"accel_momentum":0.16092,"rvol_3bar":[0.841653,2.418827,0.157956],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":269.0,"sell_vol":727.0,"unclassified_vol":0.0,"imbalance":-0.459839,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.005658},"context":{"vwap":9.35259,"price_vs_vwap_pct":0.186152,"ema9":9.399313,"ema20":9.408147,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.678909,"dist_to_hod_atr":5.519885,"atr":0.028986,"spread_atr":0.344993,"own_change_pct":-0.302918,"rel_strength_pct":{"SPY":-0.335275,"IWM":-0.340626}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.072634},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"49d1c419f882","ts":"2026-09-15T17:12:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.0751,"target":11.44,"target_label":"premarket_high","reward_risk":0.68,"pos_in_5d_range_pct":23.3,"room_to_5d_high_atr":1.26},"price":11.2919,"vwap":11.2889,"ext_from_open_pct":0.28,"max_ext_allowed_pct":4.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":0.0502,"volatility":"high"},"price":11.2919,"volume":{"bars":222,"last_bar_volume":100157.0,"baseline_avg":95312.95,"bar_rvol":1.050823,"raw_accel":-0.285333,"smooth_accel":-0.022489,"accel_momentum":-1.089242,"rvol_3bar":[1.044787,1.512111,1.050823],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":18550.0,"sell_vol":19261.0,"unclassified_vol":0.0,"imbalance":-0.018804,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":1.100228},"context":{"vwap":11.288943,"price_vs_vwap_pct":0.026197,"ema9":11.310543,"ema20":11.33597,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.638502,"dist_to_hod_atr":4.728265,"atr":0.039782,"spread_atr":0.25137,"own_change_pct":-0.536758,"rel_strength_pct":{"SPY":-0.569115,"IWM":-0.574466}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.01976},"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":"ee7dfad25e1a","ts":"2026-09-15T17:12:10+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7651,"target":7.91,"target_label":"prev_day_high","reward_risk":0.65,"pos_in_5d_range_pct":72.1,"room_to_5d_high_atr":0.43},"price":7.853,"vwap":7.751,"ext_from_open_pct":1.99,"max_ext_allowed_pct":3.0,"volume_pace":0.57,"trend":"flat","recent_slope_pct":-0.0178,"volatility":"medium"},"price":7.853,"volume":{"bars":222,"last_bar_volume":9662.0,"baseline_avg":16506.45,"bar_rvol":0.585347,"raw_accel":-0.083997,"smooth_accel":0.270775,"accel_momentum":0.11769,"rvol_3bar":[0.375189,0.654018,0.585347],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":3340.0,"sell_vol":2572.0,"unclassified_vol":0.0,"imbalance":0.129905,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.315723},"context":{"vwap":7.75088,"price_vs_vwap_pct":1.317525,"ema9":7.864903,"ema20":7.858602,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.468948,"dist_to_hod_atr":1.786691,"atr":0.020709,"spread_atr":0.482889,"own_change_pct":-0.104151,"rel_strength_pct":{"SPY":-0.136508,"IWM":-0.141859}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.07604},"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":"f104aedf8e6e","ts":"2026-09-15T17:12:10+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.28 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0582,"target":11.44,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":22.1,"room_to_5d_high_atr":1.28},"price":11.275,"vwap":11.2889,"ext_from_open_pct":0.13,"max_ext_allowed_pct":4.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":0.0202,"volatility":"high"},"price":11.275,"volume":{"bars":222,"last_bar_volume":100157.0,"baseline_avg":95312.95,"bar_rvol":1.050823,"raw_accel":-0.285333,"smooth_accel":-0.022489,"accel_momentum":-1.089242,"rvol_3bar":[1.044787,1.512111,1.050823],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":39913.0,"sell_vol":26115.0,"unclassified_vol":0.0,"imbalance":0.208972,"bid":11.27,"ask":11.28,"spread_pct":0.088692,"quote_size_imbalance":null,"quote_age_s":0.091469},"context":{"vwap":11.288943,"price_vs_vwap_pct":-0.123507,"ema9":11.310543,"ema20":11.33597,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.785714,"dist_to_hod_atr":5.15308,"atr":0.039782,"spread_atr":0.25137,"own_change_pct":-0.536758,"rel_strength_pct":{"SPY":-0.569115,"IWM":-0.574466}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.219592},"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":"207f0d0fd28e","ts":"2026-09-15T17:12:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7298,"target":14.19,"target_label":"range_20d_high","reward_risk":22.34,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":1.05},"price":10.878,"vwap":10.5473,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":1.014,"trend":"flat","recent_slope_pct":0.0261,"volatility":"medium"},"price":10.878,"volume":{"bars":222,"last_bar_volume":8147.0,"baseline_avg":40089.95,"bar_rvol":0.203218,"raw_accel":-0.71635,"smooth_accel":0.043251,"accel_momentum":-0.107391,"rvol_3bar":[0.494704,0.710047,0.203218],"trend_3bar":"MIXED","projected_rvol":0.444276},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":6236.0,"sell_vol":1142.0,"unclassified_vol":0.0,"imbalance":0.690431,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.309709},"context":{"vwap":10.547,"price_vs_vwap_pct":3.138329,"ema9":10.871969,"ema20":10.844474,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.566728,"dist_to_hod_atr":0.986773,"atr":0.062831,"spread_atr":0.159157,"own_change_pct":0.046019,"rel_strength_pct":{"SPY":0.013662,"IWM":0.008311}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.140308},"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":"a993e6ed8097","ts":"2026-09-15T17:12:20+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 255.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.09; target 0.13 away > ~0.10 reachable in 163 min","plan":{"state":"PASS","setup":"","stop":5.4178,"target":5.61,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4088,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.0066,"volatility":"medium"},"price":5.48,"volume":{"bars":222,"last_bar_volume":7321.0,"baseline_avg":77844.95,"bar_rvol":0.094046,"raw_accel":-0.689512,"smooth_accel":0.035246,"accel_momentum":-0.465862,"rvol_3bar":[0.982468,0.292891,0.094046],"trend_3bar":"DECELERATING","projected_rvol":0.181862},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":794.0,"sell_vol":6149.0,"unclassified_vol":0.0,"imbalance":-0.77128,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.802154},"context":{"vwap":5.408813,"price_vs_vwap_pct":1.316138,"ema9":5.476122,"ema20":5.475172,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":2.656583,"atr":0.02635,"spread_atr":0.379512,"own_change_pct":0.285714,"rel_strength_pct":{"SPY":0.253357,"IWM":0.248006}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.072536},"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":"4d1718a4e48e","ts":"2026-09-15T17:12:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7103,"target":10.935,"target_label":"prev_day_high","reward_risk":0.52,"pos_in_5d_range_pct":50.3,"room_to_5d_high_atr":1.08},"price":10.8585,"vwap":10.5474,"ext_from_open_pct":4.31,"max_ext_allowed_pct":4.0,"volume_pace":1.013,"trend":"flat","recent_slope_pct":-0.0098,"volatility":"medium"},"price":10.8585,"volume":{"bars":222,"last_bar_volume":8147.0,"baseline_avg":40089.95,"bar_rvol":0.203218,"raw_accel":-0.71635,"smooth_accel":0.043251,"accel_momentum":-0.107391,"rvol_3bar":[0.494704,0.710047,0.203218],"trend_3bar":"MIXED","projected_rvol":0.387628},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":6150.0,"sell_vol":1606.0,"unclassified_vol":0.0,"imbalance":0.585869,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":2.345229},"context":{"vwap":10.547,"price_vs_vwap_pct":2.953443,"ema9":10.871969,"ema20":10.844474,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.744973,"dist_to_hod_atr":1.297129,"atr":0.062831,"spread_atr":0.159157,"own_change_pct":0.046019,"rel_strength_pct":{"SPY":0.013662,"IWM":0.008311}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.119059},"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":"e6667f297530","ts":"2026-09-15T17:12:25+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 260.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.80; selling not fading: red-bar volume 1.02x the advance (max 0.7); imbalance -94% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":5.4078,"target":5.52,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":1.69},"price":5.47,"vwap":5.4088,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.779,"trend":"flat","recent_slope_pct":-0.0431,"volatility":"medium"},"price":5.47,"volume":{"bars":222,"last_bar_volume":7321.0,"baseline_avg":77844.95,"bar_rvol":0.094046,"raw_accel":-0.689512,"smooth_accel":0.035246,"accel_momentum":-0.465862,"rvol_3bar":[0.982468,0.292891,0.094046],"trend_3bar":"DECELERATING","projected_rvol":0.163988},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":794.0,"sell_vol":6679.0,"unclassified_vol":0.0,"imbalance":-0.787502,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":5.802154},"context":{"vwap":5.408813,"price_vs_vwap_pct":1.131254,"ema9":5.476122,"ema20":5.475172,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.441441,"dist_to_hod_atr":3.036094,"atr":0.02635,"spread_atr":0.379512,"own_change_pct":0.285714,"rel_strength_pct":{"SPY":0.253357,"IWM":0.248006}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.074061},"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":"8135edc9d396","ts":"2026-09-15T17:12:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 125.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.93; target 0.08 away > ~0.08 reachable in 162 min","plan":{"state":"PASS","setup":"","stop":8.3849,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.475,"vwap":8.3582,"ext_from_open_pct":1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0029,"volatility":"medium"},"price":8.475,"volume":{"bars":222,"last_bar_volume":128.0,"baseline_avg":1275.2,"bar_rvol":0.100376,"raw_accel":-0.598494,"smooth_accel":-0.864638,"accel_momentum":-0.074322,"rvol_3bar":[0.187104,0.074664,0.100376],"trend_3bar":"MIXED","projected_rvol":0.479925},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":67.0,"sell_vol":239.0,"unclassified_vol":0.0,"imbalance":-0.562092,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.770298},"context":{"vwap":8.358074,"price_vs_vwap_pct":1.398964,"ema9":8.477663,"ema20":8.477128,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.294118,"dist_to_hod_atr":2.133159,"atr":0.01172,"spread_atr":0.853264,"own_change_pct":0.068459,"rel_strength_pct":{"SPY":0.036102,"IWM":0.030751}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.056421},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6d3bf1594e58","ts":"2026-09-15T17:12:30+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.0915,"target":11.44,"target_label":"premarket_high","reward_risk":0.61,"pos_in_5d_range_pct":24.4,"room_to_5d_high_atr":1.24},"price":11.3083,"vwap":11.289,"ext_from_open_pct":0.43,"max_ext_allowed_pct":4.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":0.0792,"volatility":"high"},"price":11.3083,"volume":{"bars":222,"last_bar_volume":100157.0,"baseline_avg":95312.95,"bar_rvol":1.050823,"raw_accel":-0.285333,"smooth_accel":-0.022489,"accel_momentum":-1.089242,"rvol_3bar":[1.044787,1.512111,1.050823],"trend_3bar":"MIXED","projected_rvol":1.05524},"flow":{"window_s":30,"trades":115,"trade_rate":3.833333,"buy_vol":36875.0,"sell_vol":13414.0,"unclassified_vol":0.0,"imbalance":0.466523,"bid":11.27,"ask":11.28,"spread_pct":0.088692,"quote_size_imbalance":null,"quote_age_s":0.462869},"context":{"vwap":11.288943,"price_vs_vwap_pct":0.171472,"ema9":11.310543,"ema20":11.33597,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.495645,"dist_to_hod_atr":4.316018,"atr":0.039782,"spread_atr":0.25137,"own_change_pct":-0.536758,"rel_strength_pct":{"SPY":-0.569115,"IWM":-0.574466}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.490233},"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":"40041eb4843e","ts":"2026-09-15T17:12:35+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9284,"target":12.59,"target_label":"prev_day_high","reward_risk":2.13,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":2.07},"price":12.14,"vwap":12.0977,"ext_from_open_pct":-2.8,"max_ext_allowed_pct":3.0,"volume_pace":0.619,"trend":"flat","recent_slope_pct":0.0577,"volatility":"high"},"price":12.14,"volume":{"bars":222,"last_bar_volume":927.0,"baseline_avg":1439.2,"bar_rvol":0.644108,"raw_accel":-0.40615,"smooth_accel":-0.442891,"accel_momentum":-0.016658,"rvol_3bar":[0.202909,1.045581,0.644108],"trend_3bar":"MIXED","projected_rvol":0.470499},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":110.0,"sell_vol":62.0,"unclassified_vol":0.0,"imbalance":0.27907,"bid":12.1,"ask":12.14,"spread_pct":0.330033,"quote_size_imbalance":null,"quote_age_s":33.49428},"context":{"vwap":12.097679,"price_vs_vwap_pct":0.349831,"ema9":12.125176,"ema20":12.126824,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-3.879652,"dist_to_hod_atr":15.870425,"atr":0.030875,"spread_atr":1.295545,"own_change_pct":-0.145004,"rel_strength_pct":{"SPY":-0.177361,"IWM":-0.182712}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.179751},"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":"9da09dddcb79","ts":"2026-09-15T17:12:35+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2664,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0613,"volatility":"medium"},"price":7.38,"volume":{"bars":222,"last_bar_volume":198347.0,"baseline_avg":258429.4,"bar_rvol":0.767509,"raw_accel":0.010135,"smooth_accel":-0.246737,"accel_momentum":-0.415377,"rvol_3bar":[0.455849,0.74329,0.767509],"trend_3bar":"ACCELERATING","projected_rvol":1.634496},"flow":{"window_s":30,"trades":172,"trade_rate":5.733333,"buy_vol":107503.0,"sell_vol":94181.0,"unclassified_vol":0.0,"imbalance":0.066054,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":1.677909},"context":{"vwap":7.265612,"price_vs_vwap_pct":1.574382,"ema9":7.386914,"ema20":7.384005,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.774068,"atr":0.028184,"spread_atr":0.354814,"own_change_pct":0.271003,"rel_strength_pct":{"SPY":0.238645,"IWM":0.233295}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.050697},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"afd185cc9efb","ts":"2026-09-15T17:12:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2664,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0884,"volatility":"medium"},"price":7.39,"volume":{"bars":222,"last_bar_volume":198347.0,"baseline_avg":258429.4,"bar_rvol":0.767509,"raw_accel":0.010135,"smooth_accel":-0.246737,"accel_momentum":-0.415377,"rvol_3bar":[0.455849,0.74329,0.767509],"trend_3bar":"ACCELERATING","projected_rvol":1.433753},"flow":{"window_s":30,"trades":160,"trade_rate":5.333333,"buy_vol":89624.0,"sell_vol":93777.0,"unclassified_vol":0.0,"imbalance":-0.022644,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":2.56635},"context":{"vwap":7.265612,"price_vs_vwap_pct":1.712017,"ema9":7.386914,"ema20":7.384005,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.419255,"atr":0.028184,"spread_atr":0.354814,"own_change_pct":0.271003,"rel_strength_pct":{"SPY":0.238645,"IWM":0.233295}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.01738},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ad8e26f8dc1b","ts":"2026-09-15T17:12:40+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.27 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0538,"target":11.44,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":21.8,"room_to_5d_high_atr":1.29},"price":11.2706,"vwap":11.2889,"ext_from_open_pct":0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.838,"trend":"flat","recent_slope_pct":0.0124,"volatility":"high"},"price":11.2706,"volume":{"bars":222,"last_bar_volume":100157.0,"baseline_avg":95312.95,"bar_rvol":1.050823,"raw_accel":-0.285333,"smooth_accel":-0.022489,"accel_momentum":-1.089242,"rvol_3bar":[1.044787,1.512111,1.050823],"trend_3bar":"MIXED","projected_rvol":0.87742},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":16458.0,"sell_vol":8741.0,"unclassified_vol":0.0,"imbalance":0.306242,"bid":11.27,"ask":11.28,"spread_pct":0.088692,"quote_size_imbalance":null,"quote_age_s":0.635518},"context":{"vwap":11.288943,"price_vs_vwap_pct":-0.162483,"ema9":11.310543,"ema20":11.33597,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.824042,"dist_to_hod_atr":5.263682,"atr":0.039782,"spread_atr":0.25137,"own_change_pct":-0.536758,"rel_strength_pct":{"SPY":-0.569115,"IWM":-0.574466}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.321806},"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":"52126202d705","ts":"2026-09-15T17:12:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 140.0s, plan says WATCH; stop 8.39, target 8.56 (premarket_high), R:R 0.90; R:R 0.90 < 2.0 at 8.48; breakout: 1-min close > 8.51 on >= 1598 sh","plan":{"state":"WATCH","setup":"","stop":8.3873,"target":8.5586,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":66.4,"room_to_5d_high_atr":0.81},"price":8.4774,"vwap":8.3583,"ext_from_open_pct":1.77,"max_ext_allowed_pct":3.0,"volume_pace":0.855,"trend":"flat","recent_slope_pct":0.0086,"volatility":"medium"},"price":8.4774,"volume":{"bars":222,"last_bar_volume":128.0,"baseline_avg":1275.2,"bar_rvol":0.100376,"raw_accel":-0.598494,"smooth_accel":-0.864638,"accel_momentum":-0.074322,"rvol_3bar":[0.187104,0.074664,0.100376],"trend_3bar":"MIXED","projected_rvol":0.62317},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":85.0,"sell_vol":503.0,"unclassified_vol":0.0,"imbalance":-0.710884,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":2.96236},"context":{"vwap":8.358074,"price_vs_vwap_pct":1.427679,"ema9":8.477663,"ema20":8.477128,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.265882,"dist_to_hod_atr":1.928376,"atr":0.01172,"spread_atr":0.853264,"own_change_pct":0.068459,"rel_strength_pct":{"SPY":0.036102,"IWM":0.030751}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.071356},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"209b2e8973bb","ts":"2026-09-15T17:12:45+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2664,"ext_from_open_pct":3.29,"max_ext_allowed_pct":4.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":0.0749,"volatility":"medium"},"price":7.385,"volume":{"bars":222,"last_bar_volume":198347.0,"baseline_avg":258429.4,"bar_rvol":0.767509,"raw_accel":0.010135,"smooth_accel":-0.246737,"accel_momentum":-0.415377,"rvol_3bar":[0.455849,0.74329,0.767509],"trend_3bar":"ACCELERATING","projected_rvol":1.274834},"flow":{"window_s":30,"trades":156,"trade_rate":5.2,"buy_vol":54152.0,"sell_vol":76782.0,"unclassified_vol":0.0,"imbalance":-0.172835,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.606016},"context":{"vwap":7.265612,"price_vs_vwap_pct":1.6432,"ema9":7.386914,"ema20":7.384005,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.596662,"atr":0.028184,"spread_atr":0.354814,"own_change_pct":0.271003,"rel_strength_pct":{"SPY":0.238645,"IWM":0.233295}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.132653},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1661c9a54fe7","ts":"2026-09-15T17:12:50+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"held 145.0s, plan says PASS; stop 8.38, target 8.56 (premarket_high), R:R 0.93; target 0.08 away > ~0.08 reachable in 162 min","plan":{"state":"PASS","setup":"","stop":8.3849,"target":8.5586,"target_label":"premarket_high","reward_risk":0.93,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.82},"price":8.475,"vwap":8.3583,"ext_from_open_pct":1.74,"max_ext_allowed_pct":3.0,"volume_pace":0.854,"trend":"flat","recent_slope_pct":0.0029,"volatility":"medium"},"price":8.475,"volume":{"bars":222,"last_bar_volume":128.0,"baseline_avg":1275.2,"bar_rvol":0.100376,"raw_accel":-0.598494,"smooth_accel":-0.864638,"accel_momentum":-0.074322,"rvol_3bar":[0.187104,0.074664,0.100376],"trend_3bar":"MIXED","projected_rvol":0.561794},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":85.0,"sell_vol":504.0,"unclassified_vol":0.0,"imbalance":-0.711375,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":7.96236},"context":{"vwap":8.358074,"price_vs_vwap_pct":1.398964,"ema9":8.477663,"ema20":8.477128,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.294118,"dist_to_hod_atr":2.133159,"atr":0.01172,"spread_atr":0.853264,"own_change_pct":0.068459,"rel_strength_pct":{"SPY":0.036102,"IWM":0.030751}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.071405},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f96577891416","ts":"2026-09-15T17:12:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7374,"target":14.19,"target_label":"range_20d_high","reward_risk":22.29,"pos_in_5d_range_pct":52.4,"room_to_5d_high_atr":1.03},"price":10.8856,"vwap":10.5474,"ext_from_open_pct":4.57,"max_ext_allowed_pct":4.0,"volume_pace":1.012,"trend":"flat","recent_slope_pct":0.0401,"volatility":"medium"},"price":10.8856,"volume":{"bars":222,"last_bar_volume":8147.0,"baseline_avg":40089.95,"bar_rvol":0.203218,"raw_accel":-0.71635,"smooth_accel":0.043251,"accel_momentum":-0.107391,"rvol_3bar":[0.494704,0.710047,0.203218],"trend_3bar":"MIXED","projected_rvol":0.210337},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":497.0,"sell_vol":593.0,"unclassified_vol":0.0,"imbalance":-0.088073,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":0.336767},"context":{"vwap":10.547,"price_vs_vwap_pct":3.210388,"ema9":10.871969,"ema20":10.844474,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.497258,"dist_to_hod_atr":0.865814,"atr":0.062831,"spread_atr":0.159157,"own_change_pct":0.046019,"rel_strength_pct":{"SPY":0.013662,"IWM":0.008311}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.017898},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0a18b77f73e3","ts":"2026-09-15T17:12:55+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2836,"target":7.47,"target_label":"prev_day_high","reward_risk":0.79,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.18},"price":7.388,"vwap":7.2664,"ext_from_open_pct":3.33,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":0.083,"volatility":"medium"},"price":7.388,"volume":{"bars":222,"last_bar_volume":198347.0,"baseline_avg":258429.4,"bar_rvol":0.767509,"raw_accel":0.010135,"smooth_accel":-0.246737,"accel_momentum":-0.415377,"rvol_3bar":[0.455849,0.74329,0.767509],"trend_3bar":"ACCELERATING","projected_rvol":1.061384},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":44474.0,"sell_vol":68488.0,"unclassified_vol":0.0,"imbalance":-0.212585,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.225254},"context":{"vwap":7.265612,"price_vs_vwap_pct":1.68449,"ema9":7.386914,"ema20":7.384005,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.565276,"dist_to_hod_atr":1.490217,"atr":0.028184,"spread_atr":0.354814,"own_change_pct":0.271003,"rel_strength_pct":{"SPY":0.238645,"IWM":0.233295}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.163161},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6d40de67ae2d","ts":"2026-09-15T17:13:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7068,"target":10.935,"target_label":"prev_day_high","reward_risk":0.54,"pos_in_5d_range_pct":50.0,"room_to_5d_high_atr":1.09},"price":10.855,"vwap":10.5474,"ext_from_open_pct":4.27,"max_ext_allowed_pct":3.0,"volume_pace":1.011,"trend":"flat","recent_slope_pct":-0.0162,"volatility":"medium"},"price":10.855,"volume":{"bars":222,"last_bar_volume":8147.0,"baseline_avg":40089.95,"bar_rvol":0.203218,"raw_accel":-0.71635,"smooth_accel":0.043251,"accel_momentum":-0.107391,"rvol_3bar":[0.494704,0.710047,0.203218],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":775.0,"sell_vol":536.0,"unclassified_vol":0.0,"imbalance":0.182304,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":0.10493},"context":{"vwap":10.547,"price_vs_vwap_pct":2.920258,"ema9":10.871969,"ema20":10.844474,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.776965,"dist_to_hod_atr":1.352834,"atr":0.062831,"spread_atr":0.159157,"own_change_pct":0.046019,"rel_strength_pct":{"SPY":0.061864,"IWM":0.081082}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.037047},"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":"6f8c0870ffe3","ts":"2026-09-15T17:13:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2664,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":0.0749,"volatility":"medium"},"price":7.385,"volume":{"bars":222,"last_bar_volume":198347.0,"baseline_avg":258429.4,"bar_rvol":0.767509,"raw_accel":0.010135,"smooth_accel":-0.246737,"accel_momentum":-0.415377,"rvol_3bar":[0.455849,0.74329,0.767509],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":19170.0,"sell_vol":46456.0,"unclassified_vol":0.0,"imbalance":-0.41578,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.951472},"context":{"vwap":7.265612,"price_vs_vwap_pct":1.6432,"ema9":7.386914,"ema20":7.384005,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.596662,"atr":0.028184,"spread_atr":0.354814,"own_change_pct":0.271003,"rel_strength_pct":{"SPY":0.286847,"IWM":0.306066}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.319115},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f02ef4b0b50d","ts":"2026-09-15T17:13:00+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 295.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.09; target 0.13 away > ~0.10 reachable in 162 min","plan":{"state":"PASS","setup":"","stop":5.4178,"target":5.61,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4089,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":-0.0066,"volatility":"medium"},"price":5.48,"volume":{"bars":222,"last_bar_volume":7321.0,"baseline_avg":77844.95,"bar_rvol":0.094046,"raw_accel":-0.689512,"smooth_accel":0.035246,"accel_momentum":-0.465862,"rvol_3bar":[0.982468,0.292891,0.094046],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1313.0,"sell_vol":5043.0,"unclassified_vol":0.0,"imbalance":-0.586847,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":0.947251},"context":{"vwap":5.408813,"price_vs_vwap_pct":1.316138,"ema9":5.476122,"ema20":5.475172,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":2.656583,"atr":0.02635,"spread_atr":0.379512,"own_change_pct":0.285714,"rel_strength_pct":{"SPY":0.301559,"IWM":0.320777}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.055191},"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":"f62c4ccde045","ts":"2026-09-15T17:13:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7721,"target":7.91,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":73.4,"room_to_5d_high_atr":0.41},"price":7.86,"vwap":7.7512,"ext_from_open_pct":2.08,"max_ext_allowed_pct":3.0,"volume_pace":0.569,"trend":"flat","recent_slope_pct":0.0022,"volatility":"medium"},"price":7.86,"volume":{"bars":223,"last_bar_volume":6931.0,"baseline_avg":14042.5,"bar_rvol":0.493573,"raw_accel":-0.282654,"smooth_accel":0.327058,"accel_momentum":0.056283,"rvol_3bar":[0.654018,0.585347,0.493573],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":3527.0,"sell_vol":617.0,"unclassified_vol":0.0,"imbalance":0.70222,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.670126},"context":{"vwap":7.751121,"price_vs_vwap_pct":1.404685,"ema9":7.862263,"ema20":7.857945,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.380228,"dist_to_hod_atr":1.440266,"atr":0.020829,"spread_atr":0.480089,"own_change_pct":-0.360402,"rel_strength_pct":{"SPY":-0.344557,"IWM":-0.325338}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.346597},"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":"b5a68feb91f7","ts":"2026-09-15T17:13:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2858,"target":7.47,"target_label":"prev_day_high","reward_risk":0.76,"pos_in_5d_range_pct":45.0,"room_to_5d_high_atr":1.17},"price":7.3902,"vwap":7.2665,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":0.0083,"volatility":"medium"},"price":7.3902,"volume":{"bars":223,"last_bar_volume":267591.0,"baseline_avg":251454.05,"bar_rvol":1.064175,"raw_accel":0.349105,"smooth_accel":-0.166813,"accel_momentum":0.079924,"rvol_3bar":[0.74329,0.767509,1.064175],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":18558.0,"sell_vol":20146.0,"unclassified_vol":0.0,"imbalance":-0.041029,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.010233},"context":{"vwap":7.266431,"price_vs_vwap_pct":1.7033,"ema9":7.386531,"ema20":7.3841,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.535666,"dist_to_hod_atr":1.442068,"atr":0.027599,"spread_atr":0.362329,"own_change_pct":0.067751,"rel_strength_pct":{"SPY":0.083595,"IWM":0.102814}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.043662},"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":"e26172a8ef16","ts":"2026-09-15T17:13:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.72; selling not fading: red-bar volume 1.02x the advance (max 0.7); imbalance -90% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":5.4128,"target":5.52,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.67},"price":5.475,"vwap":5.4089,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":0.0174,"volatility":"medium"},"price":5.475,"volume":{"bars":223,"last_bar_volume":25207.0,"baseline_avg":74352.85,"bar_rvol":0.339019,"raw_accel":0.356074,"smooth_accel":-0.677387,"accel_momentum":-0.712633,"rvol_3bar":[0.292891,0.094046,0.339019],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":727.0,"sell_vol":2135.0,"unclassified_vol":0.0,"imbalance":-0.491964,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":2.213743},"context":{"vwap":5.408943,"price_vs_vwap_pct":1.221249,"ema9":5.476898,"ema20":5.475632,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":2.954041,"atr":0.025389,"spread_atr":0.393872,"own_change_pct":0.190142,"rel_strength_pct":{"SPY":0.205987,"IWM":0.225205}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.166785},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ebfeaecc67a8","ts":"2026-09-15T17:13:10+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2665,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0058,"volatility":"medium"},"price":7.385,"volume":{"bars":223,"last_bar_volume":267591.0,"baseline_avg":251454.05,"bar_rvol":1.064175,"raw_accel":0.349105,"smooth_accel":-0.166813,"accel_momentum":0.079924,"rvol_3bar":[0.74329,0.767509,1.064175],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":18943.0,"sell_vol":20161.0,"unclassified_vol":0.0,"imbalance":-0.031148,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.959683},"context":{"vwap":7.266431,"price_vs_vwap_pct":1.631738,"ema9":7.386531,"ema20":7.3841,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.630479,"atr":0.027599,"spread_atr":0.362329,"own_change_pct":0.067751,"rel_strength_pct":{"SPY":0.083595,"IWM":0.102814}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.033147},"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":"56f71f64073e","ts":"2026-09-15T17:13:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2666,"ext_from_open_pct":3.43,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":0.0212,"volatility":"medium"},"price":7.395,"volume":{"bars":223,"last_bar_volume":267591.0,"baseline_avg":251454.05,"bar_rvol":1.064175,"raw_accel":0.349105,"smooth_accel":-0.166813,"accel_momentum":0.079924,"rvol_3bar":[0.74329,0.767509,1.064175],"trend_3bar":"ACCELERATING","projected_rvol":0.493056},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":40607.0,"sell_vol":20260.0,"unclassified_vol":0.0,"imbalance":0.334286,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.199335},"context":{"vwap":7.266431,"price_vs_vwap_pct":1.769357,"ema9":7.386531,"ema20":7.3841,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.471063,"dist_to_hod_atr":1.26815,"atr":0.027599,"spread_atr":0.362329,"own_change_pct":0.067751,"rel_strength_pct":{"SPY":0.083595,"IWM":0.102814}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.355739},"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":"e8e91eff4d34","ts":"2026-09-15T17:13:25+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7274,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.5,"room_to_5d_high_atr":2.76},"price":7.8457,"vwap":7.847,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":1.166,"trend":"flat","recent_slope_pct":-0.0281,"volatility":"high"},"price":7.8457,"volume":{"bars":223,"last_bar_volume":79.0,"baseline_avg":17945.85,"bar_rvol":0.004402,"raw_accel":-0.982391,"smooth_accel":-0.083472,"accel_momentum":-0.564368,"rvol_3bar":[1.457079,0.086698,0.004402],"trend_3bar":"DECELERATING","projected_rvol":3.441553},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":5214.0,"sell_vol":20525.0,"unclassified_vol":0.0,"imbalance":-0.594856,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.632404},"context":{"vwap":7.846961,"price_vs_vwap_pct":-0.016075,"ema9":7.854502,"ema20":7.84888,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.063052,"dist_to_hod_atr":4.488138,"atr":0.018783,"spread_atr":0.532401,"own_change_pct":0.08275,"rel_strength_pct":{"SPY":0.098595,"IWM":0.117813}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.002619},"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":"903719d8be40","ts":"2026-09-15T17:13:25+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 320.0s, plan says PASS; stop 5.42, target 5.61 (prev_day_high), R:R 2.07; target 0.13 away > ~0.10 reachable in 162 min","plan":{"state":"PASS","setup":"","stop":5.419,"target":5.61,"target_label":"prev_day_high","reward_risk":2.07,"pos_in_5d_range_pct":24.3,"room_to_5d_high_atr":1.64},"price":5.4812,"vwap":5.409,"ext_from_open_pct":0.39,"max_ext_allowed_pct":3.0,"volume_pace":0.777,"trend":"flat","recent_slope_pct":0.04,"volatility":"medium"},"price":5.4812,"volume":{"bars":223,"last_bar_volume":25207.0,"baseline_avg":74352.85,"bar_rvol":0.339019,"raw_accel":0.356074,"smooth_accel":-0.677387,"accel_momentum":-0.712633,"rvol_3bar":[0.292891,0.094046,0.339019],"trend_3bar":"MIXED","projected_rvol":0.235407},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":5341.0,"sell_vol":2510.0,"unclassified_vol":0.0,"imbalance":0.360591,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":1.604326},"context":{"vwap":5.408943,"price_vs_vwap_pct":1.335874,"ema9":5.476898,"ema20":5.475632,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.23964,"dist_to_hod_atr":2.70984,"atr":0.025389,"spread_atr":0.393872,"own_change_pct":0.190142,"rel_strength_pct":{"SPY":0.205987,"IWM":0.225205}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.122247},"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":"fbdce8d3fdba","ts":"2026-09-15T17:13:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2669,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0212,"volatility":"medium"},"price":7.395,"volume":{"bars":223,"last_bar_volume":267591.0,"baseline_avg":251454.05,"bar_rvol":1.064175,"raw_accel":0.349105,"smooth_accel":-0.166813,"accel_momentum":0.079924,"rvol_3bar":[0.74329,0.767509,1.064175],"trend_3bar":"ACCELERATING","projected_rvol":1.292133},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":133324.0,"sell_vol":29132.0,"unclassified_vol":0.0,"imbalance":0.641355,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.168444},"context":{"vwap":7.266431,"price_vs_vwap_pct":1.769357,"ema9":7.386531,"ema20":7.3841,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.471063,"dist_to_hod_atr":1.26815,"atr":0.027599,"spread_atr":0.362329,"own_change_pct":0.067751,"rel_strength_pct":{"SPY":0.083595,"IWM":0.102814}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.682514},"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":"d2f80c7d2b16","ts":"2026-09-15T17:13:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"held 325.0s, plan says WATCH; stop 5.41, target 5.52 (ceiling), R:R 0.72; selling not fading: red-bar volume 1.02x the advance (max 0.7); imbalance -64% still heavy selling; no reclaim yet (needs a cl","plan":{"state":"WATCH","setup":"","stop":5.4128,"target":5.52,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":23.1,"room_to_5d_high_atr":1.67},"price":5.475,"vwap":5.409,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.777,"trend":"flat","recent_slope_pct":0.0174,"volatility":"medium"},"price":5.475,"volume":{"bars":223,"last_bar_volume":25207.0,"baseline_avg":74352.85,"bar_rvol":0.339019,"raw_accel":0.356074,"smooth_accel":-0.677387,"accel_momentum":-0.712633,"rvol_3bar":[0.292891,0.094046,0.339019],"trend_3bar":"MIXED","projected_rvol":0.286768},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":8504.0,"sell_vol":2157.0,"unclassified_vol":0.0,"imbalance":0.595348,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":2.749399},"context":{"vwap":5.408943,"price_vs_vwap_pct":1.221249,"ema9":5.476898,"ema20":5.475632,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.351351,"dist_to_hod_atr":2.954041,"atr":0.025389,"spread_atr":0.393872,"own_change_pct":0.190142,"rel_strength_pct":{"SPY":0.205987,"IWM":0.225205}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.201834},"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":"8dc784067db7","ts":"2026-09-15T17:13:40+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7467,"target":7.91,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.72},"price":7.865,"vwap":7.8471,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":1.165,"trend":"flat","recent_slope_pct":0.021,"volatility":"high"},"price":7.865,"volume":{"bars":223,"last_bar_volume":79.0,"baseline_avg":17945.85,"bar_rvol":0.004402,"raw_accel":-0.982391,"smooth_accel":-0.083472,"accel_momentum":-0.564368,"rvol_3bar":[1.457079,0.086698,0.004402],"trend_3bar":"DECELERATING","projected_rvol":2.152392},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":349.0,"sell_vol":511.0,"unclassified_vol":0.0,"imbalance":-0.188372,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":9.67382},"context":{"vwap":7.846961,"price_vs_vwap_pct":0.22988,"ema9":7.854502,"ema20":7.84888,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.819672,"dist_to_hod_atr":3.460604,"atr":0.018783,"spread_atr":0.532401,"own_change_pct":0.08275,"rel_strength_pct":{"SPY":0.098595,"IWM":0.117813}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.000829},"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":"a426aeb4d754","ts":"2026-09-15T17:14:10+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.359,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.854,"trend":"flat","recent_slope_pct":-0.027,"volatility":"medium"},"price":8.47,"volume":{"bars":224,"last_bar_volume":229.0,"baseline_avg":1275.6,"bar_rvol":0.179523,"raw_accel":-0.617696,"smooth_accel":-0.087786,"accel_momentum":0.67156,"rvol_3bar":[0.100376,0.478855,0.179523],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":327.0,"sell_vol":1229.0,"unclassified_vol":0.0,"imbalance":-0.579692,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.346527},"context":{"vwap":8.358402,"price_vs_vwap_pct":1.335163,"ema9":8.476724,"ema20":8.476751,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":2.76208,"atr":0.010861,"spread_atr":0.920693,"own_change_pct":-0.030669,"rel_strength_pct":{"SPY":-0.034446,"IWM":-0.034176}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.104068},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d52728808621","ts":"2026-09-15T17:14:15+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"holding 5.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.4178,"target":5.61,"target_label":"prev_day_high","reward_risk":2.09,"pos_in_5d_range_pct":24.1,"room_to_5d_high_atr":1.65},"price":5.48,"vwap":5.4089,"ext_from_open_pct":0.37,"max_ext_allowed_pct":3.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":0.0274,"volatility":"medium"},"price":5.48,"volume":{"bars":224,"last_bar_volume":12105.0,"baseline_avg":71157.85,"bar_rvol":0.170115,"raw_accel":-0.519776,"smooth_accel":-0.755001,"accel_momentum":-0.077614,"rvol_3bar":[0.094046,0.339019,0.170115],"trend_3bar":"MIXED","projected_rvol":0.063802},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":157.0,"sell_vol":1292.0,"unclassified_vol":0.0,"imbalance":-0.783299,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":1.767299},"context":{"vwap":5.40893,"price_vs_vwap_pct":1.313933,"ema9":5.475838,"ema20":5.475248,"ema_stack":true,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.261261,"dist_to_hod_atr":1.683107,"atr":0.04159,"spread_atr":0.240444,"own_change_pct":-0.191532,"rel_strength_pct":{"SPY":-0.195309,"IWM":-0.19504}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.133251},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"03b414dda1ab","ts":"2026-09-15T17:14:20+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.4078,"target":5.52,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":1.69},"price":5.47,"vwap":5.4089,"ext_from_open_pct":0.18,"max_ext_allowed_pct":3.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"medium"},"price":5.47,"volume":{"bars":224,"last_bar_volume":12105.0,"baseline_avg":71157.85,"bar_rvol":0.170115,"raw_accel":-0.519776,"smooth_accel":-0.755001,"accel_momentum":-0.077614,"rvol_3bar":[0.094046,0.339019,0.170115],"trend_3bar":"MIXED","projected_rvol":0.08179},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":257.0,"sell_vol":1896.0,"unclassified_vol":0.0,"imbalance":-0.761263,"bid":5.47,"ask":5.48,"spread_pct":0.182648,"quote_size_imbalance":null,"quote_age_s":1.339924},"context":{"vwap":5.40893,"price_vs_vwap_pct":1.129054,"ema9":5.475838,"ema20":5.475248,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.441441,"dist_to_hod_atr":1.923551,"atr":0.04159,"spread_atr":0.240444,"own_change_pct":-0.191532,"rel_strength_pct":{"SPY":-0.195309,"IWM":-0.19504}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.129502},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"92f66ce2af2c","ts":"2026-09-15T17:14:30+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2675,"ext_from_open_pct":3.43,"max_ext_allowed_pct":3.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0138,"volatility":"medium"},"price":7.395,"volume":{"bars":224,"last_bar_volume":175440.0,"baseline_avg":251015.7,"bar_rvol":0.69892,"raw_accel":-0.344373,"smooth_accel":0.13378,"accel_momentum":0.300593,"rvol_3bar":[0.767509,1.064175,0.69892],"trend_3bar":"MIXED","projected_rvol":1.221987},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":114443.0,"sell_vol":38926.0,"unclassified_vol":0.0,"imbalance":0.492388,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.046387},"context":{"vwap":7.266984,"price_vs_vwap_pct":1.761611,"ema9":7.389225,"ema20":7.385614,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.471063,"dist_to_hod_atr":1.293592,"atr":0.027056,"spread_atr":0.369598,"own_change_pct":0.475221,"rel_strength_pct":{"SPY":0.471444,"IWM":0.471713}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.34414},"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":"71541c794a0c","ts":"2026-09-15T17:14:45+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7,"target":13.2,"target_label":"ceiling","reward_risk":1.27,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.15},"price":12.92,"vwap":12.9015,"ext_from_open_pct":-1.0,"max_ext_allowed_pct":3.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":-0.2023,"volatility":"medium"},"price":12.92,"volume":{"bars":223,"last_bar_volume":25.0,"baseline_avg":1522.0,"bar_rvol":0.016426,"raw_accel":-0.934297,"smooth_accel":-0.792208,"accel_momentum":-0.084197,"rvol_3bar":[0.024883,0.029097,0.016426],"trend_3bar":"MIXED","projected_rvol":0.118265},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":12.91,"ask":13.02,"spread_pct":0.848438,"quote_size_imbalance":null,"quote_age_s":19.294965},"context":{"vwap":12.901437,"price_vs_vwap_pct":0.143885,"ema9":13.010158,"ema20":13.042012,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.930128,"dist_to_hod_atr":6.974493,"atr":0.055918,"spread_atr":1.967165,"own_change_pct":-0.19253,"rel_strength_pct":{"SPY":-0.196307,"IWM":-0.196037}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.016426},"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":"a4692906d7af","ts":"2026-09-15T17:14:50+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.06 below VWAP $12.10","plan":{"state":"PASS","setup":"","stop":11.8484,"target":12.18,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":7.6,"room_to_5d_high_atr":2.16},"price":12.06,"vwap":12.0977,"ext_from_open_pct":-3.44,"max_ext_allowed_pct":3.0,"volume_pace":0.618,"trend":"flat","recent_slope_pct":-0.1117,"volatility":"high"},"price":12.06,"volume":{"bars":224,"last_bar_volume":335.0,"baseline_avg":1312.2,"bar_rvol":0.255296,"raw_accel":-0.394213,"smooth_accel":-0.336138,"accel_momentum":0.032557,"rvol_3bar":[0.644108,0.409614,0.255296],"trend_3bar":"DECELERATING","projected_rvol":2.267947},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":16.0,"sell_vol":1943.0,"unclassified_vol":0.0,"imbalance":-0.983665,"bid":12.06,"ask":12.11,"spread_pct":0.413736,"quote_size_imbalance":null,"quote_age_s":1.335493},"context":{"vwap":12.097722,"price_vs_vwap_pct":-0.311814,"ema9":12.121073,"ema20":12.12432,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.513064,"dist_to_hod_atr":17.739298,"atr":0.032132,"spread_atr":1.556079,"own_change_pct":0.122213,"rel_strength_pct":{"SPY":0.118436,"IWM":0.118706}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.251126},"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":"a80715dcd919","ts":"2026-09-15T17:14:55+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2676,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0138,"volatility":"medium"},"price":7.395,"volume":{"bars":224,"last_bar_volume":175440.0,"baseline_avg":251015.7,"bar_rvol":0.69892,"raw_accel":-0.344373,"smooth_accel":0.13378,"accel_momentum":0.300593,"rvol_3bar":[0.767509,1.064175,0.69892],"trend_3bar":"MIXED","projected_rvol":0.853468},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":25309.0,"sell_vol":34152.0,"unclassified_vol":0.0,"imbalance":-0.148719,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.935493},"context":{"vwap":7.266984,"price_vs_vwap_pct":1.761611,"ema9":7.389225,"ema20":7.385614,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.471063,"dist_to_hod_atr":1.293592,"atr":0.027056,"spread_atr":0.369598,"own_change_pct":0.475221,"rel_strength_pct":{"SPY":0.471444,"IWM":0.471713}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.103943},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"64019b44e1d2","ts":"2026-09-15T17:15:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2956,"target":7.47,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":46.1,"room_to_5d_high_atr":1.15},"price":7.4,"vwap":7.2677,"ext_from_open_pct":3.5,"max_ext_allowed_pct":3.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0273,"volatility":"medium"},"price":7.4,"volume":{"bars":224,"last_bar_volume":175440.0,"baseline_avg":251015.7,"bar_rvol":0.69892,"raw_accel":-0.344373,"smooth_accel":0.13378,"accel_momentum":0.300593,"rvol_3bar":[0.767509,1.064175,0.69892],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":38632.0,"sell_vol":32349.0,"unclassified_vol":0.0,"imbalance":0.088517,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.619032},"context":{"vwap":7.266984,"price_vs_vwap_pct":1.830416,"ema9":7.389225,"ema20":7.385614,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.403769,"dist_to_hod_atr":1.108793,"atr":0.027056,"spread_atr":0.369598,"own_change_pct":0.475221,"rel_strength_pct":{"SPY":0.494369,"IWM":0.485744}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.061866},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a5fe9d8a4323","ts":"2026-09-15T17:15:05+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.408,"target":8.675,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":3.62},"price":8.5992,"vwap":8.4067,"ext_from_open_pct":2.74,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0121,"volatility":"high"},"price":8.5992,"volume":{"bars":225,"last_bar_volume":74777.0,"baseline_avg":99654.3,"bar_rvol":0.750364,"raw_accel":0.968437,"smooth_accel":-0.53981,"accel_momentum":-0.265455,"rvol_3bar":[0.191086,0.380791,0.750364],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":124,"trade_rate":4.133333,"buy_vol":38778.0,"sell_vol":26341.0,"unclassified_vol":0.0,"imbalance":0.190989,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":1.070977},"context":{"vwap":8.406269,"price_vs_vwap_pct":2.29508,"ema9":8.600867,"ema20":8.602099,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.873775,"dist_to_hod_atr":1.922149,"atr":0.039435,"spread_atr":0.253582,"own_change_pct":0.100116,"rel_strength_pct":{"SPY":0.119265,"IWM":0.110639}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.143311},"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":"69b7d46bb620","ts":"2026-09-15T17:15:10+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3795,"target":8.5586,"target_label":"premarket_high","reward_risk":0.99,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.4696,"vwap":8.3593,"ext_from_open_pct":1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.853,"trend":"flat","recent_slope_pct":-0.0316,"volatility":"medium"},"price":8.4696,"volume":{"bars":225,"last_bar_volume":2363.0,"baseline_avg":1281.55,"bar_rvol":1.843861,"raw_accel":6.375444,"smooth_accel":5.832976,"accel_momentum":5.920763,"rvol_3bar":[0.478855,0.179523,1.843861],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":2.0,"sell_vol":21.0,"unclassified_vol":0.0,"imbalance":-0.826087,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.683796},"context":{"vwap":8.359261,"price_vs_vwap_pct":1.319956,"ema9":8.474379,"ema20":8.475632,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.357647,"dist_to_hod_atr":2.723005,"atr":0.011164,"spread_atr":0.895725,"own_change_pct":-0.060212,"rel_strength_pct":{"SPY":-0.041063,"IWM":-0.049689}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.523189},"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":"4c939ff54ec8","ts":"2026-09-15T17:15:35+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.3978,"target":5.52,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":1.73},"price":5.46,"vwap":5.4091,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0753,"volatility":"medium"},"price":5.46,"volume":{"bars":225,"last_bar_volume":12917.0,"baseline_avg":68331.45,"bar_rvol":0.189034,"raw_accel":-0.243862,"smooth_accel":-0.564415,"accel_momentum":0.190585,"rvol_3bar":[0.339019,0.170115,0.189034],"trend_3bar":"MIXED","projected_rvol":0.665178},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":15831.0,"sell_vol":2580.0,"unclassified_vol":0.0,"imbalance":0.719733,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.502466},"context":{"vwap":5.408991,"price_vs_vwap_pct":0.943036,"ema9":5.474671,"ema20":5.474748,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.621622,"dist_to_hod_atr":2.267547,"atr":0.03969,"spread_atr":0.25195,"own_change_pct":-0.091324,"rel_strength_pct":{"SPY":-0.072175,"IWM":-0.080801}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.136054},"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":"7a96e93e8bfb","ts":"2026-09-15T17:15:40+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.4078,"target":5.52,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":1.69},"price":5.47,"vwap":5.4091,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0387,"volatility":"medium"},"price":5.47,"volume":{"bars":225,"last_bar_volume":12917.0,"baseline_avg":68331.45,"bar_rvol":0.189034,"raw_accel":-0.243862,"smooth_accel":-0.564415,"accel_momentum":0.190585,"rvol_3bar":[0.339019,0.170115,0.189034],"trend_3bar":"MIXED","projected_rvol":0.618054},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":11094.0,"sell_vol":3474.0,"unclassified_vol":0.0,"imbalance":0.523064,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.154294},"context":{"vwap":5.408991,"price_vs_vwap_pct":1.127914,"ema9":5.474671,"ema20":5.474748,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.441441,"dist_to_hod_atr":2.015597,"atr":0.03969,"spread_atr":0.25195,"own_change_pct":-0.091324,"rel_strength_pct":{"SPY":-0.072175,"IWM":-0.080801}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.098877},"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":"e811b65430bc","ts":"2026-09-15T17:15:45+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":5.3978,"target":5.52,"target_label":"ceiling","reward_risk":0.96,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":1.73},"price":5.46,"vwap":5.4091,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0753,"volatility":"medium"},"price":5.46,"volume":{"bars":225,"last_bar_volume":12917.0,"baseline_avg":68331.45,"bar_rvol":0.189034,"raw_accel":-0.243862,"smooth_accel":-0.564415,"accel_momentum":0.190585,"rvol_3bar":[0.339019,0.170115,0.189034],"trend_3bar":"MIXED","projected_rvol":0.659628},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":16390.0,"sell_vol":3772.0,"unclassified_vol":0.0,"imbalance":0.625831,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.644749},"context":{"vwap":5.408991,"price_vs_vwap_pct":0.943036,"ema9":5.474671,"ema20":5.474748,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.621622,"dist_to_hod_atr":2.267547,"atr":0.03969,"spread_atr":0.25195,"own_change_pct":-0.091324,"rel_strength_pct":{"SPY":-0.072175,"IWM":-0.080801}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.118304},"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":"393e7e0038ce","ts":"2026-09-15T17:15:50+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.2906,"target":7.47,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":45.5,"room_to_5d_high_atr":1.16},"price":7.395,"vwap":7.2682,"ext_from_open_pct":3.43,"max_ext_allowed_pct":4.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":0.0068,"volatility":"medium"},"price":7.395,"volume":{"bars":225,"last_bar_volume":224350.0,"baseline_avg":254667.25,"bar_rvol":0.880953,"raw_accel":0.278785,"smooth_accel":0.283795,"accel_momentum":0.150016,"rvol_3bar":[1.064175,0.69892,0.880953],"trend_3bar":"MIXED","projected_rvol":0.820308},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":106672.0,"sell_vol":38455.0,"unclassified_vol":0.0,"imbalance":0.47005,"bid":7.39,"ask":7.4,"spread_pct":0.135227,"quote_size_imbalance":null,"quote_age_s":0.076961},"context":{"vwap":7.267692,"price_vs_vwap_pct":1.751695,"ema9":7.39138,"ema20":7.386984,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.471063,"dist_to_hod_atr":1.333574,"atr":0.026245,"spread_atr":0.381021,"own_change_pct":0.207185,"rel_strength_pct":{"SPY":0.226334,"IWM":0.217708}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.414093},"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":"b1179e43ed3e","ts":"2026-09-15T17:15:50+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.4077,"target":5.52,"target_label":"ceiling","reward_risk":0.81,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":1.69},"price":5.4699,"vwap":5.4091,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0391,"volatility":"medium"},"price":5.4699,"volume":{"bars":225,"last_bar_volume":12917.0,"baseline_avg":68331.45,"bar_rvol":0.189034,"raw_accel":-0.243862,"smooth_accel":-0.564415,"accel_momentum":0.190585,"rvol_3bar":[0.339019,0.170115,0.189034],"trend_3bar":"MIXED","projected_rvol":0.616741},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":13153.0,"sell_vol":2378.0,"unclassified_vol":0.0,"imbalance":0.693774,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.934676},"context":{"vwap":5.408991,"price_vs_vwap_pct":1.126065,"ema9":5.474671,"ema20":5.474748,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.443243,"dist_to_hod_atr":2.018116,"atr":0.03969,"spread_atr":0.25195,"own_change_pct":-0.091324,"rel_strength_pct":{"SPY":-0.072175,"IWM":-0.080801}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.131147},"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":"e0dd8acbfbb9","ts":"2026-09-15T17:16:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7049,"target":13.2,"target_label":"ceiling","reward_risk":1.06,"pos_in_5d_range_pct":46.3,"room_to_5d_high_atr":1.11},"price":12.9449,"vwap":12.9015,"ext_from_open_pct":-0.81,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":-0.0542,"volatility":"medium"},"price":12.9449,"volume":{"bars":225,"last_bar_volume":290.0,"baseline_avg":1418.0,"bar_rvol":0.204513,"raw_accel":-0.181946,"smooth_accel":1.59292,"accel_momentum":1.507206,"rvol_3bar":[0.016426,0.181241,0.204513],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":1.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":-0.6,"bid":12.9,"ask":13.02,"spread_pct":0.925926,"quote_size_imbalance":null,"quote_age_s":1.582841},"context":{"vwap":12.901534,"price_vs_vwap_pct":0.336132,"ema9":12.987333,"ema20":13.024751,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.74305,"dist_to_hod_atr":6.374424,"atr":0.057276,"spread_atr":2.095127,"own_change_pct":-0.592825,"rel_strength_pct":{"SPY":-0.541335,"IWM":-0.522706}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.122708},"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":"6664974ee8b7","ts":"2026-09-15T17:16:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7218,"target":10.935,"target_label":"prev_day_high","reward_risk":0.44,"pos_in_5d_range_pct":51.2,"room_to_5d_high_atr":1.06},"price":10.87,"vwap":10.5512,"ext_from_open_pct":4.42,"max_ext_allowed_pct":4.0,"volume_pace":1.009,"trend":"flat","recent_slope_pct":0.0378,"volatility":"medium"},"price":10.87,"volume":{"bars":226,"last_bar_volume":15391.0,"baseline_avg":27743.95,"bar_rvol":0.554752,"raw_accel":-0.443947,"smooth_accel":0.493663,"accel_momentum":0.485835,"rvol_3bar":[0.799727,0.938971,0.554752],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":5773.0,"sell_vol":1148.0,"unclassified_vol":0.0,"imbalance":0.668256,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":2.265257},"context":{"vwap":10.55116,"price_vs_vwap_pct":3.021849,"ema9":10.863363,"ema20":10.848586,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.639854,"dist_to_hod_atr":1.286518,"atr":0.05441,"spread_atr":0.183788,"own_change_pct":-0.126897,"rel_strength_pct":{"SPY":-0.075407,"IWM":-0.056778}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.370716},"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":"99424a4a0ca3","ts":"2026-09-15T17:16:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2687,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"medium"},"price":7.385,"volume":{"bars":226,"last_bar_volume":261236.0,"baseline_avg":248005.9,"bar_rvol":1.053346,"raw_accel":0.164413,"smooth_accel":-0.001916,"accel_momentum":-0.285711,"rvol_3bar":[0.69892,0.880953,1.053346],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":219,"trade_rate":7.3,"buy_vol":141853.0,"sell_vol":119457.0,"unclassified_vol":0.0,"imbalance":0.085707,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.047129},"context":{"vwap":7.268498,"price_vs_vwap_pct":1.602839,"ema9":7.392104,"ema20":7.387748,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.76823,"atr":0.025449,"spread_atr":0.39294,"own_change_pct":0.069013,"rel_strength_pct":{"SPY":0.120502,"IWM":0.139132}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.090279},"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":"093dec155831","ts":"2026-09-15T17:16:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.25,"pos_in_5d_range_pct":20.4,"room_to_5d_high_atr":1.73},"price":5.46,"vwap":5.4092,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.772,"trend":"flat","recent_slope_pct":-0.0852,"volatility":"medium"},"price":5.46,"volume":{"bars":226,"last_bar_volume":40447.0,"baseline_avg":67686.7,"bar_rvol":0.597562,"raw_accel":1.390248,"smooth_accel":0.16686,"accel_momentum":0.731275,"rvol_3bar":[0.170115,0.189034,0.597562],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":12365.0,"sell_vol":7494.0,"unclassified_vol":0.0,"imbalance":0.245279,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.040254},"context":{"vwap":5.409163,"price_vs_vwap_pct":0.93984,"ema9":5.472736,"ema20":5.47382,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.621622,"dist_to_hod_atr":2.38964,"atr":0.037663,"spread_atr":0.265516,"own_change_pct":-0.100539,"rel_strength_pct":{"SPY":-0.04905,"IWM":-0.03042}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.14657},"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":"02c16341e0b9","ts":"2026-09-15T17:16:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.33x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.32,"target":8.7933,"target_label":"clear air (typical 60-min move)","reward_risk":1.01,"pos_in_5d_range_pct":130.7,"room_to_5d_high_atr":-1.12},"price":8.5556,"vwap":8.1735,"ext_from_open_pct":11.69,"max_ext_allowed_pct":3.0,"volume_pace":0.325,"trend":"flat","recent_slope_pct":0.0596,"volatility":"high"},"price":8.5556,"volume":{"bars":225,"last_bar_volume":1803.0,"baseline_avg":1489.6,"bar_rvol":1.210392,"raw_accel":-0.14061,"smooth_accel":-0.660456,"accel_momentum":-0.05691,"rvol_3bar":[0.93968,1.49292,1.210392],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":46.0,"sell_vol":33.0,"unclassified_vol":0.0,"imbalance":0.164557,"bid":8.55,"ask":8.59,"spread_pct":0.466744,"quote_size_imbalance":null,"quote_age_s":12.743548},"context":{"vwap":8.173486,"price_vs_vwap_pct":4.675041,"ema9":8.500643,"ema20":8.439694,"ema_stack":true,"ema_warm":true,"hod":8.59,"dist_to_hod_pct":-0.400466,"dist_to_hod_atr":0.774953,"atr":0.04439,"spread_atr":0.901109,"own_change_pct":0.824499,"rel_strength_pct":{"SPY":0.875989,"IWM":0.894618}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.199178},"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":"57df2eb59b09","ts":"2026-09-15T17:16:20+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3594,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.849,"trend":"flat","recent_slope_pct":-0.0355,"volatility":"medium"},"price":8.465,"volume":{"bars":226,"last_bar_volume":78.0,"baseline_avg":1377.25,"bar_rvol":0.056635,"raw_accel":-0.966991,"smooth_accel":2.240291,"accel_momentum":-3.592685,"rvol_3bar":[0.179523,1.843861,0.056635],"trend_3bar":"MIXED","projected_rvol":0.538029},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":12.0,"sell_vol":235.0,"unclassified_vol":0.0,"imbalance":-0.902834,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":19.46767},"context":{"vwap":8.35929,"price_vs_vwap_pct":1.264584,"ema9":8.472503,"ema20":8.47462,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":3.21451,"atr":0.010888,"spread_atr":0.918431,"own_change_pct":-0.176887,"rel_strength_pct":{"SPY":-0.125398,"IWM":-0.106768}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.051132},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b0da1e58b4ce","ts":"2026-09-15T17:16:20+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4836,"target":12.72,"target_label":"premarket_high","reward_risk":0.08,"pos_in_5d_range_pct":16.2,"room_to_5d_high_atr":2.02},"price":12.7027,"vwap":12.6139,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.933,"trend":"flat","recent_slope_pct":-0.007,"volatility":"high"},"price":12.7027,"volume":{"bars":226,"last_bar_volume":5840.0,"baseline_avg":21827.5,"bar_rvol":0.267552,"raw_accel":-0.432293,"smooth_accel":-0.661011,"accel_momentum":-0.162853,"rvol_3bar":[0.095409,0.46973,0.267552],"trend_3bar":"MIXED","projected_rvol":0.034498},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":132.0,"sell_vol":663.0,"unclassified_vol":0.0,"imbalance":-0.667925,"bid":12.68,"ask":12.69,"spread_pct":0.078833,"quote_size_imbalance":null,"quote_age_s":0.098013},"context":{"vwap":12.613849,"price_vs_vwap_pct":0.704392,"ema9":12.700323,"ema20":12.695895,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.43702,"dist_to_hod_atr":6.840639,"atr":0.046385,"spread_atr":0.215589,"own_change_pct":-0.191263,"rel_strength_pct":{"SPY":-0.139774,"IWM":-0.121144}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.178705},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"627aef976a65","ts":"2026-09-15T17:16:35+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2689,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":0.0068,"volatility":"medium"},"price":7.39,"volume":{"bars":226,"last_bar_volume":261236.0,"baseline_avg":248005.9,"bar_rvol":1.053346,"raw_accel":0.164413,"smooth_accel":-0.001916,"accel_momentum":-0.285711,"rvol_3bar":[0.69892,0.880953,1.053346],"trend_3bar":"ACCELERATING","projected_rvol":1.03812},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":37583.0,"sell_vol":57525.0,"unclassified_vol":0.0,"imbalance":-0.209677,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":1.520922},"context":{"vwap":7.268498,"price_vs_vwap_pct":1.671629,"ema9":7.392104,"ema20":7.387748,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.57176,"atr":0.025449,"spread_atr":0.39294,"own_change_pct":0.069013,"rel_strength_pct":{"SPY":0.120502,"IWM":0.139132}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.220863},"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":"5df0b2afd9fa","ts":"2026-09-15T17:16:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2806,"target":7.43,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.19},"price":7.385,"vwap":7.2689,"ext_from_open_pct":3.29,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"medium"},"price":7.385,"volume":{"bars":226,"last_bar_volume":261236.0,"baseline_avg":248005.9,"bar_rvol":1.053346,"raw_accel":0.164413,"smooth_accel":-0.001916,"accel_momentum":-0.285711,"rvol_3bar":[0.69892,0.880953,1.053346],"trend_3bar":"ACCELERATING","projected_rvol":0.908573},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":29459.0,"sell_vol":33188.0,"unclassified_vol":0.0,"imbalance":-0.059524,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":1.564436},"context":{"vwap":7.268498,"price_vs_vwap_pct":1.602839,"ema9":7.392104,"ema20":7.387748,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.605653,"dist_to_hod_atr":1.76823,"atr":0.025449,"spread_atr":0.39294,"own_change_pct":0.069013,"rel_strength_pct":{"SPY":0.120502,"IWM":0.139132}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.062699},"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":"db82dd34a45a","ts":"2026-09-15T17:16:50+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2883,"target":7.47,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":45.2,"room_to_5d_high_atr":1.17},"price":7.3927,"vwap":7.269,"ext_from_open_pct":3.39,"max_ext_allowed_pct":3.0,"volume_pace":0.834,"trend":"flat","recent_slope_pct":0.0141,"volatility":"medium"},"price":7.3927,"volume":{"bars":226,"last_bar_volume":261236.0,"baseline_avg":248005.9,"bar_rvol":1.053346,"raw_accel":0.164413,"smooth_accel":-0.001916,"accel_momentum":-0.285711,"rvol_3bar":[0.69892,0.880953,1.053346],"trend_3bar":"ACCELERATING","projected_rvol":0.737958},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":21082.0,"sell_vol":26822.0,"unclassified_vol":0.0,"imbalance":-0.119823,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.085587},"context":{"vwap":7.268498,"price_vs_vwap_pct":1.708776,"ema9":7.392104,"ema20":7.387748,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.502019,"dist_to_hod_atr":1.465666,"atr":0.025449,"spread_atr":0.39294,"own_change_pct":0.069013,"rel_strength_pct":{"SPY":0.120502,"IWM":0.139132}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.126215},"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":"aaa19806bc29","ts":"2026-09-15T17:16:55+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2689,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.834,"trend":"flat","recent_slope_pct":-0.0203,"volatility":"medium"},"price":7.38,"volume":{"bars":226,"last_bar_volume":261236.0,"baseline_avg":248005.9,"bar_rvol":1.053346,"raw_accel":0.164413,"smooth_accel":-0.001916,"accel_momentum":-0.285711,"rvol_3bar":[0.69892,0.880953,1.053346],"trend_3bar":"ACCELERATING","projected_rvol":0.676},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":9796.0,"sell_vol":10613.0,"unclassified_vol":0.0,"imbalance":-0.040031,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.021039},"context":{"vwap":7.268498,"price_vs_vwap_pct":1.534049,"ema9":7.392104,"ema20":7.387748,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.9647,"atr":0.025449,"spread_atr":0.39294,"own_change_pct":0.069013,"rel_strength_pct":{"SPY":0.120502,"IWM":0.139132}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.042167},"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":"71a0579bc68b","ts":"2026-09-15T17:17:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.32,"target":8.7987,"target_label":"clear air (typical 60-min move)","reward_risk":0.99,"pos_in_5d_range_pct":130.8,"room_to_5d_high_atr":-1.13},"price":8.56,"vwap":8.1736,"ext_from_open_pct":11.75,"max_ext_allowed_pct":4.0,"volume_pace":0.324,"trend":"flat","recent_slope_pct":0.0509,"volatility":"high"},"price":8.56,"volume":{"bars":226,"last_bar_volume":276.0,"baseline_avg":1481.8,"bar_rvol":0.18626,"raw_accel":-0.846922,"smooth_accel":-0.718626,"accel_momentum":-0.05817,"rvol_3bar":[1.49292,1.210392,0.18626],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":251.0,"sell_vol":20.0,"unclassified_vol":0.0,"imbalance":0.852399,"bid":8.55,"ask":8.59,"spread_pct":0.466744,"quote_size_imbalance":null,"quote_age_s":67.743548},"context":{"vwap":8.173642,"price_vs_vwap_pct":4.726872,"ema9":8.515314,"ema20":8.452485,"ema_stack":true,"ema_warm":true,"hod":8.59,"dist_to_hod_pct":-0.349243,"dist_to_hod_atr":0.686873,"atr":0.043676,"spread_atr":0.91583,"own_change_pct":0.752056,"rel_strength_pct":{"SPY":0.798926,"IWM":0.802023}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.158768},"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":"36cd01d5da35","ts":"2026-09-15T17:17:20+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3823,"target":8.5586,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":65.8,"room_to_5d_high_atr":0.83},"price":8.4724,"vwap":8.3595,"ext_from_open_pct":1.71,"max_ext_allowed_pct":4.0,"volume_pace":0.847,"trend":"flat","recent_slope_pct":-0.0064,"volatility":"medium"},"price":8.4724,"volume":{"bars":227,"last_bar_volume":517.0,"baseline_avg":976.85,"bar_rvol":0.529252,"raw_accel":1.117009,"smooth_accel":2.094142,"accel_momentum":-0.146149,"rvol_3bar":[1.843861,0.056635,0.529252],"trend_3bar":"MIXED","projected_rvol":0.036853},"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.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.076783},"context":{"vwap":8.359477,"price_vs_vwap_pct":1.350836,"ema9":8.471003,"ema20":8.473703,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.324706,"dist_to_hod_atr":2.583826,"atr":0.010682,"spread_atr":0.936169,"own_change_pct":-0.153338,"rel_strength_pct":{"SPY":-0.106468,"IWM":-0.103372}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.299143},"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":"4eb6d6cfbf29","ts":"2026-09-15T17:17:25+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":8.3899,"target":8.5586,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":66.7,"room_to_5d_high_atr":0.8},"price":8.48,"vwap":8.3601,"ext_from_open_pct":1.8,"max_ext_allowed_pct":4.0,"volume_pace":0.851,"trend":"flat","recent_slope_pct":0.0116,"volatility":"medium"},"price":8.48,"volume":{"bars":227,"last_bar_volume":517.0,"baseline_avg":976.85,"bar_rvol":0.529252,"raw_accel":1.117009,"smooth_accel":2.094142,"accel_momentum":-0.146149,"rvol_3bar":[1.843861,0.056635,0.529252],"trend_3bar":"MIXED","projected_rvol":3.965399},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1463.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":0.812887,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.504554},"context":{"vwap":8.359477,"price_vs_vwap_pct":1.441751,"ema9":8.471003,"ema20":8.473703,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.235294,"dist_to_hod_atr":1.872338,"atr":0.010682,"spread_atr":0.936169,"own_change_pct":-0.153338,"rel_strength_pct":{"SPY":-0.106468,"IWM":-0.103372}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.430222},"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":"3856f4e87728","ts":"2026-09-15T17:17:35+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3826,"target":8.5586,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":65.8,"room_to_5d_high_atr":0.82},"price":8.4727,"vwap":8.3601,"ext_from_open_pct":1.71,"max_ext_allowed_pct":4.0,"volume_pace":0.85,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":8.4727,"volume":{"bars":227,"last_bar_volume":517.0,"baseline_avg":976.85,"bar_rvol":0.529252,"raw_accel":1.117009,"smooth_accel":2.094142,"accel_momentum":-0.146149,"rvol_3bar":[1.843861,0.056635,0.529252],"trend_3bar":"MIXED","projected_rvol":2.916664},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":1463.0,"sell_vol":199.0,"unclassified_vol":0.0,"imbalance":0.760529,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":0.532241},"context":{"vwap":8.359477,"price_vs_vwap_pct":1.354425,"ema9":8.471003,"ema20":8.473703,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.321176,"dist_to_hod_atr":2.555741,"atr":0.010682,"spread_atr":0.936169,"own_change_pct":-0.153338,"rel_strength_pct":{"SPY":-0.106468,"IWM":-0.103372}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.402512},"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":"93d0390846bf","ts":"2026-09-15T17:17:35+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.269,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0442,"volatility":"medium"},"price":7.39,"volume":{"bars":227,"last_bar_volume":155372.0,"baseline_avg":255422.95,"bar_rvol":0.608293,"raw_accel":-0.405243,"smooth_accel":-0.000655,"accel_momentum":0.001261,"rvol_3bar":[0.880953,1.053346,0.608293],"trend_3bar":"MIXED","projected_rvol":0.100197},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":11020.0,"sell_vol":3469.0,"unclassified_vol":0.0,"imbalance":0.521154,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.445516},"context":{"vwap":7.268956,"price_vs_vwap_pct":1.66522,"ema9":7.391143,"ema20":7.387705,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.596172,"atr":0.02506,"spread_atr":0.399043,"own_change_pct":-0.171622,"rel_strength_pct":{"SPY":-0.124752,"IWM":-0.121655}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.317014},"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":"849bb59b4d14","ts":"2026-09-15T17:17:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.269,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.832,"trend":"flat","recent_slope_pct":-0.0713,"volatility":"medium"},"price":7.38,"volume":{"bars":227,"last_bar_volume":155372.0,"baseline_avg":255422.95,"bar_rvol":0.608293,"raw_accel":-0.405243,"smooth_accel":-0.000655,"accel_momentum":0.001261,"rvol_3bar":[0.880953,1.053346,0.608293],"trend_3bar":"MIXED","projected_rvol":0.101649},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":11094.0,"sell_vol":5416.0,"unclassified_vol":0.0,"imbalance":0.343913,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":1.051213},"context":{"vwap":7.268956,"price_vs_vwap_pct":1.527649,"ema9":7.391143,"ema20":7.387705,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.995215,"atr":0.02506,"spread_atr":0.399043,"own_change_pct":-0.171622,"rel_strength_pct":{"SPY":-0.124752,"IWM":-0.121655}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.2092},"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":"c603cac40618","ts":"2026-09-15T17:17:55+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.4% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2856,"target":7.47,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.17},"price":7.39,"vwap":7.2691,"ext_from_open_pct":3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0442,"volatility":"medium"},"price":7.39,"volume":{"bars":227,"last_bar_volume":155372.0,"baseline_avg":255422.95,"bar_rvol":0.608293,"raw_accel":-0.405243,"smooth_accel":-0.000655,"accel_momentum":0.001261,"rvol_3bar":[0.880953,1.053346,0.608293],"trend_3bar":"MIXED","projected_rvol":0.181825},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":19790.0,"sell_vol":11106.0,"unclassified_vol":0.0,"imbalance":0.281072,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.581099},"context":{"vwap":7.268956,"price_vs_vwap_pct":1.66522,"ema9":7.391143,"ema20":7.387705,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.538358,"dist_to_hod_atr":1.596172,"atr":0.02506,"spread_atr":0.399043,"own_change_pct":-0.171622,"rel_strength_pct":{"SPY":-0.124752,"IWM":-0.121655}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.170974},"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":"d58b64bf1fee","ts":"2026-09-15T17:18:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2691,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0713,"volatility":"medium"},"price":7.38,"volume":{"bars":227,"last_bar_volume":155372.0,"baseline_avg":255422.95,"bar_rvol":0.608293,"raw_accel":-0.405243,"smooth_accel":-0.000655,"accel_momentum":0.001261,"rvol_3bar":[0.880953,1.053346,0.608293],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":18634.0,"sell_vol":11391.0,"unclassified_vol":0.0,"imbalance":0.241232,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.631902},"context":{"vwap":7.268956,"price_vs_vwap_pct":1.527649,"ema9":7.391143,"ema20":7.387705,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":1.995215,"atr":0.02506,"spread_atr":0.399043,"own_change_pct":-0.171622,"rel_strength_pct":{"SPY":-0.129362,"IWM":-0.150576}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.14674},"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":"72c13c9b69dc","ts":"2026-09-15T17:18:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":7.2842,"target":7.47,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.18},"price":7.3886,"vwap":7.2691,"ext_from_open_pct":3.34,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0511,"volatility":"medium"},"price":7.3886,"volume":{"bars":228,"last_bar_volume":44740.0,"baseline_avg":249462.0,"bar_rvol":0.179346,"raw_accel":-0.712046,"smooth_accel":-0.308719,"accel_momentum":-0.308064,"rvol_3bar":[1.053346,0.608293,0.179346],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":19240.0,"sell_vol":12449.0,"unclassified_vol":0.0,"imbalance":0.214301,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":0.842245},"context":{"vwap":7.269082,"price_vs_vwap_pct":1.644196,"ema9":7.388915,"ema20":7.386971,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.557201,"dist_to_hod_atr":1.709839,"atr":0.024213,"spread_atr":0.413004,"own_change_pct":-0.067705,"rel_strength_pct":{"SPY":-0.025446,"IWM":-0.04666}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.038434},"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":"037cb5afa8b9","ts":"2026-09-15T17:18:10+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $7.15 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2691,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0744,"volatility":"medium"},"price":7.38,"volume":{"bars":228,"last_bar_volume":44740.0,"baseline_avg":249462.0,"bar_rvol":0.179346,"raw_accel":-0.712046,"smooth_accel":-0.308719,"accel_momentum":-0.308064,"rvol_3bar":[1.053346,0.608293,0.179346],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":19164.0,"sell_vol":12343.0,"unclassified_vol":0.0,"imbalance":0.216492,"bid":7.38,"ask":7.39,"spread_pct":0.13541,"quote_size_imbalance":null,"quote_age_s":2.01478},"context":{"vwap":7.269082,"price_vs_vwap_pct":1.525887,"ema9":7.388915,"ema20":7.386971,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":2.065022,"atr":0.024213,"spread_atr":0.413004,"own_change_pct":-0.067705,"rel_strength_pct":{"SPY":-0.025446,"IWM":-0.04666}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.038827},"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":"ebed06cfca29","ts":"2026-09-15T17:18:10+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4826,"target":12.72,"target_label":"premarket_high","reward_risk":0.08,"pos_in_5d_range_pct":16.2,"room_to_5d_high_atr":2.02},"price":12.7017,"vwap":12.6139,"ext_from_open_pct":1.61,"max_ext_allowed_pct":4.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":0.01,"volatility":"high"},"price":12.7017,"volume":{"bars":228,"last_bar_volume":2429.0,"baseline_avg":17829.0,"bar_rvol":0.136239,"raw_accel":-0.455045,"smooth_accel":-0.585592,"accel_momentum":0.01377,"rvol_3bar":[0.267552,0.089186,0.136239],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1072.0,"sell_vol":219.0,"unclassified_vol":0.0,"imbalance":0.660728,"bid":12.68,"ask":12.69,"spread_pct":0.078833,"quote_size_imbalance":null,"quote_age_s":0.854406},"context":{"vwap":12.613922,"price_vs_vwap_pct":0.695885,"ema9":12.695007,"ema20":12.693964,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.4447,"dist_to_hod_atr":7.126915,"atr":0.044662,"spread_atr":0.223906,"own_change_pct":-0.039386,"rel_strength_pct":{"SPY":0.002874,"IWM":-0.01834}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.090017},"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":"9aec08236e4e","ts":"2026-09-15T17:18:40+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.2867,"target":7.47,"target_label":"prev_day_high","reward_risk":0.76,"pos_in_5d_range_pct":45.1,"room_to_5d_high_atr":1.17},"price":7.3911,"vwap":7.2694,"ext_from_open_pct":3.37,"max_ext_allowed_pct":4.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0444,"volatility":"medium"},"price":7.3911,"volume":{"bars":228,"last_bar_volume":44740.0,"baseline_avg":249462.0,"bar_rvol":0.179346,"raw_accel":-0.712046,"smooth_accel":-0.308719,"accel_momentum":-0.308064,"rvol_3bar":[1.053346,0.608293,0.179346],"trend_3bar":"DECELERATING","projected_rvol":0.577747},"flow":{"window_s":30,"trades":143,"trade_rate":4.766667,"buy_vol":25877.0,"sell_vol":66131.0,"unclassified_vol":0.0,"imbalance":-0.437505,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":1.1788},"context":{"vwap":7.269082,"price_vs_vwap_pct":1.678588,"ema9":7.388915,"ema20":7.386971,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.523553,"dist_to_hod_atr":1.606587,"atr":0.024213,"spread_atr":0.413004,"own_change_pct":-0.067705,"rel_strength_pct":{"SPY":-0.025446,"IWM":-0.04666}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.078465},"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":"aa9d30817301","ts":"2026-09-15T17:18:45+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2736,"target":7.43,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":43.6,"room_to_5d_high_atr":1.2},"price":7.378,"vwap":7.2694,"ext_from_open_pct":3.19,"max_ext_allowed_pct":4.0,"volume_pace":0.831,"trend":"flat","recent_slope_pct":-0.0799,"volatility":"medium"},"price":7.378,"volume":{"bars":228,"last_bar_volume":44740.0,"baseline_avg":249462.0,"bar_rvol":0.179346,"raw_accel":-0.712046,"smooth_accel":-0.308719,"accel_momentum":-0.308064,"rvol_3bar":[1.053346,0.608293,0.179346],"trend_3bar":"DECELERATING","projected_rvol":0.574447},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":29497.0,"sell_vol":57575.0,"unclassified_vol":0.0,"imbalance":-0.322469,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.751915},"context":{"vwap":7.269082,"price_vs_vwap_pct":1.498373,"ema9":7.388915,"ema20":7.386971,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.699865,"dist_to_hod_atr":2.147623,"atr":0.024213,"spread_atr":0.413004,"own_change_pct":-0.067705,"rel_strength_pct":{"SPY":-0.025446,"IWM":-0.04666}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.057833},"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":"ffd0d39be2e1","ts":"2026-09-15T17:19:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.2845,"target":7.47,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.18},"price":7.3889,"vwap":7.2695,"ext_from_open_pct":3.34,"max_ext_allowed_pct":3.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"medium"},"price":7.3889,"volume":{"bars":229,"last_bar_volume":126305.0,"baseline_avg":243629.55,"bar_rvol":0.518431,"raw_accel":1.073722,"smooth_accel":-0.506196,"accel_momentum":-0.197478,"rvol_3bar":[0.608293,0.179346,0.518431],"trend_3bar":"MIXED","projected_rvol":0.332144},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":24265.0,"sell_vol":14793.0,"unclassified_vol":0.0,"imbalance":0.242511,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":5.26604},"context":{"vwap":7.269424,"price_vs_vwap_pct":1.643536,"ema9":7.386972,"ema20":7.386231,"ema_stack":true,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.553163,"dist_to_hod_atr":1.708602,"atr":0.024055,"spread_atr":0.415718,"own_change_pct":-0.281081,"rel_strength_pct":{"SPY":-0.230426,"IWM":-0.246008}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.125725},"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":"1e3c10bc7fba","ts":"2026-09-15T17:19:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2756,"target":7.43,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.2},"price":7.38,"vwap":7.2695,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.83,"trend":"flat","recent_slope_pct":-0.0516,"volatility":"medium"},"price":7.38,"volume":{"bars":229,"last_bar_volume":126305.0,"baseline_avg":243629.55,"bar_rvol":0.518431,"raw_accel":1.073722,"smooth_accel":-0.506196,"accel_momentum":-0.197478,"rvol_3bar":[0.608293,0.179346,0.518431],"trend_3bar":"MIXED","projected_rvol":0.577134},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":23783.0,"sell_vol":35942.0,"unclassified_vol":0.0,"imbalance":-0.203583,"bid":7.37,"ask":7.38,"spread_pct":0.135593,"quote_size_imbalance":null,"quote_age_s":0.575323},"context":{"vwap":7.269424,"price_vs_vwap_pct":1.521105,"ema9":7.386972,"ema20":7.386231,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-0.672948,"dist_to_hod_atr":2.078591,"atr":0.024055,"spread_atr":0.415718,"own_change_pct":-0.281081,"rel_strength_pct":{"SPY":-0.230426,"IWM":-0.246008}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.105544},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a3afc36d1642","ts":"2026-09-15T17:19:40+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1862,"target":5.43,"target_label":"prev_day_high","reward_risk":3.99,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":2.02},"price":5.235,"vwap":5.2357,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0509,"volatility":"medium"},"price":5.235,"volume":{"bars":229,"last_bar_volume":1913.0,"baseline_avg":2168.3,"bar_rvol":0.882258,"raw_accel":-0.287789,"smooth_accel":-0.697611,"accel_momentum":0.124954,"rvol_3bar":[0.203624,1.308552,0.882258],"trend_3bar":"MIXED","projected_rvol":8.278605},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":2011.0,"sell_vol":9956.0,"unclassified_vol":0.0,"imbalance":-0.663909,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":0.904984},"context":{"vwap":5.23559,"price_vs_vwap_pct":-0.011259,"ema9":5.246075,"ema20":5.245087,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.145236,"dist_to_hod_atr":24.373715,"atr":0.006975,"spread_atr":1.433748,"own_change_pct":-0.007624,"rel_strength_pct":{"SPY":0.043031,"IWM":0.027449}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.585739},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8f573f328c8c","ts":"2026-09-15T17:19:50+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1912,"target":5.43,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":0.0,"room_to_5d_high_atr":2.0},"price":5.24,"vwap":5.2357,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":3.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0318,"volatility":"medium"},"price":5.24,"volume":{"bars":229,"last_bar_volume":1913.0,"baseline_avg":2168.3,"bar_rvol":0.882258,"raw_accel":-0.287789,"smooth_accel":-0.697611,"accel_momentum":0.124954,"rvol_3bar":[0.203624,1.308552,0.882258],"trend_3bar":"MIXED","projected_rvol":6.667159},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":1947.0,"sell_vol":9786.0,"unclassified_vol":0.0,"imbalance":-0.668116,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":0.891536},"context":{"vwap":5.23559,"price_vs_vwap_pct":0.084241,"ema9":5.246075,"ema20":5.245087,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.052729,"dist_to_hod_atr":23.656841,"atr":0.006975,"spread_atr":1.433748,"own_change_pct":-0.007624,"rel_strength_pct":{"SPY":0.043031,"IWM":0.027449}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.58945},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4a0423d5dcee","ts":"2026-09-15T17:19:55+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1862,"target":5.43,"target_label":"prev_day_high","reward_risk":3.99,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":2.02},"price":5.235,"vwap":5.2357,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":4.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0509,"volatility":"medium"},"price":5.235,"volume":{"bars":229,"last_bar_volume":1913.0,"baseline_avg":2168.3,"bar_rvol":0.882258,"raw_accel":-0.287789,"smooth_accel":-0.697611,"accel_momentum":0.124954,"rvol_3bar":[0.203624,1.308552,0.882258],"trend_3bar":"MIXED","projected_rvol":6.164192},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":1852.0,"sell_vol":9929.0,"unclassified_vol":0.0,"imbalance":-0.685595,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":5.891536},"context":{"vwap":5.23559,"price_vs_vwap_pct":-0.011259,"ema9":5.246075,"ema20":5.245087,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.145236,"dist_to_hod_atr":24.373715,"atr":0.006975,"spread_atr":1.433748,"own_change_pct":-0.007624,"rel_strength_pct":{"SPY":0.043031,"IWM":0.027449}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.604872},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f52ded0796fb","ts":"2026-09-15T17:20:00+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1978,"target":5.43,"target_label":"prev_day_high","reward_risk":3.76,"pos_in_5d_range_pct":1.7,"room_to_5d_high_atr":1.96},"price":5.2466,"vwap":5.2357,"ext_from_open_pct":-1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0067,"volatility":"medium"},"price":5.2466,"volume":{"bars":229,"last_bar_volume":1913.0,"baseline_avg":2168.3,"bar_rvol":0.882258,"raw_accel":-0.287789,"smooth_accel":-0.697611,"accel_momentum":0.124954,"rvol_3bar":[0.203624,1.308552,0.882258],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":1949.0,"sell_vol":7899.0,"unclassified_vol":0.0,"imbalance":-0.604184,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":1.214127},"context":{"vwap":5.23559,"price_vs_vwap_pct":0.210301,"ema9":5.246075,"ema20":5.245087,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.93062,"dist_to_hod_atr":22.710567,"atr":0.006975,"spread_atr":1.433748,"own_change_pct":-0.007624,"rel_strength_pct":{"SPY":0.003603,"IWM":0.009916}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.533046},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b790d3281f7a","ts":"2026-09-15T17:20:05+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1862,"target":5.43,"target_label":"prev_day_high","reward_risk":3.99,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":2.02},"price":5.235,"vwap":5.2357,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":4.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0526,"volatility":"medium"},"price":5.235,"volume":{"bars":230,"last_bar_volume":12352.0,"baseline_avg":2213.75,"bar_rvol":5.579673,"raw_accel":5.456874,"smooth_accel":8.866705,"accel_momentum":9.564317,"rvol_3bar":[1.308552,0.882258,5.579673],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":155.0,"sell_vol":383.0,"unclassified_vol":0.0,"imbalance":-0.423792,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":6.214127},"context":{"vwap":5.235742,"price_vs_vwap_pct":-0.014174,"ema9":5.24618,"ema20":5.245231,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.145236,"dist_to_hod_atr":22.52264,"atr":0.007548,"spread_atr":1.324861,"own_change_pct":-0.041914,"rel_strength_pct":{"SPY":-0.030687,"IWM":-0.024374}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.36462},"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":"83d7065a8f80","ts":"2026-09-15T17:21:00+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.1926,"target":5.43,"target_label":"prev_day_high","reward_risk":3.86,"pos_in_5d_range_pct":0.4,"room_to_5d_high_atr":1.99},"price":5.2414,"vwap":5.2358,"ext_from_open_pct":-1.66,"max_ext_allowed_pct":3.0,"volume_pace":0.866,"trend":"flat","recent_slope_pct":-0.0282,"volatility":"medium"},"price":5.2414,"volume":{"bars":230,"last_bar_volume":12352.0,"baseline_avg":2213.75,"bar_rvol":5.579673,"raw_accel":5.456874,"smooth_accel":8.866705,"accel_momentum":9.564317,"rvol_3bar":[1.308552,0.882258,5.579673],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":5.0,"sell_vol":1165.0,"unclassified_vol":0.0,"imbalance":-0.991453,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":1.657735},"context":{"vwap":5.235742,"price_vs_vwap_pct":0.108063,"ema9":5.24618,"ema20":5.245231,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.026827,"dist_to_hod_atr":21.674729,"atr":0.007548,"spread_atr":1.324861,"own_change_pct":-0.041914,"rel_strength_pct":{"SPY":-0.040593,"IWM":-0.027881}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-5.531983},"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":"725dd74c9784","ts":"2026-09-15T17:21:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.32,"target":8.79,"target_label":"clear air (typical 60-min move)","reward_risk":1.04,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-1.11},"price":8.55,"vwap":8.1772,"ext_from_open_pct":11.62,"max_ext_allowed_pct":3.0,"volume_pace":0.321,"trend":"flat","recent_slope_pct":-0.0584,"volatility":"high"},"price":8.55,"volume":{"bars":230,"last_bar_volume":423.0,"baseline_avg":1432.3,"bar_rvol":0.295329,"raw_accel":-0.735294,"smooth_accel":0.816985,"accel_momentum":0.827758,"rvol_3bar":[1.499884,1.124481,0.295329],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":102.0,"sell_vol":1855.0,"unclassified_vol":0.0,"imbalance":-0.895759,"bid":8.54,"ask":8.59,"spread_pct":0.583771,"quote_size_imbalance":null,"quote_age_s":2.78602},"context":{"vwap":8.176264,"price_vs_vwap_pct":4.570988,"ema9":8.549113,"ema20":8.492141,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.581395,"dist_to_hod_atr":1.213527,"atr":0.041202,"spread_atr":1.213527,"own_change_pct":0.175234,"rel_strength_pct":{"SPY":0.176555,"IWM":0.189267}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.264544},"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":"56b695f4c1db","ts":"2026-09-15T17:21:10+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1862,"target":5.43,"target_label":"prev_day_high","reward_risk":3.99,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":2.02},"price":5.235,"vwap":5.2358,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":3.0,"volume_pace":0.865,"trend":"flat","recent_slope_pct":-0.0471,"volatility":"medium"},"price":5.235,"volume":{"bars":231,"last_bar_volume":1701.0,"baseline_avg":2814.35,"bar_rvol":0.604402,"raw_accel":-0.86229,"smooth_accel":4.050933,"accel_momentum":-4.815772,"rvol_3bar":[0.882258,5.579673,0.604402],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":5.0,"sell_vol":490.0,"unclassified_vol":0.0,"imbalance":-0.979798,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":2.706381},"context":{"vwap":5.235751,"price_vs_vwap_pct":-0.014349,"ema9":5.245224,"ema20":5.244866,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.145236,"dist_to_hod_atr":20.727467,"atr":0.008202,"spread_atr":1.219263,"own_change_pct":-0.099112,"rel_strength_pct":{"SPY":-0.097791,"IWM":-0.085078}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.592192},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"007ae808d3d0","ts":"2026-09-15T17:21:10+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.468,"target":12.72,"target_label":"premarket_high","reward_risk":0.15,"pos_in_5d_range_pct":15.5,"room_to_5d_high_atr":2.03},"price":12.6871,"vwap":12.6144,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":0.0027,"volatility":"high"},"price":12.6871,"volume":{"bars":231,"last_bar_volume":13892.0,"baseline_avg":15984.0,"bar_rvol":0.869119,"raw_accel":0.364101,"smooth_accel":1.745127,"accel_momentum":1.838809,"rvol_3bar":[0.220535,0.620654,0.869119],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":365.0,"sell_vol":1900.0,"unclassified_vol":0.0,"imbalance":-0.677704,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.273119},"context":{"vwap":12.61439,"price_vs_vwap_pct":0.576408,"ema9":12.693644,"ema20":12.693386,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.556836,"dist_to_hod_atr":7.809175,"atr":0.042629,"spread_atr":0.23458,"own_change_pct":0.185321,"rel_strength_pct":{"SPY":0.186642,"IWM":0.199355}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.589006},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6392ff5d5278","ts":"2026-09-15T17:21:15+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.374,"target":8.805,"target_label":"clear air (typical 60-min move)","reward_risk":1.26,"pos_in_5d_range_pct":131.0,"room_to_5d_high_atr":-1.13},"price":8.565,"vwap":8.1773,"ext_from_open_pct":11.81,"max_ext_allowed_pct":3.0,"volume_pace":0.321,"trend":"flat","recent_slope_pct":-0.0233,"volatility":"high"},"price":8.565,"volume":{"bars":230,"last_bar_volume":423.0,"baseline_avg":1432.3,"bar_rvol":0.295329,"raw_accel":-0.735294,"smooth_accel":0.816985,"accel_momentum":0.827758,"rvol_3bar":[1.499884,1.124481,0.295329],"trend_3bar":"DECELERATING","projected_rvol":5.133003},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":201.0,"sell_vol":1835.0,"unclassified_vol":0.0,"imbalance":-0.802554,"bid":8.54,"ask":8.59,"spread_pct":0.583771,"quote_size_imbalance":null,"quote_age_s":1.57058},"context":{"vwap":8.176264,"price_vs_vwap_pct":4.754446,"ema9":8.549113,"ema20":8.492141,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.406977,"dist_to_hod_atr":0.849469,"atr":0.041202,"spread_atr":1.213527,"own_change_pct":0.175234,"rel_strength_pct":{"SPY":0.176555,"IWM":0.189267}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.237018},"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":"696d1e1c7881","ts":"2026-09-15T17:21:20+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6854,"target":5.83,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":91.7,"room_to_5d_high_atr":0.11},"price":5.785,"vwap":5.7473,"ext_from_open_pct":1.49,"max_ext_allowed_pct":4.0,"volume_pace":0.557,"trend":"flat","recent_slope_pct":-0.0308,"volatility":"high"},"price":5.785,"volume":{"bars":231,"last_bar_volume":1122.0,"baseline_avg":3839.9,"bar_rvol":0.292195,"raw_accel":-0.715877,"smooth_accel":-0.590226,"accel_momentum":-0.926618,"rvol_3bar":[0.315327,1.032634,0.292195],"trend_3bar":"MIXED","projected_rvol":0.254694},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":254.0,"sell_vol":117.0,"unclassified_vol":0.0,"imbalance":0.369272,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.855234},"context":{"vwap":5.747313,"price_vs_vwap_pct":0.655725,"ema9":5.789802,"ema20":5.794651,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.111111,"dist_to_hod_atr":6.225364,"atr":0.010441,"spread_atr":0.957748,"own_change_pct":-0.172563,"rel_strength_pct":{"SPY":-0.171242,"IWM":-0.158529}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.1079},"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":"e1824fbe060d","ts":"2026-09-15T17:21:20+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.32,"target":8.78,"target_label":"clear air (typical 60-min move)","reward_risk":1.09,"pos_in_5d_range_pct":130.1,"room_to_5d_high_atr":-1.1},"price":8.54,"vwap":8.1772,"ext_from_open_pct":11.49,"max_ext_allowed_pct":3.0,"volume_pace":0.321,"trend":"flat","recent_slope_pct":-0.0817,"volatility":"high"},"price":8.54,"volume":{"bars":230,"last_bar_volume":423.0,"baseline_avg":1432.3,"bar_rvol":0.295329,"raw_accel":-0.735294,"smooth_accel":0.816985,"accel_momentum":0.827758,"rvol_3bar":[1.499884,1.124481,0.295329],"trend_3bar":"DECELERATING","projected_rvol":3.870697},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":201.0,"sell_vol":1845.0,"unclassified_vol":0.0,"imbalance":-0.803519,"bid":8.54,"ask":8.59,"spread_pct":0.583771,"quote_size_imbalance":null,"quote_age_s":1.753038},"context":{"vwap":8.176264,"price_vs_vwap_pct":4.448683,"ema9":8.549113,"ema20":8.492141,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.697674,"dist_to_hod_atr":1.456232,"atr":0.041202,"spread_atr":1.213527,"own_change_pct":0.175234,"rel_strength_pct":{"SPY":0.176555,"IWM":0.189267}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.237303},"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":"381c3997fd57","ts":"2026-09-15T17:21:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3778,"target":8.8088,"target_label":"clear air (typical 60-min move)","reward_risk":1.26,"pos_in_5d_range_pct":131.1,"room_to_5d_high_atr":-1.14},"price":8.5688,"vwap":8.1773,"ext_from_open_pct":11.86,"max_ext_allowed_pct":4.0,"volume_pace":0.32,"trend":"flat","recent_slope_pct":-0.0145,"volatility":"high"},"price":8.5688,"volume":{"bars":230,"last_bar_volume":423.0,"baseline_avg":1432.3,"bar_rvol":0.295329,"raw_accel":-0.735294,"smooth_accel":0.816985,"accel_momentum":0.827758,"rvol_3bar":[1.499884,1.124481,0.295329],"trend_3bar":"DECELERATING","projected_rvol":1.642114},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":57.0,"sell_vol":55.0,"unclassified_vol":0.0,"imbalance":0.017857,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":14.870748},"context":{"vwap":8.176264,"price_vs_vwap_pct":4.800922,"ema9":8.549113,"ema20":8.492141,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.362791,"dist_to_hod_atr":0.757241,"atr":0.041202,"spread_atr":0.728116,"own_change_pct":0.175234,"rel_strength_pct":{"SPY":0.176555,"IWM":0.189267}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.005274},"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":"a89993256872","ts":"2026-09-15T17:21:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.32x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.364,"target":8.795,"target_label":"clear air (typical 60-min move)","reward_risk":1.26,"pos_in_5d_range_pct":130.6,"room_to_5d_high_atr":-1.12},"price":8.555,"vwap":8.1773,"ext_from_open_pct":11.68,"max_ext_allowed_pct":4.0,"volume_pace":0.32,"trend":"flat","recent_slope_pct":-0.0467,"volatility":"high"},"price":8.555,"volume":{"bars":230,"last_bar_volume":423.0,"baseline_avg":1432.3,"bar_rvol":0.295329,"raw_accel":-0.735294,"smooth_accel":0.816985,"accel_momentum":0.827758,"rvol_3bar":[1.499884,1.124481,0.295329],"trend_3bar":"DECELERATING","projected_rvol":1.502732},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":42.0,"sell_vol":63.0,"unclassified_vol":0.0,"imbalance":-0.2,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":19.870748},"context":{"vwap":8.176264,"price_vs_vwap_pct":4.632141,"ema9":8.549113,"ema20":8.492141,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.523256,"dist_to_hod_atr":1.092174,"atr":0.041202,"spread_atr":0.728116,"own_change_pct":0.175234,"rel_strength_pct":{"SPY":0.176555,"IWM":0.189267}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.059066},"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":"a8ff52360d4a","ts":"2026-09-15T17:22:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.69,"target":5.83,"target_label":"prev_day_high","reward_risk":0.41,"pos_in_5d_range_pct":92.5,"room_to_5d_high_atr":0.1},"price":5.7896,"vwap":5.7474,"ext_from_open_pct":1.57,"max_ext_allowed_pct":4.0,"volume_pace":0.556,"trend":"flat","recent_slope_pct":0.0045,"volatility":"high"},"price":5.7896,"volume":{"bars":232,"last_bar_volume":912.0,"baseline_avg":3860.45,"bar_rvol":0.236242,"raw_accel":-0.187166,"smooth_accel":-0.609618,"accel_momentum":-0.019392,"rvol_3bar":[1.032634,0.292195,0.236242],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":138.0,"sell_vol":315.0,"unclassified_vol":0.0,"imbalance":-0.390728,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":4.995364},"context":{"vwap":5.747354,"price_vs_vwap_pct":0.735055,"ema9":5.789841,"ema20":5.794208,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.032479,"dist_to_hod_atr":5.766698,"atr":0.010474,"spread_atr":0.954751,"own_change_pct":0.08643,"rel_strength_pct":{"SPY":0.098319,"IWM":0.118004}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.092306},"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":"7c433b1e5008","ts":"2026-09-15T17:22:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.2356,"target":7.43,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":39.3,"room_to_5d_high_atr":1.29},"price":7.34,"vwap":7.2711,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":-0.1406,"volatility":"medium"},"price":7.34,"volume":{"bars":232,"last_bar_volume":45565.0,"baseline_avg":256395.7,"bar_rvol":0.177714,"raw_accel":-0.895035,"smooth_accel":1.352169,"accel_momentum":0.512933,"rvol_3bar":[1.18171,1.723759,0.177714],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":9005.0,"sell_vol":23149.0,"unclassified_vol":0.0,"imbalance":-0.439883,"bid":7.34,"ask":7.35,"spread_pct":0.136147,"quote_size_imbalance":null,"quote_age_s":0.148075},"context":{"vwap":7.27109,"price_vs_vwap_pct":0.947726,"ema9":7.367266,"ema20":7.376198,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.211306,"dist_to_hod_atr":3.259101,"atr":0.027615,"spread_atr":0.362122,"own_change_pct":-0.640288,"rel_strength_pct":{"SPY":-0.6284,"IWM":-0.608715}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.078173},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"423ddc63a97c","ts":"2026-09-15T17:22:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4668,"target":12.72,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":15.4,"room_to_5d_high_atr":2.04},"price":12.6859,"vwap":12.6145,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":0.917,"trend":"flat","recent_slope_pct":-0.0117,"volatility":"high"},"price":12.6859,"volume":{"bars":232,"last_bar_volume":4457.0,"baseline_avg":15968.7,"bar_rvol":0.279109,"raw_accel":-0.679168,"smooth_accel":2.595388,"accel_momentum":0.850261,"rvol_3bar":[0.620654,0.869119,0.279109],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":103.0,"sell_vol":1214.0,"unclassified_vol":0.0,"imbalance":-0.843584,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.145558},"context":{"vwap":12.614456,"price_vs_vwap_pct":0.56637,"ema9":12.690575,"ema20":12.691949,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.566052,"dist_to_hod_atr":7.949605,"atr":0.042027,"spread_atr":0.237941,"own_change_pct":-0.013407,"rel_strength_pct":{"SPY":-0.001519,"IWM":0.018166}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.235451},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e85081d373e6","ts":"2026-09-15T17:22:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2356,"target":7.43,"target_label":"ceiling","reward_risk":0.86,"pos_in_5d_range_pct":39.3,"room_to_5d_high_atr":1.29},"price":7.34,"vwap":7.2712,"ext_from_open_pct":2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.835,"trend":"flat","recent_slope_pct":-0.1406,"volatility":"medium"},"price":7.34,"volume":{"bars":232,"last_bar_volume":45565.0,"baseline_avg":256395.7,"bar_rvol":0.177714,"raw_accel":-0.895035,"smooth_accel":1.352169,"accel_momentum":0.512933,"rvol_3bar":[1.18171,1.723759,0.177714],"trend_3bar":"MIXED","projected_rvol":0.821231},"flow":{"window_s":30,"trades":143,"trade_rate":4.766667,"buy_vol":11173.0,"sell_vol":58190.0,"unclassified_vol":0.0,"imbalance":-0.67784,"bid":7.33,"ask":7.34,"spread_pct":0.136333,"quote_size_imbalance":null,"quote_age_s":0.174372},"context":{"vwap":7.27109,"price_vs_vwap_pct":0.947726,"ema9":7.367266,"ema20":7.376198,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.211306,"dist_to_hod_atr":3.259101,"atr":0.027615,"spread_atr":0.362122,"own_change_pct":-0.640288,"rel_strength_pct":{"SPY":-0.6284,"IWM":-0.608715}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.120461},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f926c92d194b","ts":"2026-09-15T17:22:40+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1968,"target":5.43,"target_label":"prev_day_high","reward_risk":3.78,"pos_in_5d_range_pct":1.4,"room_to_5d_high_atr":1.97},"price":5.2456,"vwap":5.2358,"ext_from_open_pct":-1.58,"max_ext_allowed_pct":4.0,"volume_pace":0.862,"trend":"flat","recent_slope_pct":-0.0238,"volatility":"medium"},"price":5.2456,"volume":{"bars":232,"last_bar_volume":200.0,"baseline_avg":2883.15,"bar_rvol":0.069369,"raw_accel":-0.882422,"smooth_accel":1.835854,"accel_momentum":-2.21508,"rvol_3bar":[5.579673,0.604402,0.069369],"trend_3bar":"DECELERATING","projected_rvol":0.936476},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":247.0,"sell_vol":1350.0,"unclassified_vol":0.0,"imbalance":-0.69067,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":3.504147},"context":{"vwap":5.235752,"price_vs_vwap_pct":0.188099,"ema9":5.243199,"ema20":5.243936,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.949121,"dist_to_hod_atr":19.571694,"atr":0.008144,"spread_atr":1.227835,"own_change_pct":-0.276212,"rel_strength_pct":{"SPY":-0.264323,"IWM":-0.244638}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.047911},"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":"0ef419f2d401","ts":"2026-09-15T17:23:00+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1867,"target":5.43,"target_label":"prev_day_high","reward_risk":3.98,"pos_in_5d_range_pct":-1.2,"room_to_5d_high_atr":2.02},"price":5.2355,"vwap":5.2358,"ext_from_open_pct":-1.77,"max_ext_allowed_pct":4.0,"volume_pace":0.861,"trend":"flat","recent_slope_pct":-0.0624,"volatility":"medium"},"price":5.2355,"volume":{"bars":232,"last_bar_volume":200.0,"baseline_avg":2883.15,"bar_rvol":0.069369,"raw_accel":-0.882422,"smooth_accel":1.835854,"accel_momentum":-2.21508,"rvol_3bar":[5.579673,0.604402,0.069369],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":265.0,"sell_vol":1261.0,"unclassified_vol":0.0,"imbalance":-0.652687,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":1.449538},"context":{"vwap":5.235752,"price_vs_vwap_pct":-0.004805,"ema9":5.243199,"ema20":5.243936,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.135985,"dist_to_hod_atr":20.811808,"atr":0.008144,"spread_atr":1.227835,"own_change_pct":-0.276212,"rel_strength_pct":{"SPY":-0.259036,"IWM":-0.216571}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.045276},"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":"b7fed7a86d75","ts":"2026-09-15T17:23:05+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1923,"target":5.43,"target_label":"prev_day_high","reward_risk":3.87,"pos_in_5d_range_pct":0.3,"room_to_5d_high_atr":1.99},"price":5.2411,"vwap":5.2358,"ext_from_open_pct":-1.67,"max_ext_allowed_pct":4.0,"volume_pace":0.861,"trend":"flat","recent_slope_pct":-0.0323,"volatility":"medium"},"price":5.2411,"volume":{"bars":233,"last_bar_volume":1929.0,"baseline_avg":2840.3,"bar_rvol":0.679154,"raw_accel":1.716614,"smooth_accel":-0.774055,"accel_momentum":-2.609908,"rvol_3bar":[0.604402,0.069369,0.679154],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":229.0,"sell_vol":111.0,"unclassified_vol":0.0,"imbalance":0.347059,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":6.449538},"context":{"vwap":5.23576,"price_vs_vwap_pct":0.101983,"ema9":5.241659,"ema20":5.243133,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.032377,"dist_to_hod_atr":19.632539,"atr":0.008348,"spread_atr":1.197836,"own_change_pct":-0.181125,"rel_strength_pct":{"SPY":-0.16395,"IWM":-0.121484}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.235706},"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":"b51e41699281","ts":"2026-09-15T17:23:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.2306,"target":7.43,"target_label":"ceiling","reward_risk":0.91,"pos_in_5d_range_pct":38.8,"room_to_5d_high_atr":1.31},"price":7.335,"vwap":7.2713,"ext_from_open_pct":2.59,"max_ext_allowed_pct":3.0,"volume_pace":0.833,"trend":"flat","recent_slope_pct":-0.0936,"volatility":"medium"},"price":7.335,"volume":{"bars":233,"last_bar_volume":100676.0,"baseline_avg":244479.85,"bar_rvol":0.411797,"raw_accel":0.647187,"smooth_accel":0.263892,"accel_momentum":-1.088277,"rvol_3bar":[1.723759,0.177714,0.411797],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":7111.0,"sell_vol":22242.0,"unclassified_vol":0.0,"imbalance":-0.515484,"bid":7.33,"ask":7.34,"spread_pct":0.136333,"quote_size_imbalance":null,"quote_age_s":1.561162},"context":{"vwap":7.271269,"price_vs_vwap_pct":0.876475,"ema9":7.360092,"ema20":7.371932,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.2786,"dist_to_hod_atr":3.286428,"atr":0.028907,"spread_atr":0.34594,"own_change_pct":-0.658537,"rel_strength_pct":{"SPY":-0.641361,"IWM":-0.598896}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.212275},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6fc01a183451","ts":"2026-09-15T17:23:20+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1862,"target":5.43,"target_label":"prev_day_high","reward_risk":3.99,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":2.02},"price":5.235,"vwap":5.2358,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":4.0,"volume_pace":0.86,"trend":"flat","recent_slope_pct":-0.0555,"volatility":"medium"},"price":5.235,"volume":{"bars":233,"last_bar_volume":1929.0,"baseline_avg":2840.3,"bar_rvol":0.679154,"raw_accel":1.716614,"smooth_accel":-0.774055,"accel_momentum":-2.609908,"rvol_3bar":[0.604402,0.069369,0.679154],"trend_3bar":"MIXED","projected_rvol":0.528113},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":218.0,"sell_vol":411.0,"unclassified_vol":0.0,"imbalance":-0.306836,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":2.459197},"context":{"vwap":5.23576,"price_vs_vwap_pct":-0.014523,"ema9":5.241659,"ema20":5.243133,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.145236,"dist_to_hod_atr":20.363219,"atr":0.008348,"spread_atr":1.197836,"own_change_pct":-0.181125,"rel_strength_pct":{"SPY":-0.16395,"IWM":-0.121484}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.208389},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1a6899f2f553","ts":"2026-09-15T17:23:30+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4759,"target":12.72,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.03},"price":12.695,"vwap":12.6146,"ext_from_open_pct":1.56,"max_ext_allowed_pct":3.0,"volume_pace":0.913,"trend":"flat","recent_slope_pct":0.0164,"volatility":"high"},"price":12.695,"volume":{"bars":233,"last_bar_volume":7918.0,"baseline_avg":11040.65,"bar_rvol":0.717168,"raw_accel":0.776531,"smooth_accel":0.613254,"accel_momentum":-1.982134,"rvol_3bar":[0.869119,0.279109,0.717168],"trend_3bar":"MIXED","projected_rvol":0.086951},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":368.0,"sell_vol":112.0,"unclassified_vol":0.0,"imbalance":0.533333,"bid":12.69,"ask":12.7,"spread_pct":0.078771,"quote_size_imbalance":null,"quote_age_s":0.304825},"context":{"vwap":12.614572,"price_vs_vwap_pct":0.637581,"ema9":12.68946,"ema20":12.691287,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.49616,"dist_to_hod_atr":7.919183,"atr":0.04104,"spread_atr":0.243667,"own_change_pct":-0.039401,"rel_strength_pct":{"SPY":-0.022226,"IWM":0.02024}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.38249},"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":"d2c7bc8a1019","ts":"2026-09-15T17:23:35+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1895,"target":5.43,"target_label":"prev_day_high","reward_risk":3.93,"pos_in_5d_range_pct":-0.4,"room_to_5d_high_atr":2.01},"price":5.2383,"vwap":5.2358,"ext_from_open_pct":-1.72,"max_ext_allowed_pct":4.0,"volume_pace":0.859,"trend":"flat","recent_slope_pct":-0.0429,"volatility":"medium"},"price":5.2383,"volume":{"bars":233,"last_bar_volume":1929.0,"baseline_avg":2840.3,"bar_rvol":0.679154,"raw_accel":1.716614,"smooth_accel":-0.774055,"accel_momentum":-2.609908,"rvol_3bar":[0.604402,0.069369,0.679154],"trend_3bar":"MIXED","projected_rvol":0.333768},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":52.0,"sell_vol":301.0,"unclassified_vol":0.0,"imbalance":-0.705382,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":10.469894},"context":{"vwap":5.23576,"price_vs_vwap_pct":0.048505,"ema9":5.241659,"ema20":5.243133,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.084181,"dist_to_hod_atr":19.967933,"atr":0.008348,"spread_atr":1.197836,"own_change_pct":-0.181125,"rel_strength_pct":{"SPY":-0.16395,"IWM":-0.121484}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.479063},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"783892326e8f","ts":"2026-09-15T17:23:55+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1862,"target":5.43,"target_label":"prev_day_high","reward_risk":3.99,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":2.02},"price":5.235,"vwap":5.2358,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":4.0,"volume_pace":0.858,"trend":"flat","recent_slope_pct":-0.0555,"volatility":"medium"},"price":5.235,"volume":{"bars":233,"last_bar_volume":1929.0,"baseline_avg":2840.3,"bar_rvol":0.679154,"raw_accel":1.716614,"smooth_accel":-0.774055,"accel_momentum":-2.609908,"rvol_3bar":[0.604402,0.069369,0.679154],"trend_3bar":"MIXED","projected_rvol":0.289982},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":152.0,"sell_vol":103.0,"unclassified_vol":0.0,"imbalance":0.192157,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":1.10635},"context":{"vwap":5.23576,"price_vs_vwap_pct":-0.014523,"ema9":5.241659,"ema20":5.243133,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.145236,"dist_to_hod_atr":20.363219,"atr":0.008348,"spread_atr":1.197836,"own_change_pct":-0.181125,"rel_strength_pct":{"SPY":-0.16395,"IWM":-0.121484}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.130504},"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":"3f04791b0e72","ts":"2026-09-15T17:24:05+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7392,"target":13.2,"target_label":"ceiling","reward_risk":1.55,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.15},"price":12.92,"vwap":12.9017,"ext_from_open_pct":-1.0,"max_ext_allowed_pct":3.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":-0.0462,"volatility":"medium"},"price":12.92,"volume":{"bars":233,"last_bar_volume":48.0,"baseline_avg":941.0,"bar_rvol":0.05101,"raw_accel":-0.795962,"smooth_accel":0.553398,"accel_momentum":0.367524,"rvol_3bar":[0.144481,0.120298,0.05101],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":0.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":12.91,"ask":13.0,"spread_pct":0.694712,"quote_size_imbalance":null,"quote_age_s":2.573511},"context":{"vwap":12.901663,"price_vs_vwap_pct":0.142127,"ema9":12.960233,"ema20":12.985917,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.930128,"dist_to_hod_atr":9.467243,"atr":0.041195,"spread_atr":2.184748,"own_change_pct":0.069498,"rel_strength_pct":{"SPY":0.083371,"IWM":0.106338}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.05101},"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":"077bae60d1b2","ts":"2026-09-15T17:24:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4595,"target":12.72,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":15.1,"room_to_5d_high_atr":2.04},"price":12.6786,"vwap":12.6146,"ext_from_open_pct":1.43,"max_ext_allowed_pct":3.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":-0.0329,"volatility":"high"},"price":12.6786,"volume":{"bars":234,"last_bar_volume":3275.0,"baseline_avg":9782.25,"bar_rvol":0.33479,"raw_accel":-0.586385,"smooth_accel":-0.435934,"accel_momentum":-1.049188,"rvol_3bar":[0.279109,0.717168,0.33479],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":931.0,"sell_vol":1358.0,"unclassified_vol":0.0,"imbalance":-0.186544,"bid":12.69,"ask":12.7,"spread_pct":0.078771,"quote_size_imbalance":null,"quote_age_s":1.259563},"context":{"vwap":12.614625,"price_vs_vwap_pct":0.507153,"ema9":12.689108,"ema20":12.690945,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.62212,"dist_to_hod_atr":8.550045,"atr":0.03993,"spread_atr":0.250441,"own_change_pct":-0.057503,"rel_strength_pct":{"SPY":-0.04363,"IWM":-0.020663}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.062453},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"64de23ea2d4e","ts":"2026-09-15T17:24:15+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1918,"target":5.43,"target_label":"prev_day_high","reward_risk":3.88,"pos_in_5d_range_pct":0.2,"room_to_5d_high_atr":1.99},"price":5.2406,"vwap":5.2358,"ext_from_open_pct":-1.68,"max_ext_allowed_pct":4.0,"volume_pace":0.857,"trend":"flat","recent_slope_pct":-0.0032,"volatility":"medium"},"price":5.2406,"volume":{"bars":234,"last_bar_volume":758.0,"baseline_avg":2890.3,"bar_rvol":0.262257,"raw_accel":-0.60705,"smooth_accel":-0.819178,"accel_momentum":-0.045124,"rvol_3bar":[0.069369,0.679154,0.262257],"trend_3bar":"MIXED","projected_rvol":0.14393},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":104.0,"sell_vol":105.0,"unclassified_vol":0.0,"imbalance":-0.004785,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":16.645544},"context":{"vwap":5.235762,"price_vs_vwap_pct":0.092399,"ema9":5.240327,"ema20":5.242358,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.041628,"dist_to_hod_atr":19.90504,"atr":0.008259,"spread_atr":1.210769,"own_change_pct":-0.211586,"rel_strength_pct":{"SPY":-0.197713,"IWM":-0.174746}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.001255},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a73beb2adca2","ts":"2026-09-15T17:24:25+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8478,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.162,"trend":"flat","recent_slope_pct":-0.1195,"volatility":"high"},"price":7.845,"volume":{"bars":234,"last_bar_volume":51541.0,"baseline_avg":16477.4,"bar_rvol":3.127981,"raw_accel":11.511925,"smooth_accel":10.121919,"accel_momentum":10.708156,"rvol_3bar":[0.350827,0.0834,3.127981],"trend_3bar":"MIXED","projected_rvol":0.820615},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":6484.0,"sell_vol":13824.0,"unclassified_vol":0.0,"imbalance":-0.361434,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.829401},"context":{"vwap":7.847832,"price_vs_vwap_pct":-0.036084,"ema9":7.866316,"ema20":7.862083,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":5.178253,"atr":0.016415,"spread_atr":0.609206,"own_change_pct":-0.27187,"rel_strength_pct":{"SPY":-0.257998,"IWM":-0.235031}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.130559},"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":"eb00609b9706","ts":"2026-09-15T17:24:25+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.4063,"target":8.675,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":11.6,"room_to_5d_high_atr":3.63},"price":8.5975,"vwap":8.4152,"ext_from_open_pct":2.72,"max_ext_allowed_pct":3.0,"volume_pace":0.811,"trend":"flat","recent_slope_pct":-0.0158,"volatility":"high"},"price":8.5975,"volume":{"bars":234,"last_bar_volume":32027.0,"baseline_avg":95293.85,"bar_rvol":0.336087,"raw_accel":-0.550113,"smooth_accel":-0.631621,"accel_momentum":-0.079236,"rvol_3bar":[0.460121,0.761023,0.336087],"trend_3bar":"MIXED","projected_rvol":0.89453},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":16872.0,"sell_vol":19532.0,"unclassified_vol":0.0,"imbalance":-0.073069,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.319972},"context":{"vwap":8.414829,"price_vs_vwap_pct":2.170819,"ema9":8.596454,"ema20":8.598651,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.893372,"dist_to_hod_atr":2.620218,"atr":0.029578,"spread_atr":0.338093,"own_change_pct":-0.129053,"rel_strength_pct":{"SPY":-0.115181,"IWM":-0.092214}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.024557},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2c5967ef6696","ts":"2026-09-15T17:24:30+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.3982,"target":8.675,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":11.3,"room_to_5d_high_atr":3.64},"price":8.5894,"vwap":8.4152,"ext_from_open_pct":2.62,"max_ext_allowed_pct":3.0,"volume_pace":0.811,"trend":"flat","recent_slope_pct":-0.0347,"volatility":"high"},"price":8.5894,"volume":{"bars":234,"last_bar_volume":32027.0,"baseline_avg":95293.85,"bar_rvol":0.336087,"raw_accel":-0.550113,"smooth_accel":-0.631621,"accel_momentum":-0.079236,"rvol_3bar":[0.460121,0.761023,0.336087],"trend_3bar":"MIXED","projected_rvol":0.755411},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":16798.0,"sell_vol":19195.0,"unclassified_vol":0.0,"imbalance":-0.066596,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.04272},"context":{"vwap":8.414829,"price_vs_vwap_pct":2.07456,"ema9":8.596454,"ema20":8.598651,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.986744,"dist_to_hod_atr":2.894073,"atr":0.029578,"spread_atr":0.338093,"own_change_pct":-0.129053,"rel_strength_pct":{"SPY":-0.115181,"IWM":-0.092214}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.022382},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f968c6daea4a","ts":"2026-09-15T17:25:40+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 4.51% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.7073,"target":5.3208,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":3.4,"room_to_5d_high_atr":2.82},"price":5.1673,"vwap":5.1125,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":0.4134,"volatility":"high"},"price":5.1673,"volume":{"bars":197,"last_bar_volume":120.0,"baseline_avg":671.3,"bar_rvol":0.178758,"raw_accel":-0.284969,"smooth_accel":-0.644123,"accel_momentum":-22.019123,"rvol_3bar":[1.902447,0.016278,0.178758],"trend_3bar":"MIXED","projected_rvol":2.652316},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1156.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.979452,"bid":4.99,"ask":5.22,"spread_pct":4.505387,"quote_size_imbalance":null,"quote_age_s":22.066173},"context":{"vwap":5.112357,"price_vs_vwap_pct":1.074713,"ema9":5.038884,"ema20":5.019729,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-13.734558,"dist_to_hod_atr":22.262682,"atr":0.036954,"spread_atr":6.223917,"own_change_pct":0.099602,"rel_strength_pct":{"SPY":0.145837,"IWM":0.141705}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.175085},"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":"01cdafbe2178","ts":"2026-09-15T17:25:45+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.11 below VWAP $5.11","plan":{"state":"PASS","setup":"","stop":4.645,"target":5.3208,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":1.6,"room_to_5d_high_atr":2.87},"price":5.105,"vwap":5.1124,"ext_from_open_pct":-3.13,"max_ext_allowed_pct":4.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":0.1683,"volatility":"high"},"price":5.105,"volume":{"bars":197,"last_bar_volume":120.0,"baseline_avg":671.3,"bar_rvol":0.178758,"raw_accel":-0.284969,"smooth_accel":-0.644123,"accel_momentum":-22.019123,"rvol_3bar":[1.902447,0.016278,0.178758],"trend_3bar":"MIXED","projected_rvol":2.556234},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":1156.0,"sell_vol":112.0,"unclassified_vol":0.0,"imbalance":0.823344,"bid":4.99,"ask":5.22,"spread_pct":4.505387,"quote_size_imbalance":null,"quote_age_s":27.066173},"context":{"vwap":5.112357,"price_vs_vwap_pct":-0.143903,"ema9":5.038884,"ema20":5.019729,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.774624,"dist_to_hod_atr":23.948552,"atr":0.036954,"spread_atr":6.223917,"own_change_pct":0.099602,"rel_strength_pct":{"SPY":0.145837,"IWM":0.141705}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.147179},"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":"d2a7ae6dc56f","ts":"2026-09-15T17:25:50+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7812,"target":13.2,"target_label":"ceiling","reward_risk":1.32,"pos_in_5d_range_pct":47.5,"room_to_5d_high_atr":1.09},"price":12.962,"vwap":12.9017,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":4.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.0224,"volatility":"medium"},"price":12.962,"volume":{"bars":234,"last_bar_volume":220.0,"baseline_avg":942.1,"bar_rvol":0.233521,"raw_accel":-0.065917,"smooth_accel":0.378092,"accel_momentum":-0.175306,"rvol_3bar":[0.120298,0.05101,0.233521],"trend_3bar":"MIXED","projected_rvol":0.094258},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":65.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.940299,"bid":12.91,"ask":12.99,"spread_pct":0.617761,"quote_size_imbalance":null,"quote_age_s":44.352809},"context":{"vwap":12.901681,"price_vs_vwap_pct":0.467527,"ema9":12.950186,"ema20":12.978687,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.614576,"dist_to_hod_atr":8.334891,"atr":0.041752,"spread_atr":1.916067,"own_change_pct":-0.328891,"rel_strength_pct":{"SPY":-0.282656,"IWM":-0.286788}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.219579},"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":"2c08a4c5b435","ts":"2026-09-15T17:26:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8479,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.225,"trend":"flat","recent_slope_pct":-0.0458,"volatility":"high"},"price":7.85,"volume":{"bars":236,"last_bar_volume":159145.0,"baseline_avg":12751.45,"bar_rvol":12.480541,"raw_accel":15.496838,"smooth_accel":28.598737,"accel_momentum":20.251859,"rvol_3bar":[3.127981,0.535451,12.480541],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":598.0,"sell_vol":16260.0,"unclassified_vol":0.0,"imbalance":-0.929054,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.346071},"context":{"vwap":7.847871,"price_vs_vwap_pct":0.027126,"ema9":7.860642,"ema20":7.859937,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":4.524206,"atr":0.017683,"spread_atr":0.565526,"own_change_pct":-0.317259,"rel_strength_pct":{"SPY":-0.280273,"IWM":-0.308487}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-11.595103},"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":"cd011378668a","ts":"2026-09-15T17:26:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3938,"target":8.675,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":11.2,"room_to_5d_high_atr":3.64},"price":8.585,"vwap":8.416,"ext_from_open_pct":2.57,"max_ext_allowed_pct":4.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":-0.0196,"volatility":"high"},"price":8.585,"volume":{"bars":236,"last_bar_volume":39505.0,"baseline_avg":87072.9,"bar_rvol":0.4537,"raw_accel":-0.410329,"smooth_accel":-0.30173,"accel_momentum":0.117145,"rvol_3bar":[0.336087,0.726152,0.4537],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":138,"trade_rate":4.6,"buy_vol":26374.0,"sell_vol":2255.0,"unclassified_vol":0.0,"imbalance":0.842467,"bid":8.58,"ask":8.59,"spread_pct":0.116482,"quote_size_imbalance":null,"quote_age_s":0.010793},"context":{"vwap":8.415896,"price_vs_vwap_pct":2.009337,"ema9":8.595571,"ema20":8.597818,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.037464,"dist_to_hod_atr":3.261997,"atr":0.02759,"spread_atr":0.362444,"own_change_pct":-0.099979,"rel_strength_pct":{"SPY":-0.062993,"IWM":-0.091207}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.382228},"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":"2a8d4700d032","ts":"2026-09-15T17:26:10+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.4019,"target":8.675,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":11.4,"room_to_5d_high_atr":3.63},"price":8.5931,"vwap":8.4161,"ext_from_open_pct":2.67,"max_ext_allowed_pct":4.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":-0.0007,"volatility":"high"},"price":8.5931,"volume":{"bars":236,"last_bar_volume":39505.0,"baseline_avg":87072.9,"bar_rvol":0.4537,"raw_accel":-0.410329,"smooth_accel":-0.30173,"accel_momentum":0.117145,"rvol_3bar":[0.336087,0.726152,0.4537],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":34963.0,"sell_vol":2246.0,"unclassified_vol":0.0,"imbalance":0.879277,"bid":8.59,"ask":8.6,"spread_pct":0.116347,"quote_size_imbalance":null,"quote_age_s":0.420063},"context":{"vwap":8.415896,"price_vs_vwap_pct":2.105584,"ema9":8.595571,"ema20":8.597818,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.944092,"dist_to_hod_atr":2.968418,"atr":0.02759,"spread_atr":0.362444,"own_change_pct":-0.099979,"rel_strength_pct":{"SPY":-0.062993,"IWM":-0.091207}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.398928},"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":"732db42c11c2","ts":"2026-09-15T17:26:15+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7304,"target":7.875,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.8487,"vwap":7.8479,"ext_from_open_pct":-0.65,"max_ext_allowed_pct":3.0,"volume_pace":1.224,"trend":"flat","recent_slope_pct":-0.0491,"volatility":"high"},"price":7.8487,"volume":{"bars":236,"last_bar_volume":159145.0,"baseline_avg":12751.45,"bar_rvol":12.480541,"raw_accel":15.496838,"smooth_accel":28.598737,"accel_momentum":20.251859,"rvol_3bar":[3.127981,0.535451,12.480541],"trend_3bar":"MIXED","projected_rvol":4.79914},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":539.0,"sell_vol":15499.0,"unclassified_vol":0.0,"imbalance":-0.932785,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":3.168148},"context":{"vwap":7.847871,"price_vs_vwap_pct":0.010561,"ema9":7.860642,"ema20":7.859937,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.025221,"dist_to_hod_atr":4.597724,"atr":0.017683,"spread_atr":0.565526,"own_change_pct":-0.317259,"rel_strength_pct":{"SPY":-0.280273,"IWM":-0.308487}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-11.641657},"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":"bc2a1192ba0a","ts":"2026-09-15T17:26:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":9.8458,"target":10.07,"target_label":"ceiling","reward_risk":2.49,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.6937,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":3.817,"trend":"flat","recent_slope_pct":-0.1258,"volatility":"low"},"price":9.91,"volume":{"bars":236,"last_bar_volume":9527.0,"baseline_avg":7530.4,"bar_rvol":1.265139,"raw_accel":-0.076304,"smooth_accel":9.113102,"accel_momentum":4.884052,"rvol_3bar":[0.722271,1.177673,1.265139],"trend_3bar":"ACCELERATING","projected_rvol":0.224849},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":322.0,"sell_vol":868.0,"unclassified_vol":0.0,"imbalance":-0.458824,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":4.557612},"context":{"vwap":9.693518,"price_vs_vwap_pct":2.233267,"ema9":9.959735,"ema20":9.971331,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":5.278646,"atr":0.054938,"spread_atr":0.364045,"own_change_pct":-0.650976,"rel_strength_pct":{"SPY":-0.61399,"IWM":-0.642204}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.580475},"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":"0880e1867293","ts":"2026-09-15T17:27:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7363,"target":7.875,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":19.0,"room_to_5d_high_atr":2.74},"price":7.8546,"vwap":7.8479,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":1.221,"trend":"flat","recent_slope_pct":0.0239,"volatility":"high"},"price":7.8546,"volume":{"bars":237,"last_bar_volume":18557.0,"baseline_avg":20103.2,"bar_rvol":0.923087,"raw_accel":-0.883396,"smooth_accel":2.193975,"accel_momentum":-26.404762,"rvol_3bar":[0.535451,12.480541,0.923087],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":509.0,"sell_vol":185.0,"unclassified_vol":0.0,"imbalance":0.466859,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.159606},"context":{"vwap":7.847911,"price_vs_vwap_pct":0.085233,"ema9":7.859434,"ema20":7.859428,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.95082,"dist_to_hod_atr":4.376912,"atr":0.017227,"spread_atr":0.580492,"own_change_pct":-0.24638,"rel_strength_pct":{"SPY":-0.227886,"IWM":-0.24638}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.430951},"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":"0337993486f9","ts":"2026-09-15T17:27:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.0% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.825,"target":10.07,"target_label":"ceiling","reward_risk":1.45,"pos_in_5d_range_pct":504.1,"room_to_5d_high_atr":-5.82},"price":9.925,"vwap":9.6939,"ext_from_open_pct":5.03,"max_ext_allowed_pct":5.0,"volume_pace":3.812,"trend":"flat","recent_slope_pct":-0.0572,"volatility":"low"},"price":9.925,"volume":{"bars":237,"last_bar_volume":2392.0,"baseline_avg":7735.85,"bar_rvol":0.30921,"raw_accel":-0.748924,"smooth_accel":1.342042,"accel_momentum":-7.77106,"rvol_3bar":[1.177673,1.265139,0.30921],"trend_3bar":"MIXED","projected_rvol":0.341656},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1457.0,"sell_vol":405.0,"unclassified_vol":0.0,"imbalance":0.564984,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":19.55229},"context":{"vwap":9.693777,"price_vs_vwap_pct":2.385269,"ema9":9.949788,"ema20":9.96549,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.696078,"dist_to_hod_atr":5.182405,"atr":0.053064,"spread_atr":0.942255,"own_change_pct":-0.751127,"rel_strength_pct":{"SPY":-0.732632,"IWM":-0.751127}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.174699},"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":"66055e87975a","ts":"2026-09-15T17:28:35+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.3624,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0149,"volatility":"medium"},"price":8.47,"volume":{"bars":238,"last_bar_volume":1397.0,"baseline_avg":596.85,"bar_rvol":2.340622,"raw_accel":3.989286,"smooth_accel":6.255132,"accel_momentum":4.361305,"rvol_3bar":[1.190885,0.469602,2.340622],"trend_3bar":"MIXED","projected_rvol":5.353822},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":550.0,"sell_vol":1314.0,"unclassified_vol":0.0,"imbalance":-0.409871,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":1.844847},"context":{"vwap":8.361695,"price_vs_vwap_pct":1.295248,"ema9":8.474172,"ema20":8.473875,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":3.80416,"atr":0.007886,"spread_atr":1.268053,"own_change_pct":0.04722,"rel_strength_pct":{"SPY":0.040613,"IWM":0.015627}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.959353},"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":"b14b4b73cc4b","ts":"2026-09-15T17:29:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"BUY","setup":"pullback","stop":9.8758,"target":10.07,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":508.1,"room_to_5d_high_atr":-5.88},"price":9.94,"vwap":9.6946,"ext_from_open_pct":5.19,"max_ext_allowed_pct":5.0,"volume_pace":3.787,"trend":"flat","recent_slope_pct":0.0705,"volatility":"low"},"price":9.94,"volume":{"bars":239,"last_bar_volume":6276.0,"baseline_avg":6756.9,"bar_rvol":0.928828,"raw_accel":2.715313,"smooth_accel":-0.642565,"accel_momentum":-0.333537,"rvol_3bar":[0.30921,0.145583,0.928828],"trend_3bar":"MIXED","projected_rvol":0.057497},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":228.0,"sell_vol":31.0,"unclassified_vol":0.0,"imbalance":0.760618,"bid":9.93,"ask":9.95,"spread_pct":0.201207,"quote_size_imbalance":null,"quote_age_s":2.435546},"context":{"vwap":9.694611,"price_vs_vwap_pct":2.531195,"ema9":9.943865,"ema20":9.959573,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.54902,"dist_to_hod_atr":5.21808,"atr":0.049827,"spread_atr":0.401391,"own_change_pct":0.050327,"rel_strength_pct":{"SPY":0.054952,"IWM":0.029268}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.706483},"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":"01bcab589f57","ts":"2026-09-15T17:29:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"WATCH","setup":"","stop":9.8708,"target":10.07,"target_label":"ceiling","reward_risk":2.1,"pos_in_5d_range_pct":506.8,"room_to_5d_high_atr":-5.86},"price":9.935,"vwap":9.6958,"ext_from_open_pct":5.13,"max_ext_allowed_pct":5.0,"volume_pace":3.804,"trend":"flat","recent_slope_pct":0.0604,"volatility":"low"},"price":9.935,"volume":{"bars":239,"last_bar_volume":6276.0,"baseline_avg":6756.9,"bar_rvol":0.928828,"raw_accel":2.715313,"smooth_accel":-0.642565,"accel_momentum":-0.333537,"rvol_3bar":[0.30921,0.145583,0.928828],"trend_3bar":"MIXED","projected_rvol":2.065247},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":8581.0,"sell_vol":1885.0,"unclassified_vol":0.0,"imbalance":0.639786,"bid":9.92,"ask":9.95,"spread_pct":0.301963,"quote_size_imbalance":null,"quote_age_s":0.207598},"context":{"vwap":9.694611,"price_vs_vwap_pct":2.47962,"ema9":9.943865,"ema20":9.959573,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.598039,"dist_to_hod_atr":5.318428,"atr":0.049827,"spread_atr":0.602086,"own_change_pct":0.050327,"rel_strength_pct":{"SPY":0.054952,"IWM":0.029268}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.594251},"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":"55ef893f3dce","ts":"2026-09-15T17:30:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"PASS","setup":"","stop":9.8758,"target":10.07,"target_label":"ceiling","reward_risk":2.02,"pos_in_5d_range_pct":508.1,"room_to_5d_high_atr":-5.88},"price":9.94,"vwap":9.696,"ext_from_open_pct":5.19,"max_ext_allowed_pct":5.0,"volume_pace":3.801,"trend":"flat","recent_slope_pct":0.0856,"volatility":"low"},"price":9.94,"volume":{"bars":240,"last_bar_volume":11175.0,"baseline_avg":6371.45,"bar_rvol":1.753918,"raw_accel":0.780593,"smooth_accel":-0.169388,"accel_momentum":0.473177,"rvol_3bar":[0.145583,0.928828,1.753918],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":112,"trade_rate":3.733333,"buy_vol":9617.0,"sell_vol":2005.0,"unclassified_vol":0.0,"imbalance":0.654965,"bid":9.92,"ask":9.95,"spread_pct":0.301963,"quote_size_imbalance":null,"quote_age_s":1.353155},"context":{"vwap":9.695932,"price_vs_vwap_pct":2.517218,"ema9":9.945092,"ema20":9.958662,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.54902,"dist_to_hod_atr":5.45116,"atr":0.047696,"spread_atr":0.62898,"own_change_pct":0.032171,"rel_strength_pct":{"SPY":0.001774,"IWM":0.00409}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.148754},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bc59fe6c705c","ts":"2026-09-15T17:30:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3825,"target":8.5586,"target_label":"premarket_high","reward_risk":0.95,"pos_in_5d_range_pct":65.8,"room_to_5d_high_atr":0.83},"price":8.4726,"vwap":8.3626,"ext_from_open_pct":1.71,"max_ext_allowed_pct":4.0,"volume_pace":0.825,"trend":"flat","recent_slope_pct":-0.0137,"volatility":"medium"},"price":8.4726,"volume":{"bars":240,"last_bar_volume":42.0,"baseline_avg":635.95,"bar_rvol":0.066043,"raw_accel":-0.983638,"smooth_accel":2.418089,"accel_momentum":-0.934732,"rvol_3bar":[2.340622,4.727005,0.066043],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":182.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.967568,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.400548},"context":{"vwap":8.36255,"price_vs_vwap_pct":1.31599,"ema9":8.46995,"ema20":8.471727,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.322353,"dist_to_hod_atr":2.821105,"atr":0.009713,"spread_atr":1.0296,"own_change_pct":-0.077876,"rel_strength_pct":{"SPY":-0.108273,"IWM":-0.105957}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.063901},"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":"a985b9e78147","ts":"2026-09-15T17:30:40+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.11% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.89,"target":5.3208,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":4.7,"room_to_5d_high_atr":2.78},"price":5.21,"vwap":5.1128,"ext_from_open_pct":-1.14,"max_ext_allowed_pct":4.0,"volume_pace":0.683,"trend":"flat","recent_slope_pct":0.2056,"volatility":"high"},"price":5.21,"volume":{"bars":202,"last_bar_volume":3010.0,"baseline_avg":655.35,"bar_rvol":4.592966,"raw_accel":0.468293,"smooth_accel":2.921703,"accel_momentum":2.071498,"rvol_3bar":[0.974732,3.674823,4.592966],"trend_3bar":"ACCELERATING","projected_rvol":3.822385},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":1570.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.88024,"bid":5.06,"ask":5.22,"spread_pct":3.11284,"quote_size_imbalance":null,"quote_age_s":15.022614},"context":{"vwap":5.112229,"price_vs_vwap_pct":1.912493,"ema9":5.084285,"ema20":5.054942,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-13.021703,"dist_to_hod_atr":16.38591,"atr":0.047602,"spread_atr":3.361212,"own_change_pct":0.706468,"rel_strength_pct":{"SPY":0.676071,"IWM":0.678387}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.04291},"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":"b6f45e130c9a","ts":"2026-09-15T17:31:05+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":4.82,"target":5.3208,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":2.6,"room_to_5d_high_atr":2.84},"price":5.14,"vwap":5.1128,"ext_from_open_pct":-2.47,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":0.2338,"volatility":"high"},"price":5.14,"volume":{"bars":203,"last_bar_volume":1670.0,"baseline_avg":790.05,"bar_rvol":2.11379,"raw_accel":-0.445183,"smooth_accel":2.388721,"accel_momentum":-0.532982,"rvol_3bar":[3.674823,4.592966,2.11379],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":1570.0,"sell_vol":114.0,"unclassified_vol":0.0,"imbalance":0.864608,"bid":5.06,"ask":5.22,"spread_pct":3.11284,"quote_size_imbalance":null,"quote_age_s":10.451371},"context":{"vwap":5.11276,"price_vs_vwap_pct":0.532777,"ema9":5.109428,"ema20":5.069709,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.190317,"dist_to_hod_atr":15.488251,"atr":0.05488,"spread_atr":2.915435,"own_change_pct":1.956947,"rel_strength_pct":{"SPY":1.949019,"IWM":1.979757}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.8276},"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":"dd390c7c42d5","ts":"2026-09-15T17:31:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6568,"target":10.935,"target_label":"prev_day_high","reward_risk":0.88,"pos_in_5d_range_pct":46.2,"room_to_5d_high_atr":1.17},"price":10.805,"vwap":10.5652,"ext_from_open_pct":3.79,"max_ext_allowed_pct":4.0,"volume_pace":0.992,"trend":"flat","recent_slope_pct":-0.1108,"volatility":"medium"},"price":10.805,"volume":{"bars":241,"last_bar_volume":20557.0,"baseline_avg":18224.9,"bar_rvol":1.127962,"raw_accel":3.511849,"smooth_accel":0.245003,"accel_momentum":0.978165,"rvol_3bar":[0.568794,0.171127,1.127962],"trend_3bar":"MIXED","projected_rvol":1.130761},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":3908.0,"sell_vol":1564.0,"unclassified_vol":0.0,"imbalance":0.428363,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.073416},"context":{"vwap":10.564946,"price_vs_vwap_pct":2.272179,"ema9":10.838169,"ema20":10.843535,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.234004,"dist_to_hod_atr":3.462485,"atr":0.038989,"spread_atr":0.25648,"own_change_pct":-0.440439,"rel_strength_pct":{"SPY":-0.448368,"IWM":-0.41763}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.483177},"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":"fb50eee167c9","ts":"2026-09-15T17:31:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6849,"target":10.935,"target_label":"prev_day_high","reward_risk":0.69,"pos_in_5d_range_pct":48.3,"room_to_5d_high_atr":1.12},"price":10.8331,"vwap":10.5653,"ext_from_open_pct":4.06,"max_ext_allowed_pct":3.0,"volume_pace":0.992,"trend":"flat","recent_slope_pct":-0.0589,"volatility":"medium"},"price":10.8331,"volume":{"bars":241,"last_bar_volume":20557.0,"baseline_avg":18224.9,"bar_rvol":1.127962,"raw_accel":3.511849,"smooth_accel":0.245003,"accel_momentum":0.978165,"rvol_3bar":[0.568794,0.171127,1.127962],"trend_3bar":"MIXED","projected_rvol":1.230789},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":4048.0,"sell_vol":3515.0,"unclassified_vol":0.0,"imbalance":0.070475,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.272616},"context":{"vwap":10.564946,"price_vs_vwap_pct":2.538152,"ema9":10.838169,"ema20":10.843535,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.977148,"dist_to_hod_atr":2.741775,"atr":0.038989,"spread_atr":0.25648,"own_change_pct":-0.440439,"rel_strength_pct":{"SPY":-0.448368,"IWM":-0.41763}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.079493},"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":"858b4f292c21","ts":"2026-09-15T17:31:45+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.11% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.8447,"target":5.3208,"target_label":"premarket_high","reward_risk":0.49,"pos_in_5d_range_pct":3.3,"room_to_5d_high_atr":2.82},"price":5.1647,"vwap":5.1128,"ext_from_open_pct":-2.0,"max_ext_allowed_pct":4.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":0.3297,"volatility":"high"},"price":5.1647,"volume":{"bars":203,"last_bar_volume":1670.0,"baseline_avg":790.05,"bar_rvol":2.11379,"raw_accel":-0.445183,"smooth_accel":2.388721,"accel_momentum":-0.532982,"rvol_3bar":[3.674823,4.592966,2.11379],"trend_3bar":"MIXED","projected_rvol":1.139168},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":402.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":5.06,"ask":5.22,"spread_pct":3.11284,"quote_size_imbalance":null,"quote_age_s":50.451371},"context":{"vwap":5.11276,"price_vs_vwap_pct":1.015882,"ema9":5.109428,"ema20":5.069709,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-13.777963,"dist_to_hod_atr":15.03818,"atr":0.05488,"spread_atr":2.915435,"own_change_pct":1.956947,"rel_strength_pct":{"SPY":1.949019,"IWM":1.979757}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.11379},"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":"c8cbd86a8b6d","ts":"2026-09-15T17:31:55+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.11% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":4.82,"target":5.3208,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":2.6,"room_to_5d_high_atr":2.84},"price":5.14,"vwap":5.1128,"ext_from_open_pct":-2.47,"max_ext_allowed_pct":4.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":0.2338,"volatility":"high"},"price":5.14,"volume":{"bars":203,"last_bar_volume":1670.0,"baseline_avg":790.05,"bar_rvol":2.11379,"raw_accel":-0.445183,"smooth_accel":2.388721,"accel_momentum":-0.532982,"rvol_3bar":[3.674823,4.592966,2.11379],"trend_3bar":"MIXED","projected_rvol":1.042512},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":402.0,"sell_vol":80.0,"unclassified_vol":0.0,"imbalance":0.66805,"bid":5.06,"ask":5.22,"spread_pct":3.11284,"quote_size_imbalance":null,"quote_age_s":60.451371},"context":{"vwap":5.11276,"price_vs_vwap_pct":0.532777,"ema9":5.109428,"ema20":5.069709,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.190317,"dist_to_hod_atr":15.488251,"atr":0.05488,"spread_atr":2.915435,"own_change_pct":1.956947,"rel_strength_pct":{"SPY":1.949019,"IWM":1.979757}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.412117},"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":"9d0a2334d66d","ts":"2026-09-15T17:32:00+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6768,"target":10.935,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.825,"vwap":10.5655,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.991,"trend":"flat","recent_slope_pct":-0.0739,"volatility":"medium"},"price":10.825,"volume":{"bars":241,"last_bar_volume":20557.0,"baseline_avg":18224.9,"bar_rvol":1.127962,"raw_accel":3.511849,"smooth_accel":0.245003,"accel_momentum":0.978165,"rvol_3bar":[0.568794,0.171127,1.127962],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":2706.0,"sell_vol":2846.0,"unclassified_vol":0.0,"imbalance":-0.025216,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":1.12497},"context":{"vwap":10.564946,"price_vs_vwap_pct":2.461484,"ema9":10.838169,"ema20":10.843535,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.051188,"dist_to_hod_atr":2.949524,"atr":0.038989,"spread_atr":0.25648,"own_change_pct":-0.440439,"rel_strength_pct":{"SPY":-0.470829,"IWM":-0.480796}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.028443},"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":"9bc941680cb3","ts":"2026-09-15T17:32:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.6982,"target":10.935,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":49.4,"room_to_5d_high_atr":1.1},"price":10.8464,"vwap":10.5655,"ext_from_open_pct":4.19,"max_ext_allowed_pct":4.0,"volume_pace":0.99,"trend":"flat","recent_slope_pct":-0.0086,"volatility":"medium"},"price":10.8464,"volume":{"bars":242,"last_bar_volume":13379.0,"baseline_avg":17816.65,"bar_rvol":0.750927,"raw_accel":-0.349175,"smooth_accel":0.330128,"accel_momentum":0.085125,"rvol_3bar":[0.171127,1.127962,0.750927],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1475.0,"sell_vol":1910.0,"unclassified_vol":0.0,"imbalance":-0.128508,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":1.645475},"context":{"vwap":10.565529,"price_vs_vwap_pct":2.658369,"ema9":10.835535,"ema20":10.84177,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.855576,"dist_to_hod_atr":2.368073,"atr":0.039526,"spread_atr":0.252999,"own_change_pct":-0.26075,"rel_strength_pct":{"SPY":-0.29114,"IWM":-0.301107}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.0965},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"739934a86553","ts":"2026-09-15T17:32:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6768,"target":10.935,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.825,"vwap":10.5656,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.99,"trend":"flat","recent_slope_pct":-0.0481,"volatility":"medium"},"price":10.825,"volume":{"bars":242,"last_bar_volume":13379.0,"baseline_avg":17816.65,"bar_rvol":0.750927,"raw_accel":-0.349175,"smooth_accel":0.330128,"accel_momentum":0.085125,"rvol_3bar":[0.171127,1.127962,0.750927],"trend_3bar":"MIXED","projected_rvol":0.125052},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1182.0,"sell_vol":440.0,"unclassified_vol":0.0,"imbalance":0.45746,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":1.882918},"context":{"vwap":10.565529,"price_vs_vwap_pct":2.455824,"ema9":10.835535,"ema20":10.84177,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.051188,"dist_to_hod_atr":2.909491,"atr":0.039526,"spread_atr":0.252999,"own_change_pct":-0.26075,"rel_strength_pct":{"SPY":-0.29114,"IWM":-0.301107}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.343519},"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":"5fc69090e725","ts":"2026-09-15T17:32:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.6805,"target":10.935,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":48.0,"room_to_5d_high_atr":1.13},"price":10.8287,"vwap":10.5656,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":0.989,"trend":"flat","recent_slope_pct":-0.0413,"volatility":"medium"},"price":10.8287,"volume":{"bars":242,"last_bar_volume":13379.0,"baseline_avg":17816.65,"bar_rvol":0.750927,"raw_accel":-0.349175,"smooth_accel":0.330128,"accel_momentum":0.085125,"rvol_3bar":[0.171127,1.127962,0.750927],"trend_3bar":"MIXED","projected_rvol":0.10305},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":677.0,"sell_vol":409.0,"unclassified_vol":0.0,"imbalance":0.246777,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":1.366353},"context":{"vwap":10.565529,"price_vs_vwap_pct":2.490843,"ema9":10.835535,"ema20":10.84177,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.017367,"dist_to_hod_atr":2.815881,"atr":0.039526,"spread_atr":0.252999,"own_change_pct":-0.26075,"rel_strength_pct":{"SPY":-0.29114,"IWM":-0.301107}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.185312},"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":"5786e8f6c869","ts":"2026-09-15T17:32:25+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6768,"target":10.935,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.825,"vwap":10.5656,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":0.989,"trend":"flat","recent_slope_pct":-0.0481,"volatility":"medium"},"price":10.825,"volume":{"bars":242,"last_bar_volume":13379.0,"baseline_avg":17816.65,"bar_rvol":0.750927,"raw_accel":-0.349175,"smooth_accel":0.330128,"accel_momentum":0.085125,"rvol_3bar":[0.171127,1.127962,0.750927],"trend_3bar":"MIXED","projected_rvol":0.127027},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":677.0,"sell_vol":739.0,"unclassified_vol":0.0,"imbalance":-0.043785,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.978318},"context":{"vwap":10.565529,"price_vs_vwap_pct":2.455824,"ema9":10.835535,"ema20":10.84177,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.051188,"dist_to_hod_atr":2.909491,"atr":0.039526,"spread_atr":0.252999,"own_change_pct":-0.26075,"rel_strength_pct":{"SPY":-0.29114,"IWM":-0.301107}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.03288},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c78dc4f76bb2","ts":"2026-09-15T17:32:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6789,"target":10.935,"target_label":"prev_day_high","reward_risk":0.73,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":1.13},"price":10.8271,"vwap":10.5658,"ext_from_open_pct":4.01,"max_ext_allowed_pct":3.0,"volume_pace":0.989,"trend":"flat","recent_slope_pct":-0.0442,"volatility":"medium"},"price":10.8271,"volume":{"bars":242,"last_bar_volume":13379.0,"baseline_avg":17816.65,"bar_rvol":0.750927,"raw_accel":-0.349175,"smooth_accel":0.330128,"accel_momentum":0.085125,"rvol_3bar":[0.171127,1.127962,0.750927],"trend_3bar":"MIXED","projected_rvol":0.57261},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":1647.0,"sell_vol":3454.0,"unclassified_vol":0.0,"imbalance":-0.354244,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.017141},"context":{"vwap":10.565529,"price_vs_vwap_pct":2.4757,"ema9":10.835535,"ema20":10.84177,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.031993,"dist_to_hod_atr":2.856361,"atr":0.039526,"spread_atr":0.252999,"own_change_pct":-0.26075,"rel_strength_pct":{"SPY":-0.29114,"IWM":-0.301107}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.266012},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"31fb5c330181","ts":"2026-09-15T17:32:55+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6718,"target":10.935,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":1.15},"price":10.82,"vwap":10.5659,"ext_from_open_pct":3.94,"max_ext_allowed_pct":4.0,"volume_pace":0.988,"trend":"flat","recent_slope_pct":-0.0574,"volatility":"medium"},"price":10.82,"volume":{"bars":242,"last_bar_volume":13379.0,"baseline_avg":17816.65,"bar_rvol":0.750927,"raw_accel":-0.349175,"smooth_accel":0.330128,"accel_momentum":0.085125,"rvol_3bar":[0.171127,1.127962,0.750927],"trend_3bar":"MIXED","projected_rvol":0.498839},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":2783.0,"sell_vol":4421.0,"unclassified_vol":0.0,"imbalance":-0.227374,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.073877},"context":{"vwap":10.565529,"price_vs_vwap_pct":2.4085,"ema9":10.835535,"ema20":10.84177,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.096892,"dist_to_hod_atr":3.035991,"atr":0.039526,"spread_atr":0.252999,"own_change_pct":-0.26075,"rel_strength_pct":{"SPY":-0.29114,"IWM":-0.301107}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.170741},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"cbe4d9400978","ts":"2026-09-15T17:33:00+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 3.11% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.82,"target":5.3208,"target_label":"premarket_high","reward_risk":0.57,"pos_in_5d_range_pct":2.6,"room_to_5d_high_atr":2.84},"price":5.14,"vwap":5.1128,"ext_from_open_pct":-2.47,"max_ext_allowed_pct":3.0,"volume_pace":0.68,"trend":"flat","recent_slope_pct":0.1547,"volatility":"high"},"price":5.14,"volume":{"bars":204,"last_bar_volume":755.0,"baseline_avg":857.95,"bar_rvol":0.880005,"raw_accel":-0.547904,"smooth_accel":1.009242,"accel_momentum":-1.379479,"rvol_3bar":[4.592966,2.11379,0.880005],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":0.0,"sell_vol":300.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.06,"ask":5.22,"spread_pct":3.11284,"quote_size_imbalance":null,"quote_age_s":125.451371},"context":{"vwap":5.112808,"price_vs_vwap_pct":0.531842,"ema9":5.115542,"ema20":5.076404,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.190317,"dist_to_hod_atr":14.073779,"atr":0.060396,"spread_atr":2.649182,"own_change_pct":0.194932,"rel_strength_pct":{"SPY":0.153971,"IWM":0.117728}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.880005},"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":"77ca79bf8418","ts":"2026-09-15T17:33:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6982,"target":10.935,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":49.4,"room_to_5d_high_atr":1.1},"price":10.8464,"vwap":10.5659,"ext_from_open_pct":4.19,"max_ext_allowed_pct":3.0,"volume_pace":0.988,"trend":"flat","recent_slope_pct":-0.0086,"volatility":"medium"},"price":10.8464,"volume":{"bars":242,"last_bar_volume":13379.0,"baseline_avg":17816.65,"bar_rvol":0.750927,"raw_accel":-0.349175,"smooth_accel":0.330128,"accel_momentum":0.085125,"rvol_3bar":[0.171127,1.127962,0.750927],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":1950.0,"sell_vol":1757.0,"unclassified_vol":0.0,"imbalance":0.052064,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.07173},"context":{"vwap":10.565529,"price_vs_vwap_pct":2.658369,"ema9":10.835535,"ema20":10.84177,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.855576,"dist_to_hod_atr":2.368073,"atr":0.039526,"spread_atr":0.252999,"own_change_pct":-0.26075,"rel_strength_pct":{"SPY":-0.301711,"IWM":-0.337954}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.039096},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0dbaea581513","ts":"2026-09-15T17:33:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":12.4859,"target":12.72,"target_label":"premarket_high","reward_risk":0.07,"pos_in_5d_range_pct":16.4,"room_to_5d_high_atr":2.01},"price":12.705,"vwap":12.6157,"ext_from_open_pct":1.64,"max_ext_allowed_pct":3.0,"volume_pace":0.889,"trend":"flat","recent_slope_pct":0.0233,"volatility":"high"},"price":12.705,"volume":{"bars":243,"last_bar_volume":4913.0,"baseline_avg":6512.1,"bar_rvol":0.754442,"raw_accel":-0.487161,"smooth_accel":-0.039106,"accel_momentum":-0.442155,"rvol_3bar":[1.001205,1.265513,0.754442],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":4555.0,"sell_vol":2494.0,"unclassified_vol":0.0,"imbalance":0.292382,"bid":12.7,"ask":12.71,"spread_pct":0.078709,"quote_size_imbalance":null,"quote_age_s":0.047162},"context":{"vwap":12.615612,"price_vs_vwap_pct":0.708554,"ema9":12.691515,"ema20":12.691837,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.419355,"dist_to_hod_atr":9.98438,"atr":0.031549,"spread_atr":0.316964,"own_change_pct":0.029945,"rel_strength_pct":{"SPY":-0.011015,"IWM":-0.047259}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.220585},"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":"91606f82e439","ts":"2026-09-15T17:33:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.4028,"target":5.52,"target_label":"ceiling","reward_risk":0.88,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":1.71},"price":5.465,"vwap":5.4126,"ext_from_open_pct":0.09,"max_ext_allowed_pct":4.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":0.0009,"volatility":"medium"},"price":5.465,"volume":{"bars":243,"last_bar_volume":22245.0,"baseline_avg":48701.85,"bar_rvol":0.456759,"raw_accel":0.73993,"smooth_accel":-0.530323,"accel_momentum":-0.144794,"rvol_3bar":[1.447993,0.263997,0.456759],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":5259.0,"sell_vol":1391.0,"unclassified_vol":0.0,"imbalance":0.581654,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":1.755673},"context":{"vwap":5.412626,"price_vs_vwap_pct":0.967618,"ema9":5.46376,"ema20":5.464704,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.531532,"dist_to_hod_atr":4.182165,"atr":0.020324,"spread_atr":0.492019,"own_change_pct":0.009149,"rel_strength_pct":{"SPY":-0.031811,"IWM":-0.068055}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.265676},"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":"17df546e9851","ts":"2026-09-15T17:34:10+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7292,"target":13.2,"target_label":"ceiling","reward_risk":1.6,"pos_in_5d_range_pct":44.0,"room_to_5d_high_atr":1.16},"price":12.91,"vwap":12.9019,"ext_from_open_pct":-1.07,"max_ext_allowed_pct":3.0,"volume_pace":0.781,"trend":"flat","recent_slope_pct":-0.0463,"volatility":"medium"},"price":12.91,"volume":{"bars":243,"last_bar_volume":52.0,"baseline_avg":164.6,"bar_rvol":0.315917,"raw_accel":-0.212121,"smooth_accel":-0.681319,"accel_momentum":-0.322705,"rvol_3bar":[0.712723,0.403423,0.315917],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":4.0,"sell_vol":86.0,"unclassified_vol":0.0,"imbalance":-0.911111,"bid":12.91,"ask":12.99,"spread_pct":0.617761,"quote_size_imbalance":null,"quote_age_s":1.587402},"context":{"vwap":12.901901,"price_vs_vwap_pct":0.062776,"ema9":12.939079,"ema20":12.955141,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.005259,"dist_to_hod_atr":8.274991,"atr":0.048338,"spread_atr":1.654998,"own_change_pct":-0.189189,"rel_strength_pct":{"SPY":-0.240064,"IWM":-0.264634}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.287836},"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":"18170720bea0","ts":"2026-09-15T17:34:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7323,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":2.75},"price":7.8506,"vwap":7.848,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.195,"trend":"flat","recent_slope_pct":-0.0351,"volatility":"high"},"price":7.8506,"volume":{"bars":244,"last_bar_volume":1091.0,"baseline_avg":17735.35,"bar_rvol":0.061516,"raw_accel":-0.874265,"smooth_accel":-0.178399,"accel_momentum":-0.429095,"rvol_3bar":[0.02494,0.501403,0.061516],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":75.0,"sell_vol":769.0,"unclassified_vol":0.0,"imbalance":-0.822275,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":1.418468},"context":{"vwap":7.848002,"price_vs_vwap_pct":0.033102,"ema9":7.856872,"ema20":7.857944,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.001261,"dist_to_hod_atr":5.26615,"atr":0.015077,"spread_atr":0.663243,"own_change_pct":-0.01528,"rel_strength_pct":{"SPY":-0.066155,"IWM":-0.090725}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.050583},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"15feaed32144","ts":"2026-09-15T17:34:20+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1132,"target":11.42,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":26.0,"room_to_5d_high_atr":1.22},"price":11.33,"vwap":11.2872,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":0.1822,"volatility":"high"},"price":11.33,"volume":{"bars":244,"last_bar_volume":129570.0,"baseline_avg":81639.9,"bar_rvol":1.587092,"raw_accel":0.576738,"smooth_accel":1.766041,"accel_momentum":-0.91089,"rvol_3bar":[2.052656,0.954198,1.587092],"trend_3bar":"MIXED","projected_rvol":8.366975},"flow":{"window_s":30,"trades":699,"trade_rate":23.3,"buy_vol":137524.0,"sell_vol":108364.0,"unclassified_vol":0.0,"imbalance":0.118591,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.111859},"context":{"vwap":11.28698,"price_vs_vwap_pct":0.381144,"ema9":11.265811,"ema20":11.269795,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.30662,"dist_to_hod_atr":4.549604,"atr":0.03297,"spread_atr":0.303307,"own_change_pct":0.266312,"rel_strength_pct":{"SPY":0.215436,"IWM":0.190866}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.188214},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8ba9609d62f3","ts":"2026-09-15T17:34:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7416,"target":7.875,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":2.73},"price":7.8599,"vwap":7.8481,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.198,"trend":"flat","recent_slope_pct":-0.0115,"volatility":"high"},"price":7.8599,"volume":{"bars":244,"last_bar_volume":1091.0,"baseline_avg":17735.35,"bar_rvol":0.061516,"raw_accel":-0.874265,"smooth_accel":-0.178399,"accel_momentum":-0.429095,"rvol_3bar":[0.02494,0.501403,0.061516],"trend_3bar":"MIXED","projected_rvol":1.27587},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":11577.0,"sell_vol":5273.0,"unclassified_vol":0.0,"imbalance":0.374125,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.034615},"context":{"vwap":7.848002,"price_vs_vwap_pct":0.151603,"ema9":7.856872,"ema20":7.857944,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.883985,"dist_to_hod_atr":4.649334,"atr":0.015077,"spread_atr":0.663243,"own_change_pct":-0.01528,"rel_strength_pct":{"SPY":-0.066155,"IWM":-0.090725}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.023014},"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":"3753ef1b1fae","ts":"2026-09-15T17:35:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7692,"target":13.2,"target_label":"ceiling","reward_risk":1.38,"pos_in_5d_range_pct":46.7,"room_to_5d_high_atr":1.11},"price":12.95,"vwap":12.9019,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":-0.0425,"volatility":"medium"},"price":12.95,"volume":{"bars":244,"last_bar_volume":192.0,"baseline_avg":165.95,"bar_rvol":1.156975,"raw_accel":2.692308,"smooth_accel":-0.429098,"accel_momentum":0.252221,"rvol_3bar":[0.403423,0.315917,1.156975],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":18.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.8,"bid":12.91,"ask":12.99,"spread_pct":0.617761,"quote_size_imbalance":null,"quote_age_s":6.039899},"context":{"vwap":12.90192,"price_vs_vwap_pct":0.372654,"ema9":12.938243,"ema20":12.953214,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.704733,"dist_to_hod_atr":7.540401,"atr":0.047743,"spread_atr":1.675645,"own_change_pct":-0.116602,"rel_strength_pct":{"SPY":-0.132457,"IWM":-0.185031}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.92558},"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":"b73b12931e51","ts":"2026-09-15T17:35:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6748,"target":10.935,"target_label":"prev_day_high","reward_risk":0.76,"pos_in_5d_range_pct":47.6,"room_to_5d_high_atr":1.14},"price":10.823,"vwap":10.5668,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":0.983,"trend":"flat","recent_slope_pct":-0.0291,"volatility":"medium"},"price":10.823,"volume":{"bars":245,"last_bar_volume":4014.0,"baseline_avg":17587.0,"bar_rvol":0.228237,"raw_accel":-0.686038,"smooth_accel":-0.31188,"accel_momentum":-0.31088,"rvol_3bar":[0.487215,0.705212,0.228237],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":2453.0,"sell_vol":1496.0,"unclassified_vol":0.0,"imbalance":0.24234,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":1.703735},"context":{"vwap":10.566671,"price_vs_vwap_pct":2.425827,"ema9":10.833513,"ema20":10.839369,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.06947,"dist_to_hod_atr":3.059217,"atr":0.038245,"spread_atr":0.261472,"own_change_pct":-0.167942,"rel_strength_pct":{"SPY":-0.183796,"IWM":-0.23637}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.055311},"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":"c0193db09cac","ts":"2026-09-15T17:35:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7344,"target":7.875,"target_label":"prev_day_high","reward_risk":0.19,"pos_in_5d_range_pct":18.9,"room_to_5d_high_atr":2.74},"price":7.8527,"vwap":7.848,"ext_from_open_pct":-0.6,"max_ext_allowed_pct":3.0,"volume_pace":1.197,"trend":"flat","recent_slope_pct":-0.0262,"volatility":"high"},"price":7.8527,"volume":{"bars":245,"last_bar_volume":18722.0,"baseline_avg":16326.75,"bar_rvol":1.146707,"raw_accel":3.586828,"smooth_accel":1.245783,"accel_momentum":1.424182,"rvol_3bar":[0.501403,0.061516,1.146707],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":12882.0,"sell_vol":5784.0,"unclassified_vol":0.0,"imbalance":0.380264,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.083255},"context":{"vwap":7.848044,"price_vs_vwap_pct":0.059322,"ema9":7.855497,"ema20":7.857188,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.974779,"dist_to_hod_atr":5.128751,"atr":0.015072,"spread_atr":0.663486,"own_change_pct":-0.143742,"rel_strength_pct":{"SPY":-0.159597,"IWM":-0.21217}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.436051},"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":"3b82a735377e","ts":"2026-09-15T17:35:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.6788,"target":10.935,"target_label":"prev_day_high","reward_risk":0.73,"pos_in_5d_range_pct":47.9,"room_to_5d_high_atr":1.13},"price":10.827,"vwap":10.5668,"ext_from_open_pct":4.01,"max_ext_allowed_pct":4.0,"volume_pace":0.983,"trend":"flat","recent_slope_pct":-0.0217,"volatility":"medium"},"price":10.827,"volume":{"bars":245,"last_bar_volume":4014.0,"baseline_avg":17587.0,"bar_rvol":0.228237,"raw_accel":-0.686038,"smooth_accel":-0.31188,"accel_momentum":-0.31088,"rvol_3bar":[0.487215,0.705212,0.228237],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":2423.0,"sell_vol":1501.0,"unclassified_vol":0.0,"imbalance":0.234964,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":1.920077},"context":{"vwap":10.566671,"price_vs_vwap_pct":2.463682,"ema9":10.833513,"ema20":10.839369,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.032907,"dist_to_hod_atr":2.954628,"atr":0.038245,"spread_atr":0.261472,"own_change_pct":-0.167942,"rel_strength_pct":{"SPY":-0.183796,"IWM":-0.23637}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.053627},"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":"54ab0b204154","ts":"2026-09-15T17:35:15+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.09 below VWAP $5.11","plan":{"state":"PASS","setup":"","stop":4.7962,"target":5.3208,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":1.2,"room_to_5d_high_atr":2.88},"price":5.09,"vwap":5.1128,"ext_from_open_pct":-3.42,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":-0.0215,"volatility":"high"},"price":5.09,"volume":{"bars":205,"last_bar_volume":300.0,"baseline_avg":890.7,"bar_rvol":0.336814,"raw_accel":-0.602649,"smooth_accel":-0.522767,"accel_momentum":-1.532009,"rvol_3bar":[2.11379,0.880005,0.336814],"trend_3bar":"DECELERATING","projected_rvol":0.449085},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.09,"ask":5.22,"spread_pct":2.521823,"quote_size_imbalance":null,"quote_age_s":57.92017},"context":{"vwap":5.112843,"price_vs_vwap_pct":-0.44677,"ema9":5.120434,"ema20":5.082461,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-15.025042,"dist_to_hod_atr":16.047929,"atr":0.056082,"spread_atr":2.318034,"own_change_pct":0.488759,"rel_strength_pct":{"SPY":0.472904,"IWM":0.42033}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.336814},"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":"4de71569e632","ts":"2026-09-15T17:35:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6764,"target":10.935,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.8246,"vwap":10.5668,"ext_from_open_pct":3.98,"max_ext_allowed_pct":4.0,"volume_pace":0.982,"trend":"flat","recent_slope_pct":-0.0261,"volatility":"medium"},"price":10.8246,"volume":{"bars":245,"last_bar_volume":4014.0,"baseline_avg":17587.0,"bar_rvol":0.228237,"raw_accel":-0.686038,"smooth_accel":-0.31188,"accel_momentum":-0.31088,"rvol_3bar":[0.487215,0.705212,0.228237],"trend_3bar":"MIXED","projected_rvol":0.820606},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2380.0,"sell_vol":1401.0,"unclassified_vol":0.0,"imbalance":0.258926,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":0.019157},"context":{"vwap":10.566671,"price_vs_vwap_pct":2.440969,"ema9":10.833513,"ema20":10.839369,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.054845,"dist_to_hod_atr":3.017381,"atr":0.038245,"spread_atr":0.261472,"own_change_pct":-0.167942,"rel_strength_pct":{"SPY":-0.183796,"IWM":-0.23637}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.059096},"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":"8a1af5325e3d","ts":"2026-09-15T17:35:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.6868,"target":10.935,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":48.5,"room_to_5d_high_atr":1.12},"price":10.835,"vwap":10.5668,"ext_from_open_pct":4.08,"max_ext_allowed_pct":4.0,"volume_pace":0.982,"trend":"flat","recent_slope_pct":-0.0069,"volatility":"medium"},"price":10.835,"volume":{"bars":245,"last_bar_volume":4014.0,"baseline_avg":17587.0,"bar_rvol":0.228237,"raw_accel":-0.686038,"smooth_accel":-0.31188,"accel_momentum":-0.31088,"rvol_3bar":[0.487215,0.705212,0.228237],"trend_3bar":"MIXED","projected_rvol":0.647524},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":2350.0,"sell_vol":1576.0,"unclassified_vol":0.0,"imbalance":0.197147,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":0.450589},"context":{"vwap":10.566671,"price_vs_vwap_pct":2.539391,"ema9":10.833513,"ema20":10.839369,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.959781,"dist_to_hod_atr":2.745451,"atr":0.038245,"spread_atr":0.261472,"own_change_pct":-0.167942,"rel_strength_pct":{"SPY":-0.183796,"IWM":-0.23637}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.044996},"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":"53ebcf46f9ab","ts":"2026-09-15T17:35:35+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.52% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.8612,"target":5.3208,"target_label":"premarket_high","reward_risk":0.56,"pos_in_5d_range_pct":3.1,"room_to_5d_high_atr":2.83},"price":5.155,"vwap":5.1129,"ext_from_open_pct":-2.18,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":0.2315,"volatility":"high"},"price":5.155,"volume":{"bars":205,"last_bar_volume":300.0,"baseline_avg":890.7,"bar_rvol":0.336814,"raw_accel":-0.602649,"smooth_accel":-0.522767,"accel_momentum":-1.532009,"rvol_3bar":[2.11379,0.880005,0.336814],"trend_3bar":"DECELERATING","projected_rvol":0.207862},"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":5.09,"ask":5.22,"spread_pct":2.521823,"quote_size_imbalance":null,"quote_age_s":77.92017},"context":{"vwap":5.112843,"price_vs_vwap_pct":0.824539,"ema9":5.120434,"ema20":5.082461,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-13.9399,"dist_to_hod_atr":14.888912,"atr":0.056082,"spread_atr":2.318034,"own_change_pct":0.488759,"rel_strength_pct":{"SPY":0.472904,"IWM":0.42033}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.286915},"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":"6c4524c48dbc","ts":"2026-09-15T17:35:35+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6725,"target":10.935,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":47.4,"room_to_5d_high_atr":1.14},"price":10.8207,"vwap":10.567,"ext_from_open_pct":3.95,"max_ext_allowed_pct":4.0,"volume_pace":0.982,"trend":"flat","recent_slope_pct":-0.0333,"volatility":"medium"},"price":10.8207,"volume":{"bars":245,"last_bar_volume":4014.0,"baseline_avg":17587.0,"bar_rvol":0.228237,"raw_accel":-0.686038,"smooth_accel":-0.31188,"accel_momentum":-0.31088,"rvol_3bar":[0.487215,0.705212,0.228237],"trend_3bar":"MIXED","projected_rvol":0.69168},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2941.0,"sell_vol":815.0,"unclassified_vol":0.0,"imbalance":0.566028,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":1.272504},"context":{"vwap":10.566671,"price_vs_vwap_pct":2.40406,"ema9":10.833513,"ema20":10.839369,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.090494,"dist_to_hod_atr":3.119355,"atr":0.038245,"spread_atr":0.261472,"own_change_pct":-0.167942,"rel_strength_pct":{"SPY":-0.183796,"IWM":-0.23637}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.129188},"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":"c214d88e836d","ts":"2026-09-15T17:35:35+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 75.0s, plan says WATCH; stop 11.14, target 11.44 (premarket_high), R:R 0.39; R:R 0.39 < 2.0 at 11.36; breakout: 1-min close > 11.43 on >= 132183 sh","plan":{"state":"WATCH","setup":"","stop":11.1395,"target":11.44,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":27.8,"room_to_5d_high_atr":1.19},"price":11.3563,"vwap":11.2874,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":0.2358,"volatility":"high"},"price":11.3563,"volume":{"bars":245,"last_bar_volume":295055.0,"baseline_avg":82602.1,"bar_rvol":3.572004,"raw_accel":1.277186,"smooth_accel":0.686559,"accel_momentum":-1.079481,"rvol_3bar":[0.954198,1.587092,3.572004],"trend_3bar":"ACCELERATING","projected_rvol":1.429566},"flow":{"window_s":30,"trades":135,"trade_rate":4.5,"buy_vol":46601.0,"sell_vol":9880.0,"unclassified_vol":0.0,"imbalance":0.650148,"bid":11.35,"ask":11.36,"spread_pct":0.088067,"quote_size_imbalance":null,"quote_age_s":0.025275},"context":{"vwap":11.287251,"price_vs_vwap_pct":0.611745,"ema9":11.277649,"ema20":11.275053,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.077526,"dist_to_hod_atr":3.352247,"atr":0.036901,"spread_atr":0.270998,"own_change_pct":0.577265,"rel_strength_pct":{"SPY":0.56141,"IWM":0.508836}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.32233},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7c86d3109624","ts":"2026-09-15T17:35:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.6818,"target":10.935,"target_label":"prev_day_high","reward_risk":0.71,"pos_in_5d_range_pct":48.1,"room_to_5d_high_atr":1.13},"price":10.83,"vwap":10.567,"ext_from_open_pct":4.03,"max_ext_allowed_pct":4.0,"volume_pace":0.981,"trend":"flat","recent_slope_pct":-0.0162,"volatility":"medium"},"price":10.83,"volume":{"bars":245,"last_bar_volume":4014.0,"baseline_avg":17587.0,"bar_rvol":0.228237,"raw_accel":-0.686038,"smooth_accel":-0.31188,"accel_momentum":-0.31088,"rvol_3bar":[0.487215,0.705212,0.228237],"trend_3bar":"MIXED","projected_rvol":0.682919},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":3182.0,"sell_vol":1462.0,"unclassified_vol":0.0,"imbalance":0.37037,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":0.123421},"context":{"vwap":10.566671,"price_vs_vwap_pct":2.492073,"ema9":10.833513,"ema20":10.839369,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.005484,"dist_to_hod_atr":2.876187,"atr":0.038245,"spread_atr":0.261472,"own_change_pct":-0.167942,"rel_strength_pct":{"SPY":-0.183796,"IWM":-0.23637}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.084532},"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":"47c858c9d028","ts":"2026-09-15T17:35:40+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.4768,"target":12.72,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.02},"price":12.6959,"vwap":12.6162,"ext_from_open_pct":1.57,"max_ext_allowed_pct":4.0,"volume_pace":0.886,"trend":"flat","recent_slope_pct":0.0085,"volatility":"high"},"price":12.6959,"volume":{"bars":245,"last_bar_volume":27884.0,"baseline_avg":6277.5,"bar_rvol":4.441896,"raw_accel":5.200578,"smooth_accel":0.437259,"accel_momentum":0.706818,"rvol_3bar":[0.754442,0.729511,4.441896],"trend_3bar":"MIXED","projected_rvol":0.295579},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":662.0,"sell_vol":533.0,"unclassified_vol":0.0,"imbalance":0.10795,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.723099},"context":{"vwap":12.616162,"price_vs_vwap_pct":0.632027,"ema9":12.693594,"ema20":12.692842,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.489247,"dist_to_hod_atr":10.557656,"atr":0.030698,"spread_atr":0.325753,"own_change_pct":-0.028347,"rel_strength_pct":{"SPY":-0.044202,"IWM":-0.096776}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.479502},"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":"3042798052f3","ts":"2026-09-15T17:35:45+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4559,"target":12.72,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":14.9,"room_to_5d_high_atr":2.05},"price":12.675,"vwap":12.6162,"ext_from_open_pct":1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.886,"trend":"flat","recent_slope_pct":-0.0244,"volatility":"high"},"price":12.675,"volume":{"bars":245,"last_bar_volume":27884.0,"baseline_avg":6277.5,"bar_rvol":4.441896,"raw_accel":5.200578,"smooth_accel":0.437259,"accel_momentum":0.706818,"rvol_3bar":[0.754442,0.729511,4.441896],"trend_3bar":"MIXED","projected_rvol":0.528661},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1488.0,"sell_vol":234.0,"unclassified_vol":0.0,"imbalance":0.728223,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.014468},"context":{"vwap":12.616162,"price_vs_vwap_pct":0.466367,"ema9":12.693594,"ema20":12.692842,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.64977,"dist_to_hod_atr":11.23848,"atr":0.030698,"spread_atr":0.325753,"own_change_pct":-0.028347,"rel_strength_pct":{"SPY":-0.044202,"IWM":-0.096776}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.234691},"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":"2e10aff55ed9","ts":"2026-09-15T17:35:45+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 85.0s, plan says PASS; stop 11.11, target 11.42 (ceiling), R:R 0.43; R:R 0.43 < 2.0 at 11.33; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1108,"target":11.42,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":25.8,"room_to_5d_high_atr":1.22},"price":11.3276,"vwap":11.2874,"ext_from_open_pct":0.6,"max_ext_allowed_pct":4.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.1851,"volatility":"high"},"price":11.3276,"volume":{"bars":245,"last_bar_volume":295055.0,"baseline_avg":82602.1,"bar_rvol":3.572004,"raw_accel":1.277186,"smooth_accel":0.686559,"accel_momentum":-1.079481,"rvol_3bar":[0.954198,1.587092,3.572004],"trend_3bar":"ACCELERATING","projected_rvol":1.984421},"flow":{"window_s":30,"trades":195,"trade_rate":6.5,"buy_vol":62075.0,"sell_vol":21025.0,"unclassified_vol":0.0,"imbalance":0.493983,"bid":11.37,"ask":11.38,"spread_pct":0.087912,"quote_size_imbalance":null,"quote_age_s":0.20251},"context":{"vwap":11.287251,"price_vs_vwap_pct":0.357476,"ema9":11.277649,"ema20":11.275053,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.327526,"dist_to_hod_atr":4.130012,"atr":0.036901,"spread_atr":0.270998,"own_change_pct":0.577265,"rel_strength_pct":{"SPY":0.56141,"IWM":0.508836}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.76451},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5ff1094bf61b","ts":"2026-09-15T17:35:50+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.4765,"target":12.72,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.02},"price":12.6956,"vwap":12.6162,"ext_from_open_pct":1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.886,"trend":"flat","recent_slope_pct":0.008,"volatility":"high"},"price":12.6956,"volume":{"bars":245,"last_bar_volume":27884.0,"baseline_avg":6277.5,"bar_rvol":4.441896,"raw_accel":5.200578,"smooth_accel":0.437259,"accel_momentum":0.706818,"rvol_3bar":[0.754442,0.729511,4.441896],"trend_3bar":"MIXED","projected_rvol":0.475986},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1489.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":0.77791,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.269034},"context":{"vwap":12.616162,"price_vs_vwap_pct":0.629649,"ema9":12.693594,"ema20":12.692842,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.491551,"dist_to_hod_atr":10.567428,"atr":0.030698,"spread_atr":0.325753,"own_change_pct":-0.028347,"rel_strength_pct":{"SPY":-0.044202,"IWM":-0.096776}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.455397},"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":"5f2b53f4e7cc","ts":"2026-09-15T17:35:50+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 90.0s, plan says WATCH; stop 11.17, target 11.44 (premarket_high), R:R 0.25; R:R 0.25 < 2.0 at 11.38; breakout: 1-min close > 11.43 on >= 132183 sh","plan":{"state":"WATCH","setup":"","stop":11.1682,"target":11.44,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":29.8,"room_to_5d_high_atr":1.15},"price":11.385,"vwap":11.2876,"ext_from_open_pct":1.11,"max_ext_allowed_pct":4.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.2865,"volatility":"high"},"price":11.385,"volume":{"bars":245,"last_bar_volume":295055.0,"baseline_avg":82602.1,"bar_rvol":3.572004,"raw_accel":1.277186,"smooth_accel":0.686559,"accel_momentum":-1.079481,"rvol_3bar":[0.954198,1.587092,3.572004],"trend_3bar":"ACCELERATING","projected_rvol":2.163882},"flow":{"window_s":30,"trades":265,"trade_rate":8.833333,"buy_vol":73212.0,"sell_vol":26285.0,"unclassified_vol":0.0,"imbalance":0.471642,"bid":11.38,"ask":11.39,"spread_pct":0.087835,"quote_size_imbalance":null,"quote_age_s":0.034786},"context":{"vwap":11.287251,"price_vs_vwap_pct":0.866015,"ema9":11.277649,"ema20":11.275053,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-0.827526,"dist_to_hod_atr":2.574482,"atr":0.036901,"spread_atr":0.270998,"own_change_pct":0.577265,"rel_strength_pct":{"SPY":0.56141,"IWM":0.508836}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.684708},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8944734e0bcb","ts":"2026-09-15T17:36:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7367,"target":7.875,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.848,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":4.0,"volume_pace":1.193,"trend":"flat","recent_slope_pct":0.0111,"volatility":"high"},"price":7.855,"volume":{"bars":246,"last_bar_volume":524.0,"baseline_avg":16944.95,"bar_rvol":0.030924,"raw_accel":-0.972012,"smooth_accel":0.676863,"accel_momentum":-0.568919,"rvol_3bar":[0.061516,1.146707,0.030924],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":324.0,"sell_vol":202.0,"unclassified_vol":0.0,"imbalance":0.231939,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.194629},"context":{"vwap":7.848046,"price_vs_vwap_pct":0.088607,"ema9":7.856118,"ema20":7.857322,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":5.047236,"atr":0.01486,"spread_atr":0.672965,"own_change_pct":-0.017812,"rel_strength_pct":{"SPY":-0.05613,"IWM":-0.151192}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.007172},"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":"9c610e844fc3","ts":"2026-09-15T17:36:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.4028,"target":5.52,"target_label":"ceiling","reward_risk":0.88,"pos_in_5d_range_pct":21.3,"room_to_5d_high_atr":1.71},"price":5.465,"vwap":5.4134,"ext_from_open_pct":0.09,"max_ext_allowed_pct":4.0,"volume_pace":0.767,"trend":"flat","recent_slope_pct":-0.0201,"volatility":"medium"},"price":5.465,"volume":{"bars":246,"last_bar_volume":14882.0,"baseline_avg":56533.45,"bar_rvol":0.263242,"raw_accel":-0.792816,"smooth_accel":0.955633,"accel_momentum":0.328177,"rvol_3bar":[2.32291,1.340417,0.263242],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":5277.0,"sell_vol":2610.0,"unclassified_vol":0.0,"imbalance":0.338151,"bid":5.46,"ask":5.47,"spread_pct":0.182983,"quote_size_imbalance":null,"quote_age_s":0.098292},"context":{"vwap":5.413403,"price_vs_vwap_pct":0.953136,"ema9":5.464861,"ema20":5.465138,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.531532,"dist_to_hod_atr":4.402623,"atr":0.019307,"spread_atr":0.517956,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.038318,"IWM":-0.13338}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.089016},"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":"c47349638a33","ts":"2026-09-15T17:36:10+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4598,"target":12.72,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":15.1,"room_to_5d_high_atr":2.04},"price":12.6789,"vwap":12.6162,"ext_from_open_pct":1.43,"max_ext_allowed_pct":4.0,"volume_pace":0.884,"trend":"flat","recent_slope_pct":-0.0239,"volatility":"high"},"price":12.6789,"volume":{"bars":246,"last_bar_volume":2524.0,"baseline_avg":7157.35,"bar_rvol":0.352644,"raw_accel":-0.909482,"smooth_accel":0.567918,"accel_momentum":0.130659,"rvol_3bar":[0.729511,4.441896,0.352644],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1273.0,"sell_vol":222.0,"unclassified_vol":0.0,"imbalance":0.70301,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":4.698694},"context":{"vwap":12.616203,"price_vs_vwap_pct":0.496957,"ema9":12.694535,"ema20":12.693362,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.619816,"dist_to_hod_atr":11.150304,"atr":0.030591,"spread_atr":0.326893,"own_change_pct":0.183826,"rel_strength_pct":{"SPY":0.145508,"IWM":0.050446}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.247913},"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":"b48d0af35e55","ts":"2026-09-15T17:36:40+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.4763,"target":12.72,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.02},"price":12.6954,"vwap":12.6163,"ext_from_open_pct":1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.883,"trend":"flat","recent_slope_pct":0.002,"volatility":"high"},"price":12.6954,"volume":{"bars":246,"last_bar_volume":2524.0,"baseline_avg":7157.35,"bar_rvol":0.352644,"raw_accel":-0.909482,"smooth_accel":0.567918,"accel_momentum":0.130659,"rvol_3bar":[0.729511,4.441896,0.352644],"trend_3bar":"MIXED","projected_rvol":0.666657},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2005.0,"sell_vol":968.0,"unclassified_vol":0.0,"imbalance":0.348806,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.482641},"context":{"vwap":12.616203,"price_vs_vwap_pct":0.627741,"ema9":12.694535,"ema20":12.693362,"ema_stack":true,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.493088,"dist_to_hod_atr":10.610931,"atr":0.030591,"spread_atr":0.326893,"own_change_pct":0.183826,"rel_strength_pct":{"SPY":0.145508,"IWM":0.050446}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.123004},"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":"3cdf9ef329e3","ts":"2026-09-15T17:36:45+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4559,"target":12.72,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":14.9,"room_to_5d_high_atr":2.05},"price":12.675,"vwap":12.6162,"ext_from_open_pct":1.4,"max_ext_allowed_pct":4.0,"volume_pace":0.883,"trend":"flat","recent_slope_pct":-0.0301,"volatility":"high"},"price":12.675,"volume":{"bars":246,"last_bar_volume":2524.0,"baseline_avg":7157.35,"bar_rvol":0.352644,"raw_accel":-0.909482,"smooth_accel":0.567918,"accel_momentum":0.130659,"rvol_3bar":[0.729511,4.441896,0.352644],"trend_3bar":"MIXED","projected_rvol":0.594075},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":2008.0,"sell_vol":146.0,"unclassified_vol":0.0,"imbalance":0.864438,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.941799},"context":{"vwap":12.616203,"price_vs_vwap_pct":0.466045,"ema9":12.694535,"ema20":12.693362,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.64977,"dist_to_hod_atr":11.277792,"atr":0.030591,"spread_atr":0.326893,"own_change_pct":0.183826,"rel_strength_pct":{"SPY":0.145508,"IWM":0.050446}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.304839},"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":"c9a80af8faa9","ts":"2026-09-15T17:36:50+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.09 below VWAP $5.11","plan":{"state":"PASS","setup":"","stop":4.7962,"target":5.3208,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":1.2,"room_to_5d_high_atr":2.88},"price":5.09,"vwap":5.1129,"ext_from_open_pct":-3.42,"max_ext_allowed_pct":3.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":-0.4956,"volatility":"high"},"price":5.09,"volume":{"bars":206,"last_bar_volume":113.0,"baseline_avg":774.35,"bar_rvol":0.145929,"raw_accel":-0.623333,"smooth_accel":-0.826449,"accel_momentum":-0.303682,"rvol_3bar":[0.880005,0.336814,0.145929],"trend_3bar":"DECELERATING","projected_rvol":0.156518},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.09,"ask":5.22,"spread_pct":2.521823,"quote_size_imbalance":null,"quote_age_s":152.92017},"context":{"vwap":5.112848,"price_vs_vwap_pct":-0.446869,"ema9":5.121387,"ema20":5.086531,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-15.025042,"dist_to_hod_atr":15.867698,"atr":0.056719,"spread_atr":2.292001,"own_change_pct":-0.287938,"rel_strength_pct":{"SPY":-0.326256,"IWM":-0.421318}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.145929},"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":"96af324c57c4","ts":"2026-09-15T17:37:00+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6518,"target":10.935,"target_label":"prev_day_high","reward_risk":0.91,"pos_in_5d_range_pct":45.8,"room_to_5d_high_atr":1.18},"price":10.8,"vwap":10.5676,"ext_from_open_pct":3.75,"max_ext_allowed_pct":4.0,"volume_pace":0.979,"trend":"flat","recent_slope_pct":-0.095,"volatility":"medium"},"price":10.8,"volume":{"bars":246,"last_bar_volume":14034.0,"baseline_avg":16403.75,"bar_rvol":0.855536,"raw_accel":2.422144,"smooth_accel":-0.278659,"accel_momentum":0.033221,"rvol_3bar":[0.705212,0.228237,0.855536],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1151.0,"sell_vol":4329.0,"unclassified_vol":0.0,"imbalance":-0.579927,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":4.910624},"context":{"vwap":10.567284,"price_vs_vwap_pct":2.20223,"ema9":10.831811,"ema20":10.838001,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.279707,"dist_to_hod_atr":3.775867,"atr":0.037078,"spread_atr":0.269705,"own_change_pct":0.185099,"rel_strength_pct":{"SPY":0.191704,"IWM":0.132482}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.496148},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a3f646e0634e","ts":"2026-09-15T17:37:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7367,"target":7.875,"target_label":"prev_day_high","reward_risk":0.17,"pos_in_5d_range_pct":19.1,"room_to_5d_high_atr":2.74},"price":7.855,"vwap":7.8481,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":3.0,"volume_pace":1.188,"trend":"flat","recent_slope_pct":0.0196,"volatility":"high"},"price":7.855,"volume":{"bars":247,"last_bar_volume":1332.0,"baseline_avg":15439.15,"bar_rvol":0.086274,"raw_accel":-0.654903,"smooth_accel":1.017253,"accel_momentum":0.34039,"rvol_3bar":[1.146707,0.030924,0.086274],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":659.0,"sell_vol":416.0,"unclassified_vol":0.0,"imbalance":0.226047,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.384612},"context":{"vwap":7.848051,"price_vs_vwap_pct":0.088548,"ema9":7.856894,"ema20":7.857577,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.945776,"dist_to_hod_atr":5.23234,"atr":0.014334,"spread_atr":0.697645,"own_change_pct":-0.013993,"rel_strength_pct":{"SPY":-0.007388,"IWM":-0.066611}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.019502},"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":"82f08f75ed0b","ts":"2026-09-15T17:37:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.6468,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.795,"vwap":10.5681,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.98,"trend":"flat","recent_slope_pct":-0.0914,"volatility":"medium"},"price":10.795,"volume":{"bars":247,"last_bar_volume":8948.0,"baseline_avg":16335.9,"bar_rvol":0.547751,"raw_accel":-0.362406,"smooth_accel":-0.228068,"accel_momentum":0.050591,"rvol_3bar":[0.228237,0.855536,0.547751],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":5972.0,"sell_vol":9847.0,"unclassified_vol":0.0,"imbalance":-0.244959,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.233115},"context":{"vwap":10.567649,"price_vs_vwap_pct":2.151389,"ema9":10.825448,"ema20":10.834382,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.325411,"dist_to_hod_atr":3.938623,"atr":0.036815,"spread_atr":0.271629,"own_change_pct":-0.230947,"rel_strength_pct":{"SPY":-0.224342,"IWM":-0.283565}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.134176},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e37ab7620b5b","ts":"2026-09-15T17:37:10+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 2.52% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.8963,"target":5.3208,"target_label":"premarket_high","reward_risk":0.44,"pos_in_5d_range_pct":4.1,"room_to_5d_high_atr":2.8},"price":5.1901,"vwap":5.1129,"ext_from_open_pct":-1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":0.0977,"volatility":"high"},"price":5.1901,"volume":{"bars":207,"last_bar_volume":101.0,"baseline_avg":771.1,"bar_rvol":0.130982,"raw_accel":-0.476073,"smooth_accel":-0.905428,"accel_momentum":-0.078979,"rvol_3bar":[0.336814,0.145929,0.130982],"trend_3bar":"DECELERATING","projected_rvol":null},"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":5.09,"ask":5.22,"spread_pct":2.521823,"quote_size_imbalance":null,"quote_age_s":172.92017},"context":{"vwap":5.112852,"price_vs_vwap_pct":1.510859,"ema9":5.11511,"ema20":5.086861,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-13.353923,"dist_to_hod_atr":13.397906,"atr":0.059703,"spread_atr":2.177432,"own_change_pct":0.582946,"rel_strength_pct":{"SPY":0.589551,"IWM":0.530329}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.0},"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":"a5875a50e51d","ts":"2026-09-15T17:37:10+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":14.2,"room_to_5d_high_atr":2.07},"price":12.66,"vwap":12.6163,"ext_from_open_pct":1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":-0.0779,"volatility":"high"},"price":12.66,"volume":{"bars":247,"last_bar_volume":3373.0,"baseline_avg":6991.55,"bar_rvol":0.48244,"raw_accel":0.336371,"smooth_accel":0.778884,"accel_momentum":0.210965,"rvol_3bar":[4.441896,0.352644,0.48244],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":412.0,"sell_vol":219.0,"unclassified_vol":0.0,"imbalance":0.305864,"bid":12.66,"ask":12.67,"spread_pct":0.078958,"quote_size_imbalance":null,"quote_age_s":0.622418},"context":{"vwap":12.616249,"price_vs_vwap_pct":0.346787,"ema9":12.690628,"ema20":12.691613,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.764977,"dist_to_hod_atr":11.694163,"atr":0.030785,"spread_atr":0.324838,"own_change_pct":-0.130795,"rel_strength_pct":{"SPY":-0.124191,"IWM":-0.183413}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.147561},"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":"749b620c0b6a","ts":"2026-09-15T17:37:15+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.2062,"target":5.43,"target_label":"prev_day_high","reward_risk":3.58,"pos_in_5d_range_pct":3.8,"room_to_5d_high_atr":1.92},"price":5.255,"vwap":5.2365,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.851,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"medium"},"price":5.255,"volume":{"bars":247,"last_bar_volume":712.0,"baseline_avg":2663.6,"bar_rvol":0.267307,"raw_accel":-0.898213,"smooth_accel":3.479909,"accel_momentum":3.622751,"rvol_3bar":[0.088262,3.019968,0.267307],"trend_3bar":"MIXED","projected_rvol":0.337889},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":229.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":0.940678,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":2.092912},"context":{"vwap":5.236515,"price_vs_vwap_pct":0.353004,"ema9":5.255366,"ema20":5.252366,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.775208,"dist_to_hod_atr":15.187768,"atr":0.009876,"spread_atr":1.012518,"own_change_pct":-0.108365,"rel_strength_pct":{"SPY":-0.101761,"IWM":-0.160983}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.25145},"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":"b8f75df9fc6e","ts":"2026-09-15T17:37:15+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 175.0s, plan says PASS; stop 11.12, target 11.42 (ceiling), R:R 0.38; R:R 0.38 < 2.0 at 11.34; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1203,"target":11.42,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":26.5,"room_to_5d_high_atr":1.21},"price":11.3371,"vwap":11.288,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.106,"volatility":"high"},"price":11.3371,"volume":{"bars":247,"last_bar_volume":128692.0,"baseline_avg":95870.2,"bar_rvol":1.342357,"raw_accel":-0.325362,"smooth_accel":0.611222,"accel_momentum":-0.170201,"rvol_3bar":[3.572004,2.089707,1.342357],"trend_3bar":"DECELERATING","projected_rvol":0.475184},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":18712.0,"sell_vol":20319.0,"unclassified_vol":0.0,"imbalance":-0.041172,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.879289},"context":{"vwap":11.288004,"price_vs_vwap_pct":0.43494,"ema9":11.311495,"ema20":11.292712,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.244774,"dist_to_hod_atr":3.102941,"atr":0.046053,"spread_atr":0.217141,"own_change_pct":1.012705,"rel_strength_pct":{"SPY":1.01931,"IWM":0.960088}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.055268},"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":"869e6b203770","ts":"2026-09-15T17:37:20+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.453,"target":12.72,"target_label":"premarket_high","reward_risk":0.22,"pos_in_5d_range_pct":14.8,"room_to_5d_high_atr":2.05},"price":12.6721,"vwap":12.6163,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":-0.0588,"volatility":"high"},"price":12.6721,"volume":{"bars":247,"last_bar_volume":3373.0,"baseline_avg":6991.55,"bar_rvol":0.48244,"raw_accel":0.336371,"smooth_accel":0.778884,"accel_momentum":0.210965,"rvol_3bar":[4.441896,0.352644,0.48244],"trend_3bar":"MIXED","projected_rvol":0.321817},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":447.0,"sell_vol":474.0,"unclassified_vol":0.0,"imbalance":-0.029316,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.972092},"context":{"vwap":12.616249,"price_vs_vwap_pct":0.442695,"ema9":12.690628,"ema20":12.691613,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.672043,"dist_to_hod_atr":11.301109,"atr":0.030785,"spread_atr":0.324838,"own_change_pct":-0.130795,"rel_strength_pct":{"SPY":-0.124191,"IWM":-0.183413}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.014143},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6b8e1c122fa6","ts":"2026-09-15T17:37:20+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 180.0s, plan says WATCH; stop 11.15, target 11.44 (premarket_high), R:R 0.35; R:R 0.35 < 2.0 at 11.37; breakout: 1-min close > 11.43 on >= 136213 sh","plan":{"state":"WATCH","setup":"","stop":11.1482,"target":11.44,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":28.4,"room_to_5d_high_atr":1.18},"price":11.365,"vwap":11.288,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.1551,"volatility":"high"},"price":11.365,"volume":{"bars":247,"last_bar_volume":128692.0,"baseline_avg":95870.2,"bar_rvol":1.342357,"raw_accel":-0.325362,"smooth_accel":0.611222,"accel_momentum":-0.170201,"rvol_3bar":[3.572004,2.089707,1.342357],"trend_3bar":"DECELERATING","projected_rvol":0.384457},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":17898.0,"sell_vol":17563.0,"unclassified_vol":0.0,"imbalance":0.009447,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":2.858257},"context":{"vwap":11.288004,"price_vs_vwap_pct":0.682105,"ema9":11.311495,"ema20":11.292712,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.001742,"dist_to_hod_atr":2.497118,"atr":0.046053,"spread_atr":0.217141,"own_change_pct":1.012705,"rel_strength_pct":{"SPY":1.01931,"IWM":0.960088}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.012681},"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":"80dd19f0fbd7","ts":"2026-09-15T17:37:30+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.4768,"target":12.72,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.02},"price":12.6959,"vwap":12.6163,"ext_from_open_pct":1.57,"max_ext_allowed_pct":3.0,"volume_pace":0.88,"trend":"flat","recent_slope_pct":-0.0213,"volatility":"high"},"price":12.6959,"volume":{"bars":247,"last_bar_volume":3373.0,"baseline_avg":6991.55,"bar_rvol":0.48244,"raw_accel":0.336371,"smooth_accel":0.778884,"accel_momentum":0.210965,"rvol_3bar":[4.441896,0.352644,0.48244],"trend_3bar":"MIXED","projected_rvol":0.223699},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":446.0,"sell_vol":336.0,"unclassified_vol":0.0,"imbalance":0.140665,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.352969},"context":{"vwap":12.616249,"price_vs_vwap_pct":0.631341,"ema9":12.690628,"ema20":12.691613,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.489247,"dist_to_hod_atr":10.527995,"atr":0.030785,"spread_atr":0.324838,"own_change_pct":-0.130795,"rel_strength_pct":{"SPY":-0.124191,"IWM":-0.183413}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.067862},"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":"e41c03456a07","ts":"2026-09-15T17:37:35+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4509,"target":12.72,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":14.7,"room_to_5d_high_atr":2.05},"price":12.67,"vwap":12.6163,"ext_from_open_pct":1.36,"max_ext_allowed_pct":4.0,"volume_pace":0.88,"trend":"flat","recent_slope_pct":-0.0621,"volatility":"high"},"price":12.67,"volume":{"bars":247,"last_bar_volume":3373.0,"baseline_avg":6991.55,"bar_rvol":0.48244,"raw_accel":0.336371,"smooth_accel":0.778884,"accel_momentum":0.210965,"rvol_3bar":[4.441896,0.352644,0.48244],"trend_3bar":"MIXED","projected_rvol":0.560513},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1519.0,"sell_vol":361.0,"unclassified_vol":0.0,"imbalance":0.615957,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.139051},"context":{"vwap":12.616249,"price_vs_vwap_pct":0.42605,"ema9":12.690628,"ema20":12.691613,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.688172,"dist_to_hod_atr":11.369325,"atr":0.030785,"spread_atr":0.324838,"own_change_pct":-0.130795,"rel_strength_pct":{"SPY":-0.124191,"IWM":-0.183413}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.297162},"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":"f160dc925c02","ts":"2026-09-15T17:37:55+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.2079,"target":5.43,"target_label":"prev_day_high","reward_risk":3.55,"pos_in_5d_range_pct":4.3,"room_to_5d_high_atr":1.91},"price":5.2567,"vwap":5.2365,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":4.0,"volume_pace":0.849,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"medium"},"price":5.2567,"volume":{"bars":247,"last_bar_volume":712.0,"baseline_avg":2663.6,"bar_rvol":0.267307,"raw_accel":-0.898213,"smooth_accel":3.479909,"accel_momentum":3.622751,"rvol_3bar":[0.088262,3.019968,0.267307],"trend_3bar":"MIXED","projected_rvol":0.190037},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":236.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.974895,"bid":5.25,"ask":5.26,"spread_pct":0.190295,"quote_size_imbalance":null,"quote_age_s":2.886752},"context":{"vwap":5.236515,"price_vs_vwap_pct":0.385468,"ema9":5.255366,"ema20":5.252366,"ema_stack":true,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.743756,"dist_to_hod_atr":15.01564,"atr":0.009876,"spread_atr":1.012518,"own_change_pct":-0.108365,"rel_strength_pct":{"SPY":-0.101761,"IWM":-0.160983}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.260597},"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":"0052a5d0a4ac","ts":"2026-09-15T17:37:55+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 215.0s, plan says PASS; stop 11.10, target 11.42 (ceiling), R:R 0.50; R:R 0.50 < 2.0 at 11.31; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.0953,"target":11.42,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":24.7,"room_to_5d_high_atr":1.24},"price":11.3121,"vwap":11.2881,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0619,"volatility":"high"},"price":11.3121,"volume":{"bars":247,"last_bar_volume":128692.0,"baseline_avg":95870.2,"bar_rvol":1.342357,"raw_accel":-0.325362,"smooth_accel":0.611222,"accel_momentum":-0.170201,"rvol_3bar":[3.572004,2.089707,1.342357],"trend_3bar":"DECELERATING","projected_rvol":0.525563},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":19657.0,"sell_vol":11364.0,"unclassified_vol":0.0,"imbalance":0.267335,"bid":11.37,"ask":11.38,"spread_pct":0.087912,"quote_size_imbalance":null,"quote_age_s":2.478289},"context":{"vwap":11.288004,"price_vs_vwap_pct":0.213466,"ema9":11.311495,"ema20":11.292712,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.462544,"dist_to_hod_atr":3.645793,"atr":0.046053,"spread_atr":0.217141,"own_change_pct":1.012705,"rel_strength_pct":{"SPY":1.01931,"IWM":0.960088}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.358859},"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":"c662340fe68a","ts":"2026-09-15T17:38:05+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2297,"target":9.46,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":3.25},"price":9.3826,"vwap":9.3543,"ext_from_open_pct":0.35,"max_ext_allowed_pct":3.0,"volume_pace":0.521,"trend":"flat","recent_slope_pct":0.0018,"volatility":"high"},"price":9.3826,"volume":{"bars":248,"last_bar_volume":23357.0,"baseline_avg":4099.1,"bar_rvol":5.69808,"raw_accel":0.760136,"smooth_accel":4.12785,"accel_momentum":2.529412,"rvol_3bar":[2.988057,3.773048,5.69808],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":761.0,"sell_vol":389.0,"unclassified_vol":0.0,"imbalance":0.323478,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.048786},"context":{"vwap":9.354276,"price_vs_vwap_pct":0.302792,"ema9":9.380791,"ema20":9.380716,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.546695,"dist_to_hod_atr":8.133691,"atr":0.018122,"spread_atr":0.551811,"own_change_pct":0.109874,"rel_strength_pct":{"SPY":0.112515,"IWM":0.078315}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.843205},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"056065801ff1","ts":"2026-09-15T17:38:10+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 230.0s, plan says WATCH; stop 11.15, target 11.44 (premarket_high), R:R 0.32; R:R 0.32 < 2.0 at 11.37; breakout: 1-min close > 11.43 on >= 134210 sh","plan":{"state":"WATCH","setup":"","stop":11.1533,"target":11.44,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":28.8,"room_to_5d_high_atr":1.17},"price":11.3701,"vwap":11.2881,"ext_from_open_pct":0.98,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":0.0153,"volatility":"high"},"price":11.3701,"volume":{"bars":248,"last_bar_volume":47573.0,"baseline_avg":99616.7,"bar_rvol":0.47756,"raw_accel":-0.630334,"smooth_accel":-0.275806,"accel_momentum":-0.887029,"rvol_3bar":[2.089707,1.342357,0.47756],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":8398.0,"sell_vol":10346.0,"unclassified_vol":0.0,"imbalance":-0.103927,"bid":11.37,"ask":11.38,"spread_pct":0.087912,"quote_size_imbalance":null,"quote_age_s":0.105515},"context":{"vwap":11.288081,"price_vs_vwap_pct":0.726599,"ema9":11.311636,"ema20":11.294568,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-0.957317,"dist_to_hod_atr":2.293713,"atr":0.047914,"spread_atr":0.208709,"own_change_pct":0.313029,"rel_strength_pct":{"SPY":0.315671,"IWM":0.28147}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.049631},"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":"46404758df99","ts":"2026-09-15T17:38:20+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3988,"target":8.675,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":11.3,"room_to_5d_high_atr":3.64},"price":8.59,"vwap":8.4228,"ext_from_open_pct":2.63,"max_ext_allowed_pct":3.0,"volume_pace":0.799,"trend":"flat","recent_slope_pct":-0.0459,"volatility":"high"},"price":8.59,"volume":{"bars":248,"last_bar_volume":35877.0,"baseline_avg":71647.9,"bar_rvol":0.50074,"raw_accel":0.418568,"smooth_accel":-0.163478,"accel_momentum":-0.414261,"rvol_3bar":[1.007533,0.342799,0.50074],"trend_3bar":"MIXED","projected_rvol":0.574518},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":5076.0,"sell_vol":8969.0,"unclassified_vol":0.0,"imbalance":-0.27718,"bid":8.58,"ask":8.59,"spread_pct":0.116482,"quote_size_imbalance":null,"quote_age_s":0.363378},"context":{"vwap":8.42264,"price_vs_vwap_pct":1.987028,"ema9":8.599736,"ema20":8.599329,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-0.979827,"dist_to_hod_atr":3.799935,"atr":0.022369,"spread_atr":0.447051,"own_change_pct":-0.05814,"rel_strength_pct":{"SPY":-0.055498,"IWM":-0.089699}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.138795},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"45093bc83bdd","ts":"2026-09-15T17:38:40+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7793,"target":7.91,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":74.7,"room_to_5d_high_atr":0.39},"price":7.8672,"vwap":7.7603,"ext_from_open_pct":2.17,"max_ext_allowed_pct":3.0,"volume_pace":0.554,"trend":"flat","recent_slope_pct":-0.0234,"volatility":"medium"},"price":7.8672,"volume":{"bars":248,"last_bar_volume":3962.0,"baseline_avg":11413.1,"bar_rvol":0.347145,"raw_accel":-0.797775,"smooth_accel":0.388177,"accel_momentum":-0.127851,"rvol_3bar":[2.254,1.850143,0.347145],"trend_3bar":"DECELERATING","projected_rvol":2.700187},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":2632.0,"sell_vol":17685.0,"unclassified_vol":0.0,"imbalance":-0.740907,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":3.230849},"context":{"vwap":7.759646,"price_vs_vwap_pct":1.386073,"ema9":7.869849,"ema20":7.867362,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.288973,"dist_to_hod_atr":1.572405,"atr":0.0145,"spread_atr":0.689651,"own_change_pct":-0.044461,"rel_strength_pct":{"SPY":-0.041819,"IWM":-0.07602}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.257202},"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":"b5acbe243af2","ts":"2026-09-15T17:38:55+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":14.2,"room_to_5d_high_atr":2.07},"price":12.66,"vwap":12.6163,"ext_from_open_pct":1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.877,"trend":"flat","recent_slope_pct":-0.0704,"volatility":"high"},"price":12.66,"volume":{"bars":248,"last_bar_volume":2936.0,"baseline_avg":7068.3,"bar_rvol":0.415376,"raw_accel":-0.129558,"smooth_accel":-0.763152,"accel_momentum":-1.542036,"rvol_3bar":[0.352644,0.48244,0.415376],"trend_3bar":"MIXED","projected_rvol":0.671526},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":1345.0,"sell_vol":1902.0,"unclassified_vol":0.0,"imbalance":-0.171543,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.315608},"context":{"vwap":12.616287,"price_vs_vwap_pct":0.346479,"ema9":12.688702,"ema20":12.690602,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.764977,"dist_to_hod_atr":11.418224,"atr":0.031529,"spread_atr":0.317173,"own_change_pct":-0.100837,"rel_strength_pct":{"SPY":-0.098195,"IWM":-0.132396}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.071255},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8333d7f35a0e","ts":"2026-09-15T17:39:00+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.472,"target":12.72,"target_label":"premarket_high","reward_risk":0.13,"pos_in_5d_range_pct":15.7,"room_to_5d_high_atr":2.03},"price":12.6911,"vwap":12.6163,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":0.876,"trend":"flat","recent_slope_pct":-0.0214,"volatility":"high"},"price":12.6911,"volume":{"bars":248,"last_bar_volume":2936.0,"baseline_avg":7068.3,"bar_rvol":0.415376,"raw_accel":-0.129558,"smooth_accel":-0.763152,"accel_momentum":-1.542036,"rvol_3bar":[0.352644,0.48244,0.415376],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1374.0,"sell_vol":1912.0,"unclassified_vol":0.0,"imbalance":-0.163725,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.600316},"context":{"vwap":12.616287,"price_vs_vwap_pct":0.592985,"ema9":12.688702,"ema20":12.690602,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.526114,"dist_to_hod_atr":10.431816,"atr":0.031529,"spread_atr":0.317173,"own_change_pct":-0.100837,"rel_strength_pct":{"SPY":-0.091591,"IWM":-0.104343}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.068007},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"779861003559","ts":"2026-09-15T17:39:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7791,"target":7.91,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":74.7,"room_to_5d_high_atr":0.39},"price":7.867,"vwap":7.7603,"ext_from_open_pct":2.17,"max_ext_allowed_pct":4.0,"volume_pace":0.553,"trend":"flat","recent_slope_pct":-0.0483,"volatility":"medium"},"price":7.867,"volume":{"bars":249,"last_bar_volume":21299.0,"baseline_avg":11124.35,"bar_rvol":1.914629,"raw_accel":4.37582,"smooth_accel":0.496647,"accel_momentum":0.10847,"rvol_3bar":[1.850143,0.347145,1.914629],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2925.0,"sell_vol":17961.0,"unclassified_vol":0.0,"imbalance":-0.719908,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.055331},"context":{"vwap":7.76028,"price_vs_vwap_pct":1.375213,"ema9":7.866879,"ema20":7.866185,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.291508,"dist_to_hod_atr":1.522451,"atr":0.015107,"spread_atr":0.661935,"own_change_pct":-0.253968,"rel_strength_pct":{"SPY":-0.244723,"IWM":-0.257475}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.378357},"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":"873e46661f32","ts":"2026-09-15T17:39:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":14.0,"room_to_5d_high_atr":2.07},"price":12.655,"vwap":12.6164,"ext_from_open_pct":1.24,"max_ext_allowed_pct":3.0,"volume_pace":0.876,"trend":"flat","recent_slope_pct":-0.0556,"volatility":"high"},"price":12.655,"volume":{"bars":249,"last_bar_volume":4390.0,"baseline_avg":7093.65,"bar_rvol":0.618863,"raw_accel":0.495232,"smooth_accel":-0.693482,"accel_momentum":0.06967,"rvol_3bar":[0.48244,0.415376,0.618863],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":954.0,"sell_vol":2876.0,"unclassified_vol":0.0,"imbalance":-0.501828,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.797807},"context":{"vwap":12.616348,"price_vs_vwap_pct":0.306368,"ema9":12.689182,"ema20":12.69065,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.803379,"dist_to_hod_atr":11.389189,"atr":0.032048,"spread_atr":0.312033,"own_change_pct":-0.061423,"rel_strength_pct":{"SPY":-0.052177,"IWM":-0.064929}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.310563},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0a6f00f866a5","ts":"2026-09-15T17:39:15+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4501,"target":12.72,"target_label":"premarket_high","reward_risk":0.23,"pos_in_5d_range_pct":14.7,"room_to_5d_high_atr":2.05},"price":12.6692,"vwap":12.6164,"ext_from_open_pct":1.35,"max_ext_allowed_pct":3.0,"volume_pace":0.876,"trend":"flat","recent_slope_pct":-0.0332,"volatility":"high"},"price":12.6692,"volume":{"bars":249,"last_bar_volume":4390.0,"baseline_avg":7093.65,"bar_rvol":0.618863,"raw_accel":0.495232,"smooth_accel":-0.693482,"accel_momentum":0.06967,"rvol_3bar":[0.48244,0.415376,0.618863],"trend_3bar":"MIXED","projected_rvol":1.529819},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":38.0,"sell_vol":2921.0,"unclassified_vol":0.0,"imbalance":-0.974316,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.873529},"context":{"vwap":12.616348,"price_vs_vwap_pct":0.41892,"ema9":12.689182,"ema20":12.69065,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.694316,"dist_to_hod_atr":10.946103,"atr":0.032048,"spread_atr":0.312033,"own_change_pct":-0.061423,"rel_strength_pct":{"SPY":-0.052177,"IWM":-0.064929}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.602968},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b063ca7daa78","ts":"2026-09-15T17:39:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7978,"target":10.07,"target_label":"ceiling","reward_risk":3.24,"pos_in_5d_range_pct":487.0,"room_to_5d_high_atr":-5.58},"price":9.862,"vwap":9.7,"ext_from_open_pct":4.36,"max_ext_allowed_pct":5.0,"volume_pace":3.728,"trend":"flat","recent_slope_pct":-0.1425,"volatility":"low"},"price":9.862,"volume":{"bars":249,"last_bar_volume":9079.0,"baseline_avg":4201.95,"bar_rvol":2.160664,"raw_accel":4.100562,"smooth_accel":-0.060898,"accel_momentum":-2.253805,"rvol_3bar":[1.342686,0.42478,2.160664],"trend_3bar":"MIXED","projected_rvol":0.508907},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":99.0,"sell_vol":942.0,"unclassified_vol":0.0,"imbalance":-0.809798,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":4.609272},"context":{"vwap":9.699935,"price_vs_vwap_pct":1.670784,"ema9":9.913632,"ema20":9.933103,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.313725,"dist_to_hod_atr":9.000043,"atr":0.037555,"spread_atr":0.79882,"own_change_pct":-0.653924,"rel_strength_pct":{"SPY":-0.644678,"IWM":-0.65743}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.749702},"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":"6fabdb477844","ts":"2026-09-15T17:39:30+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":13.8,"room_to_5d_high_atr":2.07},"price":12.6516,"vwap":12.6164,"ext_from_open_pct":1.21,"max_ext_allowed_pct":3.0,"volume_pace":0.875,"trend":"flat","recent_slope_pct":-0.061,"volatility":"high"},"price":12.6516,"volume":{"bars":249,"last_bar_volume":4390.0,"baseline_avg":7093.65,"bar_rvol":0.618863,"raw_accel":0.495232,"smooth_accel":-0.693482,"accel_momentum":0.06967,"rvol_3bar":[0.48244,0.415376,0.618863],"trend_3bar":"MIXED","projected_rvol":0.856823},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":7.0,"sell_vol":3032.0,"unclassified_vol":0.0,"imbalance":-0.995393,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":2.077643},"context":{"vwap":12.616348,"price_vs_vwap_pct":0.279419,"ema9":12.689182,"ema20":12.69065,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.829493,"dist_to_hod_atr":11.49528,"atr":0.032048,"spread_atr":0.312033,"own_change_pct":-0.061423,"rel_strength_pct":{"SPY":-0.052177,"IWM":-0.064929}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.616012},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a368b9065651","ts":"2026-09-15T17:39:40+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4483,"target":12.72,"target_label":"premarket_high","reward_risk":0.24,"pos_in_5d_range_pct":14.6,"room_to_5d_high_atr":2.06},"price":12.6674,"vwap":12.6164,"ext_from_open_pct":1.34,"max_ext_allowed_pct":3.0,"volume_pace":0.875,"trend":"flat","recent_slope_pct":-0.036,"volatility":"high"},"price":12.6674,"volume":{"bars":249,"last_bar_volume":4390.0,"baseline_avg":7093.65,"bar_rvol":0.618863,"raw_accel":0.495232,"smooth_accel":-0.693482,"accel_momentum":0.06967,"rvol_3bar":[0.48244,0.415376,0.618863],"trend_3bar":"MIXED","projected_rvol":0.833985},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":800.0,"sell_vol":435.0,"unclassified_vol":0.0,"imbalance":0.295547,"bid":12.66,"ask":12.67,"spread_pct":0.078958,"quote_size_imbalance":null,"quote_age_s":0.002759},"context":{"vwap":12.616348,"price_vs_vwap_pct":0.404653,"ema9":12.689182,"ema20":12.69065,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.708141,"dist_to_hod_atr":11.002269,"atr":0.032048,"spread_atr":0.312033,"own_change_pct":-0.061423,"rel_strength_pct":{"SPY":-0.052177,"IWM":-0.064929}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.182903},"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":"dabf56a7e1b0","ts":"2026-09-15T17:39:50+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":14.2,"room_to_5d_high_atr":2.07},"price":12.66,"vwap":12.6164,"ext_from_open_pct":1.28,"max_ext_allowed_pct":3.0,"volume_pace":0.874,"trend":"flat","recent_slope_pct":-0.0477,"volatility":"high"},"price":12.66,"volume":{"bars":249,"last_bar_volume":4390.0,"baseline_avg":7093.65,"bar_rvol":0.618863,"raw_accel":0.495232,"smooth_accel":-0.693482,"accel_momentum":0.06967,"rvol_3bar":[0.48244,0.415376,0.618863],"trend_3bar":"MIXED","projected_rvol":0.967118},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":967.0,"sell_vol":2037.0,"unclassified_vol":0.0,"imbalance":-0.356192,"bid":12.65,"ask":12.67,"spread_pct":0.157978,"quote_size_imbalance":null,"quote_age_s":1.230429},"context":{"vwap":12.616348,"price_vs_vwap_pct":0.345999,"ema9":12.689182,"ema20":12.69065,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.764977,"dist_to_hod_atr":11.233173,"atr":0.032048,"spread_atr":0.624065,"own_change_pct":-0.061423,"rel_strength_pct":{"SPY":-0.052177,"IWM":-0.064929}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.220434},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"be078859670d","ts":"2026-09-15T17:39:55+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4432,"target":12.72,"target_label":"premarket_high","reward_risk":0.26,"pos_in_5d_range_pct":14.3,"room_to_5d_high_atr":2.06},"price":12.6623,"vwap":12.6164,"ext_from_open_pct":1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.874,"trend":"flat","recent_slope_pct":-0.0441,"volatility":"high"},"price":12.6623,"volume":{"bars":249,"last_bar_volume":4390.0,"baseline_avg":7093.65,"bar_rvol":0.618863,"raw_accel":0.495232,"smooth_accel":-0.693482,"accel_momentum":0.06967,"rvol_3bar":[0.48244,0.415376,0.618863],"trend_3bar":"MIXED","projected_rvol":0.87966},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":969.0,"sell_vol":1726.0,"unclassified_vol":0.0,"imbalance":-0.280891,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":0.722635},"context":{"vwap":12.616348,"price_vs_vwap_pct":0.364229,"ema9":12.689182,"ema20":12.69065,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.747312,"dist_to_hod_atr":11.161405,"atr":0.032048,"spread_atr":0.312033,"own_change_pct":-0.061423,"rel_strength_pct":{"SPY":-0.052177,"IWM":-0.064929}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.173833},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3b0557cb9a61","ts":"2026-09-15T17:40:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2298,"target":9.46,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":3.25},"price":9.3827,"vwap":9.3544,"ext_from_open_pct":0.35,"max_ext_allowed_pct":4.0,"volume_pace":0.519,"trend":"flat","recent_slope_pct":-0.0029,"volatility":"high"},"price":9.3827,"volume":{"bars":250,"last_bar_volume":3841.0,"baseline_avg":4910.9,"bar_rvol":0.782138,"raw_accel":0.271854,"smooth_accel":0.149935,"accel_momentum":-1.176494,"rvol_3bar":[5.69808,0.60631,0.782138],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":275.0,"sell_vol":415.0,"unclassified_vol":0.0,"imbalance":-0.202899,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.311385},"context":{"vwap":9.354359,"price_vs_vwap_pct":0.302974,"ema9":9.379706,"ema20":9.380156,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.545645,"dist_to_hod_atr":8.369454,"atr":0.0176,"spread_atr":0.568191,"own_change_pct":0.03626,"rel_strength_pct":{"SPY":0.02305,"IWM":0.031}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.158695},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9e8bfdb11aa5","ts":"2026-09-15T17:40:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 345.0s, plan says PASS; stop 11.12, target 11.42 (ceiling), R:R 0.37; R:R 0.37 < 2.0 at 11.34; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1232,"target":11.42,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":26.7,"room_to_5d_high_atr":1.21},"price":11.34,"vwap":11.2887,"ext_from_open_pct":0.71,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0031,"volatility":"high"},"price":11.34,"volume":{"bars":250,"last_bar_volume":213392.0,"baseline_avg":97883.45,"bar_rvol":2.180062,"raw_accel":2.731869,"smooth_accel":-0.482272,"accel_momentum":0.138377,"rvol_3bar":[0.47756,0.591104,2.180062],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":161,"trade_rate":5.366667,"buy_vol":86073.0,"sell_vol":21116.0,"unclassified_vol":0.0,"imbalance":0.606004,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.010845},"context":{"vwap":11.288675,"price_vs_vwap_pct":0.454662,"ema9":11.328587,"ema20":11.306219,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.219512,"dist_to_hod_atr":2.804609,"atr":0.049918,"spread_atr":0.200329,"own_change_pct":0.288742,"rel_strength_pct":{"SPY":0.275532,"IWM":0.283482}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.321127},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"43949fbeabd6","ts":"2026-09-15T17:40:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7958,"target":10.07,"target_label":"ceiling","reward_risk":3.27,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.7,"ext_from_open_pct":4.34,"max_ext_allowed_pct":4.0,"volume_pace":3.714,"trend":"flat","recent_slope_pct":-0.1063,"volatility":"low"},"price":9.86,"volume":{"bars":250,"last_bar_volume":1041.0,"baseline_avg":4584.95,"bar_rvol":0.227047,"raw_accel":-0.88534,"smooth_accel":-0.408519,"accel_momentum":-0.347621,"rvol_3bar":[0.42478,2.160664,0.227047],"trend_3bar":"MIXED","projected_rvol":0.035333},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":1.0,"sell_vol":53.0,"unclassified_vol":0.0,"imbalance":-0.962963,"bid":9.86,"ask":9.88,"spread_pct":0.202634,"quote_size_imbalance":null,"quote_age_s":19.988426},"context":{"vwap":9.700019,"price_vs_vwap_pct":1.649281,"ema9":9.905906,"ema20":9.927569,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":9.25674,"atr":0.03673,"spread_atr":0.544514,"own_change_pct":-0.575905,"rel_strength_pct":{"SPY":-0.589115,"IWM":-0.581165}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.218638},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"977101a3af29","ts":"2026-09-15T17:40:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.30x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2927,"target":8.6,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":128.1,"room_to_5d_high_atr":-1.03},"price":8.4837,"vwap":8.1858,"ext_from_open_pct":10.75,"max_ext_allowed_pct":3.0,"volume_pace":0.304,"trend":"flat","recent_slope_pct":-0.0266,"volatility":"high"},"price":8.4837,"volume":{"bars":249,"last_bar_volume":549.0,"baseline_avg":1082.55,"bar_rvol":0.507136,"raw_accel":1.028544,"smooth_accel":0.871386,"accel_momentum":-2.449003,"rvol_3bar":[1.093757,0.065461,0.507136],"trend_3bar":"MIXED","projected_rvol":0.665096},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":300.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.46,"ask":8.52,"spread_pct":0.706714,"quote_size_imbalance":null,"quote_age_s":4.395364},"context":{"vwap":8.185632,"price_vs_vwap_pct":3.641362,"ema9":8.503871,"ema20":8.503173,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-1.352326,"dist_to_hod_atr":2.727316,"atr":0.042643,"spread_atr":1.407042,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.01321,"IWM":-0.00526}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.507136},"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":"1c4ad5b2360c","ts":"2026-09-15T17:40:25+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":44.5,"room_to_5d_high_atr":1.21},"price":10.7841,"vwap":10.5701,"ext_from_open_pct":3.59,"max_ext_allowed_pct":4.0,"volume_pace":0.975,"trend":"flat","recent_slope_pct":-0.0433,"volatility":"medium"},"price":10.7841,"volume":{"bars":250,"last_bar_volume":5402.0,"baseline_avg":16949.85,"bar_rvol":0.318705,"raw_accel":-0.554951,"smooth_accel":1.269484,"accel_momentum":0.167418,"rvol_3bar":[2.878888,0.721049,0.318705],"trend_3bar":"DECELERATING","projected_rvol":0.273985},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":702.0,"sell_vol":1364.0,"unclassified_vol":0.0,"imbalance":-0.320426,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":2.264171},"context":{"vwap":10.570005,"price_vs_vwap_pct":2.025498,"ema9":10.811958,"ema20":10.825057,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.425046,"dist_to_hod_atr":4.127171,"atr":0.037774,"spread_atr":0.264732,"own_change_pct":-0.267125,"rel_strength_pct":{"SPY":-0.280335,"IWM":-0.272385}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.102121},"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":"2e92a418daaf","ts":"2026-09-15T17:40:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.785,"vwap":10.5702,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.975,"trend":"flat","recent_slope_pct":-0.0417,"volatility":"medium"},"price":10.785,"volume":{"bars":250,"last_bar_volume":5402.0,"baseline_avg":16949.85,"bar_rvol":0.318705,"raw_accel":-0.554951,"smooth_accel":1.269484,"accel_momentum":0.167418,"rvol_3bar":[2.878888,0.721049,0.318705],"trend_3bar":"DECELERATING","projected_rvol":0.52319},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1881.0,"sell_vol":2553.0,"unclassified_vol":0.0,"imbalance":-0.151556,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.351923},"context":{"vwap":10.570005,"price_vs_vwap_pct":2.034012,"ema9":10.811958,"ema20":10.825057,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.416819,"dist_to_hod_atr":4.103345,"atr":0.037774,"spread_atr":0.264732,"own_change_pct":-0.267125,"rel_strength_pct":{"SPY":-0.280335,"IWM":-0.272385}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.048302},"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":"8bb907e5f5a0","ts":"2026-09-15T17:40:50+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.21},"price":10.7845,"vwap":10.5704,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.975,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"medium"},"price":10.7845,"volume":{"bars":250,"last_bar_volume":5402.0,"baseline_avg":16949.85,"bar_rvol":0.318705,"raw_accel":-0.554951,"smooth_accel":1.269484,"accel_momentum":0.167418,"rvol_3bar":[2.878888,0.721049,0.318705],"trend_3bar":"DECELERATING","projected_rvol":0.756254},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":6657.0,"sell_vol":2265.0,"unclassified_vol":0.0,"imbalance":0.492266,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.966668},"context":{"vwap":10.570005,"price_vs_vwap_pct":2.029282,"ema9":10.811958,"ema20":10.825057,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.421389,"dist_to_hod_atr":4.116581,"atr":0.037774,"spread_atr":0.264732,"own_change_pct":-0.267125,"rel_strength_pct":{"SPY":-0.280335,"IWM":-0.272385}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.156888},"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":"733f3c17cd8f","ts":"2026-09-15T17:40:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8065,"target":10.07,"target_label":"ceiling","reward_risk":3.1,"pos_in_5d_range_pct":489.4,"room_to_5d_high_atr":-5.61},"price":9.8707,"vwap":9.7001,"ext_from_open_pct":4.45,"max_ext_allowed_pct":5.0,"volume_pace":3.707,"trend":"flat","recent_slope_pct":-0.0846,"volatility":"low"},"price":9.8707,"volume":{"bars":250,"last_bar_volume":1041.0,"baseline_avg":4584.95,"bar_rvol":0.227047,"raw_accel":-0.88534,"smooth_accel":-0.408519,"accel_momentum":-0.347621,"rvol_3bar":[0.42478,2.160664,0.227047],"trend_3bar":"MIXED","projected_rvol":0.222705},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":262.0,"sell_vol":620.0,"unclassified_vol":0.0,"imbalance":-0.405896,"bid":9.86,"ask":9.88,"spread_pct":0.202634,"quote_size_imbalance":null,"quote_age_s":8.90771},"context":{"vwap":9.700019,"price_vs_vwap_pct":1.75959,"ema9":9.905906,"ema20":9.927569,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.228431,"dist_to_hod_atr":8.965425,"atr":0.03673,"spread_atr":0.544514,"own_change_pct":-0.575905,"rel_strength_pct":{"SPY":-0.589115,"IWM":-0.581165}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.092157},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"811cc0cf242d","ts":"2026-09-15T17:41:10+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":13.5,"room_to_5d_high_atr":2.08},"price":12.645,"vwap":12.6165,"ext_from_open_pct":1.16,"max_ext_allowed_pct":3.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":-0.0853,"volatility":"high"},"price":12.645,"volume":{"bars":251,"last_bar_volume":2094.0,"baseline_avg":6956.75,"bar_rvol":0.301003,"raw_accel":-0.688625,"smooth_accel":0.495415,"accel_momentum":1.079471,"rvol_3bar":[0.618863,0.943237,0.301003],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":748.0,"sell_vol":839.0,"unclassified_vol":0.0,"imbalance":-0.057341,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.197847},"context":{"vwap":12.616456,"price_vs_vwap_pct":0.226243,"ema9":12.682268,"ema20":12.687086,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.880184,"dist_to_hod_atr":11.321276,"atr":0.033123,"spread_atr":0.301901,"own_change_pct":-0.340991,"rel_strength_pct":{"SPY":-0.354199,"IWM":-0.305937}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.01726},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"71107d3ea399","ts":"2026-09-15T17:41:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6437,"target":10.935,"target_label":"prev_day_high","reward_risk":0.97,"pos_in_5d_range_pct":45.1,"room_to_5d_high_atr":1.19},"price":10.7919,"vwap":10.5705,"ext_from_open_pct":3.67,"max_ext_allowed_pct":3.0,"volume_pace":0.974,"trend":"flat","recent_slope_pct":-0.0213,"volatility":"medium"},"price":10.7919,"volume":{"bars":251,"last_bar_volume":11506.0,"baseline_avg":16390.1,"bar_rvol":0.702009,"raw_accel":1.129952,"smooth_accel":-0.564586,"accel_momentum":-1.834071,"rvol_3bar":[0.721049,0.318705,0.702009],"trend_3bar":"MIXED","projected_rvol":0.203293},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2993.0,"sell_vol":779.0,"unclassified_vol":0.0,"imbalance":0.586957,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.342415},"context":{"vwap":10.570439,"price_vs_vwap_pct":2.095102,"ema9":10.810566,"ema20":10.823147,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.353748,"dist_to_hod_atr":3.978411,"atr":0.037226,"spread_atr":0.26863,"own_change_pct":-0.184758,"rel_strength_pct":{"SPY":-0.197966,"IWM":-0.149704}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.412049},"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":"9b50f75f2382","ts":"2026-09-15T17:41:15+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.443,"target":12.72,"target_label":"premarket_high","reward_risk":0.26,"pos_in_5d_range_pct":14.3,"room_to_5d_high_atr":2.06},"price":12.6621,"vwap":12.6165,"ext_from_open_pct":1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":-0.0583,"volatility":"high"},"price":12.6621,"volume":{"bars":251,"last_bar_volume":2094.0,"baseline_avg":6956.75,"bar_rvol":0.301003,"raw_accel":-0.688625,"smooth_accel":0.495415,"accel_momentum":1.079471,"rvol_3bar":[0.618863,0.943237,0.301003],"trend_3bar":"MIXED","projected_rvol":0.836023},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1663.0,"sell_vol":840.0,"unclassified_vol":0.0,"imbalance":0.328805,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.400535},"context":{"vwap":12.616456,"price_vs_vwap_pct":0.36178,"ema9":12.682268,"ema20":12.687086,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.748848,"dist_to_hod_atr":10.805026,"atr":0.033123,"spread_atr":0.301901,"own_change_pct":-0.340991,"rel_strength_pct":{"SPY":-0.354199,"IWM":-0.305937}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.098971},"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":"0063f209a664","ts":"2026-09-15T17:41:15+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 415.0s, plan says WATCH; stop 11.14, target 11.44 (premarket_high), R:R 0.38; R:R 0.38 < 2.0 at 11.36; breakout: 1-min close > 11.43 on >= 139764 sh","plan":{"state":"WATCH","setup":"","stop":11.1403,"target":11.44,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":27.9,"room_to_5d_high_atr":1.19},"price":11.3571,"vwap":11.2889,"ext_from_open_pct":0.86,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0615,"volatility":"high"},"price":11.3571,"volume":{"bars":251,"last_bar_volume":113118.0,"baseline_avg":107618.2,"bar_rvol":1.051105,"raw_accel":-0.469905,"smooth_accel":0.045417,"accel_momentum":0.527689,"rvol_3bar":[0.591104,2.180062,1.051105],"trend_3bar":"MIXED","projected_rvol":1.241166},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":19476.0,"sell_vol":41548.0,"unclassified_vol":0.0,"imbalance":-0.361694,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.0432},"context":{"vwap":11.288877,"price_vs_vwap_pct":0.604337,"ema9":11.33087,"ema20":11.309436,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.070557,"dist_to_hod_atr":2.431834,"atr":0.050538,"spread_atr":0.197871,"own_change_pct":-0.395257,"rel_strength_pct":{"SPY":-0.408465,"IWM":-0.360204}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.380178},"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":"4ae56d3e2d50","ts":"2026-09-15T17:41:20+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 420.0s, plan says PASS; stop 11.12, target 11.42 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 11.34; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1182,"target":11.42,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":26.3,"room_to_5d_high_atr":1.21},"price":11.335,"vwap":11.2889,"ext_from_open_pct":0.67,"max_ext_allowed_pct":3.0,"volume_pace":0.829,"trend":"flat","recent_slope_pct":0.0226,"volatility":"high"},"price":11.335,"volume":{"bars":251,"last_bar_volume":113118.0,"baseline_avg":107618.2,"bar_rvol":1.051105,"raw_accel":-0.469905,"smooth_accel":0.045417,"accel_momentum":0.527689,"rvol_3bar":[0.591104,2.180062,1.051105],"trend_3bar":"MIXED","projected_rvol":0.934219},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":12403.0,"sell_vol":39650.0,"unclassified_vol":0.0,"imbalance":-0.523447,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.954254},"context":{"vwap":11.288877,"price_vs_vwap_pct":0.408569,"ema9":11.33087,"ema20":11.309436,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.263066,"dist_to_hod_atr":2.869129,"atr":0.050538,"spread_atr":0.197871,"own_change_pct":-0.395257,"rel_strength_pct":{"SPY":-0.408465,"IWM":-0.360204}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.550198},"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":"bee21618459c","ts":"2026-09-15T17:41:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8058,"target":10.07,"target_label":"ceiling","reward_risk":3.12,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.87,"vwap":9.7001,"ext_from_open_pct":4.44,"max_ext_allowed_pct":4.0,"volume_pace":3.7,"trend":"flat","recent_slope_pct":-0.0651,"volatility":"low"},"price":9.87,"volume":{"bars":251,"last_bar_volume":936.0,"baseline_avg":4534.25,"bar_rvol":0.206429,"raw_accel":-0.174285,"smooth_accel":-0.486174,"accel_momentum":-0.077654,"rvol_3bar":[2.160664,0.227047,0.206429],"trend_3bar":"DECELERATING","projected_rvol":0.038639},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":1.0,"sell_vol":72.0,"unclassified_vol":0.0,"imbalance":-0.972603,"bid":9.86,"ask":9.88,"spread_pct":0.202634,"quote_size_imbalance":null,"quote_age_s":13.975933},"context":{"vwap":9.700095,"price_vs_vwap_pct":1.751583,"ema9":9.898865,"ema20":9.922153,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.235294,"dist_to_hod_atr":9.145076,"atr":0.036085,"spread_atr":0.554247,"own_change_pct":-0.496976,"rel_strength_pct":{"SPY":-0.510184,"IWM":-0.461923}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.200773},"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":"00b2ffbf84f9","ts":"2026-09-15T17:41:25+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":13.5,"room_to_5d_high_atr":2.08},"price":12.645,"vwap":12.6165,"ext_from_open_pct":1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":-0.0853,"volatility":"high"},"price":12.645,"volume":{"bars":251,"last_bar_volume":2094.0,"baseline_avg":6956.75,"bar_rvol":0.301003,"raw_accel":-0.688625,"smooth_accel":0.495415,"accel_momentum":1.079471,"rvol_3bar":[0.618863,0.943237,0.301003],"trend_3bar":"MIXED","projected_rvol":0.541977},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1053.0,"sell_vol":528.0,"unclassified_vol":0.0,"imbalance":0.332068,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.533448},"context":{"vwap":12.616456,"price_vs_vwap_pct":0.226243,"ema9":12.682268,"ema20":12.687086,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.880184,"dist_to_hod_atr":11.321276,"atr":0.033123,"spread_atr":0.301901,"own_change_pct":-0.340991,"rel_strength_pct":{"SPY":-0.354199,"IWM":-0.305937}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.099953},"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":"15bbd26432c6","ts":"2026-09-15T17:41:30+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7521,"target":7.89,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":69.7,"room_to_5d_high_atr":0.47},"price":7.84,"vwap":7.7608,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0578,"volatility":"medium"},"price":7.84,"volume":{"bars":251,"last_bar_volume":801.0,"baseline_avg":12095.6,"bar_rvol":0.066222,"raw_accel":-0.915595,"smooth_accel":-0.300425,"accel_momentum":-0.07714,"rvol_3bar":[1.914629,0.800125,0.066222],"trend_3bar":"DECELERATING","projected_rvol":1.691855},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":829.0,"sell_vol":9403.0,"unclassified_vol":0.0,"imbalance":-0.837959,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.203426},"context":{"vwap":7.760578,"price_vs_vwap_pct":1.023405,"ema9":7.864962,"ema20":7.86528,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.633714,"dist_to_hod_atr":3.256549,"atr":0.015354,"spread_atr":0.65131,"own_change_pct":-0.177647,"rel_strength_pct":{"SPY":-0.190855,"IWM":-0.142594}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.055492},"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":"b30f995a6cb5","ts":"2026-09-15T17:41:30+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.4426,"target":12.72,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":14.3,"room_to_5d_high_atr":2.06},"price":12.6617,"vwap":12.6165,"ext_from_open_pct":1.29,"max_ext_allowed_pct":4.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":-0.0589,"volatility":"high"},"price":12.6617,"volume":{"bars":251,"last_bar_volume":2094.0,"baseline_avg":6956.75,"bar_rvol":0.301003,"raw_accel":-0.688625,"smooth_accel":0.495415,"accel_momentum":1.079471,"rvol_3bar":[0.618863,0.943237,0.301003],"trend_3bar":"MIXED","projected_rvol":0.453373},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":1056.0,"sell_vol":521.0,"unclassified_vol":0.0,"imbalance":0.339252,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.520257},"context":{"vwap":12.616456,"price_vs_vwap_pct":0.35861,"ema9":12.682268,"ema20":12.687086,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.75192,"dist_to_hod_atr":10.817102,"atr":0.033123,"spread_atr":0.301901,"own_change_pct":-0.340991,"rel_strength_pct":{"SPY":-0.354199,"IWM":-0.305937}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.102116},"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":"65930367134e","ts":"2026-09-15T17:41:35+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":13.7,"room_to_5d_high_atr":2.08},"price":12.6484,"vwap":12.6165,"ext_from_open_pct":1.19,"max_ext_allowed_pct":4.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":-0.0799,"volatility":"high"},"price":12.6484,"volume":{"bars":251,"last_bar_volume":2094.0,"baseline_avg":6956.75,"bar_rvol":0.301003,"raw_accel":-0.688625,"smooth_accel":0.495415,"accel_momentum":1.079471,"rvol_3bar":[0.618863,0.943237,0.301003],"trend_3bar":"MIXED","projected_rvol":0.388852},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":954.0,"sell_vol":495.0,"unclassified_vol":0.0,"imbalance":0.31677,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.327935},"context":{"vwap":12.616456,"price_vs_vwap_pct":0.253192,"ema9":12.682268,"ema20":12.687086,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.854071,"dist_to_hod_atr":11.21863,"atr":0.033123,"spread_atr":0.301901,"own_change_pct":-0.340991,"rel_strength_pct":{"SPY":-0.354199,"IWM":-0.305937}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.095349},"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":"6aee5c72da35","ts":"2026-09-15T17:41:40+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7606,"target":7.91,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":71.3,"room_to_5d_high_atr":0.45},"price":7.8485,"vwap":7.7609,"ext_from_open_pct":1.93,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0361,"volatility":"medium"},"price":7.8485,"volume":{"bars":251,"last_bar_volume":801.0,"baseline_avg":12095.6,"bar_rvol":0.066222,"raw_accel":-0.915595,"smooth_accel":-0.300425,"accel_momentum":-0.07714,"rvol_3bar":[1.914629,0.800125,0.066222],"trend_3bar":"DECELERATING","projected_rvol":1.498685},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":863.0,"sell_vol":10635.0,"unclassified_vol":0.0,"imbalance":-0.849887,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.08925},"context":{"vwap":7.760578,"price_vs_vwap_pct":1.132933,"ema9":7.864962,"ema20":7.86528,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.525982,"dist_to_hod_atr":2.702936,"atr":0.015354,"spread_atr":0.65131,"own_change_pct":-0.177647,"rel_strength_pct":{"SPY":-0.190855,"IWM":-0.142594}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.056282},"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":"9d48ef34387e","ts":"2026-09-15T17:41:40+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 440.0s, plan says WATCH; stop 11.14, target 11.44 (premarket_high), R:R 0.39; R:R 0.39 < 2.0 at 11.36; breakout: 1-min close > 11.43 on >= 139764 sh","plan":{"state":"WATCH","setup":"","stop":11.1385,"target":11.44,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":27.7,"room_to_5d_high_atr":1.19},"price":11.3553,"vwap":11.289,"ext_from_open_pct":0.85,"max_ext_allowed_pct":4.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0584,"volatility":"high"},"price":11.3553,"volume":{"bars":251,"last_bar_volume":113118.0,"baseline_avg":107618.2,"bar_rvol":1.051105,"raw_accel":-0.469905,"smooth_accel":0.045417,"accel_momentum":0.527689,"rvol_3bar":[0.591104,2.180062,1.051105],"trend_3bar":"MIXED","projected_rvol":0.659414},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4867.0,"sell_vol":9777.0,"unclassified_vol":0.0,"imbalance":-0.335291,"bid":11.34,"ask":11.35,"spread_pct":0.088145,"quote_size_imbalance":null,"quote_age_s":0.103745},"context":{"vwap":11.288877,"price_vs_vwap_pct":0.588392,"ema9":11.33087,"ema20":11.309436,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.086237,"dist_to_hod_atr":2.467451,"atr":0.050538,"spread_atr":0.197871,"own_change_pct":-0.395257,"rel_strength_pct":{"SPY":-0.408465,"IWM":-0.360204}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.352426},"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":"db62cfcfda04","ts":"2026-09-15T17:41:45+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 445.0s, plan says PASS; stop 11.13, target 11.42 (ceiling), R:R 0.35; R:R 0.35 < 2.0 at 11.35; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1282,"target":11.42,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":27.0,"room_to_5d_high_atr":1.2},"price":11.345,"vwap":11.289,"ext_from_open_pct":0.75,"max_ext_allowed_pct":4.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":0.0402,"volatility":"high"},"price":11.345,"volume":{"bars":251,"last_bar_volume":113118.0,"baseline_avg":107618.2,"bar_rvol":1.051105,"raw_accel":-0.469905,"smooth_accel":0.045417,"accel_momentum":0.527689,"rvol_3bar":[0.591104,2.180062,1.051105],"trend_3bar":"MIXED","projected_rvol":0.595835},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4952.0,"sell_vol":9747.0,"unclassified_vol":0.0,"imbalance":-0.326213,"bid":11.34,"ask":11.35,"spread_pct":0.088145,"quote_size_imbalance":null,"quote_age_s":0.179671},"context":{"vwap":11.288877,"price_vs_vwap_pct":0.497152,"ema9":11.33087,"ema20":11.309436,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.175958,"dist_to_hod_atr":2.671258,"atr":0.050538,"spread_atr":0.197871,"own_change_pct":-0.395257,"rel_strength_pct":{"SPY":-0.408465,"IWM":-0.360204}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.342884},"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":"984ef79a4d8b","ts":"2026-09-15T17:41:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7521,"target":7.89,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":69.7,"room_to_5d_high_atr":0.47},"price":7.84,"vwap":7.761,"ext_from_open_pct":1.82,"max_ext_allowed_pct":3.0,"volume_pace":0.552,"trend":"flat","recent_slope_pct":-0.0578,"volatility":"medium"},"price":7.84,"volume":{"bars":251,"last_bar_volume":801.0,"baseline_avg":12095.6,"bar_rvol":0.066222,"raw_accel":-0.915595,"smooth_accel":-0.300425,"accel_momentum":-0.07714,"rvol_3bar":[1.914629,0.800125,0.066222],"trend_3bar":"DECELERATING","projected_rvol":1.605906},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":863.0,"sell_vol":14371.0,"unclassified_vol":0.0,"imbalance":-0.886701,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.141411},"context":{"vwap":7.760578,"price_vs_vwap_pct":1.023405,"ema9":7.864962,"ema20":7.86528,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.633714,"dist_to_hod_atr":3.256549,"atr":0.015354,"spread_atr":0.65131,"own_change_pct":-0.177647,"rel_strength_pct":{"SPY":-0.190855,"IWM":-0.142594}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.058719},"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":"d4ecc1116fb2","ts":"2026-09-15T17:41:50+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.11 below VWAP $5.11","plan":{"state":"PASS","setup":"","stop":4.7306,"target":5.3208,"target_label":"premarket_high","reward_risk":0.55,"pos_in_5d_range_pct":1.8,"room_to_5d_high_atr":2.86},"price":5.1106,"vwap":5.1144,"ext_from_open_pct":-3.02,"max_ext_allowed_pct":3.0,"volume_pace":0.678,"trend":"flat","recent_slope_pct":0.0509,"volatility":"high"},"price":5.1106,"volume":{"bars":210,"last_bar_volume":200.0,"baseline_avg":1088.45,"bar_rvol":0.183748,"raw_accel":-0.933665,"smooth_accel":12.620623,"accel_momentum":7.711376,"rvol_3bar":[5.035244,3.20506,0.183748],"trend_3bar":"DECELERATING","projected_rvol":0.888603},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.11,"ask":5.3,"spread_pct":3.650336,"quote_size_imbalance":null,"quote_age_s":19.901581},"context":{"vwap":5.114288,"price_vs_vwap_pct":-0.07212,"ema9":5.142176,"ema20":5.108728,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.681135,"dist_to_hod_atr":14.586941,"atr":0.060287,"spread_atr":3.151602,"own_change_pct":0.486381,"rel_strength_pct":{"SPY":0.473173,"IWM":0.521435}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.183748},"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":"f4bde67aa0d0","ts":"2026-09-15T17:41:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8174,"target":10.07,"target_label":"ceiling","reward_risk":2.93,"pos_in_5d_range_pct":492.3,"room_to_5d_high_atr":-5.65},"price":9.8816,"vwap":9.7007,"ext_from_open_pct":4.57,"max_ext_allowed_pct":5.0,"volume_pace":3.704,"trend":"flat","recent_slope_pct":-0.0416,"volatility":"low"},"price":9.8816,"volume":{"bars":251,"last_bar_volume":936.0,"baseline_avg":4534.25,"bar_rvol":0.206429,"raw_accel":-0.174285,"smooth_accel":-0.486174,"accel_momentum":-0.077654,"rvol_3bar":[2.160664,0.227047,0.206429],"trend_3bar":"DECELERATING","projected_rvol":1.645897},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":3718.0,"sell_vol":3050.0,"unclassified_vol":0.0,"imbalance":0.0987,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":6.576317},"context":{"vwap":9.700095,"price_vs_vwap_pct":1.871169,"ema9":9.898865,"ema20":9.922153,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.121569,"dist_to_hod_atr":8.823613,"atr":0.036085,"spread_atr":0.831371,"own_change_pct":-0.496976,"rel_strength_pct":{"SPY":-0.510184,"IWM":-0.461923}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.020374},"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":"bb0e16ec8b0f","ts":"2026-09-15T17:42:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7417,"target":7.875,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":2.73},"price":7.86,"vwap":7.8481,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":3.0,"volume_pace":1.17,"trend":"flat","recent_slope_pct":-0.0036,"volatility":"high"},"price":7.86,"volume":{"bars":252,"last_bar_volume":1028.0,"baseline_avg":15067.9,"bar_rvol":0.068225,"raw_accel":-0.727102,"smooth_accel":-0.460089,"accel_momentum":-0.900737,"rvol_3bar":[0.223623,0.041254,0.068225],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":35.0,"sell_vol":617.0,"unclassified_vol":0.0,"imbalance":-0.892638,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.106005},"context":{"vwap":7.848086,"price_vs_vwap_pct":0.151808,"ema9":7.855683,"ema20":7.856716,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.882724,"dist_to_hod_atr":5.545844,"atr":0.012622,"spread_atr":0.792263,"own_change_pct":-0.127226,"rel_strength_pct":{"SPY":-0.139115,"IWM":-0.095672}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.0609},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a3a95f6b3db7","ts":"2026-09-15T17:42:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":13.8,"room_to_5d_high_atr":2.08},"price":12.6508,"vwap":12.6165,"ext_from_open_pct":1.21,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":-0.0902,"volatility":"high"},"price":12.6508,"volume":{"bars":252,"last_bar_volume":5644.0,"baseline_avg":6366.85,"bar_rvol":0.886467,"raw_accel":1.69532,"smooth_accel":0.351809,"accel_momentum":-0.143606,"rvol_3bar":[0.943237,0.301003,0.886467],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2111.0,"sell_vol":2083.0,"unclassified_vol":0.0,"imbalance":0.006676,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":1.405315},"context":{"vwap":12.61651,"price_vs_vwap_pct":0.271785,"ema9":12.676815,"ema20":12.684031,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.835637,"dist_to_hod_atr":10.801973,"atr":0.034179,"spread_atr":0.292578,"own_change_pct":-0.157791,"rel_strength_pct":{"SPY":-0.16968,"IWM":-0.126237}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.005918},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e32701a6826f","ts":"2026-09-15T17:42:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7755,"target":7.91,"target_label":"prev_day_high","reward_risk":0.53,"pos_in_5d_range_pct":74.0,"room_to_5d_high_atr":0.4},"price":7.8634,"vwap":7.7611,"ext_from_open_pct":2.12,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0041,"volatility":"medium"},"price":7.8634,"volume":{"bars":252,"last_bar_volume":19328.0,"baseline_avg":11703.75,"bar_rvol":1.651437,"raw_accel":5.605746,"smooth_accel":-0.339643,"accel_momentum":-0.039218,"rvol_3bar":[0.800125,0.066222,1.651437],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1915.0,"sell_vol":5906.0,"unclassified_vol":0.0,"imbalance":-0.510293,"bid":7.83,"ask":7.84,"spread_pct":0.127632,"quote_size_imbalance":null,"quote_age_s":2.347831},"context":{"vwap":7.761054,"price_vs_vwap_pct":1.318707,"ema9":7.85897,"ema20":7.862396,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.337136,"dist_to_hod_atr":1.575311,"atr":0.016886,"spread_atr":0.592222,"own_change_pct":-0.386503,"rel_strength_pct":{"SPY":-0.398392,"IWM":-0.354949}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.842716},"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":"b63c627e4cce","ts":"2026-09-15T17:42:25+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8481,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":3.0,"volume_pace":1.179,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"high"},"price":7.845,"volume":{"bars":252,"last_bar_volume":1028.0,"baseline_avg":15067.9,"bar_rvol":0.068225,"raw_accel":-0.727102,"smooth_accel":-0.460089,"accel_momentum":-0.900737,"rvol_3bar":[0.223623,0.041254,0.068225],"trend_3bar":"MIXED","projected_rvol":4.779007},"flow":{"window_s":30,"trades":152,"trade_rate":5.066667,"buy_vol":6315.0,"sell_vol":23989.0,"unclassified_vol":0.0,"imbalance":-0.583223,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.883146},"context":{"vwap":7.848086,"price_vs_vwap_pct":-0.039321,"ema9":7.855683,"ema20":7.856716,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":6.734239,"atr":0.012622,"spread_atr":0.792263,"own_change_pct":-0.127226,"rel_strength_pct":{"SPY":-0.139115,"IWM":-0.095672}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.03979},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"877171033816","ts":"2026-09-15T17:42:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7471,"target":7.89,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.48},"price":7.835,"vwap":7.7626,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.561,"trend":"flat","recent_slope_pct":-0.0764,"volatility":"medium"},"price":7.835,"volume":{"bars":252,"last_bar_volume":19328.0,"baseline_avg":11703.75,"bar_rvol":1.651437,"raw_accel":5.605746,"smooth_accel":-0.339643,"accel_momentum":-0.039218,"rvol_3bar":[0.800125,0.066222,1.651437],"trend_3bar":"MIXED","projected_rvol":12.952566},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2654.0,"sell_vol":61649.0,"unclassified_vol":0.0,"imbalance":-0.917453,"bid":7.83,"ask":7.84,"spread_pct":0.127632,"quote_size_imbalance":null,"quote_age_s":1.191412},"context":{"vwap":7.761054,"price_vs_vwap_pct":0.952777,"ema9":7.85897,"ema20":7.862396,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.697085,"dist_to_hod_atr":3.257222,"atr":0.016886,"spread_atr":0.592222,"own_change_pct":-0.386503,"rel_strength_pct":{"SPY":-0.398392,"IWM":-0.354949}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.515116},"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":"8eebb173bf83","ts":"2026-09-15T17:42:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8108,"target":10.07,"target_label":"ceiling","reward_risk":3.04,"pos_in_5d_range_pct":490.5,"room_to_5d_high_atr":-5.63},"price":9.875,"vwap":9.7007,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":3.696,"trend":"flat","recent_slope_pct":0.0067,"volatility":"low"},"price":9.875,"volume":{"bars":252,"last_bar_volume":6841.0,"baseline_avg":4559.15,"bar_rvol":1.500499,"raw_accel":5.001996,"smooth_accel":-0.454365,"accel_momentum":0.031808,"rvol_3bar":[0.227047,0.206429,1.500499],"trend_3bar":"MIXED","projected_rvol":0.001755},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":3.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.5,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":4.636421},"context":{"vwap":9.700658,"price_vs_vwap_pct":1.797216,"ema9":9.895412,"ema20":9.918291,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.186275,"dist_to_hod_atr":9.114494,"atr":0.035657,"spread_atr":0.841338,"own_change_pct":-0.185859,"rel_strength_pct":{"SPY":-0.197747,"IWM":-0.154305}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.750249},"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":"b43c4f1a98e1","ts":"2026-09-15T17:42:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7321,"target":7.89,"target_label":"ceiling","reward_risk":0.8,"pos_in_5d_range_pct":66.1,"room_to_5d_high_atr":0.53},"price":7.82,"vwap":7.7625,"ext_from_open_pct":1.56,"max_ext_allowed_pct":3.0,"volume_pace":0.562,"trend":"flat","recent_slope_pct":-0.1147,"volatility":"medium"},"price":7.82,"volume":{"bars":252,"last_bar_volume":19328.0,"baseline_avg":11703.75,"bar_rvol":1.651437,"raw_accel":5.605746,"smooth_accel":-0.339643,"accel_momentum":-0.039218,"rvol_3bar":[0.800125,0.066222,1.651437],"trend_3bar":"MIXED","projected_rvol":11.984193},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":5020.0,"sell_vol":65110.0,"unclassified_vol":0.0,"imbalance":-0.856837,"bid":7.82,"ask":7.83,"spread_pct":0.127796,"quote_size_imbalance":null,"quote_age_s":1.791359},"context":{"vwap":7.761054,"price_vs_vwap_pct":0.759504,"ema9":7.85897,"ema20":7.862396,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.887199,"dist_to_hod_atr":4.145555,"atr":0.016886,"spread_atr":0.592222,"own_change_pct":-0.386503,"rel_strength_pct":{"SPY":-0.398392,"IWM":-0.354949}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.415012},"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":"72593369cfce","ts":"2026-09-15T17:42:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8158,"target":10.07,"target_label":"ceiling","reward_risk":2.96,"pos_in_5d_range_pct":491.9,"room_to_5d_high_atr":-5.65},"price":9.88,"vwap":9.7007,"ext_from_open_pct":4.55,"max_ext_allowed_pct":5.0,"volume_pace":3.695,"trend":"flat","recent_slope_pct":0.0168,"volatility":"low"},"price":9.88,"volume":{"bars":252,"last_bar_volume":6841.0,"baseline_avg":4559.15,"bar_rvol":1.500499,"raw_accel":5.001996,"smooth_accel":-0.454365,"accel_momentum":0.031808,"rvol_3bar":[0.227047,0.206429,1.500499],"trend_3bar":"MIXED","projected_rvol":0.00188},"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":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":4.988359},"context":{"vwap":9.700658,"price_vs_vwap_pct":1.848759,"ema9":9.895412,"ema20":9.918291,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.137255,"dist_to_hod_atr":8.974271,"atr":0.035657,"spread_atr":0.841338,"own_change_pct":-0.185859,"rel_strength_pct":{"SPY":-0.197747,"IWM":-0.154305}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.500499},"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":"9356985ca5cd","ts":"2026-09-15T17:42:35+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.118,"target":11.42,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":26.3,"room_to_5d_high_atr":1.21},"price":11.3348,"vwap":11.2891,"ext_from_open_pct":0.66,"max_ext_allowed_pct":3.0,"volume_pace":0.827,"trend":"flat","recent_slope_pct":-0.0512,"volatility":"high"},"price":11.3348,"volume":{"bars":252,"last_bar_volume":61300.0,"baseline_avg":111705.35,"bar_rvol":0.548765,"raw_accel":-0.458088,"smooth_accel":0.661241,"accel_momentum":0.615824,"rvol_3bar":[2.180062,1.051105,0.548765],"trend_3bar":"DECELERATING","projected_rvol":0.815543},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":10158.0,"sell_vol":42600.0,"unclassified_vol":0.0,"imbalance":-0.614921,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":1.639523},"context":{"vwap":11.289,"price_vs_vwap_pct":0.405701,"ema9":11.334696,"ema20":11.313299,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.264808,"dist_to_hod_atr":2.94526,"atr":0.0493,"spread_atr":0.202842,"own_change_pct":-0.096822,"rel_strength_pct":{"SPY":-0.108711,"IWM":-0.065268}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.337447},"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":"22e72e1e62d5","ts":"2026-09-15T17:42:40+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7323,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":2.75},"price":7.8506,"vwap":7.8481,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"high"},"price":7.8506,"volume":{"bars":252,"last_bar_volume":1028.0,"baseline_avg":15067.9,"bar_rvol":0.068225,"raw_accel":-0.727102,"smooth_accel":-0.460089,"accel_momentum":-0.900737,"rvol_3bar":[0.223623,0.041254,0.068225],"trend_3bar":"MIXED","projected_rvol":2.999821},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":6421.0,"sell_vol":23689.0,"unclassified_vol":0.0,"imbalance":-0.573497,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.183979},"context":{"vwap":7.848086,"price_vs_vwap_pct":0.032034,"ema9":7.855683,"ema20":7.856716,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.001261,"dist_to_hod_atr":6.290572,"atr":0.012622,"spread_atr":0.792263,"own_change_pct":-0.127226,"rel_strength_pct":{"SPY":-0.139115,"IWM":-0.095672}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.039127},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6c998047661a","ts":"2026-09-15T17:42:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8357,"target":10.07,"target_label":"ceiling","reward_risk":2.65,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.8999,"vwap":9.7008,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":3.694,"trend":"flat","recent_slope_pct":0.0571,"volatility":"low"},"price":9.8999,"volume":{"bars":252,"last_bar_volume":6841.0,"baseline_avg":4559.15,"bar_rvol":1.500499,"raw_accel":5.001996,"smooth_accel":-0.454365,"accel_momentum":0.031808,"rvol_3bar":[0.227047,0.206429,1.500499],"trend_3bar":"MIXED","projected_rvol":0.35299},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":306.0,"sell_vol":900.0,"unclassified_vol":0.0,"imbalance":-0.492537,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":14.988359},"context":{"vwap":9.700658,"price_vs_vwap_pct":2.053899,"ema9":9.895412,"ema20":9.918291,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.942157,"dist_to_hod_atr":8.416183,"atr":0.035657,"spread_atr":0.841338,"own_change_pct":-0.185859,"rel_strength_pct":{"SPY":-0.197747,"IWM":-0.154305}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.739052},"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":"a370abe610b0","ts":"2026-09-15T17:42:50+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8481,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":4.0,"volume_pace":1.177,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"high"},"price":7.845,"volume":{"bars":252,"last_bar_volume":1028.0,"baseline_avg":15067.9,"bar_rvol":0.068225,"raw_accel":-0.727102,"smooth_accel":-0.460089,"accel_momentum":-0.900737,"rvol_3bar":[0.223623,0.041254,0.068225],"trend_3bar":"MIXED","projected_rvol":2.400016},"flow":{"window_s":30,"trades":97,"trade_rate":3.233333,"buy_vol":3861.0,"sell_vol":19531.0,"unclassified_vol":0.0,"imbalance":-0.669887,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":9.533381},"context":{"vwap":7.848086,"price_vs_vwap_pct":-0.039321,"ema9":7.855683,"ema20":7.856716,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":6.734239,"atr":0.012622,"spread_atr":0.792263,"own_change_pct":-0.127226,"rel_strength_pct":{"SPY":-0.139115,"IWM":-0.095672}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.045703},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"7621e91cf42d","ts":"2026-09-15T17:42:50+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.36% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.8512,"target":5.3208,"target_label":"premarket_high","reward_risk":0.6,"pos_in_5d_range_pct":2.8,"room_to_5d_high_atr":2.83},"price":5.145,"vwap":5.1144,"ext_from_open_pct":-2.37,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":-0.2511,"volatility":"high"},"price":5.145,"volume":{"bars":211,"last_bar_volume":806.0,"baseline_avg":1098.4,"bar_rvol":0.733795,"raw_accel":1.935178,"smooth_accel":0.00525,"accel_momentum":-12.615373,"rvol_3bar":[3.20506,0.183748,0.733795],"trend_3bar":"MIXED","projected_rvol":0.10925},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":100.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":5.11,"ask":5.18,"spread_pct":1.360544,"quote_size_imbalance":null,"quote_age_s":2.164466},"context":{"vwap":5.114397,"price_vs_vwap_pct":0.598366,"ema9":5.135861,"ema20":5.108907,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.106845,"dist_to_hod_atr":13.245576,"atr":0.063795,"spread_atr":1.097267,"own_change_pct":-0.284867,"rel_strength_pct":{"SPY":-0.296756,"IWM":-0.253313}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.733795},"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":"3f635a29d2f5","ts":"2026-09-15T17:42:50+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.17,"pos_in_5d_range_pct":14.2,"room_to_5d_high_atr":2.07},"price":12.6594,"vwap":12.6165,"ext_from_open_pct":1.28,"max_ext_allowed_pct":4.0,"volume_pace":0.866,"trend":"flat","recent_slope_pct":-0.0766,"volatility":"high"},"price":12.6594,"volume":{"bars":252,"last_bar_volume":5644.0,"baseline_avg":6366.85,"bar_rvol":0.886467,"raw_accel":1.69532,"smooth_accel":0.351809,"accel_momentum":-0.143606,"rvol_3bar":[0.943237,0.301003,0.886467],"trend_3bar":"MIXED","projected_rvol":0.481557},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":491.0,"sell_vol":1658.0,"unclassified_vol":0.0,"imbalance":-0.543043,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.62157},"context":{"vwap":12.61651,"price_vs_vwap_pct":0.33995,"ema9":12.676815,"ema20":12.684031,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.769585,"dist_to_hod_atr":10.550356,"atr":0.034179,"spread_atr":0.292578,"own_change_pct":-0.157791,"rel_strength_pct":{"SPY":-0.16968,"IWM":-0.126237}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.48139},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c25c5bee739d","ts":"2026-09-15T17:42:55+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7609,"target":7.91,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":71.3,"room_to_5d_high_atr":0.44},"price":7.8488,"vwap":7.7628,"ext_from_open_pct":1.93,"max_ext_allowed_pct":3.0,"volume_pace":0.561,"trend":"flat","recent_slope_pct":-0.0413,"volatility":"medium"},"price":7.8488,"volume":{"bars":252,"last_bar_volume":19328.0,"baseline_avg":11703.75,"bar_rvol":1.651437,"raw_accel":5.605746,"smooth_accel":-0.339643,"accel_momentum":-0.039218,"rvol_3bar":[0.800125,0.066222,1.651437],"trend_3bar":"MIXED","projected_rvol":6.638711},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":3598.0,"sell_vol":4461.0,"unclassified_vol":0.0,"imbalance":-0.107085,"bid":7.82,"ask":7.83,"spread_pct":0.127796,"quote_size_imbalance":null,"quote_age_s":2.575216},"context":{"vwap":7.761054,"price_vs_vwap_pct":1.130588,"ema9":7.85897,"ema20":7.862396,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.52218,"dist_to_hod_atr":2.439955,"atr":0.016886,"spread_atr":0.592222,"own_change_pct":-0.386503,"rel_strength_pct":{"SPY":-0.398392,"IWM":-0.354949}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.176844},"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":"85158aab5707","ts":"2026-09-15T17:43:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7323,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":2.75},"price":7.8506,"vwap":7.8481,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":4.0,"volume_pace":1.176,"trend":"flat","recent_slope_pct":-0.0242,"volatility":"high"},"price":7.8506,"volume":{"bars":253,"last_bar_volume":30284.0,"baseline_avg":14832.5,"bar_rvol":2.041733,"raw_accel":7.166931,"smooth_accel":1.841773,"accel_momentum":2.301862,"rvol_3bar":[0.041254,0.068225,2.041733],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":147.0,"sell_vol":34.0,"unclassified_vol":0.0,"imbalance":0.624309,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.994199},"context":{"vwap":7.84809,"price_vs_vwap_pct":0.031979,"ema9":7.853667,"ema20":7.855657,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.001261,"dist_to_hod_atr":6.038455,"atr":0.013149,"spread_atr":0.760511,"own_change_pct":-0.119669,"rel_strength_pct":{"SPY":-0.097215,"IWM":-0.054818}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.274673},"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":"d3db764a0f95","ts":"2026-09-15T17:43:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7371,"target":7.89,"target_label":"ceiling","reward_risk":0.74,"pos_in_5d_range_pct":67.0,"room_to_5d_high_atr":0.51},"price":7.825,"vwap":7.7628,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.561,"trend":"flat","recent_slope_pct":-0.0994,"volatility":"medium"},"price":7.825,"volume":{"bars":253,"last_bar_volume":71223.0,"baseline_avg":11491.0,"bar_rvol":6.198155,"raw_accel":2.684965,"smooth_accel":1.628759,"accel_momentum":1.968402,"rvol_3bar":[0.066222,1.651437,6.198155],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":368.0,"sell_vol":627.0,"unclassified_vol":0.0,"imbalance":-0.260302,"bid":7.82,"ask":7.83,"spread_pct":0.127796,"quote_size_imbalance":null,"quote_age_s":3.362756},"context":{"vwap":7.762768,"price_vs_vwap_pct":0.80167,"ema9":7.856936,"ema20":7.861101,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.823828,"dist_to_hod_atr":3.461231,"atr":0.018779,"spread_atr":0.532497,"own_change_pct":-0.251633,"rel_strength_pct":{"SPY":-0.22918,"IWM":-0.186782}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.613389},"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":"37e38d0a2b70","ts":"2026-09-15T17:43:05+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.3645,"target":8.59,"target_label":"premarket_high","reward_risk":0.18,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":3.68},"price":8.5557,"vwap":8.4242,"ext_from_open_pct":2.22,"max_ext_allowed_pct":3.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":-0.0354,"volatility":"high"},"price":8.5557,"volume":{"bars":253,"last_bar_volume":44427.0,"baseline_avg":53246.95,"bar_rvol":0.834358,"raw_accel":0.033907,"smooth_accel":0.070032,"accel_momentum":-0.031095,"rvol_3bar":[0.724701,0.805384,0.834358],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2030.0,"sell_vol":16807.0,"unclassified_vol":0.0,"imbalance":-0.784467,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.175046},"context":{"vwap":8.424215,"price_vs_vwap_pct":1.560804,"ema9":8.5686,"ema20":8.581796,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.375216,"dist_to_hod_atr":3.833102,"atr":0.031124,"spread_atr":0.321299,"own_change_pct":-0.581734,"rel_strength_pct":{"SPY":-0.55928,"IWM":-0.516883}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.654526},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"afc89a7af45f","ts":"2026-09-15T17:43:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.1143,"target":11.42,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":26.0,"room_to_5d_high_atr":1.22},"price":11.3311,"vwap":11.2891,"ext_from_open_pct":0.63,"max_ext_allowed_pct":3.0,"volume_pace":0.828,"trend":"flat","recent_slope_pct":-0.0646,"volatility":"high"},"price":11.3311,"volume":{"bars":253,"last_bar_volume":121612.0,"baseline_avg":101475.0,"bar_rvol":1.198443,"raw_accel":0.983883,"smooth_accel":-0.069515,"accel_momentum":-0.730756,"rvol_3bar":[1.051105,0.548765,1.198443],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":21521.0,"sell_vol":56642.0,"unclassified_vol":0.0,"imbalance":-0.44933,"bid":11.32,"ask":11.33,"spread_pct":0.0883,"quote_size_imbalance":null,"quote_age_s":0.538333},"context":{"vwap":11.289124,"price_vs_vwap_pct":0.371831,"ema9":11.331757,"ema20":11.313937,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.297038,"dist_to_hod_atr":2.916364,"atr":0.051057,"spread_atr":0.195861,"own_change_pct":0.068952,"rel_strength_pct":{"SPY":0.091406,"IWM":0.133803}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.538497},"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":"07615a604e1b","ts":"2026-09-15T17:43:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7249,"target":7.875,"target_label":"prev_day_high","reward_risk":0.27,"pos_in_5d_range_pct":18.3,"room_to_5d_high_atr":2.76},"price":7.8432,"vwap":7.8481,"ext_from_open_pct":-0.72,"max_ext_allowed_pct":4.0,"volume_pace":1.176,"trend":"flat","recent_slope_pct":-0.0431,"volatility":"high"},"price":7.8432,"volume":{"bars":253,"last_bar_volume":30284.0,"baseline_avg":14832.5,"bar_rvol":2.041733,"raw_accel":7.166931,"smooth_accel":1.841773,"accel_momentum":2.301862,"rvol_3bar":[0.041254,0.068225,2.041733],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":135.0,"sell_vol":37.0,"unclassified_vol":0.0,"imbalance":0.569767,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":9.994199},"context":{"vwap":7.84809,"price_vs_vwap_pct":-0.062311,"ema9":7.853667,"ema20":7.855657,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.094578,"dist_to_hod_atr":6.601232,"atr":0.013149,"spread_atr":0.760511,"own_change_pct":-0.119669,"rel_strength_pct":{"SPY":-0.097215,"IWM":-0.054818}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.163313},"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":"9cf2529460f0","ts":"2026-09-15T17:43:30+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7322,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":2.75},"price":7.8505,"vwap":7.8481,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":3.0,"volume_pace":1.175,"trend":"flat","recent_slope_pct":-0.0245,"volatility":"high"},"price":7.8505,"volume":{"bars":253,"last_bar_volume":30284.0,"baseline_avg":14832.5,"bar_rvol":2.041733,"raw_accel":7.166931,"smooth_accel":1.841773,"accel_momentum":2.301862,"rvol_3bar":[0.041254,0.068225,2.041733],"trend_3bar":"ACCELERATING","projected_rvol":0.123378},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":908.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":0.984699,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":8.369166},"context":{"vwap":7.84809,"price_vs_vwap_pct":0.030705,"ema9":7.853667,"ema20":7.855657,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.002522,"dist_to_hod_atr":6.04606,"atr":0.013149,"spread_atr":0.760511,"own_change_pct":-0.119669,"rel_strength_pct":{"SPY":-0.097215,"IWM":-0.054818}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.010493},"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":"e050f3eed1fe","ts":"2026-09-15T17:43:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7608,"target":7.91,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":71.3,"room_to_5d_high_atr":0.44},"price":7.8487,"vwap":7.7628,"ext_from_open_pct":1.93,"max_ext_allowed_pct":4.0,"volume_pace":0.56,"trend":"flat","recent_slope_pct":-0.039,"volatility":"medium"},"price":7.8487,"volume":{"bars":253,"last_bar_volume":71223.0,"baseline_avg":11491.0,"bar_rvol":6.198155,"raw_accel":2.684965,"smooth_accel":1.628759,"accel_momentum":1.968402,"rvol_3bar":[0.066222,1.651437,6.198155],"trend_3bar":"ACCELERATING","projected_rvol":0.193543},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":985.0,"sell_vol":127.0,"unclassified_vol":0.0,"imbalance":0.771583,"bid":7.82,"ask":7.83,"spread_pct":0.127796,"quote_size_imbalance":null,"quote_age_s":1.880479},"context":{"vwap":7.762768,"price_vs_vwap_pct":1.106973,"ema9":7.856936,"ema20":7.861101,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.523447,"dist_to_hod_atr":2.199213,"atr":0.018779,"spread_atr":0.532497,"own_change_pct":-0.251633,"rel_strength_pct":{"SPY":-0.22918,"IWM":-0.186782}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.782389},"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":"7c5ac4bba02c","ts":"2026-09-15T17:43:35+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3599,"target":8.5586,"target_label":"premarket_high","reward_risk":1.21,"pos_in_5d_range_pct":63.2,"room_to_5d_high_atr":0.89},"price":8.45,"vwap":8.3639,"ext_from_open_pct":1.44,"max_ext_allowed_pct":3.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":-0.0201,"volatility":"medium"},"price":8.45,"volume":{"bars":253,"last_bar_volume":96.0,"baseline_avg":486.0,"bar_rvol":0.197531,"raw_accel":-0.952475,"smooth_accel":6.0,"accel_momentum":0.760218,"rvol_3bar":[0.439292,5.140603,0.197531],"trend_3bar":"MIXED","projected_rvol":0.320988},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":84.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":0.846154,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":18.253177},"context":{"vwap":8.36391,"price_vs_vwap_pct":1.029305,"ema9":8.457467,"ema20":8.461591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":5.246273,"atr":0.009531,"spread_atr":1.049255,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.022454,"IWM":0.064851}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.167142},"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":"182cfaa5862c","ts":"2026-09-15T17:43:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7433,"target":7.89,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":68.1,"room_to_5d_high_atr":0.49},"price":7.8312,"vwap":7.7628,"ext_from_open_pct":1.7,"max_ext_allowed_pct":4.0,"volume_pace":0.56,"trend":"flat","recent_slope_pct":-0.0836,"volatility":"medium"},"price":7.8312,"volume":{"bars":253,"last_bar_volume":71223.0,"baseline_avg":11491.0,"bar_rvol":6.198155,"raw_accel":2.684965,"smooth_accel":1.628759,"accel_momentum":1.968402,"rvol_3bar":[0.066222,1.651437,6.198155],"trend_3bar":"ACCELERATING","projected_rvol":0.187973},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":1107.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":0.759936,"bid":7.82,"ask":7.83,"spread_pct":0.127796,"quote_size_imbalance":null,"quote_age_s":0.365762},"context":{"vwap":7.762768,"price_vs_vwap_pct":0.881538,"ema9":7.856936,"ema20":7.861101,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.745247,"dist_to_hod_atr":3.131083,"atr":0.018779,"spread_atr":0.532497,"own_change_pct":-0.251633,"rel_strength_pct":{"SPY":-0.22918,"IWM":-0.186782}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.710204},"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":"7ae3d157a0a0","ts":"2026-09-15T17:43:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8319,"target":10.07,"target_label":"ceiling","reward_risk":2.71,"pos_in_5d_range_pct":496.2,"room_to_5d_high_atr":-5.71},"price":9.8961,"vwap":9.7009,"ext_from_open_pct":4.72,"max_ext_allowed_pct":5.0,"volume_pace":3.684,"trend":"flat","recent_slope_pct":0.0319,"volatility":"low"},"price":9.8961,"volume":{"bars":253,"last_bar_volume":2824.0,"baseline_avg":4846.85,"bar_rvol":0.582646,"raw_accel":-0.587195,"smooth_accel":-0.10916,"accel_momentum":0.345206,"rvol_3bar":[0.206429,1.500499,0.582646],"trend_3bar":"MIXED","projected_rvol":0.04735},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":149.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.97351,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":9.98834},"context":{"vwap":9.700882,"price_vs_vwap_pct":2.012369,"ema9":9.888329,"ema20":9.912739,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.979412,"dist_to_hod_atr":8.367827,"atr":0.036318,"spread_atr":0.826044,"own_change_pct":-0.40404,"rel_strength_pct":{"SPY":-0.381587,"IWM":-0.33919}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.567212},"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":"93e17197457d","ts":"2026-09-15T17:43:40+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8481,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":4.0,"volume_pace":1.174,"trend":"flat","recent_slope_pct":-0.0385,"volatility":"high"},"price":7.845,"volume":{"bars":253,"last_bar_volume":30284.0,"baseline_avg":14832.5,"bar_rvol":2.041733,"raw_accel":7.166931,"smooth_accel":1.841773,"accel_momentum":2.301862,"rvol_3bar":[0.041254,0.068225,2.041733],"trend_3bar":"ACCELERATING","projected_rvol":0.119231},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":889.0,"sell_vol":268.0,"unclassified_vol":0.0,"imbalance":0.536733,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.147569},"context":{"vwap":7.84809,"price_vs_vwap_pct":-0.039376,"ema9":7.853667,"ema20":7.855657,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":6.46434,"atr":0.013149,"spread_atr":0.760511,"own_change_pct":-0.119669,"rel_strength_pct":{"SPY":-0.097215,"IWM":-0.054818}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.095865},"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":"71a92f534148","ts":"2026-09-15T17:43:45+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3649,"target":8.5586,"target_label":"premarket_high","reward_risk":1.15,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.87},"price":8.455,"vwap":8.364,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.792,"trend":"flat","recent_slope_pct":-0.0083,"volatility":"medium"},"price":8.455,"volume":{"bars":253,"last_bar_volume":96.0,"baseline_avg":486.0,"bar_rvol":0.197531,"raw_accel":-0.952475,"smooth_accel":6.0,"accel_momentum":0.760218,"rvol_3bar":[0.439292,5.140603,0.197531],"trend_3bar":"MIXED","projected_rvol":0.507545},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":86.0,"sell_vol":99.0,"unclassified_vol":0.0,"imbalance":-0.07027,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":2.431366},"context":{"vwap":8.36391,"price_vs_vwap_pct":1.089086,"ema9":8.457467,"ema20":8.461591,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":4.721646,"atr":0.009531,"spread_atr":1.049255,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.022454,"IWM":0.064851}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.013881},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"da9701ad2dce","ts":"2026-09-15T17:43:50+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8481,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":4.0,"volume_pace":1.173,"trend":"flat","recent_slope_pct":-0.0257,"volatility":"high"},"price":7.85,"volume":{"bars":253,"last_bar_volume":30284.0,"baseline_avg":14832.5,"bar_rvol":2.041733,"raw_accel":7.166931,"smooth_accel":1.841773,"accel_momentum":2.301862,"rvol_3bar":[0.041254,0.068225,2.041733],"trend_3bar":"ACCELERATING","projected_rvol":0.103475},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":956.0,"sell_vol":268.0,"unclassified_vol":0.0,"imbalance":0.562092,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.916967},"context":{"vwap":7.84809,"price_vs_vwap_pct":0.024334,"ema9":7.853667,"ema20":7.855657,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":6.084085,"atr":0.013149,"spread_atr":0.760511,"own_change_pct":-0.119669,"rel_strength_pct":{"SPY":-0.097215,"IWM":-0.054818}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.147641},"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":"104320e50dfd","ts":"2026-09-15T17:43:55+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8481,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":4.0,"volume_pace":1.173,"trend":"flat","recent_slope_pct":-0.0385,"volatility":"high"},"price":7.845,"volume":{"bars":253,"last_bar_volume":30284.0,"baseline_avg":14832.5,"bar_rvol":2.041733,"raw_accel":7.166931,"smooth_accel":1.841773,"accel_momentum":2.301862,"rvol_3bar":[0.041254,0.068225,2.041733],"trend_3bar":"ACCELERATING","projected_rvol":0.101571},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":155.0,"sell_vol":366.0,"unclassified_vol":0.0,"imbalance":-0.40499,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":5.916967},"context":{"vwap":7.84809,"price_vs_vwap_pct":-0.039376,"ema9":7.853667,"ema20":7.855657,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":6.46434,"atr":0.013149,"spread_atr":0.760511,"own_change_pct":-0.119669,"rel_strength_pct":{"SPY":-0.097215,"IWM":-0.054818}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.826882},"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":"357001a5bc96","ts":"2026-09-15T17:44:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7474,"target":7.89,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":68.9,"room_to_5d_high_atr":0.48},"price":7.8353,"vwap":7.7628,"ext_from_open_pct":1.76,"max_ext_allowed_pct":4.0,"volume_pace":0.559,"trend":"flat","recent_slope_pct":-0.0861,"volatility":"medium"},"price":7.8353,"volume":{"bars":254,"last_bar_volume":1450.0,"baseline_avg":14667.25,"bar_rvol":0.09886,"raw_accel":-0.979641,"smooth_accel":1.912346,"accel_momentum":0.283587,"rvol_3bar":[1.651437,6.198155,0.09886],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":164.0,"sell_vol":130.0,"unclassified_vol":0.0,"imbalance":0.115646,"bid":7.82,"ask":7.83,"spread_pct":0.127796,"quote_size_imbalance":null,"quote_age_s":0.845498},"context":{"vwap":7.762798,"price_vs_vwap_pct":0.933971,"ema9":7.851649,"ema20":7.858187,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.693283,"dist_to_hod_atr":2.805819,"atr":0.019495,"spread_atr":0.512947,"own_change_pct":-0.311903,"rel_strength_pct":{"SPY":-0.319829,"IWM":-0.285606}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.011433},"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":"d8ccb71b5449","ts":"2026-09-15T17:44:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7317,"target":7.875,"target_label":"prev_day_high","reward_risk":0.21,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.85,"vwap":7.8481,"ext_from_open_pct":-0.63,"max_ext_allowed_pct":4.0,"volume_pace":1.172,"trend":"flat","recent_slope_pct":-0.0324,"volatility":"high"},"price":7.85,"volume":{"bars":254,"last_bar_volume":1381.0,"baseline_avg":16277.7,"bar_rvol":0.08484,"raw_accel":-0.954398,"smooth_accel":3.038666,"accel_momentum":1.196893,"rvol_3bar":[0.068225,2.041733,0.08484],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":104.0,"sell_vol":302.0,"unclassified_vol":0.0,"imbalance":-0.487685,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.459557},"context":{"vwap":7.848089,"price_vs_vwap_pct":0.024344,"ema9":7.851933,"ema20":7.854642,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.008827,"dist_to_hod_atr":6.280217,"atr":0.012738,"spread_atr":0.785027,"own_change_pct":-0.19084,"rel_strength_pct":{"SPY":-0.198765,"IWM":-0.164542}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.041375},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1f1b78559c59","ts":"2026-09-15T17:44:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8108,"target":10.07,"target_label":"ceiling","reward_risk":3.04,"pos_in_5d_range_pct":490.5,"room_to_5d_high_atr":-5.63},"price":9.875,"vwap":9.7009,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":3.674,"trend":"flat","recent_slope_pct":0.0234,"volatility":"low"},"price":9.875,"volume":{"bars":254,"last_bar_volume":153.0,"baseline_avg":4930.35,"bar_rvol":0.031032,"raw_accel":-0.945822,"smooth_accel":-0.111975,"accel_momentum":-0.002816,"rvol_3bar":[1.500499,0.582646,0.031032],"trend_3bar":"DECELERATING","projected_rvol":0.060848},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":0.575238},"context":{"vwap":9.700896,"price_vs_vwap_pct":1.794726,"ema9":9.889884,"ema20":9.911155,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.186275,"dist_to_hod_atr":8.952644,"atr":0.036302,"spread_atr":0.826398,"own_change_pct":0.213671,"rel_strength_pct":{"SPY":0.205746,"IWM":0.239968}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.031032},"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":"1905f36a9693","ts":"2026-09-15T17:44:20+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.84 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7267,"target":7.875,"target_label":"prev_day_high","reward_risk":0.25,"pos_in_5d_range_pct":18.4,"room_to_5d_high_atr":2.76},"price":7.845,"vwap":7.8481,"ext_from_open_pct":-0.7,"max_ext_allowed_pct":4.0,"volume_pace":1.171,"trend":"flat","recent_slope_pct":-0.0451,"volatility":"high"},"price":7.845,"volume":{"bars":254,"last_bar_volume":1381.0,"baseline_avg":16277.7,"bar_rvol":0.08484,"raw_accel":-0.954398,"smooth_accel":3.038666,"accel_momentum":1.196893,"rvol_3bar":[0.068225,2.041733,0.08484],"trend_3bar":"MIXED","projected_rvol":0.056028},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":4.0,"sell_vol":402.0,"unclassified_vol":0.0,"imbalance":-0.980296,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.820146},"context":{"vwap":7.848089,"price_vs_vwap_pct":-0.039366,"ema9":7.851933,"ema20":7.854642,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.071879,"dist_to_hod_atr":6.672731,"atr":0.012738,"spread_atr":0.785027,"own_change_pct":-0.19084,"rel_strength_pct":{"SPY":-0.198765,"IWM":-0.164542}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.083168},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"89b87af3412f","ts":"2026-09-15T17:44:35+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7307,"target":7.875,"target_label":"prev_day_high","reward_risk":0.22,"pos_in_5d_range_pct":18.7,"room_to_5d_high_atr":2.75},"price":7.849,"vwap":7.8481,"ext_from_open_pct":-0.65,"max_ext_allowed_pct":4.0,"volume_pace":1.17,"trend":"flat","recent_slope_pct":-0.0349,"volatility":"high"},"price":7.849,"volume":{"bars":254,"last_bar_volume":1381.0,"baseline_avg":16277.7,"bar_rvol":0.08484,"raw_accel":-0.954398,"smooth_accel":3.038666,"accel_momentum":1.196893,"rvol_3bar":[0.068225,2.041733,0.08484],"trend_3bar":"MIXED","projected_rvol":0.073615},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":23.0,"sell_vol":676.0,"unclassified_vol":0.0,"imbalance":-0.934192,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.994137},"context":{"vwap":7.848089,"price_vs_vwap_pct":0.011602,"ema9":7.851933,"ema20":7.854642,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.021438,"dist_to_hod_atr":6.35872,"atr":0.012738,"spread_atr":0.785027,"own_change_pct":-0.19084,"rel_strength_pct":{"SPY":-0.198765,"IWM":-0.164542}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.079257},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ecbc0c6a6825","ts":"2026-09-15T17:44:40+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7287,"target":7.875,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":18.6,"room_to_5d_high_atr":2.75},"price":7.847,"vwap":7.8481,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":4.0,"volume_pace":1.17,"trend":"flat","recent_slope_pct":-0.04,"volatility":"high"},"price":7.847,"volume":{"bars":254,"last_bar_volume":1381.0,"baseline_avg":16277.7,"bar_rvol":0.08484,"raw_accel":-0.954398,"smooth_accel":3.038666,"accel_momentum":1.196893,"rvol_3bar":[0.068225,2.041733,0.08484],"trend_3bar":"MIXED","projected_rvol":0.064505},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":20.0,"sell_vol":476.0,"unclassified_vol":0.0,"imbalance":-0.919355,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.415315},"context":{"vwap":7.848089,"price_vs_vwap_pct":-0.013882,"ema9":7.851933,"ema20":7.854642,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.046658,"dist_to_hod_atr":6.515725,"atr":0.012738,"spread_atr":0.785027,"own_change_pct":-0.19084,"rel_strength_pct":{"SPY":-0.198765,"IWM":-0.164542}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.077998},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"78662b6d3d57","ts":"2026-09-15T17:44:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8257,"target":10.07,"target_label":"ceiling","reward_risk":2.81,"pos_in_5d_range_pct":494.6,"room_to_5d_high_atr":-5.69},"price":9.8899,"vwap":9.7009,"ext_from_open_pct":4.66,"max_ext_allowed_pct":5.0,"volume_pace":3.668,"trend":"flat","recent_slope_pct":0.0535,"volatility":"low"},"price":9.8899,"volume":{"bars":254,"last_bar_volume":153.0,"baseline_avg":4930.35,"bar_rvol":0.031032,"raw_accel":-0.945822,"smooth_accel":-0.111975,"accel_momentum":-0.002816,"rvol_3bar":[1.500499,0.582646,0.031032],"trend_3bar":"DECELERATING","projected_rvol":0.030289},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":10.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":-0.821429,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":4.238828},"context":{"vwap":9.700896,"price_vs_vwap_pct":1.94832,"ema9":9.889884,"ema20":9.911155,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.040196,"dist_to_hod_atr":8.5422,"atr":0.036302,"spread_atr":0.826398,"own_change_pct":0.213671,"rel_strength_pct":{"SPY":0.205746,"IWM":0.239968}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.025491},"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":"49fb50f22365","ts":"2026-09-15T17:44:50+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8076,"target":10.07,"target_label":"ceiling","reward_risk":3.09,"pos_in_5d_range_pct":489.7,"room_to_5d_high_atr":-5.61},"price":9.8718,"vwap":9.7009,"ext_from_open_pct":4.46,"max_ext_allowed_pct":4.0,"volume_pace":3.667,"trend":"flat","recent_slope_pct":0.0169,"volatility":"low"},"price":9.8718,"volume":{"bars":254,"last_bar_volume":153.0,"baseline_avg":4930.35,"bar_rvol":0.031032,"raw_accel":-0.945822,"smooth_accel":-0.111975,"accel_momentum":-0.002816,"rvol_3bar":[1.500499,0.582646,0.031032],"trend_3bar":"DECELERATING","projected_rvol":0.029694},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":10.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":-0.090909,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":9.238828},"context":{"vwap":9.700896,"price_vs_vwap_pct":1.761739,"ema9":9.889884,"ema20":9.911155,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.217647,"dist_to_hod_atr":9.040793,"atr":0.036302,"spread_atr":0.826398,"own_change_pct":0.213671,"rel_strength_pct":{"SPY":0.205746,"IWM":0.239968}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.002821},"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":"3933b27acb5f","ts":"2026-09-15T17:44:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8108,"target":10.07,"target_label":"ceiling","reward_risk":3.04,"pos_in_5d_range_pct":490.5,"room_to_5d_high_atr":-5.63},"price":9.875,"vwap":9.7009,"ext_from_open_pct":4.5,"max_ext_allowed_pct":5.0,"volume_pace":3.666,"trend":"flat","recent_slope_pct":0.0234,"volatility":"low"},"price":9.875,"volume":{"bars":254,"last_bar_volume":153.0,"baseline_avg":4930.35,"bar_rvol":0.031032,"raw_accel":-0.945822,"smooth_accel":-0.111975,"accel_momentum":-0.002816,"rvol_3bar":[1.500499,0.582646,0.031032],"trend_3bar":"DECELERATING","projected_rvol":0.037615},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":52.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":0.507246,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":14.238828},"context":{"vwap":9.700896,"price_vs_vwap_pct":1.794726,"ema9":9.889884,"ema20":9.911155,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.186275,"dist_to_hod_atr":8.952644,"atr":0.036302,"spread_atr":0.826398,"own_change_pct":0.213671,"rel_strength_pct":{"SPY":0.205746,"IWM":0.239968}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.015741},"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":"5a6d58a88589","ts":"2026-09-15T17:45:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":12.295,"target":12.72,"target_label":"premarket_high","reward_risk":0.26,"pos_in_5d_range_pct":12.9,"room_to_5d_high_atr":2.1},"price":12.6314,"vwap":12.6167,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":0.862,"trend":"flat","recent_slope_pct":-0.04,"volatility":"high"},"price":12.6314,"volume":{"bars":255,"last_bar_volume":4455.0,"baseline_avg":6762.8,"bar_rvol":0.658751,"raw_accel":-0.092298,"smooth_accel":0.547397,"accel_momentum":-0.236917,"rvol_3bar":[2.025614,0.734604,0.658751],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1572.0,"sell_vol":2178.0,"unclassified_vol":0.0,"imbalance":-0.1616,"bid":12.63,"ask":12.64,"spread_pct":0.079145,"quote_size_imbalance":null,"quote_age_s":0.582721},"context":{"vwap":12.616651,"price_vs_vwap_pct":0.116902,"ema9":12.655729,"ema20":12.67099,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.984639,"dist_to_hod_atr":10.857928,"atr":0.03579,"spread_atr":0.279411,"own_change_pct":-0.450007,"rel_strength_pct":{"SPY":-0.453969,"IWM":-0.423708}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.106454},"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":"a5acbd6eaafc","ts":"2026-09-15T17:45:15+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.30x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.299,"target":8.6,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":128.3,"room_to_5d_high_atr":-1.03},"price":8.49,"vwap":8.1891,"ext_from_open_pct":10.84,"max_ext_allowed_pct":3.0,"volume_pace":0.302,"trend":"flat","recent_slope_pct":-0.0235,"volatility":"high"},"price":8.49,"volume":{"bars":254,"last_bar_volume":100.0,"baseline_avg":1043.75,"bar_rvol":0.095808,"raw_accel":-0.984112,"smooth_accel":2.200677,"accel_momentum":-5.136608,"rvol_3bar":[0.229171,6.779771,0.095808],"trend_3bar":"MIXED","projected_rvol":0.076647},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":20.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.48,"ask":8.5,"spread_pct":0.235571,"quote_size_imbalance":null,"quote_age_s":6.388496},"context":{"vwap":8.189047,"price_vs_vwap_pct":3.675068,"ema9":8.497169,"ema20":8.499554,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-1.27907,"dist_to_hod_atr":3.178597,"atr":0.034606,"spread_atr":0.577927,"own_change_pct":-0.117647,"rel_strength_pct":{"SPY":-0.12161,"IWM":-0.091348}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.095808},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"51958243ae2f","ts":"2026-09-15T17:45:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7999,"target":10.07,"target_label":"ceiling","reward_risk":3.21,"pos_in_5d_range_pct":487.6,"room_to_5d_high_atr":-5.58},"price":9.8641,"vwap":9.7009,"ext_from_open_pct":4.38,"max_ext_allowed_pct":4.0,"volume_pace":3.657,"trend":"flat","recent_slope_pct":-0.0203,"volatility":"low"},"price":9.8641,"volume":{"bars":255,"last_bar_volume":270.0,"baseline_avg":4575.4,"bar_rvol":0.059011,"raw_accel":-0.763955,"smooth_accel":-0.631776,"accel_momentum":-0.519801,"rvol_3bar":[0.582646,0.031032,0.059011],"trend_3bar":"MIXED","projected_rvol":0.004496},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":4.988298},"context":{"vwap":9.700918,"price_vs_vwap_pct":1.682129,"ema9":9.886907,"ema20":9.907711,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.293137,"dist_to_hod_atr":9.442448,"atr":0.035573,"spread_atr":0.843327,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.003962,"IWM":0.026299}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.059011},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"dd1a440b809f","ts":"2026-09-15T17:45:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8258,"target":10.07,"target_label":"ceiling","reward_risk":2.8,"pos_in_5d_range_pct":494.6,"room_to_5d_high_atr":-5.69},"price":9.89,"vwap":9.701,"ext_from_open_pct":4.66,"max_ext_allowed_pct":5.0,"volume_pace":3.654,"trend":"flat","recent_slope_pct":0.0322,"volatility":"low"},"price":9.89,"volume":{"bars":255,"last_bar_volume":270.0,"baseline_avg":4575.4,"bar_rvol":0.059011,"raw_accel":-0.763955,"smooth_accel":-0.631776,"accel_momentum":-0.519801,"rvol_3bar":[0.582646,0.031032,0.059011],"trend_3bar":"MIXED","projected_rvol":0.165756},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":605.0,"sell_vol":17.0,"unclassified_vol":0.0,"imbalance":0.945338,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":3.921238},"context":{"vwap":9.700918,"price_vs_vwap_pct":1.949114,"ema9":9.886907,"ema20":9.907711,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.039216,"dist_to_hod_atr":8.714376,"atr":0.035573,"spread_atr":0.843327,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.003962,"IWM":0.026299}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.055786},"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":"6234ff85883e","ts":"2026-09-15T17:46:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6348,"target":10.935,"target_label":"prev_day_high","reward_risk":1.03,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.21},"price":10.783,"vwap":10.5725,"ext_from_open_pct":3.58,"max_ext_allowed_pct":4.0,"volume_pace":0.964,"trend":"flat","recent_slope_pct":-0.0271,"volatility":"medium"},"price":10.783,"volume":{"bars":256,"last_bar_volume":13484.0,"baseline_avg":12105.3,"bar_rvol":1.113892,"raw_accel":-0.058577,"smooth_accel":0.109577,"accel_momentum":0.002914,"rvol_3bar":[0.531942,0.934178,1.113892],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3315.0,"sell_vol":4152.0,"unclassified_vol":0.0,"imbalance":-0.112093,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.482561},"context":{"vwap":10.572476,"price_vs_vwap_pct":1.991247,"ema9":10.791017,"ema20":10.807378,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.435101,"dist_to_hod_atr":4.450763,"atr":0.035275,"spread_atr":0.283488,"own_change_pct":-0.231374,"rel_strength_pct":{"SPY":-0.230054,"IWM":-0.233128}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.12486},"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":"04dec8f4cbd3","ts":"2026-09-15T17:46:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4282,"target":12.72,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":13.6,"room_to_5d_high_atr":2.08},"price":12.6473,"vwap":12.6167,"ext_from_open_pct":1.18,"max_ext_allowed_pct":3.0,"volume_pace":0.859,"trend":"flat","recent_slope_pct":0.0214,"volatility":"high"},"price":12.6473,"volume":{"bars":256,"last_bar_volume":1265.0,"baseline_avg":6786.55,"bar_rvol":0.186398,"raw_accel":-0.716049,"smooth_accel":-0.487931,"accel_momentum":-1.035327,"rvol_3bar":[0.734604,0.658751,0.186398],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":1230.0,"sell_vol":229.0,"unclassified_vol":0.0,"imbalance":0.686086,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.791647},"context":{"vwap":12.616657,"price_vs_vwap_pct":0.242878,"ema9":12.652083,"ema20":12.6678,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.862519,"dist_to_hod_atr":10.75472,"atr":0.034655,"spread_atr":0.288562,"own_change_pct":-0.138285,"rel_strength_pct":{"SPY":-0.136965,"IWM":-0.140039}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.127885},"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":"276b0f41b08e","ts":"2026-09-15T17:46:10+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.3939,"target":5.52,"target_label":"ceiling","reward_risk":1.03,"pos_in_5d_range_pct":19.6,"room_to_5d_high_atr":1.74},"price":5.4561,"vwap":5.415,"ext_from_open_pct":-0.07,"max_ext_allowed_pct":3.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":-0.0322,"volatility":"medium"},"price":5.4561,"volume":{"bars":256,"last_bar_volume":75078.0,"baseline_avg":48126.2,"bar_rvol":1.560023,"raw_accel":-0.539181,"smooth_accel":1.891256,"accel_momentum":0.639048,"rvol_3bar":[0.214462,4.022562,1.560023],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2138.0,"sell_vol":21627.0,"unclassified_vol":0.0,"imbalance":-0.820072,"bid":5.45,"ask":5.46,"spread_pct":0.183318,"quote_size_imbalance":null,"quote_age_s":0.031113},"context":{"vwap":5.415029,"price_vs_vwap_pct":0.758457,"ema9":5.464554,"ema20":5.464874,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.691892,"dist_to_hod_atr":5.941565,"atr":0.015804,"spread_atr":0.632754,"own_change_pct":-0.04024,"rel_strength_pct":{"SPY":-0.038919,"IWM":-0.041993}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.279331},"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":"db00290e0381","ts":"2026-09-15T17:46:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8108,"target":10.07,"target_label":"ceiling","reward_risk":3.04,"pos_in_5d_range_pct":490.5,"room_to_5d_high_atr":-5.63},"price":9.875,"vwap":9.701,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":3.649,"trend":"flat","recent_slope_pct":0.009,"volatility":"low"},"price":9.875,"volume":{"bars":256,"last_bar_volume":1033.0,"baseline_avg":4073.2,"bar_rvol":0.253609,"raw_accel":0.014436,"smooth_accel":-0.862654,"accel_momentum":-0.230879,"rvol_3bar":[0.031032,0.059011,0.253609],"trend_3bar":"ACCELERATING","projected_rvol":0.103113},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":817.0,"sell_vol":189.0,"unclassified_vol":0.0,"imbalance":0.624254,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":8.575536},"context":{"vwap":9.701002,"price_vs_vwap_pct":1.793607,"ema9":9.884525,"ema20":9.904596,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.186275,"dist_to_hod_atr":9.317008,"atr":0.034882,"spread_atr":0.860031,"own_change_pct":0.043563,"rel_strength_pct":{"SPY":0.044884,"IWM":0.04181}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.158317},"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":"138608ea3561","ts":"2026-09-15T17:46:20+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7417,"target":7.875,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":2.73},"price":7.86,"vwap":7.8481,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.164,"trend":"flat","recent_slope_pct":0.0431,"volatility":"high"},"price":7.86,"volume":{"bars":256,"last_bar_volume":564.0,"baseline_avg":13332.4,"bar_rvol":0.042303,"raw_accel":-0.830788,"smooth_accel":-0.910876,"accel_momentum":-6.443674,"rvol_3bar":[0.08484,0.065434,0.042303],"trend_3bar":"DECELERATING","projected_rvol":0.990519},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":4390.0,"sell_vol":222.0,"unclassified_vol":0.0,"imbalance":0.903729,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.950269},"context":{"vwap":7.848089,"price_vs_vwap_pct":0.151769,"ema9":7.850917,"ema20":7.853628,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.882724,"dist_to_hod_atr":5.819004,"atr":0.01203,"spread_atr":0.831286,"own_change_pct":-0.129768,"rel_strength_pct":{"SPY":-0.128447,"IWM":-0.131521}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.03823},"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":"c3ae9c50825c","ts":"2026-09-15T17:46:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8258,"target":10.07,"target_label":"ceiling","reward_risk":2.8,"pos_in_5d_range_pct":494.6,"room_to_5d_high_atr":-5.69},"price":9.89,"vwap":9.701,"ext_from_open_pct":4.66,"max_ext_allowed_pct":5.0,"volume_pace":3.646,"trend":"flat","recent_slope_pct":0.0394,"volatility":"low"},"price":9.89,"volume":{"bars":256,"last_bar_volume":1033.0,"baseline_avg":4073.2,"bar_rvol":0.253609,"raw_accel":0.014436,"smooth_accel":-0.862654,"accel_momentum":-0.230879,"rvol_3bar":[0.031032,0.059011,0.253609],"trend_3bar":"ACCELERATING","projected_rvol":0.109496},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":222.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.991031,"bid":9.86,"ask":9.89,"spread_pct":0.303797,"quote_size_imbalance":null,"quote_age_s":23.575536},"context":{"vwap":9.701002,"price_vs_vwap_pct":1.948231,"ema9":9.884525,"ema20":9.904596,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.039216,"dist_to_hod_atr":8.886992,"atr":0.034882,"spread_atr":0.860031,"own_change_pct":0.043563,"rel_strength_pct":{"SPY":0.044884,"IWM":0.04181}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.251334},"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":"87be221b12a4","ts":"2026-09-15T17:46:35+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7289,"target":7.875,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":18.6,"room_to_5d_high_atr":2.75},"price":7.8472,"vwap":7.8481,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":4.0,"volume_pace":1.163,"trend":"flat","recent_slope_pct":0.0104,"volatility":"high"},"price":7.8472,"volume":{"bars":256,"last_bar_volume":564.0,"baseline_avg":13332.4,"bar_rvol":0.042303,"raw_accel":-0.830788,"smooth_accel":-0.910876,"accel_momentum":-6.443674,"rvol_3bar":[0.08484,0.065434,0.042303],"trend_3bar":"DECELERATING","projected_rvol":0.568454},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":4381.0,"sell_vol":33.0,"unclassified_vol":0.0,"imbalance":0.985048,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.706195},"context":{"vwap":7.848089,"price_vs_vwap_pct":-0.011328,"ema9":7.850917,"ema20":7.853628,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.044136,"dist_to_hod_atr":6.883051,"atr":0.01203,"spread_atr":0.831286,"own_change_pct":-0.129768,"rel_strength_pct":{"SPY":-0.128447,"IWM":-0.131521}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.04167},"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":"1dd8b64a24d9","ts":"2026-09-15T17:46:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7326,"target":7.875,"target_label":"prev_day_high","reward_risk":0.2,"pos_in_5d_range_pct":18.8,"room_to_5d_high_atr":2.75},"price":7.8509,"vwap":7.8481,"ext_from_open_pct":-0.62,"max_ext_allowed_pct":3.0,"volume_pace":1.162,"trend":"flat","recent_slope_pct":0.0199,"volatility":"high"},"price":7.8509,"volume":{"bars":256,"last_bar_volume":564.0,"baseline_avg":13332.4,"bar_rvol":0.042303,"raw_accel":-0.830788,"smooth_accel":-0.910876,"accel_momentum":-6.443674,"rvol_3bar":[0.08484,0.065434,0.042303],"trend_3bar":"DECELERATING","projected_rvol":0.487034},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":4778.0,"sell_vol":82.0,"unclassified_vol":0.0,"imbalance":0.966255,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.402489},"context":{"vwap":7.848089,"price_vs_vwap_pct":0.035817,"ema9":7.850917,"ema20":7.853628,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.997478,"dist_to_hod_atr":6.575475,"atr":0.01203,"spread_atr":0.831286,"own_change_pct":-0.129768,"rel_strength_pct":{"SPY":-0.128447,"IWM":-0.131521}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.040875},"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":"1e0fa920a9b2","ts":"2026-09-15T17:46:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6368,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.785,"vwap":10.5729,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.964,"trend":"flat","recent_slope_pct":-0.0234,"volatility":"medium"},"price":10.785,"volume":{"bars":256,"last_bar_volume":13484.0,"baseline_avg":12105.3,"bar_rvol":1.113892,"raw_accel":-0.058577,"smooth_accel":0.109577,"accel_momentum":0.002914,"rvol_3bar":[0.531942,0.934178,1.113892],"trend_3bar":"ACCELERATING","projected_rvol":1.370419},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":4861.0,"sell_vol":1754.0,"unclassified_vol":0.0,"imbalance":0.46969,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.191306},"context":{"vwap":10.572476,"price_vs_vwap_pct":2.010164,"ema9":10.791017,"ema20":10.807378,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.416819,"dist_to_hod_atr":4.394066,"atr":0.035275,"spread_atr":0.283488,"own_change_pct":-0.231374,"rel_strength_pct":{"SPY":-0.230054,"IWM":-0.233128}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.523184},"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":"cfcbb4543996","ts":"2026-09-15T17:47:00+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7288,"target":7.875,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":18.6,"room_to_5d_high_atr":2.75},"price":7.8471,"vwap":7.8481,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":3.0,"volume_pace":1.161,"trend":"flat","recent_slope_pct":0.0102,"volatility":"high"},"price":7.8471,"volume":{"bars":256,"last_bar_volume":564.0,"baseline_avg":13332.4,"bar_rvol":0.042303,"raw_accel":-0.830788,"smooth_accel":-0.910876,"accel_momentum":-6.443674,"rvol_3bar":[0.08484,0.065434,0.042303],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":400.0,"sell_vol":87.0,"unclassified_vol":0.0,"imbalance":0.64271,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":3.238646},"context":{"vwap":7.848089,"price_vs_vwap_pct":-0.012603,"ema9":7.850917,"ema20":7.853628,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.045397,"dist_to_hod_atr":6.891364,"atr":0.01203,"spread_atr":0.831286,"own_change_pct":-0.129768,"rel_strength_pct":{"SPY":-0.129768,"IWM":-0.138535}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.027189},"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":"a6a97efb9725","ts":"2026-09-15T17:47:05+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.3878,"target":5.52,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":18.5,"room_to_5d_high_atr":1.77},"price":5.45,"vwap":5.4151,"ext_from_open_pct":-0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":-0.045,"volatility":"medium"},"price":5.45,"volume":{"bars":257,"last_bar_volume":24332.0,"baseline_avg":51538.8,"bar_rvol":0.47211,"raw_accel":-0.67591,"smooth_accel":6.491376,"accel_momentum":4.60012,"rvol_3bar":[4.022562,1.560023,0.47211],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":981.0,"sell_vol":743.0,"unclassified_vol":0.0,"imbalance":0.138051,"bid":5.45,"ask":5.46,"spread_pct":0.183318,"quote_size_imbalance":null,"quote_age_s":0.025399},"context":{"vwap":5.415102,"price_vs_vwap_pct":0.644454,"ema9":5.464483,"ema20":5.46481,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-1.801802,"dist_to_hod_atr":6.35062,"atr":0.015746,"spread_atr":0.635062,"own_change_pct":-0.076805,"rel_strength_pct":{"SPY":-0.076805,"IWM":-0.085573}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.065175},"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":"e2ea0254aea4","ts":"2026-09-15T17:47:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7417,"target":7.875,"target_label":"prev_day_high","reward_risk":0.13,"pos_in_5d_range_pct":19.4,"room_to_5d_high_atr":2.73},"price":7.86,"vwap":7.8481,"ext_from_open_pct":-0.51,"max_ext_allowed_pct":4.0,"volume_pace":1.161,"trend":"flat","recent_slope_pct":0.0371,"volatility":"high"},"price":7.86,"volume":{"bars":257,"last_bar_volume":4890.0,"baseline_avg":5403.35,"bar_rvol":0.904994,"raw_accel":2.619976,"smooth_accel":-0.805616,"accel_momentum":0.10526,"rvol_3bar":[0.065434,0.042303,0.904994],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":509.0,"sell_vol":69.0,"unclassified_vol":0.0,"imbalance":0.761246,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.978954},"context":{"vwap":7.848093,"price_vs_vwap_pct":0.151717,"ema9":7.850154,"ema20":7.853006,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.882724,"dist_to_hod_atr":5.718149,"atr":0.012242,"spread_atr":0.816878,"own_change_pct":-0.036943,"rel_strength_pct":{"SPY":-0.036943,"IWM":-0.04571}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.688923},"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":"c4768d494913","ts":"2026-09-15T17:47:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6386,"target":10.935,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.2},"price":10.7868,"vwap":10.573,"ext_from_open_pct":3.62,"max_ext_allowed_pct":4.0,"volume_pace":0.963,"trend":"flat","recent_slope_pct":0.0202,"volatility":"medium"},"price":10.7868,"volume":{"bars":257,"last_bar_volume":13709.0,"baseline_avg":12213.8,"bar_rvol":1.122419,"raw_accel":0.016686,"smooth_accel":0.387706,"accel_momentum":0.278129,"rvol_3bar":[0.934178,1.113892,1.122419],"trend_3bar":"ACCELERATING","projected_rvol":0.800406},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1061.0,"sell_vol":2650.0,"unclassified_vol":0.0,"imbalance":-0.428186,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":2.908562},"context":{"vwap":10.572961,"price_vs_vwap_pct":2.022509,"ema9":10.790374,"ema20":10.805513,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.400366,"dist_to_hod_atr":4.389927,"atr":0.034898,"spread_atr":0.286549,"own_change_pct":-0.113888,"rel_strength_pct":{"SPY":-0.113888,"IWM":-0.122656}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.480605},"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":"cc73c216897b","ts":"2026-09-15T17:47:40+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 275.0s, plan says WATCH; stop 11.14, target 11.44 (premarket_high), R:R 0.39; R:R 0.39 < 2.0 at 11.36; breakout: 1-min close > 11.43 on >= 141774 sh","plan":{"state":"WATCH","setup":"","stop":11.1382,"target":11.44,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":27.7,"room_to_5d_high_atr":1.19},"price":11.355,"vwap":11.2897,"ext_from_open_pct":0.84,"max_ext_allowed_pct":4.0,"volume_pace":0.823,"trend":"flat","recent_slope_pct":0.05,"volatility":"high"},"price":11.355,"volume":{"bars":257,"last_bar_volume":50767.0,"baseline_avg":108213.0,"bar_rvol":0.46914,"raw_accel":-0.486948,"smooth_accel":-0.190714,"accel_momentum":0.013583,"rvol_3bar":[0.576284,0.933414,0.46914],"trend_3bar":"MIXED","projected_rvol":0.924538},"flow":{"window_s":30,"trades":142,"trade_rate":4.733333,"buy_vol":40628.0,"sell_vol":8764.0,"unclassified_vol":0.0,"imbalance":0.645125,"bid":11.35,"ask":11.36,"spread_pct":0.088067,"quote_size_imbalance":null,"quote_age_s":0.642729},"context":{"vwap":11.289543,"price_vs_vwap_pct":0.579803,"ema9":11.327959,"ema20":11.317702,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.08885,"dist_to_hod_atr":2.728358,"atr":0.045815,"spread_atr":0.218269,"own_change_pct":-0.206167,"rel_strength_pct":{"SPY":-0.206167,"IWM":-0.214935}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.302654},"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":"27db9147e820","ts":"2026-09-15T17:47:50+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.89 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7105,"target":13.2,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":42.8,"room_to_5d_high_atr":1.19},"price":12.8913,"vwap":12.9029,"ext_from_open_pct":-1.22,"max_ext_allowed_pct":3.0,"volume_pace":0.761,"trend":"flat","recent_slope_pct":-0.1167,"volatility":"medium"},"price":12.8913,"volume":{"bars":256,"last_bar_volume":1560.0,"baseline_avg":338.5,"bar_rvol":4.608567,"raw_accel":9.612245,"smooth_accel":-0.073196,"accel_momentum":0.560805,"rvol_3bar":[0.154429,0.439003,4.608567],"trend_3bar":"ACCELERATING","projected_rvol":7.026292},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":255.0,"sell_vol":1720.0,"unclassified_vol":0.0,"imbalance":-0.741772,"bid":12.88,"ask":12.96,"spread_pct":0.619195,"quote_size_imbalance":null,"quote_age_s":0.140053},"context":{"vwap":12.90285,"price_vs_vwap_pct":-0.089518,"ema9":12.934054,"ema20":12.942421,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.145755,"dist_to_hod_atr":9.376418,"atr":0.044655,"spread_atr":1.79153,"own_change_pct":-0.270375,"rel_strength_pct":{"SPY":-0.270375,"IWM":-0.279142}},"vas":{"raw":2,"score":5.6,"components":{"rvol":3,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.418507},"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":"4286bb9579bf","ts":"2026-09-15T17:47:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6368,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.785,"vwap":10.5732,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.0169,"volatility":"medium"},"price":10.785,"volume":{"bars":257,"last_bar_volume":13709.0,"baseline_avg":12213.8,"bar_rvol":1.122419,"raw_accel":0.016686,"smooth_accel":0.387706,"accel_momentum":0.278129,"rvol_3bar":[0.934178,1.113892,1.122419],"trend_3bar":"ACCELERATING","projected_rvol":0.68136},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3357.0,"sell_vol":825.0,"unclassified_vol":0.0,"imbalance":0.605452,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.617162},"context":{"vwap":10.572961,"price_vs_vwap_pct":2.005484,"ema9":10.790374,"ema20":10.805513,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.416819,"dist_to_hod_atr":4.441506,"atr":0.034898,"spread_atr":0.286549,"own_change_pct":-0.113888,"rel_strength_pct":{"SPY":-0.113888,"IWM":-0.122656}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.679571},"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":"5e618eb681a4","ts":"2026-09-15T17:47:55+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6368,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.785,"vwap":10.5733,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.961,"trend":"flat","recent_slope_pct":0.0169,"volatility":"medium"},"price":10.785,"volume":{"bars":257,"last_bar_volume":13709.0,"baseline_avg":12213.8,"bar_rvol":1.122419,"raw_accel":0.016686,"smooth_accel":0.387706,"accel_momentum":0.278129,"rvol_3bar":[0.934178,1.113892,1.122419],"trend_3bar":"ACCELERATING","projected_rvol":0.771884},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1935.0,"sell_vol":2391.0,"unclassified_vol":0.0,"imbalance":-0.105409,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.433518},"context":{"vwap":10.572961,"price_vs_vwap_pct":2.005484,"ema9":10.790374,"ema20":10.805513,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.416819,"dist_to_hod_atr":4.441506,"atr":0.034898,"spread_atr":0.286549,"own_change_pct":-0.113888,"rel_strength_pct":{"SPY":-0.113888,"IWM":-0.122656}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.118313},"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":"976d9a303e6f","ts":"2026-09-15T17:48:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7792,"target":13.2,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":1.09},"price":12.96,"vwap":12.9029,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":3.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":-0.0275,"volatility":"medium"},"price":12.96,"volume":{"bars":257,"last_bar_volume":1982.0,"baseline_avg":404.5,"bar_rvol":4.899876,"raw_accel":0.270513,"smooth_accel":4.75507,"accel_momentum":4.828267,"rvol_3bar":[0.439003,4.608567,4.899876],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":20.0,"sell_vol":1720.0,"unclassified_vol":0.0,"imbalance":-0.977011,"bid":12.88,"ask":12.96,"spread_pct":0.619195,"quote_size_imbalance":null,"quote_age_s":8.039064},"context":{"vwap":12.902939,"price_vs_vwap_pct":0.442234,"ema9":12.925503,"ema20":12.937552,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.629602,"dist_to_hod_atr":7.45123,"atr":0.046972,"spread_atr":1.703138,"own_change_pct":-0.222136,"rel_strength_pct":{"SPY":-0.237989,"IWM":-0.262475}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-4.787236},"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":"3040b2ca0a68","ts":"2026-09-15T17:48:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6377,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.2},"price":10.7859,"vwap":10.5733,"ext_from_open_pct":3.61,"max_ext_allowed_pct":3.0,"volume_pace":0.96,"trend":"flat","recent_slope_pct":0.0474,"volatility":"medium"},"price":10.7859,"volume":{"bars":258,"last_bar_volume":8649.0,"baseline_avg":12615.4,"bar_rvol":0.685591,"raw_accel":-0.369101,"smooth_accel":0.115808,"accel_momentum":-0.271898,"rvol_3bar":[1.113892,1.122419,0.685591],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":884.0,"sell_vol":1766.0,"unclassified_vol":0.0,"imbalance":-0.33283,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.125285},"context":{"vwap":10.573257,"price_vs_vwap_pct":2.011138,"ema9":10.788159,"ema20":10.803017,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.408592,"dist_to_hod_atr":4.634836,"atr":0.033248,"spread_atr":0.300768,"own_change_pct":-0.124158,"rel_strength_pct":{"SPY":-0.140011,"IWM":-0.164497}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.228185},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2b6911ffd5c7","ts":"2026-09-15T17:48:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.0s, plan says PASS; stop 11.12, target 11.42 (ceiling), R:R 0.40; R:R 0.40 < 2.0 at 11.33; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1157,"target":11.42,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":26.1,"room_to_5d_high_atr":1.21},"price":11.3325,"vwap":11.2897,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.0529,"volatility":"high"},"price":11.3325,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":21348.0,"sell_vol":17887.0,"unclassified_vol":0.0,"imbalance":0.088212,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.912755},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.379085,"ema9":11.334368,"ema20":11.321731,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.284843,"dist_to_hod_atr":3.248917,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.337504,"IWM":0.313018}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.06849},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d020d3299db2","ts":"2026-09-15T17:48:10+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 305.0s, plan says WATCH; stop 11.15, target 11.44 (premarket_high), R:R 0.35; R:R 0.35 < 2.0 at 11.37; breakout: 1-min close > 11.43 on >= 143403 sh","plan":{"state":"WATCH","setup":"","stop":11.1482,"target":11.44,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":28.4,"room_to_5d_high_atr":1.18},"price":11.365,"vwap":11.2897,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.1102,"volatility":"high"},"price":11.365,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":9948.0,"sell_vol":11297.0,"unclassified_vol":0.0,"imbalance":-0.063497,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.065172},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.666958,"ema9":11.334368,"ema20":11.321731,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.001742,"dist_to_hod_atr":2.533054,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.337504,"IWM":0.313018}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.049301},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ed5c11cdfe1b","ts":"2026-09-15T17:48:15+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 310.0s, plan says PASS; stop 11.12, target 11.42 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 11.33; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.118,"target":11.42,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":26.3,"room_to_5d_high_atr":1.21},"price":11.3348,"vwap":11.2897,"ext_from_open_pct":0.66,"max_ext_allowed_pct":4.0,"volume_pace":0.822,"trend":"flat","recent_slope_pct":0.057,"volatility":"high"},"price":11.3348,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":0.470872},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":10447.0,"sell_vol":4184.0,"unclassified_vol":0.0,"imbalance":0.428064,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.008063},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.399458,"ema9":11.334368,"ema20":11.321731,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.264808,"dist_to_hod_atr":3.198256,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.337504,"IWM":0.313018}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.332359},"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":"03a7d52af72f","ts":"2026-09-15T17:48:25+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 320.0s, plan says WATCH; stop 11.15, target 11.44 (premarket_high), R:R 0.35; R:R 0.35 < 2.0 at 11.37; breakout: 1-min close > 11.43 on >= 143403 sh","plan":{"state":"WATCH","setup":"","stop":11.1482,"target":11.44,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":28.4,"room_to_5d_high_atr":1.18},"price":11.365,"vwap":11.2897,"ext_from_open_pct":0.93,"max_ext_allowed_pct":4.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":0.1102,"volatility":"high"},"price":11.365,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":0.300351},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":10881.0,"sell_vol":2679.0,"unclassified_vol":0.0,"imbalance":0.604867,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.060683},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.666958,"ema9":11.334368,"ema20":11.321731,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.001742,"dist_to_hod_atr":2.533054,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.337504,"IWM":0.313018}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.469634},"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":"5a43eaea0523","ts":"2026-09-15T17:48:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":2.75,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.703,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":3.677,"trend":"flat","recent_slope_pct":-0.1358,"volatility":"low"},"price":9.85,"volume":{"bars":258,"last_bar_volume":26269.0,"baseline_avg":3541.5,"bar_rvol":7.417478,"raw_accel":28.669914,"smooth_accel":7.485987,"accel_momentum":8.327605,"rvol_3bar":[0.253609,0.069069,7.417478],"trend_3bar":"MIXED","projected_rvol":4.758758},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":7519.0,"sell_vol":2308.0,"unclassified_vol":0.0,"imbalance":0.530274,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":2.171121},"context":{"vwap":9.70246,"price_vs_vwap_pct":1.520642,"ema9":9.864336,"ema20":9.891246,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":8.914726,"atr":0.039261,"spread_atr":1.018826,"own_change_pct":-0.697769,"rel_strength_pct":{"SPY":-0.713622,"IWM":-0.738108}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.933294},"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":"4fccfb6abbd6","ts":"2026-09-15T17:48:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":7.1,"room_to_5d_high_atr":4.28},"price":10.08,"vwap":10.0762,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.691,"trend":"flat","recent_slope_pct":0.0149,"volatility":"low"},"price":10.08,"volume":{"bars":258,"last_bar_volume":22055.0,"baseline_avg":43599.15,"bar_rvol":0.505858,"raw_accel":-0.552836,"smooth_accel":-0.407707,"accel_momentum":-0.085327,"rvol_3bar":[0.321941,1.116353,0.505858],"trend_3bar":"MIXED","projected_rvol":2.36406},"flow":{"window_s":30,"trades":176,"trade_rate":5.866667,"buy_vol":42565.0,"sell_vol":25516.0,"unclassified_vol":0.0,"imbalance":0.250422,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":3.926725},"context":{"vwap":10.076149,"price_vs_vwap_pct":0.038216,"ema9":10.065729,"ema20":10.052553,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.542674,"dist_to_hod_atr":2.899625,"atr":0.018968,"spread_atr":0.527205,"own_change_pct":0.243769,"rel_strength_pct":{"SPY":0.227916,"IWM":0.20343}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.126678},"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":"bd292fb8616e","ts":"2026-09-15T17:48:45+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 340.0s, plan says PASS; stop 11.13, target 11.42 (ceiling), R:R 0.34; R:R 0.34 < 2.0 at 11.35; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1295,"target":11.42,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":27.1,"room_to_5d_high_atr":1.2},"price":11.3463,"vwap":11.2898,"ext_from_open_pct":0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":0.0773,"volatility":"high"},"price":11.3463,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":0.478998},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":14322.0,"sell_vol":10845.0,"unclassified_vol":0.0,"imbalance":0.138157,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":2.455896},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.50132,"ema9":11.334368,"ema20":11.321731,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.164634,"dist_to_hod_atr":2.944951,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.337504,"IWM":0.313018}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.107269},"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":"a471cb9b42b4","ts":"2026-09-15T17:48:50+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 345.0s, plan says WATCH; stop 11.15, target 11.44 (premarket_high), R:R 0.35; R:R 0.35 < 2.0 at 11.37; breakout: 1-min close > 11.43 on >= 143403 sh","plan":{"state":"WATCH","setup":"","stop":11.1482,"target":11.44,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":28.4,"room_to_5d_high_atr":1.18},"price":11.365,"vwap":11.2898,"ext_from_open_pct":0.93,"max_ext_allowed_pct":3.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":0.1102,"volatility":"high"},"price":11.365,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":0.443006},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":15156.0,"sell_vol":10936.0,"unclassified_vol":0.0,"imbalance":0.161735,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":1.088725},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.666958,"ema9":11.334368,"ema20":11.321731,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.001742,"dist_to_hod_atr":2.533054,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.337504,"IWM":0.313018}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.125575},"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":"f489a49883f0","ts":"2026-09-15T17:48:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.67,"target":10.07,"target_label":"ceiling","reward_risk":1.59,"pos_in_5d_range_pct":476.8,"room_to_5d_high_atr":-5.43},"price":9.8242,"vwap":9.7031,"ext_from_open_pct":3.96,"max_ext_allowed_pct":5.0,"volume_pace":3.674,"trend":"flat","recent_slope_pct":-0.1883,"volatility":"low"},"price":9.8242,"volume":{"bars":258,"last_bar_volume":26269.0,"baseline_avg":3541.5,"bar_rvol":7.417478,"raw_accel":28.669914,"smooth_accel":7.485987,"accel_momentum":8.327605,"rvol_3bar":[0.253609,0.069069,7.417478],"trend_3bar":"MIXED","projected_rvol":3.34527},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":8516.0,"sell_vol":2041.0,"unclassified_vol":0.0,"imbalance":0.613337,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":22.171121},"context":{"vwap":9.70246,"price_vs_vwap_pct":1.25473,"ema9":9.864336,"ema20":9.891246,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.684314,"dist_to_hod_atr":9.571868,"atr":0.039261,"spread_atr":1.018826,"own_change_pct":-0.697769,"rel_strength_pct":{"SPY":-0.713622,"IWM":-0.738108}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.549415},"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":"be2dc82453d6","ts":"2026-09-15T17:48:55+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 350.0s, plan says PASS; stop 11.13, target 11.42 (ceiling), R:R 0.34; R:R 0.34 < 2.0 at 11.35; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":11.1298,"target":11.42,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":27.1,"room_to_5d_high_atr":1.2},"price":11.3466,"vwap":11.2898,"ext_from_open_pct":0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.82,"trend":"flat","recent_slope_pct":0.0778,"volatility":"high"},"price":11.3466,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":0.405937},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":14741.0,"sell_vol":10992.0,"unclassified_vol":0.0,"imbalance":0.145688,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":0.725429},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.503978,"ema9":11.334368,"ema20":11.321731,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.162021,"dist_to_hod_atr":2.938343,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.337504,"IWM":0.313018}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.113116},"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":"3cc0960ad35d","ts":"2026-09-15T17:49:00+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.88 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.645,"target":13.2,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":42.3,"room_to_5d_high_atr":1.2},"price":12.885,"vwap":12.9029,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":3.0,"volume_pace":0.759,"trend":"flat","recent_slope_pct":-0.1436,"volatility":"medium"},"price":12.885,"volume":{"bars":257,"last_bar_volume":1982.0,"baseline_avg":404.5,"bar_rvol":4.899876,"raw_accel":0.270513,"smooth_accel":4.75507,"accel_momentum":4.828267,"rvol_3bar":[0.439003,4.608567,4.899876],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":109.0,"sell_vol":552.0,"unclassified_vol":0.0,"imbalance":-0.670197,"bid":12.83,"ask":12.95,"spread_pct":0.930954,"quote_size_imbalance":null,"quote_age_s":1.284288},"context":{"vwap":12.902939,"price_vs_vwap_pct":-0.139029,"ema9":12.925503,"ema20":12.937552,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.193088,"dist_to_hod_atr":9.047923,"atr":0.046972,"spread_atr":2.554708,"own_change_pct":-0.222136,"rel_strength_pct":{"SPY":-0.208928,"IWM":-0.24844}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.283881},"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":"60f7963b62a4","ts":"2026-09-15T17:49:00+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"held 355.0s, plan says WATCH; stop 11.15, target 11.44 (premarket_high), R:R 0.35; R:R 0.35 < 2.0 at 11.37; breakout: 1-min close > 11.43 on >= 143403 sh","plan":{"state":"WATCH","setup":"","stop":11.1482,"target":11.44,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":28.4,"room_to_5d_high_atr":1.18},"price":11.365,"vwap":11.2898,"ext_from_open_pct":0.93,"max_ext_allowed_pct":4.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":0.1102,"volatility":"high"},"price":11.365,"volume":{"bars":258,"last_bar_volume":80902.0,"baseline_avg":104198.1,"bar_rvol":0.776425,"raw_accel":0.593594,"smooth_accel":-0.106861,"accel_momentum":0.083853,"rvol_3bar":[0.933414,0.46914,0.776425],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":17660.0,"sell_vol":9085.0,"unclassified_vol":0.0,"imbalance":0.320621,"bid":11.36,"ask":11.37,"spread_pct":0.087989,"quote_size_imbalance":null,"quote_age_s":1.052562},"context":{"vwap":11.289702,"price_vs_vwap_pct":0.666958,"ema9":11.334368,"ema20":11.321731,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.001742,"dist_to_hod_atr":2.533054,"atr":0.0454,"spread_atr":0.220266,"own_change_pct":0.353357,"rel_strength_pct":{"SPY":0.366565,"IWM":0.327053}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.248938},"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":"c9cb3e4e15ff","ts":"2026-09-15T17:49:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6468,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.795,"vwap":10.5739,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":0.0345,"volatility":"medium"},"price":10.795,"volume":{"bars":259,"last_bar_volume":15991.0,"baseline_avg":12491.5,"bar_rvol":1.280151,"raw_accel":0.848884,"smooth_accel":0.053168,"accel_momentum":-0.062641,"rvol_3bar":[1.122419,0.685591,1.280151],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1976.0,"sell_vol":1277.0,"unclassified_vol":0.0,"imbalance":0.214879,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.527204},"context":{"vwap":10.573822,"price_vs_vwap_pct":2.09175,"ema9":10.789527,"ema20":10.802253,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.325411,"dist_to_hod_atr":4.493867,"atr":0.032266,"spread_atr":0.309922,"own_change_pct":0.048194,"rel_strength_pct":{"SPY":0.061401,"IWM":0.021889}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.275077},"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":"1b44d358bbfc","ts":"2026-09-15T17:49:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6468,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.795,"vwap":10.5739,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.959,"trend":"flat","recent_slope_pct":0.0345,"volatility":"medium"},"price":10.795,"volume":{"bars":259,"last_bar_volume":15991.0,"baseline_avg":12491.5,"bar_rvol":1.280151,"raw_accel":0.848884,"smooth_accel":0.053168,"accel_momentum":-0.062641,"rvol_3bar":[1.122419,0.685591,1.280151],"trend_3bar":"MIXED","projected_rvol":0.641396},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2054.0,"sell_vol":1286.0,"unclassified_vol":0.0,"imbalance":0.22994,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":4.640763},"context":{"vwap":10.573822,"price_vs_vwap_pct":2.09175,"ema9":10.789527,"ema20":10.802253,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.325411,"dist_to_hod_atr":4.493867,"atr":0.032266,"spread_atr":0.309922,"own_change_pct":0.048194,"rel_strength_pct":{"SPY":0.061401,"IWM":0.021889}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.294358},"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":"e61c17b73de0","ts":"2026-09-15T17:49:25+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7288,"target":7.875,"target_label":"prev_day_high","reward_risk":0.24,"pos_in_5d_range_pct":18.6,"room_to_5d_high_atr":2.75},"price":7.8471,"vwap":7.8481,"ext_from_open_pct":-0.67,"max_ext_allowed_pct":3.0,"volume_pace":1.152,"trend":"flat","recent_slope_pct":0.0154,"volatility":"high"},"price":7.8471,"volume":{"bars":259,"last_bar_volume":5096.0,"baseline_avg":4717.5,"bar_rvol":1.080233,"raw_accel":3.320933,"smooth_accel":2.596275,"accel_momentum":3.421154,"rvol_3bar":[0.904994,0.052754,1.080233],"trend_3bar":"MIXED","projected_rvol":0.071733},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":119.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.687943,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.7045},"context":{"vwap":7.848114,"price_vs_vwap_pct":-0.012924,"ema9":7.854586,"ema20":7.854691,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.045397,"dist_to_hod_atr":6.368047,"atr":0.013018,"spread_atr":0.76816,"own_change_pct":0.254939,"rel_strength_pct":{"SPY":0.268147,"IWM":0.228635}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.743139},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"10da61b0f218","ts":"2026-09-15T17:49:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":2.75,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.7032,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":3.667,"trend":"flat","recent_slope_pct":-0.0762,"volatility":"low"},"price":9.85,"volume":{"bars":259,"last_bar_volume":12722.0,"baseline_avg":4804.15,"bar_rvol":2.648127,"raw_accel":-0.515703,"smooth_accel":25.95261,"accel_momentum":18.466623,"rvol_3bar":[0.069069,7.417478,2.648127],"trend_3bar":"MIXED","projected_rvol":0.038404},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":70.0,"sell_vol":40.0,"unclassified_vol":0.0,"imbalance":0.272727,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":7.245164},"context":{"vwap":9.703239,"price_vs_vwap_pct":1.512499,"ema9":9.861469,"ema20":9.887318,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":8.300984,"atr":0.042164,"spread_atr":0.948684,"own_change_pct":-0.46584,"rel_strength_pct":{"SPY":-0.452632,"IWM":-0.492144}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.722216},"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":"0471291a8f79","ts":"2026-09-15T17:49:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7859,"target":10.07,"target_label":"ceiling","reward_risk":2.55,"pos_in_5d_range_pct":488.1,"room_to_5d_high_atr":-5.59},"price":9.8659,"vwap":9.7033,"ext_from_open_pct":4.4,"max_ext_allowed_pct":5.0,"volume_pace":3.666,"trend":"flat","recent_slope_pct":-0.0439,"volatility":"low"},"price":9.8659,"volume":{"bars":259,"last_bar_volume":12722.0,"baseline_avg":4804.15,"bar_rvol":2.648127,"raw_accel":-0.515703,"smooth_accel":25.95261,"accel_momentum":18.466623,"rvol_3bar":[0.069069,7.417478,2.648127],"trend_3bar":"MIXED","projected_rvol":0.138491},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":396.0,"sell_vol":40.0,"unclassified_vol":0.0,"imbalance":0.816514,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":3.949385},"context":{"vwap":9.703239,"price_vs_vwap_pct":1.676362,"ema9":9.861469,"ema20":9.887318,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.27549,"dist_to_hod_atr":7.923882,"atr":0.042164,"spread_atr":0.948684,"own_change_pct":-0.46584,"rel_strength_pct":{"SPY":-0.452632,"IWM":-0.492144}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.162232},"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":"0db214542234","ts":"2026-09-15T17:49:45+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7483,"target":8.0,"target_label":"premarket_high","reward_risk":1.13,"pos_in_5d_range_pct":19.8,"room_to_5d_high_atr":2.71},"price":7.8666,"vwap":7.8481,"ext_from_open_pct":-0.42,"max_ext_allowed_pct":4.0,"volume_pace":1.151,"trend":"flat","recent_slope_pct":0.065,"volatility":"high"},"price":7.8666,"volume":{"bars":259,"last_bar_volume":5096.0,"baseline_avg":4717.5,"bar_rvol":1.080233,"raw_accel":3.320933,"smooth_accel":2.596275,"accel_momentum":3.421154,"rvol_3bar":[0.904994,0.052754,1.080233],"trend_3bar":"MIXED","projected_rvol":0.045787},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":21.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":0.448276,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.249215},"context":{"vwap":7.848114,"price_vs_vwap_pct":0.235543,"ema9":7.854586,"ema20":7.854691,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.799496,"dist_to_hod_atr":4.870135,"atr":0.013018,"spread_atr":0.76816,"own_change_pct":0.254939,"rel_strength_pct":{"SPY":0.268147,"IWM":0.228635}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.484242},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"96731f3af9c8","ts":"2026-09-15T17:49:45+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.07 below VWAP $10.08","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":4.32},"price":10.0713,"vwap":10.0762,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.688,"trend":"flat","recent_slope_pct":-0.011,"volatility":"low"},"price":10.0713,"volume":{"bars":259,"last_bar_volume":71963.0,"baseline_avg":43839.55,"bar_rvol":1.641509,"raw_accel":2.262888,"smooth_accel":0.45012,"accel_momentum":0.857827,"rvol_3bar":[1.116353,0.505858,1.641509],"trend_3bar":"MIXED","projected_rvol":0.142459},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":2820.0,"sell_vol":1158.0,"unclassified_vol":0.0,"imbalance":0.417798,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":11.609531},"context":{"vwap":10.076179,"price_vs_vwap_pct":-0.048422,"ema9":10.069583,"ema20":10.055643,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.628515,"dist_to_hod_atr":3.331545,"atr":0.01912,"spread_atr":0.523005,"own_change_pct":0.148957,"rel_strength_pct":{"SPY":0.162165,"IWM":0.122653}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.685819},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c4471f5f600f","ts":"2026-09-15T17:49:50+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.72,"pos_in_5d_range_pct":7.1,"room_to_5d_high_atr":4.28},"price":10.0799,"vwap":10.0762,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.688,"trend":"flat","recent_slope_pct":0.0061,"volatility":"low"},"price":10.0799,"volume":{"bars":259,"last_bar_volume":71963.0,"baseline_avg":43839.55,"bar_rvol":1.641509,"raw_accel":2.262888,"smooth_accel":0.45012,"accel_momentum":0.857827,"rvol_3bar":[1.116353,0.505858,1.641509],"trend_3bar":"MIXED","projected_rvol":0.173515},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":3897.0,"sell_vol":1141.0,"unclassified_vol":0.0,"imbalance":0.547042,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":3.754116},"context":{"vwap":10.076179,"price_vs_vwap_pct":0.036928,"ema9":10.069583,"ema20":10.055643,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.543661,"dist_to_hod_atr":2.88176,"atr":0.01912,"spread_atr":0.523005,"own_change_pct":0.148957,"rel_strength_pct":{"SPY":0.162165,"IWM":0.122653}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.897975},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c478c889856","ts":"2026-09-15T17:50:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":5.6904,"target":5.83,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.1},"price":5.79,"vwap":5.75,"ext_from_open_pct":1.58,"max_ext_allowed_pct":3.0,"volume_pace":0.542,"trend":"flat","recent_slope_pct":0.0737,"volatility":"high"},"price":5.79,"volume":{"bars":260,"last_bar_volume":13995.0,"baseline_avg":2843.5,"bar_rvol":4.921751,"raw_accel":11.254816,"smooth_accel":6.31458,"accel_momentum":6.375174,"rvol_3bar":[0.150254,0.394255,4.921751],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":324.0,"sell_vol":387.0,"unclassified_vol":0.0,"imbalance":-0.088608,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":1.293075},"context":{"vwap":5.749962,"price_vs_vwap_pct":0.696317,"ema9":5.775068,"ema20":5.776909,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.025641,"dist_to_hod_atr":6.66157,"atr":0.009007,"spread_atr":1.110262,"own_change_pct":0.095283,"rel_strength_pct":{"SPY":0.116415,"IWM":0.090021}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.436105},"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":"f17d5937031a","ts":"2026-09-15T17:50:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6368,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.785,"vwap":10.5741,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.957,"trend":"flat","recent_slope_pct":0.0001,"volatility":"medium"},"price":10.785,"volume":{"bars":260,"last_bar_volume":8702.0,"baseline_avg":12732.4,"bar_rvol":0.683453,"raw_accel":-0.455819,"smooth_accel":-0.196888,"accel_momentum":-0.250056,"rvol_3bar":[0.685591,1.280151,0.683453],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1832.0,"sell_vol":4072.0,"unclassified_vol":0.0,"imbalance":-0.379404,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":1.150696},"context":{"vwap":10.574125,"price_vs_vwap_pct":1.994257,"ema9":10.788622,"ema20":10.80061,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.416819,"dist_to_hod_atr":4.98323,"atr":0.031104,"spread_atr":0.321499,"own_change_pct":0.232342,"rel_strength_pct":{"SPY":0.253474,"IWM":0.227081}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.259305},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e6be42a56357","ts":"2026-09-15T17:50:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":2.75,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.7033,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":3.66,"trend":"flat","recent_slope_pct":0.0089,"volatility":"low"},"price":9.85,"volume":{"bars":260,"last_bar_volume":539.0,"baseline_avg":5126.45,"bar_rvol":0.105141,"raw_accel":-0.957632,"smooth_accel":24.421222,"accel_momentum":-1.531388,"rvol_3bar":[7.417478,2.648127,0.105141],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":404.0,"sell_vol":26.0,"unclassified_vol":0.0,"imbalance":0.87907,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":9.988202},"context":{"vwap":9.703275,"price_vs_vwap_pct":1.512113,"ema9":9.859175,"ema20":9.883764,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":8.475635,"atr":0.041295,"spread_atr":0.968644,"own_change_pct":-0.253165,"rel_strength_pct":{"SPY":-0.232032,"IWM":-0.258426}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.092426},"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":"87fd54de3309","ts":"2026-09-15T17:50:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6337,"target":10.935,"target_label":"prev_day_high","reward_risk":1.03,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.21},"price":10.7819,"vwap":10.5742,"ext_from_open_pct":3.57,"max_ext_allowed_pct":3.0,"volume_pace":0.956,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"medium"},"price":10.7819,"volume":{"bars":260,"last_bar_volume":8702.0,"baseline_avg":12732.4,"bar_rvol":0.683453,"raw_accel":-0.455819,"smooth_accel":-0.196888,"accel_momentum":-0.250056,"rvol_3bar":[0.685591,1.280151,0.683453],"trend_3bar":"MIXED","projected_rvol":0.419717},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1194.0,"sell_vol":1522.0,"unclassified_vol":0.0,"imbalance":-0.120766,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.278923},"context":{"vwap":10.574125,"price_vs_vwap_pct":1.96494,"ema9":10.788622,"ema20":10.80061,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.445155,"dist_to_hod_atr":5.082894,"atr":0.031104,"spread_atr":0.321499,"own_change_pct":0.232342,"rel_strength_pct":{"SPY":0.253474,"IWM":0.227081}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.082538},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ef061c752e69","ts":"2026-09-15T17:50:20+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.07 below VWAP $10.08","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.9,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":4.31},"price":10.073,"vwap":10.0762,"ext_from_open_pct":-0.17,"max_ext_allowed_pct":3.0,"volume_pace":0.687,"trend":"flat","recent_slope_pct":-0.0014,"volatility":"low"},"price":10.073,"volume":{"bars":260,"last_bar_volume":6653.0,"baseline_avg":45552.15,"bar_rvol":0.146052,"raw_accel":-0.90755,"smooth_accel":-0.187082,"accel_momentum":-0.637201,"rvol_3bar":[0.505858,1.641509,0.146052],"trend_3bar":"MIXED","projected_rvol":0.409179},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":3413.0,"sell_vol":3114.0,"unclassified_vol":0.0,"imbalance":0.04581,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":3.528838},"context":{"vwap":10.076182,"price_vs_vwap_pct":-0.03158,"ema9":10.072667,"ema20":10.058439,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.611741,"dist_to_hod_atr":3.230809,"atr":0.01919,"spread_atr":0.521098,"own_change_pct":0.148957,"rel_strength_pct":{"SPY":0.17009,"IWM":0.143696}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.006691},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fd1477b02d43","ts":"2026-09-15T17:50:20+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2753,"target":8.6523,"target_label":"prev_day_high","reward_risk":0.99,"pos_in_5d_range_pct":87.6,"room_to_5d_high_atr":0.28},"price":8.465,"vwap":7.968,"ext_from_open_pct":9.94,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":0.3869,"volatility":"high"},"price":8.465,"volume":{"bars":260,"last_bar_volume":15013.0,"baseline_avg":12857.05,"bar_rvol":1.167686,"raw_accel":-0.132297,"smooth_accel":-0.08312,"accel_momentum":0.212685,"rvol_3bar":[0.407332,1.398175,1.167686],"trend_3bar":"MIXED","projected_rvol":14.142202},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":18052.0,"sell_vol":44852.0,"unclassified_vol":0.0,"imbalance":-0.426046,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.050692},"context":{"vwap":7.961905,"price_vs_vwap_pct":6.318776,"ema9":8.382233,"ema20":8.357544,"ema_stack":true,"ema_warm":true,"hod":8.45,"dist_to_hod_pct":0.177515,"dist_to_hod_atr":-0.393893,"atr":0.038081,"spread_atr":0.262596,"own_change_pct":0.864037,"rel_strength_pct":{"SPY":0.885169,"IWM":0.858775}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.497488},"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":"d104c35394a2","ts":"2026-09-15T17:50:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.5,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0762,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.687,"trend":"flat","recent_slope_pct":0.0323,"volatility":"low"},"price":10.09,"volume":{"bars":260,"last_bar_volume":6653.0,"baseline_avg":45552.15,"bar_rvol":0.146052,"raw_accel":-0.90755,"smooth_accel":-0.187082,"accel_momentum":-0.637201,"rvol_3bar":[0.505858,1.641509,0.146052],"trend_3bar":"MIXED","projected_rvol":0.426764},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":6221.0,"sell_vol":3499.0,"unclassified_vol":0.0,"imbalance":0.280041,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":0.147658},"context":{"vwap":10.076182,"price_vs_vwap_pct":0.137135,"ema9":10.072667,"ema20":10.058439,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":2.344942,"atr":0.01919,"spread_atr":0.521098,"own_change_pct":0.148957,"rel_strength_pct":{"SPY":0.17009,"IWM":0.143696}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.040901},"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":"2fb5ccbcf3db","ts":"2026-09-15T17:51:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7471,"target":10.07,"target_label":"ceiling","reward_risk":3.04,"pos_in_5d_range_pct":477.6,"room_to_5d_high_atr":-5.44},"price":9.8271,"vwap":9.7034,"ext_from_open_pct":3.99,"max_ext_allowed_pct":4.0,"volume_pace":3.65,"trend":"flat","recent_slope_pct":0.073,"volatility":"low"},"price":9.8271,"volume":{"bars":261,"last_bar_volume":1641.0,"baseline_avg":4594.65,"bar_rvol":0.357155,"raw_accel":0.428618,"smooth_accel":-0.459171,"accel_momentum":-24.880393,"rvol_3bar":[2.648127,0.105141,0.357155],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":200.0,"sell_vol":1417.0,"unclassified_vol":0.0,"imbalance":-0.752628,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":4.988184},"context":{"vwap":9.70338,"price_vs_vwap_pct":1.275018,"ema9":9.85734,"ema20":9.880548,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.655882,"dist_to_hod_atr":9.375523,"atr":0.039774,"spread_atr":1.005688,"own_change_pct":-0.253165,"rel_strength_pct":{"SPY":-0.233355,"IWM":-0.233879}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.268805},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"07eb421b9971","ts":"2026-09-15T17:51:10+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.28x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2286,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.23,"pos_in_5d_range_pct":84.8,"room_to_5d_high_atr":0.34},"price":8.4183,"vwap":7.9707,"ext_from_open_pct":9.33,"max_ext_allowed_pct":4.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":0.2216,"volatility":"high"},"price":8.4183,"volume":{"bars":261,"last_bar_volume":87004.0,"baseline_avg":12901.1,"bar_rvol":6.743921,"raw_accel":4.795244,"smooth_accel":3.102706,"accel_momentum":3.185826,"rvol_3bar":[1.398175,1.167686,6.743921],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":11177.0,"sell_vol":9452.0,"unclassified_vol":0.0,"imbalance":0.08362,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":2.142426},"context":{"vwap":7.970684,"price_vs_vwap_pct":5.61578,"ema9":8.399786,"ema20":8.368255,"ema_stack":true,"ema_warm":true,"hod":8.479,"dist_to_hod_pct":-0.715886,"dist_to_hod_atr":1.430742,"atr":0.042426,"spread_atr":0.235707,"own_change_pct":1.313366,"rel_strength_pct":{"SPY":1.333176,"IWM":1.332651}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.563928},"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":"9898c36cd8df","ts":"2026-09-15T17:51:15+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.28x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2853,"target":8.6523,"target_label":"prev_day_high","reward_risk":0.93,"pos_in_5d_range_pct":88.2,"room_to_5d_high_atr":0.26},"price":8.475,"vwap":7.9707,"ext_from_open_pct":10.06,"max_ext_allowed_pct":4.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":0.3558,"volatility":"high"},"price":8.475,"volume":{"bars":261,"last_bar_volume":87004.0,"baseline_avg":12901.1,"bar_rvol":6.743921,"raw_accel":4.795244,"smooth_accel":3.102706,"accel_momentum":3.185826,"rvol_3bar":[1.398175,1.167686,6.743921],"trend_3bar":"MIXED","projected_rvol":0.159986},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":9747.0,"sell_vol":8912.0,"unclassified_vol":0.0,"imbalance":0.044751,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":7.142426},"context":{"vwap":7.970684,"price_vs_vwap_pct":6.327137,"ema9":8.399786,"ema20":8.368255,"ema_stack":true,"ema_warm":true,"hod":8.479,"dist_to_hod_pct":-0.047175,"dist_to_hod_atr":0.094283,"atr":0.042426,"spread_atr":0.235707,"own_change_pct":1.313366,"rel_strength_pct":{"SPY":1.333176,"IWM":1.332651}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.301794},"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":"72e6dc69b2e9","ts":"2026-09-15T17:51:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6366,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.7848,"vwap":10.5744,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":-0.0006,"volatility":"medium"},"price":10.7848,"volume":{"bars":261,"last_bar_volume":3785.0,"baseline_avg":13003.65,"bar_rvol":0.291072,"raw_accel":-0.565043,"smooth_accel":-0.205457,"accel_momentum":-0.008569,"rvol_3bar":[1.280151,0.683453,0.291072],"trend_3bar":"DECELERATING","projected_rvol":0.439876},"flow":{"window_s":30,"trades":107,"trade_rate":3.566667,"buy_vol":2284.0,"sell_vol":576.0,"unclassified_vol":0.0,"imbalance":0.597203,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":1.678323},"context":{"vwap":10.574254,"price_vs_vwap_pct":1.991119,"ema9":10.787557,"ema20":10.798962,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.418647,"dist_to_hod_atr":5.233692,"atr":0.029654,"spread_atr":0.337222,"own_change_pct":0.030612,"rel_strength_pct":{"SPY":0.050422,"IWM":0.049898}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.173829},"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":"5f7dc183c746","ts":"2026-09-15T17:51:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7658,"target":10.07,"target_label":"ceiling","reward_risk":3.74,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.7039,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":3.657,"trend":"flat","recent_slope_pct":0.0789,"volatility":"low"},"price":9.83,"volume":{"bars":261,"last_bar_volume":1641.0,"baseline_avg":4594.65,"bar_rvol":0.357155,"raw_accel":0.428618,"smooth_accel":-0.459171,"accel_momentum":-24.880393,"rvol_3bar":[2.648127,0.105141,0.357155],"trend_3bar":"MIXED","projected_rvol":3.187061},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":2918.0,"sell_vol":5607.0,"unclassified_vol":0.0,"imbalance":-0.315425,"bid":9.83,"ask":9.85,"spread_pct":0.203252,"quote_size_imbalance":null,"quote_age_s":0.384678},"context":{"vwap":9.70338,"price_vs_vwap_pct":1.304905,"ema9":9.85734,"ema20":9.880548,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":9.30261,"atr":0.039774,"spread_atr":0.502844,"own_change_pct":-0.253165,"rel_strength_pct":{"SPY":-0.233355,"IWM":-0.233879}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.112656},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6edd175ee631","ts":"2026-09-15T17:51:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7171,"target":7.83,"target_label":"premarket_high","reward_risk":0.28,"pos_in_5d_range_pct":63.3,"room_to_5d_high_atr":0.57},"price":7.805,"vwap":7.7637,"ext_from_open_pct":1.36,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0526,"volatility":"medium"},"price":7.805,"volume":{"bars":261,"last_bar_volume":1126.0,"baseline_avg":12161.2,"bar_rvol":0.09259,"raw_accel":-0.882378,"smooth_accel":0.346286,"accel_momentum":0.108562,"rvol_3bar":[0.620483,0.731802,0.09259],"trend_3bar":"MIXED","projected_rvol":2.753441},"flow":{"window_s":30,"trades":134,"trade_rate":4.466667,"buy_vol":4323.0,"sell_vol":15210.0,"unclassified_vol":0.0,"imbalance":-0.557364,"bid":7.8,"ask":7.81,"spread_pct":0.128123,"quote_size_imbalance":null,"quote_age_s":0.447377},"context":{"vwap":7.763425,"price_vs_vwap_pct":0.535521,"ema9":7.828635,"ema20":7.840655,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-1.077313,"dist_to_hod_atr":4.226897,"atr":0.020109,"spread_atr":0.497282,"own_change_pct":-0.107284,"rel_strength_pct":{"SPY":-0.087474,"IWM":-0.087998}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.051606},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"808c46777be2","ts":"2026-09-15T17:51:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6368,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.785,"vwap":10.5744,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.953,"trend":"flat","recent_slope_pct":-0.0003,"volatility":"medium"},"price":10.785,"volume":{"bars":261,"last_bar_volume":3785.0,"baseline_avg":13003.65,"bar_rvol":0.291072,"raw_accel":-0.565043,"smooth_accel":-0.205457,"accel_momentum":-0.008569,"rvol_3bar":[1.280151,0.683453,0.291072],"trend_3bar":"DECELERATING","projected_rvol":0.492785},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":1197.0,"sell_vol":1366.0,"unclassified_vol":0.0,"imbalance":-0.065938,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.433211},"context":{"vwap":10.574254,"price_vs_vwap_pct":1.99301,"ema9":10.787557,"ema20":10.798962,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.416819,"dist_to_hod_atr":5.226948,"atr":0.029654,"spread_atr":0.337222,"own_change_pct":0.030612,"rel_strength_pct":{"SPY":0.050422,"IWM":0.049898}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.019193},"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":"55e2da1803a8","ts":"2026-09-15T17:51:35+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3634,"target":8.59,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":3.68},"price":8.5546,"vwap":8.4271,"ext_from_open_pct":2.21,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0136,"volatility":"high"},"price":8.5546,"volume":{"bars":261,"last_bar_volume":69998.0,"baseline_avg":45024.7,"bar_rvol":1.554658,"raw_accel":2.012351,"smooth_accel":0.079892,"accel_momentum":0.432653,"rvol_3bar":[0.862454,0.480607,1.554658],"trend_3bar":"MIXED","projected_rvol":1.193059},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":10276.0,"sell_vol":10277.0,"unclassified_vol":0.0,"imbalance":-4.9e-05,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.02648},"context":{"vwap":8.426919,"price_vs_vwap_pct":1.51516,"ema9":8.55831,"ema20":8.567746,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.387896,"dist_to_hod_atr":4.511317,"atr":0.026688,"spread_atr":0.374694,"own_change_pct":0.028062,"rel_strength_pct":{"SPY":0.047871,"IWM":0.047347}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-7.6e-05},"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":"0fd646045c83","ts":"2026-09-15T17:51:35+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4223,"target":12.72,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":2.09},"price":12.6414,"vwap":12.6168,"ext_from_open_pct":1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.846,"trend":"flat","recent_slope_pct":0.0042,"volatility":"high"},"price":12.6414,"volume":{"bars":261,"last_bar_volume":3013.0,"baseline_avg":6454.25,"bar_rvol":0.466824,"raw_accel":-0.006922,"smooth_accel":0.173213,"accel_momentum":0.431369,"rvol_3bar":[1.289499,0.45065,0.466824],"trend_3bar":"MIXED","projected_rvol":0.337319},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":13.0,"sell_vol":753.0,"unclassified_vol":0.0,"imbalance":-0.966057,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.588782},"context":{"vwap":12.616832,"price_vs_vwap_pct":0.194721,"ema9":12.648362,"ema20":12.659151,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.907834,"dist_to_hod_atr":12.504969,"atr":0.030276,"spread_atr":0.330295,"own_change_pct":0.098912,"rel_strength_pct":{"SPY":0.118722,"IWM":0.118198}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.450979},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f1e95661b072","ts":"2026-09-15T17:51:40+00:00","symbol":"SWVL","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":4.8762,"target":5.22,"target_label":"ceiling","reward_risk":0.17,"pos_in_5d_range_pct":3.5,"room_to_5d_high_atr":2.81},"price":5.17,"vwap":5.115,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.659,"trend":"flat","recent_slope_pct":-0.0966,"volatility":"high"},"price":5.17,"volume":{"bars":216,"last_bar_volume":441.0,"baseline_avg":962.35,"bar_rvol":0.458253,"raw_accel":-0.384937,"smooth_accel":-0.041889,"accel_momentum":0.414042,"rvol_3bar":[0.086681,0.727771,0.458253],"trend_3bar":"MIXED","projected_rvol":1.091079},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":700.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":5.17,"ask":5.21,"spread_pct":0.770713,"quote_size_imbalance":null,"quote_age_s":1.49373},"context":{"vwap":5.114799,"price_vs_vwap_pct":1.079237,"ema9":5.16152,"ema20":5.134947,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-13.689482,"dist_to_hod_atr":13.549965,"atr":0.060517,"spread_atr":0.660974,"own_change_pct":1.16229,"rel_strength_pct":{"SPY":1.1821,"IWM":1.181576}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.458253},"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":"ae83fa7bd228","ts":"2026-09-15T17:51:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7358,"target":10.07,"target_label":"ceiling","reward_risk":4.21,"pos_in_5d_range_pct":470.3,"room_to_5d_high_atr":-5.34},"price":9.8,"vwap":9.7053,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":3.699,"trend":"flat","recent_slope_pct":0.0179,"volatility":"low"},"price":9.8,"volume":{"bars":261,"last_bar_volume":1641.0,"baseline_avg":4594.65,"bar_rvol":0.357155,"raw_accel":0.428618,"smooth_accel":-0.459171,"accel_momentum":-24.880393,"rvol_3bar":[2.648127,0.105141,0.357155],"trend_3bar":"MIXED","projected_rvol":10.228708},"flow":{"window_s":30,"trades":122,"trade_rate":4.066667,"buy_vol":21430.0,"sell_vol":13701.0,"unclassified_vol":0.0,"imbalance":0.220005,"bid":9.79,"ask":9.82,"spread_pct":0.305966,"quote_size_imbalance":null,"quote_age_s":0.416409},"context":{"vwap":9.70338,"price_vs_vwap_pct":0.995734,"ema9":9.85734,"ema20":9.880548,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.921569,"dist_to_hod_atr":10.056876,"atr":0.039774,"spread_atr":0.754266,"own_change_pct":-0.253165,"rel_strength_pct":{"SPY":-0.233355,"IWM":-0.233879}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.078576},"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":"951fc7a55e50","ts":"2026-09-15T17:51:45+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.07 below VWAP $10.08","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":4.3},"price":10.075,"vwap":10.0762,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":4.0,"volume_pace":0.685,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":10.075,"volume":{"bars":261,"last_bar_volume":28077.0,"baseline_avg":43222.0,"bar_rvol":0.6496,"raw_accel":1.598399,"smooth_accel":0.244727,"accel_momentum":0.431808,"rvol_3bar":[1.641509,0.146052,0.6496],"trend_3bar":"MIXED","projected_rvol":0.255888},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":3948.0,"sell_vol":1226.0,"unclassified_vol":0.0,"imbalance":0.526092,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":5.061061},"context":{"vwap":10.076196,"price_vs_vwap_pct":-0.011865,"ema9":10.075133,"ema20":10.060969,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.592008,"dist_to_hod_atr":3.135813,"atr":0.019134,"spread_atr":0.522635,"own_change_pct":0.049603,"rel_strength_pct":{"SPY":0.069413,"IWM":0.068889}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.341749},"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":"90436fc2756d","ts":"2026-09-15T17:51:50+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":7.1,"room_to_5d_high_atr":4.28},"price":10.08,"vwap":10.0762,"ext_from_open_pct":-0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.685,"trend":"flat","recent_slope_pct":0.0099,"volatility":"low"},"price":10.08,"volume":{"bars":261,"last_bar_volume":28077.0,"baseline_avg":43222.0,"bar_rvol":0.6496,"raw_accel":1.598399,"smooth_accel":0.244727,"accel_momentum":0.431808,"rvol_3bar":[1.641509,0.146052,0.6496],"trend_3bar":"MIXED","projected_rvol":0.284772},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":5829.0,"sell_vol":1113.0,"unclassified_vol":0.0,"imbalance":0.679343,"bid":10.08,"ask":10.09,"spread_pct":0.099157,"quote_size_imbalance":null,"quote_age_s":2.27191},"context":{"vwap":10.076196,"price_vs_vwap_pct":0.037757,"ema9":10.075133,"ema20":10.060969,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.542674,"dist_to_hod_atr":2.874495,"atr":0.019134,"spread_atr":0.522635,"own_change_pct":0.049603,"rel_strength_pct":{"SPY":0.069413,"IWM":0.068889}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.441301},"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":"3dea9a50396f","ts":"2026-09-15T17:52:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.7408,"target":10.07,"target_label":"ceiling","reward_risk":4.13,"pos_in_5d_range_pct":471.6,"room_to_5d_high_atr":-5.35},"price":9.805,"vwap":9.7056,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":3.708,"trend":"flat","recent_slope_pct":-0.1526,"volatility":"low"},"price":9.805,"volume":{"bars":262,"last_bar_volume":43184.0,"baseline_avg":4618.4,"bar_rvol":9.350424,"raw_accel":25.315661,"smooth_accel":0.155977,"accel_momentum":0.615148,"rvol_3bar":[0.105141,0.357155,9.350424],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":148,"trade_rate":4.933333,"buy_vol":19389.0,"sell_vol":15295.0,"unclassified_vol":0.0,"imbalance":0.118037,"bid":9.79,"ask":9.82,"spread_pct":0.305966,"quote_size_imbalance":null,"quote_age_s":0.779017},"context":{"vwap":9.705564,"price_vs_vwap_pct":1.024521,"ema9":9.843872,"ema20":9.871925,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.872549,"dist_to_hod_atr":9.262064,"atr":0.042647,"spread_atr":0.703448,"own_change_pct":-0.860759,"rel_strength_pct":{"SPY":-0.858778,"IWM":-0.878294}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.103697},"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":"001f61bb9461","ts":"2026-09-15T17:52:05+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"price $7.85 below VWAP $7.85","plan":{"state":"PASS","setup":"","stop":7.7295,"target":7.875,"target_label":"prev_day_high","reward_risk":0.23,"pos_in_5d_range_pct":18.6,"room_to_5d_high_atr":2.75},"price":7.8478,"vwap":7.8481,"ext_from_open_pct":-0.66,"max_ext_allowed_pct":3.0,"volume_pace":1.142,"trend":"flat","recent_slope_pct":-0.0462,"volatility":"high"},"price":7.8478,"volume":{"bars":262,"last_bar_volume":384.0,"baseline_avg":4490.2,"bar_rvol":0.08552,"raw_accel":-0.852817,"smooth_accel":-0.691451,"accel_momentum":-1.071426,"rvol_3bar":[0.033238,0.578409,0.08552],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":201.0,"sell_vol":41.0,"unclassified_vol":0.0,"imbalance":0.661157,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":4.99377},"context":{"vwap":7.848128,"price_vs_vwap_pct":-0.004177,"ema9":7.859944,"ema20":7.857537,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-1.03657,"dist_to_hod_atr":5.568615,"atr":0.014761,"spread_atr":0.677447,"own_change_pct":0.203897,"rel_strength_pct":{"SPY":0.205878,"IWM":0.186363}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.056542},"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":"7db08e8d511d","ts":"2026-09-15T17:52:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7228,"target":7.83,"target_label":"premarket_high","reward_risk":0.22,"pos_in_5d_range_pct":64.3,"room_to_5d_high_atr":0.55},"price":7.8107,"vwap":7.7638,"ext_from_open_pct":1.44,"max_ext_allowed_pct":3.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.0156,"volatility":"medium"},"price":7.8107,"volume":{"bars":262,"last_bar_volume":22144.0,"baseline_avg":11796.25,"bar_rvol":1.877207,"raw_accel":6.508827,"smooth_accel":1.55012,"accel_momentum":1.203834,"rvol_3bar":[0.731802,0.09259,1.877207],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":2326.0,"sell_vol":377.0,"unclassified_vol":0.0,"imbalance":0.721051,"bid":7.8,"ask":7.81,"spread_pct":0.128123,"quote_size_imbalance":null,"quote_age_s":4.992996},"context":{"vwap":7.763774,"price_vs_vwap_pct":0.604417,"ema9":7.827988,"ema20":7.839203,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-1.00507,"dist_to_hod_atr":3.799178,"atr":0.020873,"spread_atr":0.479089,"own_change_pct":-0.061301,"rel_strength_pct":{"SPY":-0.05932,"IWM":-0.078835}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.353561},"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":"ddc855ee0566","ts":"2026-09-15T17:52:05+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.3609,"target":8.59,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":3.69},"price":8.5521,"vwap":8.4273,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.015,"volatility":"high"},"price":8.5521,"volume":{"bars":262,"last_bar_volume":53590.0,"baseline_avg":46427.8,"bar_rvol":1.154265,"raw_accel":-0.234407,"smooth_accel":0.161673,"accel_momentum":0.081781,"rvol_3bar":[0.480607,1.554658,1.154265],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":14481.0,"sell_vol":8746.0,"unclassified_vol":0.0,"imbalance":0.246911,"bid":8.55,"ask":8.56,"spread_pct":0.116891,"quote_size_imbalance":null,"quote_age_s":0.360171},"context":{"vwap":8.427261,"price_vs_vwap_pct":1.481368,"ema9":8.557608,"ema20":8.566513,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.416715,"dist_to_hod_atr":4.688926,"atr":0.026211,"spread_atr":0.381524,"own_change_pct":-0.002338,"rel_strength_pct":{"SPY":-0.000357,"IWM":-0.019872}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.285001},"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":"37e2f943a8ce","ts":"2026-09-15T17:52:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.435,"target":12.72,"target_label":"premarket_high","reward_risk":0.3,"pos_in_5d_range_pct":13.9,"room_to_5d_high_atr":2.07},"price":12.6541,"vwap":12.6168,"ext_from_open_pct":1.23,"max_ext_allowed_pct":4.0,"volume_pace":0.844,"trend":"flat","recent_slope_pct":0.0086,"volatility":"high"},"price":12.6541,"volume":{"bars":262,"last_bar_volume":1679.0,"baseline_avg":6216.45,"bar_rvol":0.27009,"raw_accel":-0.442748,"smooth_accel":-0.615182,"accel_momentum":-0.788394,"rvol_3bar":[0.45065,0.466824,0.27009],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":135.0,"sell_vol":406.0,"unclassified_vol":0.0,"imbalance":-0.500924,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.971076},"context":{"vwap":12.616844,"price_vs_vwap_pct":0.29529,"ema9":12.64769,"ema20":12.657804,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.810292,"dist_to_hod_atr":12.424823,"atr":0.029449,"spread_atr":0.339569,"own_change_pct":0.045889,"rel_strength_pct":{"SPY":0.04787,"IWM":0.028355}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.135295},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5f03cb184e88","ts":"2026-09-15T17:52:10+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3587,"target":8.59,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":10.0,"room_to_5d_high_atr":3.69},"price":8.5499,"vwap":8.4273,"ext_from_open_pct":2.15,"max_ext_allowed_pct":3.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0201,"volatility":"high"},"price":8.5499,"volume":{"bars":262,"last_bar_volume":53590.0,"baseline_avg":46427.8,"bar_rvol":1.154265,"raw_accel":-0.234407,"smooth_accel":0.161673,"accel_momentum":0.081781,"rvol_3bar":[0.480607,1.554658,1.154265],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":15218.0,"sell_vol":11542.0,"unclassified_vol":0.0,"imbalance":0.137369,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":1.388868},"context":{"vwap":8.427261,"price_vs_vwap_pct":1.455262,"ema9":8.557608,"ema20":8.566513,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.442075,"dist_to_hod_atr":4.772861,"atr":0.026211,"spread_atr":0.381524,"own_change_pct":-0.002338,"rel_strength_pct":{"SPY":-0.000357,"IWM":-0.019872}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.158561},"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":"ca17a1f11067","ts":"2026-09-15T17:52:15+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.75,"target":8.0,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":19.9,"room_to_5d_high_atr":2.71},"price":7.8683,"vwap":7.8481,"ext_from_open_pct":-0.4,"max_ext_allowed_pct":3.0,"volume_pace":1.141,"trend":"flat","recent_slope_pct":0.006,"volatility":"high"},"price":7.8683,"volume":{"bars":262,"last_bar_volume":384.0,"baseline_avg":4490.2,"bar_rvol":0.08552,"raw_accel":-0.852817,"smooth_accel":-0.691451,"accel_momentum":-1.071426,"rvol_3bar":[0.033238,0.578409,0.08552],"trend_3bar":"MIXED","projected_rvol":0.031179},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":206.0,"sell_vol":41.0,"unclassified_vol":0.0,"imbalance":0.668016,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":1.362181},"context":{"vwap":7.848128,"price_vs_vwap_pct":0.257032,"ema9":7.859944,"ema20":7.857537,"ema_stack":true,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.778058,"dist_to_hod_atr":4.179848,"atr":0.014761,"spread_atr":0.677447,"own_change_pct":0.203897,"rel_strength_pct":{"SPY":0.205878,"IWM":0.186363}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.057128},"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":"497cb6be8f6b","ts":"2026-09-15T17:52:25+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4209,"target":12.72,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":2.09},"price":12.64,"vwap":12.6168,"ext_from_open_pct":1.12,"max_ext_allowed_pct":3.0,"volume_pace":0.843,"trend":"flat","recent_slope_pct":-0.0137,"volatility":"high"},"price":12.64,"volume":{"bars":262,"last_bar_volume":1679.0,"baseline_avg":6216.45,"bar_rvol":0.27009,"raw_accel":-0.442748,"smooth_accel":-0.615182,"accel_momentum":-0.788394,"rvol_3bar":[0.45065,0.466824,0.27009],"trend_3bar":"MIXED","projected_rvol":0.21427},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":167.0,"sell_vol":486.0,"unclassified_vol":0.0,"imbalance":-0.488515,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":1.154792},"context":{"vwap":12.616844,"price_vs_vwap_pct":0.183534,"ema9":12.64769,"ema20":12.657804,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.918587,"dist_to_hod_atr":12.903616,"atr":0.029449,"spread_atr":0.339569,"own_change_pct":0.045889,"rel_strength_pct":{"SPY":0.04787,"IWM":0.028355}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.131943},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ada2a599f68c","ts":"2026-09-15T17:52:45+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2355,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.2,"pos_in_5d_range_pct":85.2,"room_to_5d_high_atr":0.33},"price":8.4252,"vwap":7.9729,"ext_from_open_pct":9.42,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":0.036,"volatility":"high"},"price":8.4252,"volume":{"bars":262,"last_bar_volume":20406.0,"baseline_avg":17043.2,"bar_rvol":1.19731,"raw_accel":-0.765459,"smooth_accel":2.492611,"accel_momentum":-0.610095,"rvol_3bar":[1.167686,6.743921,1.19731],"trend_3bar":"MIXED","projected_rvol":0.109526},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":337.0,"sell_vol":756.0,"unclassified_vol":0.0,"imbalance":-0.383349,"bid":8.46,"ask":8.48,"spread_pct":0.236128,"quote_size_imbalance":null,"quote_age_s":10.739039},"context":{"vwap":7.972767,"price_vs_vwap_pct":5.674735,"ema9":8.415829,"ema20":8.378897,"ema_stack":true,"ema_warm":true,"hod":8.48,"dist_to_hod_pct":-0.646226,"dist_to_hod_atr":1.251076,"atr":0.043802,"spread_atr":0.456597,"own_change_pct":1.558102,"rel_strength_pct":{"SPY":1.560084,"IWM":1.540568}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.458987},"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":"1fc0b2e0ffea","ts":"2026-09-15T17:52:50+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.28x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2753,"target":8.6523,"target_label":"prev_day_high","reward_risk":0.99,"pos_in_5d_range_pct":87.6,"room_to_5d_high_atr":0.28},"price":8.465,"vwap":7.9747,"ext_from_open_pct":9.94,"max_ext_allowed_pct":3.0,"volume_pace":0.276,"trend":"flat","recent_slope_pct":0.1301,"volatility":"high"},"price":8.465,"volume":{"bars":262,"last_bar_volume":20406.0,"baseline_avg":17043.2,"bar_rvol":1.19731,"raw_accel":-0.765459,"smooth_accel":2.492611,"accel_momentum":-0.610095,"rvol_3bar":[1.167686,6.743921,1.19731],"trend_3bar":"MIXED","projected_rvol":1.350732},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":7495.0,"sell_vol":11256.0,"unclassified_vol":0.0,"imbalance":-0.200576,"bid":8.48,"ask":8.49,"spread_pct":0.117855,"quote_size_imbalance":null,"quote_age_s":0.474847},"context":{"vwap":7.972767,"price_vs_vwap_pct":6.173934,"ema9":8.415829,"ema20":8.378897,"ema_stack":true,"ema_warm":true,"hod":8.48,"dist_to_hod_pct":-0.176887,"dist_to_hod_atr":0.342448,"atr":0.043802,"spread_atr":0.228299,"own_change_pct":1.558102,"rel_strength_pct":{"SPY":1.560084,"IWM":1.540568}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.240152},"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":"27ef36b21bf1","ts":"2026-09-15T17:53:05+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.3624,"target":8.59,"target_label":"premarket_high","reward_risk":0.19,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":3.68},"price":8.5536,"vwap":8.4273,"ext_from_open_pct":2.19,"max_ext_allowed_pct":4.0,"volume_pace":0.78,"trend":"flat","recent_slope_pct":-0.015,"volatility":"high"},"price":8.5536,"volume":{"bars":263,"last_bar_volume":12816.0,"baseline_avg":47785.7,"bar_rvol":0.268197,"raw_accel":-0.760851,"smooth_accel":0.286733,"accel_momentum":0.12506,"rvol_3bar":[1.554658,1.154265,0.268197],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":530.0,"sell_vol":1991.0,"unclassified_vol":0.0,"imbalance":-0.579532,"bid":8.54,"ask":8.55,"spread_pct":0.117028,"quote_size_imbalance":null,"quote_age_s":0.28327},"context":{"vwap":8.42734,"price_vs_vwap_pct":1.498222,"ema9":8.555086,"ema20":8.564465,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.399424,"dist_to_hod_atr":4.774975,"atr":0.025424,"spread_atr":0.393326,"own_change_pct":-0.160071,"rel_strength_pct":{"SPY":-0.170638,"IWM":-0.174096}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.155429},"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":"659b9e42e639","ts":"2026-09-15T17:53:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4275,"target":12.72,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":13.6,"room_to_5d_high_atr":2.08},"price":12.6466,"vwap":12.6169,"ext_from_open_pct":1.17,"max_ext_allowed_pct":4.0,"volume_pace":0.842,"trend":"flat","recent_slope_pct":-0.0028,"volatility":"high"},"price":12.6466,"volume":{"bars":263,"last_bar_volume":1900.0,"baseline_avg":5821.4,"bar_rvol":0.326382,"raw_accel":0.131626,"smooth_accel":-0.463148,"accel_momentum":0.152033,"rvol_3bar":[0.466824,0.27009,0.326382],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2127.0,"sell_vol":1095.0,"unclassified_vol":0.0,"imbalance":0.320298,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":1.020182},"context":{"vwap":12.616857,"price_vs_vwap_pct":0.23574,"ema9":12.648832,"ema20":12.657384,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.867896,"dist_to_hod_atr":13.12022,"atr":0.02846,"spread_atr":0.351372,"own_change_pct":0.100469,"rel_strength_pct":{"SPY":0.089902,"IWM":0.086444}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.104539},"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":"616a15821fb7","ts":"2026-09-15T17:53:25+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.73% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.8962,"target":5.3208,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":4.1,"room_to_5d_high_atr":2.8},"price":5.19,"vwap":5.1152,"ext_from_open_pct":-1.52,"max_ext_allowed_pct":4.0,"volume_pace":0.657,"trend":"flat","recent_slope_pct":0.207,"volatility":"high"},"price":5.19,"volume":{"bars":217,"last_bar_volume":800.0,"baseline_avg":983.85,"bar_rvol":0.813132,"raw_accel":0.814059,"smooth_accel":2.2257,"accel_momentum":2.267589,"rvol_3bar":[0.727771,0.458253,0.813132],"trend_3bar":"MIXED","projected_rvol":1.885653},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":773.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":5.17,"ask":5.26,"spread_pct":1.725791,"quote_size_imbalance":null,"quote_age_s":4.362859},"context":{"vwap":5.114983,"price_vs_vwap_pct":1.466606,"ema9":5.163616,"ema20":5.138476,"ema_stack":true,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-13.355593,"dist_to_hod_atr":14.200261,"atr":0.056337,"spread_atr":1.597529,"own_change_pct":-0.15444,"rel_strength_pct":{"SPY":-0.165007,"IWM":-0.168465}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.813132},"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":"e8fe5be218be","ts":"2026-09-15T17:53:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6268,"target":10.935,"target_label":"prev_day_high","reward_risk":1.08,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.22},"price":10.775,"vwap":10.575,"ext_from_open_pct":3.51,"max_ext_allowed_pct":4.0,"volume_pace":0.948,"trend":"flat","recent_slope_pct":-0.014,"volatility":"medium"},"price":10.775,"volume":{"bars":263,"last_bar_volume":5185.0,"baseline_avg":11834.9,"bar_rvol":0.438111,"raw_accel":-0.234799,"smooth_accel":-0.527743,"accel_momentum":-0.030051,"rvol_3bar":[0.291072,0.557006,0.438111],"trend_3bar":"MIXED","projected_rvol":1.711379},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":6589.0,"sell_vol":3538.0,"unclassified_vol":0.0,"imbalance":0.301274,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":1.073896},"context":{"vwap":10.574663,"price_vs_vwap_pct":1.894505,"ema9":10.787021,"ema20":10.796596,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.508227,"dist_to_hod_atr":6.123343,"atr":0.026946,"spread_atr":0.371112,"own_change_pct":0.082566,"rel_strength_pct":{"SPY":0.071999,"IWM":0.06854}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.131991},"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":"f77d0a191bcd","ts":"2026-09-15T17:53:30+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3508,"target":8.59,"target_label":"premarket_high","reward_risk":0.25,"pos_in_5d_range_pct":9.8,"room_to_5d_high_atr":3.7},"price":8.542,"vwap":8.4274,"ext_from_open_pct":2.05,"max_ext_allowed_pct":3.0,"volume_pace":0.78,"trend":"flat","recent_slope_pct":-0.0421,"volatility":"high"},"price":8.542,"volume":{"bars":263,"last_bar_volume":12816.0,"baseline_avg":47785.7,"bar_rvol":0.268197,"raw_accel":-0.760851,"smooth_accel":0.286733,"accel_momentum":0.12506,"rvol_3bar":[1.554658,1.154265,0.268197],"trend_3bar":"DECELERATING","projected_rvol":0.647432},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":1155.0,"sell_vol":14314.0,"unclassified_vol":0.0,"imbalance":-0.850669,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.974179},"context":{"vwap":8.42734,"price_vs_vwap_pct":1.360575,"ema9":8.555086,"ema20":8.564465,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.533141,"dist_to_hod_atr":5.231233,"atr":0.025424,"spread_atr":0.393326,"own_change_pct":-0.160071,"rel_strength_pct":{"SPY":-0.170638,"IWM":-0.174096}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.228147},"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":"1b7edeb75154","ts":"2026-09-15T17:53:30+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4232,"target":12.72,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":13.4,"room_to_5d_high_atr":2.09},"price":12.6423,"vwap":12.6169,"ext_from_open_pct":1.14,"max_ext_allowed_pct":3.0,"volume_pace":0.841,"trend":"flat","recent_slope_pct":-0.0096,"volatility":"high"},"price":12.6423,"volume":{"bars":263,"last_bar_volume":1900.0,"baseline_avg":5821.4,"bar_rvol":0.326382,"raw_accel":0.131626,"smooth_accel":-0.463148,"accel_momentum":0.152033,"rvol_3bar":[0.466824,0.27009,0.326382],"trend_3bar":"MIXED","projected_rvol":1.251933},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1960.0,"sell_vol":1684.0,"unclassified_vol":0.0,"imbalance":0.075741,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":5.181889},"context":{"vwap":12.616857,"price_vs_vwap_pct":0.201659,"ema9":12.648832,"ema20":12.657384,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.900922,"dist_to_hod_atr":13.27131,"atr":0.02846,"spread_atr":0.351372,"own_change_pct":0.100469,"rel_strength_pct":{"SPY":0.089902,"IWM":0.086444}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.02472},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ae7089eeb211","ts":"2026-09-15T17:54:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.705,"target":10.07,"target_label":"ceiling","reward_risk":2.65,"pos_in_5d_range_pct":471.6,"room_to_5d_high_atr":-5.35},"price":9.805,"vwap":9.7058,"ext_from_open_pct":3.76,"max_ext_allowed_pct":5.0,"volume_pace":3.687,"trend":"flat","recent_slope_pct":-0.0765,"volatility":"low"},"price":9.805,"volume":{"bars":264,"last_bar_volume":1377.0,"baseline_avg":6704.55,"bar_rvol":0.205383,"raw_accel":-0.543435,"smooth_accel":2.192659,"accel_momentum":1.982413,"rvol_3bar":[9.350424,0.446682,0.205383],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":392.0,"sell_vol":209.0,"unclassified_vol":0.0,"imbalance":0.304493,"bid":9.78,"ask":9.83,"spread_pct":0.509944,"quote_size_imbalance":null,"quote_age_s":4.988117},"context":{"vwap":9.705751,"price_vs_vwap_pct":1.022577,"ema9":9.829078,"ema20":9.859353,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.872549,"dist_to_hod_atr":9.312724,"atr":0.042415,"spread_atr":1.178826,"own_change_pct":-0.456853,"rel_strength_pct":{"SPY":-0.482611,"IWM":-0.470878}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.062538},"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":"fed0f1d520f6","ts":"2026-09-15T17:54:05+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.3468,"target":8.59,"target_label":"premarket_high","reward_risk":0.27,"pos_in_5d_range_pct":9.7,"room_to_5d_high_atr":3.7},"price":8.538,"vwap":8.4275,"ext_from_open_pct":2.01,"max_ext_allowed_pct":4.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":-0.0571,"volatility":"high"},"price":8.538,"volume":{"bars":264,"last_bar_volume":21513.0,"baseline_avg":45442.85,"bar_rvol":0.473408,"raw_accel":0.678605,"smooth_accel":-0.348719,"accel_momentum":-0.635452,"rvol_3bar":[1.154265,0.268197,0.473408],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1936.0,"sell_vol":2125.0,"unclassified_vol":0.0,"imbalance":-0.04654,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.276807},"context":{"vwap":8.427466,"price_vs_vwap_pct":1.311597,"ema9":8.552069,"ema20":8.562135,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.579251,"dist_to_hod_atr":5.394993,"atr":0.025394,"spread_atr":0.393795,"own_change_pct":-0.214993,"rel_strength_pct":{"SPY":-0.240752,"IWM":-0.229019}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.022033},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b3bb5bd1ef6f","ts":"2026-09-15T17:54:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4289,"target":12.72,"target_label":"premarket_high","reward_risk":0.33,"pos_in_5d_range_pct":13.6,"room_to_5d_high_atr":2.08},"price":12.648,"vwap":12.6169,"ext_from_open_pct":1.18,"max_ext_allowed_pct":3.0,"volume_pace":0.84,"trend":"flat","recent_slope_pct":0.003,"volatility":"high"},"price":12.648,"volume":{"bars":264,"last_bar_volume":4527.0,"baseline_avg":5670.75,"bar_rvol":0.798307,"raw_accel":1.382632,"smooth_accel":-0.451779,"accel_momentum":0.01137,"rvol_3bar":[0.27009,0.326382,0.798307],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1739.0,"sell_vol":1018.0,"unclassified_vol":0.0,"imbalance":0.261516,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":1.041015},"context":{"vwap":12.616888,"price_vs_vwap_pct":0.246589,"ema9":12.649626,"ema20":12.656948,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.857143,"dist_to_hod_atr":13.531541,"atr":0.027491,"spread_atr":0.363751,"own_change_pct":0.052981,"rel_strength_pct":{"SPY":0.027222,"IWM":0.038956}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.20877},"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":"6f734fd7c97f","ts":"2026-09-15T17:54:20+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3288,"target":8.59,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":3.73},"price":8.52,"vwap":8.4275,"ext_from_open_pct":1.79,"max_ext_allowed_pct":3.0,"volume_pace":0.778,"trend":"flat","recent_slope_pct":-0.0993,"volatility":"high"},"price":8.52,"volume":{"bars":264,"last_bar_volume":21513.0,"baseline_avg":45442.85,"bar_rvol":0.473408,"raw_accel":0.678605,"smooth_accel":-0.348719,"accel_momentum":-0.635452,"rvol_3bar":[1.154265,0.268197,0.473408],"trend_3bar":"MIXED","projected_rvol":0.262418},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":1114.0,"sell_vol":4725.0,"unclassified_vol":0.0,"imbalance":-0.618428,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.439506},"context":{"vwap":8.427466,"price_vs_vwap_pct":1.09801,"ema9":8.552069,"ema20":8.562135,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.786744,"dist_to_hod_atr":6.103825,"atr":0.025394,"spread_atr":0.393795,"own_change_pct":-0.214993,"rel_strength_pct":{"SPY":-0.240752,"IWM":-0.229019}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.292769},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6201ef906b86","ts":"2026-09-15T17:54:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6241,"target":10.935,"target_label":"prev_day_high","reward_risk":1.1,"pos_in_5d_range_pct":43.6,"room_to_5d_high_atr":1.23},"price":10.7723,"vwap":10.5752,"ext_from_open_pct":3.48,"max_ext_allowed_pct":3.0,"volume_pace":0.946,"trend":"flat","recent_slope_pct":-0.0224,"volatility":"medium"},"price":10.7723,"volume":{"bars":264,"last_bar_volume":12264.0,"baseline_avg":11653.75,"bar_rvol":1.052365,"raw_accel":1.365284,"smooth_accel":-0.149343,"accel_momentum":0.378399,"rvol_3bar":[0.557006,0.438111,1.052365],"trend_3bar":"MIXED","projected_rvol":0.493747},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2377.0,"sell_vol":500.0,"unclassified_vol":0.0,"imbalance":0.652416,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.110268},"context":{"vwap":10.575068,"price_vs_vwap_pct":1.865063,"ema9":10.785857,"ema20":10.79513,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.532907,"dist_to_hod_atr":6.371255,"atr":0.026321,"spread_atr":0.37992,"own_change_pct":-0.127837,"rel_strength_pct":{"SPY":-0.153596,"IWM":-0.141862}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.68658},"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":"64b304d766c9","ts":"2026-09-15T17:54:40+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4209,"target":12.72,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":2.09},"price":12.64,"vwap":12.6169,"ext_from_open_pct":1.12,"max_ext_allowed_pct":3.0,"volume_pace":0.839,"trend":"flat","recent_slope_pct":-0.0096,"volatility":"high"},"price":12.64,"volume":{"bars":264,"last_bar_volume":4527.0,"baseline_avg":5670.75,"bar_rvol":0.798307,"raw_accel":1.382632,"smooth_accel":-0.451779,"accel_momentum":0.01137,"rvol_3bar":[0.27009,0.326382,0.798307],"trend_3bar":"ACCELERATING","projected_rvol":2.396244},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1535.0,"sell_vol":4275.0,"unclassified_vol":0.0,"imbalance":-0.471601,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.067914},"context":{"vwap":12.616888,"price_vs_vwap_pct":0.183181,"ema9":12.649626,"ema20":12.656948,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.918587,"dist_to_hod_atr":13.822542,"atr":0.027491,"spread_atr":0.363751,"own_change_pct":0.052981,"rel_strength_pct":{"SPY":0.027222,"IWM":0.038956}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.376482},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"43868ac95f6f","ts":"2026-09-15T17:55:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4259,"target":12.72,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":13.5,"room_to_5d_high_atr":2.08},"price":12.645,"vwap":12.617,"ext_from_open_pct":1.16,"max_ext_allowed_pct":4.0,"volume_pace":0.838,"trend":"flat","recent_slope_pct":-0.0106,"volatility":"high"},"price":12.645,"volume":{"bars":265,"last_bar_volume":9346.0,"baseline_avg":5672.25,"bar_rvol":1.647671,"raw_accel":1.064502,"smooth_accel":1.041548,"accel_momentum":1.493327,"rvol_3bar":[0.326382,0.798307,1.647671],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":353.0,"sell_vol":3025.0,"unclassified_vol":0.0,"imbalance":-0.791001,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":0.173108},"context":{"vwap":12.616947,"price_vs_vwap_pct":0.222342,"ema9":12.6477,"ema20":12.655334,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.880184,"dist_to_hod_atr":13.911441,"atr":0.026956,"spread_atr":0.370972,"own_change_pct":-0.079841,"rel_strength_pct":{"SPY":-0.119473,"IWM":-0.121929}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.303308},"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":"eb9895b6e9cb","ts":"2026-09-15T17:55:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.76,"target":10.07,"target_label":"ceiling","reward_risk":2.88,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.7058,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":3.665,"trend":"flat","recent_slope_pct":0.1071,"volatility":"low"},"price":9.84,"volume":{"bars":265,"last_bar_volume":124.0,"baseline_avg":6653.8,"bar_rvol":0.018636,"raw_accel":-0.925456,"smooth_accel":-0.900428,"accel_momentum":-3.093086,"rvol_3bar":[0.446682,0.205383,0.018636],"trend_3bar":"DECELERATING","projected_rvol":0.07755},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":314.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.920489,"bid":9.82,"ask":9.86,"spread_pct":0.406504,"quote_size_imbalance":null,"quote_age_s":8.622815},"context":{"vwap":9.705757,"price_vs_vwap_pct":1.38313,"ema9":9.824263,"ema20":9.854177,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":9.138777,"atr":0.039393,"spread_atr":1.01542,"own_change_pct":-0.456853,"rel_strength_pct":{"SPY":-0.496484,"IWM":-0.49894}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.017154},"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":"779f686fdbf5","ts":"2026-09-15T17:55:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.706,"ext_from_open_pct":4.76,"max_ext_allowed_pct":5.0,"volume_pace":3.668,"trend":"flat","recent_slope_pct":0.2291,"volatility":"low"},"price":9.9,"volume":{"bars":265,"last_bar_volume":124.0,"baseline_avg":6653.8,"bar_rvol":0.018636,"raw_accel":-0.925456,"smooth_accel":-0.900428,"accel_momentum":-3.093086,"rvol_3bar":[0.446682,0.205383,0.018636],"trend_3bar":"DECELERATING","projected_rvol":0.599116},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":2283.0,"sell_vol":659.0,"unclassified_vol":0.0,"imbalance":0.552005,"bid":9.86,"ask":9.9,"spread_pct":0.404858,"quote_size_imbalance":null,"quote_age_s":1.927535},"context":{"vwap":9.705757,"price_vs_vwap_pct":2.00132,"ema9":9.824263,"ema20":9.854177,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":7.615647,"atr":0.039393,"spread_atr":1.01542,"own_change_pct":-0.456853,"rel_strength_pct":{"SPY":-0.496484,"IWM":-0.49894}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.010287},"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":"c7a9cfff8b43","ts":"2026-09-15T17:55:50+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4193,"target":12.72,"target_label":"premarket_high","reward_risk":0.37,"pos_in_5d_range_pct":13.2,"room_to_5d_high_atr":2.09},"price":12.6384,"vwap":12.617,"ext_from_open_pct":1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.836,"trend":"flat","recent_slope_pct":-0.021,"volatility":"high"},"price":12.6384,"volume":{"bars":265,"last_bar_volume":9346.0,"baseline_avg":5672.25,"bar_rvol":1.647671,"raw_accel":1.064502,"smooth_accel":1.041548,"accel_momentum":1.493327,"rvol_3bar":[0.326382,0.798307,1.647671],"trend_3bar":"ACCELERATING","projected_rvol":0.753352},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":832.0,"sell_vol":480.0,"unclassified_vol":0.0,"imbalance":0.268293,"bid":12.63,"ask":12.64,"spread_pct":0.079145,"quote_size_imbalance":null,"quote_age_s":0.116109},"context":{"vwap":12.616947,"price_vs_vwap_pct":0.170032,"ema9":12.6477,"ema20":12.655334,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.930876,"dist_to_hod_atr":14.156282,"atr":0.026956,"spread_atr":0.370972,"own_change_pct":-0.079841,"rel_strength_pct":{"SPY":-0.119473,"IWM":-0.121929}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.442058},"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":"3ea64b4ce6d5","ts":"2026-09-15T17:56:00+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.1309,"target":11.42,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":27.2,"room_to_5d_high_atr":1.2},"price":11.3477,"vwap":11.2906,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.81,"trend":"flat","recent_slope_pct":-0.0125,"volatility":"high"},"price":11.3477,"volume":{"bars":265,"last_bar_volume":35848.0,"baseline_avg":99302.95,"bar_rvol":0.360996,"raw_accel":0.077066,"smooth_accel":-0.648166,"accel_momentum":-0.102075,"rvol_3bar":[0.259188,0.319668,0.360996],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":621.0,"sell_vol":2123.0,"unclassified_vol":0.0,"imbalance":-0.547376,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.22763},"context":{"vwap":11.290616,"price_vs_vwap_pct":0.505586,"ema9":11.348716,"ema20":11.337698,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.152439,"dist_to_hod_atr":3.487588,"atr":0.037935,"spread_atr":0.263612,"own_change_pct":-0.047556,"rel_strength_pct":{"SPY":-0.077277,"IWM":-0.093149}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.197601},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9ede3e5aee40","ts":"2026-09-15T17:56:05+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.3338,"target":8.59,"target_label":"premarket_high","reward_risk":0.34,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":3.72},"price":8.525,"vwap":8.4277,"ext_from_open_pct":1.85,"max_ext_allowed_pct":3.0,"volume_pace":0.774,"trend":"flat","recent_slope_pct":-0.0654,"volatility":"high"},"price":8.525,"volume":{"bars":266,"last_bar_volume":24622.0,"baseline_avg":42760.5,"bar_rvol":0.575812,"raw_accel":-0.068196,"smooth_accel":-0.468058,"accel_momentum":0.118164,"rvol_3bar":[0.473408,0.594403,0.575812],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2456.0,"sell_vol":1324.0,"unclassified_vol":0.0,"imbalance":0.299471,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.123717},"context":{"vwap":8.427741,"price_vs_vwap_pct":1.154038,"ema9":8.542164,"ema20":8.555322,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.729107,"dist_to_hod_atr":5.631244,"atr":0.026637,"spread_atr":0.375416,"own_change_pct":-0.360023,"rel_strength_pct":{"SPY":-0.389744,"IWM":-0.405617}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.172439},"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":"fc7fcc5426ef","ts":"2026-09-15T17:56:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2006,"target":7.43,"target_label":"ceiling","reward_risk":1.2,"pos_in_5d_range_pct":35.4,"room_to_5d_high_atr":1.38},"price":7.305,"vwap":7.277,"ext_from_open_pct":2.17,"max_ext_allowed_pct":4.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":-0.0545,"volatility":"medium"},"price":7.305,"volume":{"bars":266,"last_bar_volume":369732.0,"baseline_avg":153286.2,"bar_rvol":2.412037,"raw_accel":0.930846,"smooth_accel":0.64225,"accel_momentum":0.85937,"rvol_3bar":[0.093055,1.259332,2.412037],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":412,"trade_rate":13.733333,"buy_vol":222962.0,"sell_vol":99935.0,"unclassified_vol":0.0,"imbalance":0.38101,"bid":7.3,"ask":7.31,"spread_pct":0.136893,"quote_size_imbalance":null,"quote_age_s":2.802838},"context":{"vwap":7.276991,"price_vs_vwap_pct":0.384899,"ema9":7.311326,"ema20":7.318391,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.682369,"dist_to_hod_atr":6.698026,"atr":0.018662,"spread_atr":0.535842,"own_change_pct":-0.199601,"rel_strength_pct":{"SPY":-0.229321,"IWM":-0.245194}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.91901},"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":"540fe84c1d8b","ts":"2026-09-15T17:56:05+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":11.1288,"target":11.42,"target_label":"ceiling","reward_risk":0.34,"pos_in_5d_range_pct":27.1,"room_to_5d_high_atr":1.2},"price":11.3456,"vwap":11.2906,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":-0.0169,"volatility":"high"},"price":11.3456,"volume":{"bars":266,"last_bar_volume":17420.0,"baseline_avg":86342.6,"bar_rvol":0.201754,"raw_accel":-0.514059,"smooth_accel":-0.558312,"accel_momentum":0.089854,"rvol_3bar":[0.319668,0.360996,0.201754],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":752.0,"sell_vol":1373.0,"unclassified_vol":0.0,"imbalance":-0.292235,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":1.494161},"context":{"vwap":11.290647,"price_vs_vwap_pct":0.486713,"ema9":11.348513,"ema20":11.33865,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.170732,"dist_to_hod_atr":3.668918,"atr":0.036632,"spread_atr":0.272985,"own_change_pct":-0.064289,"rel_strength_pct":{"SPY":-0.094009,"IWM":-0.109882}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.05896},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2a66c469cfb9","ts":"2026-09-15T17:56:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.7% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.36,"pos_in_5d_range_pct":496.5,"room_to_5d_high_atr":-5.71},"price":9.8971,"vwap":9.7063,"ext_from_open_pct":4.73,"max_ext_allowed_pct":4.0,"volume_pace":3.669,"trend":"flat","recent_slope_pct":0.304,"volatility":"low"},"price":9.8971,"volume":{"bars":266,"last_bar_volume":3668.0,"baseline_avg":6640.9,"bar_rvol":0.552335,"raw_accel":1.209339,"smooth_accel":-0.891955,"accel_momentum":0.008473,"rvol_3bar":[0.205383,0.018636,0.552335],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":2624.0,"sell_vol":3680.0,"unclassified_vol":0.0,"imbalance":-0.167513,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":7.747221},"context":{"vwap":9.706036,"price_vs_vwap_pct":1.968511,"ema9":9.84141,"ema20":9.859493,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.969608,"dist_to_hod_atr":6.87178,"atr":0.044079,"spread_atr":0.907465,"own_change_pct":0.609137,"rel_strength_pct":{"SPY":0.579416,"IWM":0.563544}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.092523},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"881dbb8748e4","ts":"2026-09-15T17:56:30+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.2106,"target":7.43,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":36.5,"room_to_5d_high_atr":1.35},"price":7.315,"vwap":7.2771,"ext_from_open_pct":2.31,"max_ext_allowed_pct":3.0,"volume_pace":0.821,"trend":"flat","recent_slope_pct":-0.0271,"volatility":"medium"},"price":7.315,"volume":{"bars":266,"last_bar_volume":369732.0,"baseline_avg":153286.2,"bar_rvol":2.412037,"raw_accel":0.930846,"smooth_accel":0.64225,"accel_momentum":0.85937,"rvol_3bar":[0.093055,1.259332,2.412037],"trend_3bar":"ACCELERATING","projected_rvol":2.322923},"flow":{"window_s":30,"trades":200,"trade_rate":6.666667,"buy_vol":115372.0,"sell_vol":62664.0,"unclassified_vol":0.0,"imbalance":0.296052,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":0.309876},"context":{"vwap":7.276991,"price_vs_vwap_pct":0.522318,"ema9":7.311326,"ema20":7.318391,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.547779,"dist_to_hod_atr":6.162184,"atr":0.018662,"spread_atr":0.535842,"own_change_pct":-0.199601,"rel_strength_pct":{"SPY":-0.229321,"IWM":-0.245194}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.71409},"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":"33fa8d469541","ts":"2026-09-15T17:56:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7413,"target":10.07,"target_label":"ceiling","reward_risk":3.11,"pos_in_5d_range_pct":476.0,"room_to_5d_high_atr":-5.42},"price":9.8213,"vwap":9.7063,"ext_from_open_pct":3.93,"max_ext_allowed_pct":4.0,"volume_pace":3.664,"trend":"flat","recent_slope_pct":0.1502,"volatility":"low"},"price":9.8213,"volume":{"bars":266,"last_bar_volume":3668.0,"baseline_avg":6640.9,"bar_rvol":0.552335,"raw_accel":1.209339,"smooth_accel":-0.891955,"accel_momentum":0.008473,"rvol_3bar":[0.205383,0.018636,0.552335],"trend_3bar":"MIXED","projected_rvol":0.917432},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":531.0,"sell_vol":501.0,"unclassified_vol":0.0,"imbalance":0.02907,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":4.988068},"context":{"vwap":9.706036,"price_vs_vwap_pct":1.187553,"ema9":9.84141,"ema20":9.859493,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.712745,"dist_to_hod_atr":8.591427,"atr":0.044079,"spread_atr":0.907465,"own_change_pct":0.609137,"rel_strength_pct":{"SPY":0.579416,"IWM":0.563544}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.016056},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e8d5c8ff4767","ts":"2026-09-15T17:56:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.7063,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":3.663,"trend":"flat","recent_slope_pct":0.3098,"volatility":"low"},"price":9.9,"volume":{"bars":266,"last_bar_volume":3668.0,"baseline_avg":6640.9,"bar_rvol":0.552335,"raw_accel":1.209339,"smooth_accel":-0.891955,"accel_momentum":0.008473,"rvol_3bar":[0.205383,0.018636,0.552335],"trend_3bar":"MIXED","projected_rvol":0.827599},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":641.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.996885,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":3.541091},"context":{"vwap":9.706036,"price_vs_vwap_pct":1.998389,"ema9":9.84141,"ema20":9.859493,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":6.805989,"atr":0.044079,"spread_atr":0.907465,"own_change_pct":0.609137,"rel_strength_pct":{"SPY":0.579416,"IWM":0.563544}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.550614},"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":"27c2b5a045a5","ts":"2026-09-15T17:56:55+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4217,"target":12.72,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":2.09},"price":12.6408,"vwap":12.617,"ext_from_open_pct":1.13,"max_ext_allowed_pct":4.0,"volume_pace":0.834,"trend":"flat","recent_slope_pct":-0.038,"volatility":"high"},"price":12.6408,"volume":{"bars":266,"last_bar_volume":3565.0,"baseline_avg":4745.35,"bar_rvol":0.751262,"raw_accel":-0.618553,"smooth_accel":1.645328,"accel_momentum":0.60378,"rvol_3bar":[0.798307,1.647671,0.751262],"trend_3bar":"MIXED","projected_rvol":1.567391},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1335.0,"sell_vol":173.0,"unclassified_vol":0.0,"imbalance":0.770557,"bid":12.65,"ask":12.66,"spread_pct":0.07902,"quote_size_imbalance":null,"quote_age_s":1.471781},"context":{"vwap":12.616963,"price_vs_vwap_pct":0.188932,"ema9":12.64416,"ema20":12.652921,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.912442,"dist_to_hod_atr":14.258281,"atr":0.026595,"spread_atr":0.37601,"own_change_pct":-0.158103,"rel_strength_pct":{"SPY":-0.187823,"IWM":-0.203696}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.57889},"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":"ec18ee9982af","ts":"2026-09-15T17:57:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.7063,"ext_from_open_pct":4.76,"max_ext_allowed_pct":5.0,"volume_pace":3.659,"trend":"flat","recent_slope_pct":0.3098,"volatility":"low"},"price":9.9,"volume":{"bars":266,"last_bar_volume":3668.0,"baseline_avg":6640.9,"bar_rvol":0.552335,"raw_accel":1.209339,"smooth_accel":-0.891955,"accel_momentum":0.008473,"rvol_3bar":[0.205383,0.018636,0.552335],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":213.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.860262,"bid":9.88,"ask":9.9,"spread_pct":0.202224,"quote_size_imbalance":null,"quote_age_s":12.404917},"context":{"vwap":9.706036,"price_vs_vwap_pct":1.998389,"ema9":9.84141,"ema20":9.859493,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":6.805989,"atr":0.044079,"spread_atr":0.453733,"own_change_pct":0.609137,"rel_strength_pct":{"SPY":0.568851,"IWM":0.563557}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.475153},"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":"c47f0735ff38","ts":"2026-09-15T17:57:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.7063,"ext_from_open_pct":4.76,"max_ext_allowed_pct":4.0,"volume_pace":3.658,"trend":"flat","recent_slope_pct":0.2889,"volatility":"low"},"price":9.9,"volume":{"bars":267,"last_bar_volume":3782.0,"baseline_avg":6102.55,"bar_rvol":0.619741,"raw_accel":0.03108,"smooth_accel":-0.840805,"accel_momentum":0.051149,"rvol_3bar":[0.018636,0.552335,0.619741],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":215.0,"sell_vol":215.0,"unclassified_vol":0.0,"imbalance":0.0,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":3.549797},"context":{"vwap":9.706317,"price_vs_vwap_pct":1.995428,"ema9":9.853128,"ema20":9.863351,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":6.34705,"atr":0.047266,"spread_atr":0.846273,"own_change_pct":1.123596,"rel_strength_pct":{"SPY":1.083309,"IWM":1.078015}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"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":"1b72d346b2c5","ts":"2026-09-15T17:57:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.14,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.7074,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":3.672,"trend":"flat","recent_slope_pct":0.3091,"volatility":"low"},"price":9.91,"volume":{"bars":267,"last_bar_volume":3782.0,"baseline_avg":6102.55,"bar_rvol":0.619741,"raw_accel":0.03108,"smooth_accel":-0.840805,"accel_momentum":0.051149,"rvol_3bar":[0.018636,0.552335,0.619741],"trend_3bar":"ACCELERATING","projected_rvol":3.978009},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":11824.0,"sell_vol":314.0,"unclassified_vol":0.0,"imbalance":0.948262,"bid":9.89,"ask":9.92,"spread_pct":0.302877,"quote_size_imbalance":null,"quote_age_s":0.649179},"context":{"vwap":9.706317,"price_vs_vwap_pct":2.098454,"ema9":9.853128,"ema20":9.863351,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.135482,"atr":0.047266,"spread_atr":0.634705,"own_change_pct":1.123596,"rel_strength_pct":{"SPY":1.083309,"IWM":1.078015}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.587677},"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":"07596607a3cf","ts":"2026-09-15T17:57:45+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.28x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2603,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.07,"pos_in_5d_range_pct":86.7,"room_to_5d_high_atr":0.3},"price":8.45,"vwap":7.9833,"ext_from_open_pct":9.74,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":-0.056,"volatility":"high"},"price":8.45,"volume":{"bars":267,"last_bar_volume":9556.0,"baseline_avg":18644.05,"bar_rvol":0.51255,"raw_accel":-0.569937,"smooth_accel":-0.255163,"accel_momentum":0.320108,"rvol_3bar":[0.747241,1.202661,0.51255],"trend_3bar":"MIXED","projected_rvol":1.184864},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":2678.0,"sell_vol":9578.0,"unclassified_vol":0.0,"imbalance":-0.56299,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.513565},"context":{"vwap":7.981711,"price_vs_vwap_pct":5.867029,"ema9":8.461931,"ema20":8.420308,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":1.069502,"atr":0.046751,"spread_atr":0.2139,"own_change_pct":0.137972,"rel_strength_pct":{"SPY":0.097686,"IWM":0.092391}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.28856},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1b81392bc563","ts":"2026-09-15T17:57:50+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.8% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.18,"pos_in_5d_range_pct":499.4,"room_to_5d_high_atr":-5.75},"price":9.9078,"vwap":9.7074,"ext_from_open_pct":4.84,"max_ext_allowed_pct":4.0,"volume_pace":3.667,"trend":"flat","recent_slope_pct":0.3047,"volatility":"low"},"price":9.9078,"volume":{"bars":267,"last_bar_volume":3782.0,"baseline_avg":6102.55,"bar_rvol":0.619741,"raw_accel":0.03108,"smooth_accel":-0.840805,"accel_momentum":0.051149,"rvol_3bar":[0.018636,0.552335,0.619741],"trend_3bar":"ACCELERATING","projected_rvol":2.392115},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":11756.0,"sell_vol":138.0,"unclassified_vol":0.0,"imbalance":0.976795,"bid":9.89,"ask":9.91,"spread_pct":0.20202,"quote_size_imbalance":null,"quote_age_s":0.995073},"context":{"vwap":9.706317,"price_vs_vwap_pct":2.075788,"ema9":9.853128,"ema20":9.863351,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.864706,"dist_to_hod_atr":6.182027,"atr":0.047266,"spread_atr":0.423137,"own_change_pct":1.123596,"rel_strength_pct":{"SPY":1.083309,"IWM":1.078015}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.60536},"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":"e9087e7376e8","ts":"2026-09-15T17:57:50+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.28x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2688,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.02,"pos_in_5d_range_pct":87.2,"room_to_5d_high_atr":0.29},"price":8.4585,"vwap":7.9833,"ext_from_open_pct":9.85,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":-0.036,"volatility":"high"},"price":8.4585,"volume":{"bars":267,"last_bar_volume":9556.0,"baseline_avg":18644.05,"bar_rvol":0.51255,"raw_accel":-0.569937,"smooth_accel":-0.255163,"accel_momentum":0.320108,"rvol_3bar":[0.747241,1.202661,0.51255],"trend_3bar":"MIXED","projected_rvol":1.066571},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":2432.0,"sell_vol":8113.0,"unclassified_vol":0.0,"imbalance":-0.538739,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":1.998584},"context":{"vwap":7.981711,"price_vs_vwap_pct":5.973522,"ema9":8.461931,"ema20":8.420308,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.488235,"dist_to_hod_atr":0.887686,"atr":0.046751,"spread_atr":0.2139,"own_change_pct":0.137972,"rel_strength_pct":{"SPY":0.097686,"IWM":0.092391}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.27613},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4f6b39974add","ts":"2026-09-15T17:58:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.0,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.7075,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":3.666,"trend":"flat","recent_slope_pct":0.2326,"volatility":"low"},"price":9.92,"volume":{"bars":268,"last_bar_volume":12415.0,"baseline_avg":6026.55,"bar_rvol":2.060051,"raw_accel":2.282655,"smooth_accel":3.39783,"accel_momentum":4.238636,"rvol_3bar":[0.552335,0.619741,2.060051],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":1455.0,"sell_vol":56.0,"unclassified_vol":0.0,"imbalance":0.925877,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":0.467222},"context":{"vwap":9.707398,"price_vs_vwap_pct":2.190106,"ema9":9.864502,"ema20":9.867794,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":5.989683,"atr":0.046747,"spread_atr":1.069586,"own_change_pct":1.122449,"rel_strength_pct":{"SPY":1.094053,"IWM":1.083885}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.907354},"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":"f5378022e40b","ts":"2026-09-15T17:58:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":506.8,"room_to_5d_high_atr":-5.86},"price":9.935,"vwap":9.7075,"ext_from_open_pct":5.13,"max_ext_allowed_pct":5.0,"volume_pace":3.664,"trend":"flat","recent_slope_pct":0.2628,"volatility":"low"},"price":9.935,"volume":{"bars":268,"last_bar_volume":12415.0,"baseline_avg":6026.55,"bar_rvol":2.060051,"raw_accel":2.282655,"smooth_accel":3.39783,"accel_momentum":4.238636,"rvol_3bar":[0.552335,0.619741,2.060051],"trend_3bar":"ACCELERATING","projected_rvol":0.821697},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":1455.0,"sell_vol":44.0,"unclassified_vol":0.0,"imbalance":0.941294,"bid":9.92,"ask":9.95,"spread_pct":0.301963,"quote_size_imbalance":null,"quote_age_s":2.067225},"context":{"vwap":9.707398,"price_vs_vwap_pct":2.344627,"ema9":9.864502,"ema20":9.867794,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.598039,"dist_to_hod_atr":5.668807,"atr":0.046747,"spread_atr":0.641752,"own_change_pct":1.122449,"rel_strength_pct":{"SPY":1.094053,"IWM":1.083885}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.939114},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"62dea162c411","ts":"2026-09-15T17:58:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6491,"target":10.935,"target_label":"prev_day_high","reward_risk":0.93,"pos_in_5d_range_pct":45.6,"room_to_5d_high_atr":1.18},"price":10.7973,"vwap":10.5764,"ext_from_open_pct":3.72,"max_ext_allowed_pct":4.0,"volume_pace":0.937,"trend":"flat","recent_slope_pct":0.0829,"volatility":"medium"},"price":10.7973,"volume":{"bars":268,"last_bar_volume":3174.0,"baseline_avg":12016.35,"bar_rvol":0.26414,"raw_accel":-0.667574,"smooth_accel":0.135307,"accel_momentum":-0.299946,"rvol_3bar":[1.411539,0.796573,0.26414],"trend_3bar":"DECELERATING","projected_rvol":0.474229},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1303.0,"sell_vol":754.0,"unclassified_vol":0.0,"imbalance":0.266894,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":2.720499},"context":{"vwap":10.576248,"price_vs_vwap_pct":2.090084,"ema9":10.780384,"ema20":10.788608,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.304388,"dist_to_hod_atr":4.974226,"atr":0.028688,"spread_atr":0.348579,"own_change_pct":-0.029662,"rel_strength_pct":{"SPY":-0.058058,"IWM":-0.068226}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.070497},"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":"b92e87084ee9","ts":"2026-09-15T17:58:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6474,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.7956,"vwap":10.5764,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.937,"trend":"flat","recent_slope_pct":0.0798,"volatility":"medium"},"price":10.7956,"volume":{"bars":268,"last_bar_volume":3174.0,"baseline_avg":12016.35,"bar_rvol":0.26414,"raw_accel":-0.667574,"smooth_accel":0.135307,"accel_momentum":-0.299946,"rvol_3bar":[1.411539,0.796573,0.26414],"trend_3bar":"DECELERATING","projected_rvol":0.529279},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1760.0,"sell_vol":1247.0,"unclassified_vol":0.0,"imbalance":0.170602,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":1.477913},"context":{"vwap":10.576248,"price_vs_vwap_pct":2.07401,"ema9":10.780384,"ema20":10.788608,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.319927,"dist_to_hod_atr":5.033485,"atr":0.028688,"spread_atr":0.348579,"own_change_pct":-0.029662,"rel_strength_pct":{"SPY":-0.058058,"IWM":-0.068226}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.045063},"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":"39ae786f4df4","ts":"2026-09-15T17:58:55+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2603,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.07,"pos_in_5d_range_pct":86.7,"room_to_5d_high_atr":0.3},"price":8.45,"vwap":7.9837,"ext_from_open_pct":9.74,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":-0.0895,"volatility":"high"},"price":8.45,"volume":{"bars":268,"last_bar_volume":16829.0,"baseline_avg":18980.1,"bar_rvol":0.886666,"raw_accel":0.761093,"smooth_accel":-0.122035,"accel_momentum":0.133128,"rvol_3bar":[1.202661,0.51255,0.886666],"trend_3bar":"MIXED","projected_rvol":0.218526},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":467.0,"sell_vol":2547.0,"unclassified_vol":0.0,"imbalance":-0.690113,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":3.478841},"context":{"vwap":7.983374,"price_vs_vwap_pct":5.844966,"ema9":8.461245,"ema20":8.423945,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":1.077819,"atr":0.04639,"spread_atr":0.215564,"own_change_pct":-0.353419,"rel_strength_pct":{"SPY":-0.381815,"IWM":-0.391983}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.611899},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2f68cb4feffa","ts":"2026-09-15T17:59:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2653,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.04,"pos_in_5d_range_pct":87.0,"room_to_5d_high_atr":0.29},"price":8.455,"vwap":7.9844,"ext_from_open_pct":9.81,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":-0.1114,"volatility":"high"},"price":8.455,"volume":{"bars":269,"last_bar_volume":9992.0,"baseline_avg":19326.9,"bar_rvol":0.517,"raw_accel":-0.406263,"smooth_accel":-0.340375,"accel_momentum":-0.21834,"rvol_3bar":[0.51255,0.886666,0.517],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":745.0,"sell_vol":8115.0,"unclassified_vol":0.0,"imbalance":-0.831828,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":4.356722},"context":{"vwap":7.984347,"price_vs_vwap_pct":5.894702,"ema9":8.459076,"ema20":8.426464,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":0.994209,"atr":0.045262,"spread_atr":0.220935,"own_change_pct":-0.365506,"rel_strength_pct":{"SPY":-0.378052,"IWM":-0.407576}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.430055},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"65f061b9513d","ts":"2026-09-15T17:59:10+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2603,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.07,"pos_in_5d_range_pct":86.7,"room_to_5d_high_atr":0.3},"price":8.45,"vwap":7.9844,"ext_from_open_pct":9.74,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":-0.1232,"volatility":"high"},"price":8.45,"volume":{"bars":269,"last_bar_volume":9992.0,"baseline_avg":19326.9,"bar_rvol":0.517,"raw_accel":-0.406263,"smooth_accel":-0.340375,"accel_momentum":-0.21834,"rvol_3bar":[0.51255,0.886666,0.517],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":545.0,"sell_vol":6196.0,"unclassified_vol":0.0,"imbalance":-0.838303,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.726102},"context":{"vwap":7.984347,"price_vs_vwap_pct":5.83208,"ema9":8.459076,"ema20":8.426464,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":1.104676,"atr":0.045262,"spread_atr":0.220935,"own_change_pct":-0.365506,"rel_strength_pct":{"SPY":-0.378052,"IWM":-0.407576}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.433402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"6424f0a121e4","ts":"2026-09-15T17:59:15+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.268,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.03,"pos_in_5d_range_pct":87.1,"room_to_5d_high_atr":0.29},"price":8.4577,"vwap":7.9844,"ext_from_open_pct":9.84,"max_ext_allowed_pct":3.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":-0.105,"volatility":"high"},"price":8.4577,"volume":{"bars":269,"last_bar_volume":9992.0,"baseline_avg":19326.9,"bar_rvol":0.517,"raw_accel":-0.406263,"smooth_accel":-0.340375,"accel_momentum":-0.21834,"rvol_3bar":[0.51255,0.886666,0.517],"trend_3bar":"MIXED","projected_rvol":0.013867},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":409.0,"sell_vol":6171.0,"unclassified_vol":0.0,"imbalance":-0.875684,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":4.568675},"context":{"vwap":7.984347,"price_vs_vwap_pct":5.928518,"ema9":8.459076,"ema20":8.426464,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.497647,"dist_to_hod_atr":0.934556,"atr":0.045262,"spread_atr":0.220935,"own_change_pct":-0.365506,"rel_strength_pct":{"SPY":-0.378052,"IWM":-0.407576}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.452728},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"71e4aa5b20af","ts":"2026-09-15T17:59:30+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2603,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.07,"pos_in_5d_range_pct":86.7,"room_to_5d_high_atr":0.3},"price":8.45,"vwap":7.9845,"ext_from_open_pct":9.74,"max_ext_allowed_pct":3.0,"volume_pace":0.274,"trend":"flat","recent_slope_pct":-0.1232,"volatility":"high"},"price":8.45,"volume":{"bars":269,"last_bar_volume":9992.0,"baseline_avg":19326.9,"bar_rvol":0.517,"raw_accel":-0.406263,"smooth_accel":-0.340375,"accel_momentum":-0.21834,"rvol_3bar":[0.51255,0.886666,0.517],"trend_3bar":"MIXED","projected_rvol":0.195996},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":237.0,"sell_vol":1657.0,"unclassified_vol":0.0,"imbalance":-0.749736,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":1.439458},"context":{"vwap":7.984347,"price_vs_vwap_pct":5.83208,"ema9":8.459076,"ema20":8.426464,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.588235,"dist_to_hod_atr":1.104676,"atr":0.045262,"spread_atr":0.220935,"own_change_pct":-0.365506,"rel_strength_pct":{"SPY":-0.378052,"IWM":-0.407576}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.387613},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fdc3ba8e2a86","ts":"2026-09-15T17:59:35+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2703,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":87.3,"room_to_5d_high_atr":0.28},"price":8.46,"vwap":7.9846,"ext_from_open_pct":9.87,"max_ext_allowed_pct":3.0,"volume_pace":0.274,"trend":"flat","recent_slope_pct":-0.0995,"volatility":"high"},"price":8.46,"volume":{"bars":269,"last_bar_volume":9992.0,"baseline_avg":19326.9,"bar_rvol":0.517,"raw_accel":-0.406263,"smooth_accel":-0.340375,"accel_momentum":-0.21834,"rvol_3bar":[0.51255,0.886666,0.517],"trend_3bar":"MIXED","projected_rvol":0.256253},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":1227.0,"sell_vol":1601.0,"unclassified_vol":0.0,"imbalance":-0.132249,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.439415},"context":{"vwap":7.984347,"price_vs_vwap_pct":5.957325,"ema9":8.459076,"ema20":8.426464,"ema_stack":true,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.470588,"dist_to_hod_atr":0.883741,"atr":0.045262,"spread_atr":0.220935,"own_change_pct":-0.365506,"rel_strength_pct":{"SPY":-0.378052,"IWM":-0.407576}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.068373},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"24472581a7a9","ts":"2026-09-15T17:59:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.621,"target":10.935,"target_label":"prev_day_high","reward_risk":1.12,"pos_in_5d_range_pct":43.4,"room_to_5d_high_atr":1.23},"price":10.7692,"vwap":10.5766,"ext_from_open_pct":3.45,"max_ext_allowed_pct":4.0,"volume_pace":0.934,"trend":"flat","recent_slope_pct":-0.0083,"volatility":"medium"},"price":10.7692,"volume":{"bars":269,"last_bar_volume":5189.0,"baseline_avg":9988.7,"bar_rvol":0.519487,"raw_accel":0.634846,"smooth_accel":-0.522182,"accel_momentum":-0.657489,"rvol_3bar":[0.796573,0.26414,0.519487],"trend_3bar":"MIXED","projected_rvol":0.720014},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":915.0,"sell_vol":3881.0,"unclassified_vol":0.0,"imbalance":-0.618432,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.957564},"context":{"vwap":10.576421,"price_vs_vwap_pct":1.822722,"ema9":10.782308,"ema20":10.788741,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.561243,"dist_to_hod_atr":5.853003,"atr":0.029182,"spread_atr":0.342682,"own_change_pct":0.081624,"rel_strength_pct":{"SPY":0.069078,"IWM":0.039554}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.321267},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0aed08b8a018","ts":"2026-09-15T17:59:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":497.3,"room_to_5d_high_atr":-5.72},"price":9.9,"vwap":9.7105,"ext_from_open_pct":4.76,"max_ext_allowed_pct":5.0,"volume_pace":3.697,"trend":"flat","recent_slope_pct":-0.0807,"volatility":"low"},"price":9.9,"volume":{"bars":269,"last_bar_volume":1626.0,"baseline_avg":6558.3,"bar_rvol":0.24793,"raw_accel":-0.869029,"smooth_accel":2.448056,"accel_momentum":-0.949775,"rvol_3bar":[0.619741,2.060051,0.24793],"trend_3bar":"MIXED","projected_rvol":6.158913},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":21034.0,"sell_vol":457.0,"unclassified_vol":0.0,"imbalance":0.957471,"bid":9.89,"ask":9.93,"spread_pct":0.403633,"quote_size_imbalance":null,"quote_age_s":0.037601},"context":{"vwap":9.707519,"price_vs_vwap_pct":1.9828,"ema9":9.859642,"ema20":9.865166,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.941176,"dist_to_hod_atr":5.852748,"atr":0.051258,"spread_atr":0.780366,"own_change_pct":0.359001,"rel_strength_pct":{"SPY":0.346455,"IWM":0.316931}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.237386},"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":"f4bb34275940","ts":"2026-09-15T17:59:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6368,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.785,"vwap":10.5766,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.934,"trend":"flat","recent_slope_pct":0.021,"volatility":"medium"},"price":10.785,"volume":{"bars":269,"last_bar_volume":5189.0,"baseline_avg":9988.7,"bar_rvol":0.519487,"raw_accel":0.634846,"smooth_accel":-0.522182,"accel_momentum":-0.657489,"rvol_3bar":[0.796573,0.26414,0.519487],"trend_3bar":"MIXED","projected_rvol":0.622958},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":873.0,"sell_vol":1250.0,"unclassified_vol":0.0,"imbalance":-0.177579,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.526293},"context":{"vwap":10.576421,"price_vs_vwap_pct":1.972111,"ema9":10.782308,"ema20":10.788741,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.416819,"dist_to_hod_atr":5.311566,"atr":0.029182,"spread_atr":0.342682,"own_change_pct":0.081624,"rel_strength_pct":{"SPY":0.069078,"IWM":0.039554}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.09225},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ead21eedf280","ts":"2026-09-15T18:00:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":508.1,"room_to_5d_high_atr":-5.88},"price":9.94,"vwap":9.7106,"ext_from_open_pct":5.19,"max_ext_allowed_pct":5.0,"volume_pace":3.695,"trend":"flat","recent_slope_pct":0.0002,"volatility":"low"},"price":9.94,"volume":{"bars":269,"last_bar_volume":1626.0,"baseline_avg":6558.3,"bar_rvol":0.24793,"raw_accel":-0.869029,"smooth_accel":2.448056,"accel_momentum":-0.949775,"rvol_3bar":[0.619741,2.060051,0.24793],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":21231.0,"sell_vol":305.0,"unclassified_vol":0.0,"imbalance":0.971675,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":3.561894},"context":{"vwap":9.707519,"price_vs_vwap_pct":2.394852,"ema9":9.859642,"ema20":9.865166,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.54902,"dist_to_hod_atr":5.072382,"atr":0.051258,"spread_atr":0.975458,"own_change_pct":0.359001,"rel_strength_pct":{"SPY":0.359001,"IWM":0.327448}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.240908},"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":"f1fe61f4fdce","ts":"2026-09-15T18:00:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.19,"pos_in_5d_range_pct":499.2,"room_to_5d_high_atr":-5.75},"price":9.9071,"vwap":9.7111,"ext_from_open_pct":4.84,"max_ext_allowed_pct":5.0,"volume_pace":3.701,"trend":"flat","recent_slope_pct":0.0446,"volatility":"low"},"price":9.9071,"volume":{"bars":270,"last_bar_volume":33861.0,"baseline_avg":6185.65,"bar_rvol":5.474122,"raw_accel":19.824723,"smooth_accel":5.324531,"accel_momentum":2.876476,"rvol_3bar":[2.060051,0.24793,5.474122],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":21481.0,"sell_vol":4948.0,"unclassified_vol":0.0,"imbalance":0.625563,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":4.769212},"context":{"vwap":9.710615,"price_vs_vwap_pct":2.023402,"ema9":9.875714,"ema20":9.872293,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.871569,"dist_to_hod_atr":5.283232,"atr":0.05544,"spread_atr":0.901883,"own_change_pct":1.376849,"rel_strength_pct":{"SPY":1.376849,"IWM":1.345296}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.424407},"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":"396e6958589e","ts":"2026-09-15T18:00:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.2% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":0.76,"pos_in_5d_range_pct":508.1,"room_to_5d_high_atr":-5.88},"price":9.94,"vwap":9.7113,"ext_from_open_pct":5.19,"max_ext_allowed_pct":5.0,"volume_pace":3.699,"trend":"flat","recent_slope_pct":0.111,"volatility":"low"},"price":9.94,"volume":{"bars":270,"last_bar_volume":33861.0,"baseline_avg":6185.65,"bar_rvol":5.474122,"raw_accel":19.824723,"smooth_accel":5.324531,"accel_momentum":2.876476,"rvol_3bar":[2.060051,0.24793,5.474122],"trend_3bar":"MIXED","projected_rvol":2.19993},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":1454.0,"sell_vol":5350.0,"unclassified_vol":0.0,"imbalance":-0.572604,"bid":9.9,"ask":9.95,"spread_pct":0.503778,"quote_size_imbalance":null,"quote_age_s":24.769212},"context":{"vwap":9.710615,"price_vs_vwap_pct":2.362206,"ema9":9.875714,"ema20":9.872293,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.54902,"dist_to_hod_atr":4.689793,"atr":0.05544,"spread_atr":0.901883,"own_change_pct":1.376849,"rel_strength_pct":{"SPY":1.376849,"IWM":1.345296}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.134506},"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":"f3530757f53b","ts":"2026-09-15T18:02:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3431,"target":8.59,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":3.71},"price":8.5343,"vwap":8.429,"ext_from_open_pct":1.96,"max_ext_allowed_pct":4.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":-0.0401,"volatility":"high"},"price":8.5343,"volume":{"bars":272,"last_bar_volume":58584.0,"baseline_avg":39752.45,"bar_rvol":1.47372,"raw_accel":0.840759,"smooth_accel":0.414451,"accel_momentum":0.157205,"rvol_3bar":[1.149697,0.792276,1.47372],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":123,"trade_rate":4.1,"buy_vol":38217.0,"sell_vol":3169.0,"unclassified_vol":0.0,"imbalance":0.846856,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.164763},"context":{"vwap":8.429028,"price_vs_vwap_pct":1.248924,"ema9":8.538871,"ema20":8.547605,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.621902,"dist_to_hod_atr":5.734725,"atr":0.024535,"spread_atr":0.407585,"own_change_pct":-0.065574,"rel_strength_pct":{"SPY":-0.064253,"IWM":-0.070831}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.24803},"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":"9e2388e28900","ts":"2026-09-15T18:02:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6318,"target":10.935,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":44.2,"room_to_5d_high_atr":1.21},"price":10.78,"vwap":10.5773,"ext_from_open_pct":3.55,"max_ext_allowed_pct":4.0,"volume_pace":0.929,"trend":"flat","recent_slope_pct":-0.0225,"volatility":"medium"},"price":10.78,"volume":{"bars":272,"last_bar_volume":4810.0,"baseline_avg":9834.1,"bar_rvol":0.489114,"raw_accel":-0.652507,"smooth_accel":0.427893,"accel_momentum":0.546633,"rvol_3bar":[0.71806,1.42447,0.489114],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2142.0,"sell_vol":838.0,"unclassified_vol":0.0,"imbalance":0.437584,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.010489},"context":{"vwap":10.577268,"price_vs_vwap_pct":1.916677,"ema9":10.782393,"ema20":10.787163,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.462523,"dist_to_hod_atr":5.609604,"atr":0.028523,"spread_atr":0.3506,"own_change_pct":0.034332,"rel_strength_pct":{"SPY":0.035653,"IWM":0.029075}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.214029},"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":"4dcb006cc4c1","ts":"2026-09-15T18:02:10+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.3438,"target":8.59,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":3.71},"price":8.535,"vwap":8.4291,"ext_from_open_pct":1.97,"max_ext_allowed_pct":4.0,"volume_pace":0.766,"trend":"flat","recent_slope_pct":-0.0384,"volatility":"high"},"price":8.535,"volume":{"bars":272,"last_bar_volume":58584.0,"baseline_avg":39752.45,"bar_rvol":1.47372,"raw_accel":0.840759,"smooth_accel":0.414451,"accel_momentum":0.157205,"rvol_3bar":[1.149697,0.792276,1.47372],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":42175.0,"sell_vol":1094.0,"unclassified_vol":0.0,"imbalance":0.949433,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.164259},"context":{"vwap":8.429028,"price_vs_vwap_pct":1.257228,"ema9":8.538871,"ema20":8.547605,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.613833,"dist_to_hod_atr":5.706194,"atr":0.024535,"spread_atr":0.407585,"own_change_pct":-0.065574,"rel_strength_pct":{"SPY":-0.064253,"IWM":-0.070831}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.399198},"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":"eb92f2abe20c","ts":"2026-09-15T18:02:20+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.1457,"target":11.44,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":28.2,"room_to_5d_high_atr":1.18},"price":11.3625,"vwap":11.2919,"ext_from_open_pct":0.91,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.0174,"volatility":"high"},"price":11.3625,"volume":{"bars":272,"last_bar_volume":103926.0,"baseline_avg":66799.9,"bar_rvol":1.555781,"raw_accel":0.205834,"smooth_accel":0.044386,"accel_momentum":-0.348326,"rvol_3bar":[0.492926,1.264716,1.555781],"trend_3bar":"ACCELERATING","projected_rvol":2.625543},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":49428.0,"sell_vol":14761.0,"unclassified_vol":0.0,"imbalance":0.540077,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.550695},"context":{"vwap":11.291752,"price_vs_vwap_pct":0.626542,"ema9":11.359798,"ema20":11.350339,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.023519,"dist_to_hod_atr":3.152897,"atr":0.037267,"spread_atr":0.268332,"own_change_pct":-0.044014,"rel_strength_pct":{"SPY":-0.042694,"IWM":-0.049271}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.840241},"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":"b692180bdbe0","ts":"2026-09-15T18:02:25+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":11.1231,"target":11.42,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":26.7,"room_to_5d_high_atr":1.21},"price":11.3399,"vwap":11.2919,"ext_from_open_pct":0.71,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.0572,"volatility":"high"},"price":11.3399,"volume":{"bars":272,"last_bar_volume":103926.0,"baseline_avg":66799.9,"bar_rvol":1.555781,"raw_accel":0.205834,"smooth_accel":0.044386,"accel_momentum":-0.348326,"rvol_3bar":[0.492926,1.264716,1.555781],"trend_3bar":"ACCELERATING","projected_rvol":2.122135},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":45142.0,"sell_vol":14560.0,"unclassified_vol":0.0,"imbalance":0.512244,"bid":11.33,"ask":11.34,"spread_pct":0.088222,"quote_size_imbalance":null,"quote_age_s":0.782962},"context":{"vwap":11.291752,"price_vs_vwap_pct":0.426396,"ema9":11.359798,"ema20":11.350339,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.220383,"dist_to_hod_atr":3.759327,"atr":0.037267,"spread_atr":0.268332,"own_change_pct":-0.044014,"rel_strength_pct":{"SPY":-0.042694,"IWM":-0.049271}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.79694},"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":"8bbac7a23f42","ts":"2026-09-15T18:02:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6214,"target":10.935,"target_label":"prev_day_high","reward_risk":1.12,"pos_in_5d_range_pct":43.4,"room_to_5d_high_atr":1.23},"price":10.7696,"vwap":10.5774,"ext_from_open_pct":3.45,"max_ext_allowed_pct":3.0,"volume_pace":0.928,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"medium"},"price":10.7696,"volume":{"bars":272,"last_bar_volume":4810.0,"baseline_avg":9834.1,"bar_rvol":0.489114,"raw_accel":-0.652507,"smooth_accel":0.427893,"accel_momentum":0.546633,"rvol_3bar":[0.71806,1.42447,0.489114],"trend_3bar":"MIXED","projected_rvol":0.522439},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":2151.0,"sell_vol":751.0,"unclassified_vol":0.0,"imbalance":0.482426,"bid":10.76,"ask":10.77,"spread_pct":0.092894,"quote_size_imbalance":null,"quote_age_s":2.219004},"context":{"vwap":10.577268,"price_vs_vwap_pct":1.818353,"ema9":10.782393,"ema20":10.787163,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.557587,"dist_to_hod_atr":5.974228,"atr":0.028523,"spread_atr":0.3506,"own_change_pct":0.034332,"rel_strength_pct":{"SPY":0.035653,"IWM":0.029075}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.235961},"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":"f52fdbf7741a","ts":"2026-09-15T18:02:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.04,"pos_in_5d_range_pct":501.9,"room_to_5d_high_atr":-5.79},"price":9.9171,"vwap":9.7113,"ext_from_open_pct":4.94,"max_ext_allowed_pct":5.0,"volume_pace":3.667,"trend":"flat","recent_slope_pct":0.1227,"volatility":"low"},"price":9.9171,"volume":{"bars":272,"last_bar_volume":26.0,"baseline_avg":8120.15,"bar_rvol":0.003202,"raw_accel":-0.99618,"smooth_accel":1.283173,"accel_momentum":0.154153,"rvol_3bar":[5.474122,0.869593,0.003202],"trend_3bar":"DECELERATING","projected_rvol":0.051723},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":163.0,"sell_vol":10.0,"unclassified_vol":0.0,"imbalance":0.884393,"bid":9.92,"ask":9.95,"spread_pct":0.301963,"quote_size_imbalance":null,"quote_age_s":10.023915},"context":{"vwap":9.711228,"price_vs_vwap_pct":2.119937,"ema9":9.886189,"ema20":9.878156,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.773529,"dist_to_hod_atr":5.215785,"atr":0.054239,"spread_atr":0.553105,"own_change_pct":0.077778,"rel_strength_pct":{"SPY":0.079098,"IWM":0.072521}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.002832},"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":"1dbba53c4bff","ts":"2026-09-15T18:02:55+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6268,"target":10.935,"target_label":"prev_day_high","reward_risk":1.08,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.22},"price":10.775,"vwap":10.5775,"ext_from_open_pct":3.51,"max_ext_allowed_pct":4.0,"volume_pace":0.927,"trend":"flat","recent_slope_pct":-0.0318,"volatility":"medium"},"price":10.775,"volume":{"bars":272,"last_bar_volume":4810.0,"baseline_avg":9834.1,"bar_rvol":0.489114,"raw_accel":-0.652507,"smooth_accel":0.427893,"accel_momentum":0.546633,"rvol_3bar":[0.71806,1.42447,0.489114],"trend_3bar":"MIXED","projected_rvol":0.736029},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3257.0,"sell_vol":1511.0,"unclassified_vol":0.0,"imbalance":0.366191,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":1.494902},"context":{"vwap":10.577268,"price_vs_vwap_pct":1.869406,"ema9":10.782393,"ema20":10.787163,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.508227,"dist_to_hod_atr":5.784904,"atr":0.028523,"spread_atr":0.3506,"own_change_pct":0.034332,"rel_strength_pct":{"SPY":0.035653,"IWM":0.029075}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.179109},"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":"382350ec2ea0","ts":"2026-09-15T18:03:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":510.5,"room_to_5d_high_atr":-5.91},"price":9.9488,"vwap":9.7116,"ext_from_open_pct":5.28,"max_ext_allowed_pct":4.0,"volume_pace":3.667,"trend":"flat","recent_slope_pct":0.0364,"volatility":"low"},"price":9.9488,"volume":{"bars":273,"last_bar_volume":3763.0,"baseline_avg":7779.4,"bar_rvol":0.483713,"raw_accel":0.934854,"smooth_accel":-0.778819,"accel_momentum":-2.061993,"rvol_3bar":[0.869593,0.003202,0.483713],"trend_3bar":"MIXED","projected_rvol":0.000386},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":3372.0,"sell_vol":15.0,"unclassified_vol":0.0,"imbalance":0.991143,"bid":9.92,"ask":9.95,"spread_pct":0.301963,"quote_size_imbalance":null,"quote_age_s":0.868496},"context":{"vwap":9.711581,"price_vs_vwap_pct":2.442643,"ema9":9.892891,"ema20":9.882112,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.462745,"dist_to_hod_atr":4.618195,"atr":0.054394,"spread_atr":0.551536,"own_change_pct":0.097881,"rel_strength_pct":{"SPY":0.085337,"IWM":0.082111}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.479429},"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":"4d5e815c4204","ts":"2026-09-15T18:03:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6332,"target":10.935,"target_label":"prev_day_high","reward_risk":1.04,"pos_in_5d_range_pct":44.3,"room_to_5d_high_atr":1.21},"price":10.7814,"vwap":10.5775,"ext_from_open_pct":3.57,"max_ext_allowed_pct":3.0,"volume_pace":0.926,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"medium"},"price":10.7814,"volume":{"bars":273,"last_bar_volume":8665.0,"baseline_avg":9468.7,"bar_rvol":0.91512,"raw_accel":0.801455,"smooth_accel":0.78706,"accel_momentum":0.359167,"rvol_3bar":[1.42447,0.489114,0.91512],"trend_3bar":"MIXED","projected_rvol":0.081426},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2167.0,"sell_vol":334.0,"unclassified_vol":0.0,"imbalance":0.732907,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":1.219168},"context":{"vwap":10.57754,"price_vs_vwap_pct":1.927294,"ema9":10.780615,"ema20":10.785862,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.449726,"dist_to_hod_atr":5.569202,"atr":0.028478,"spread_atr":0.351148,"own_change_pct":-0.10663,"rel_strength_pct":{"SPY":-0.119173,"IWM":-0.1224}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.670698},"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":"392c63dc1d5f","ts":"2026-09-15T18:03:35+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2558,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.09,"pos_in_5d_range_pct":86.4,"room_to_5d_high_atr":0.3},"price":8.4455,"vwap":7.9893,"ext_from_open_pct":9.68,"max_ext_allowed_pct":3.0,"volume_pace":0.273,"trend":"flat","recent_slope_pct":-0.0521,"volatility":"high"},"price":8.4455,"volume":{"bars":273,"last_bar_volume":19850.0,"baseline_avg":17348.45,"bar_rvol":1.144194,"raw_accel":1.077229,"smooth_accel":0.218218,"accel_momentum":0.579215,"rvol_3bar":[0.516064,0.552459,1.144194],"trend_3bar":"ACCELERATING","projected_rvol":0.6587},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1958.0,"sell_vol":4702.0,"unclassified_vol":0.0,"imbalance":-0.412012,"bid":8.43,"ask":8.45,"spread_pct":0.236967,"quote_size_imbalance":null,"quote_age_s":1.96401},"context":{"vwap":7.988667,"price_vs_vwap_pct":5.718514,"ema9":8.471612,"ema20":8.44396,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.641176,"dist_to_hod_atr":1.316035,"atr":0.041412,"spread_atr":0.482949,"own_change_pct":0.432701,"rel_strength_pct":{"SPY":0.420157,"IWM":0.416931}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.471422},"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":"a7699eb8e982","ts":"2026-09-15T18:03:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.627,"target":10.935,"target_label":"prev_day_high","reward_risk":1.08,"pos_in_5d_range_pct":43.8,"room_to_5d_high_atr":1.22},"price":10.7752,"vwap":10.5777,"ext_from_open_pct":3.51,"max_ext_allowed_pct":4.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":-0.0267,"volatility":"medium"},"price":10.7752,"volume":{"bars":273,"last_bar_volume":8665.0,"baseline_avg":9468.7,"bar_rvol":0.91512,"raw_accel":0.801455,"smooth_accel":0.78706,"accel_momentum":0.359167,"rvol_3bar":[1.42447,0.489114,0.91512],"trend_3bar":"MIXED","projected_rvol":0.716184},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1982.0,"sell_vol":2897.0,"unclassified_vol":0.0,"imbalance":-0.187538,"bid":10.76,"ask":10.77,"spread_pct":0.092894,"quote_size_imbalance":null,"quote_age_s":0.096},"context":{"vwap":10.57754,"price_vs_vwap_pct":1.868679,"ema9":10.780615,"ema20":10.785862,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.506399,"dist_to_hod_atr":5.786913,"atr":0.028478,"spread_atr":0.351148,"own_change_pct":-0.10663,"rel_strength_pct":{"SPY":-0.119173,"IWM":-0.1224}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.17162},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"daa7cccafd70","ts":"2026-09-15T18:03:55+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":11.141,"target":11.44,"target_label":"premarket_high","reward_risk":0.38,"pos_in_5d_range_pct":27.9,"room_to_5d_high_atr":1.18},"price":11.3578,"vwap":11.292,"ext_from_open_pct":0.87,"max_ext_allowed_pct":3.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.0618,"volatility":"high"},"price":11.3578,"volume":{"bars":273,"last_bar_volume":90023.0,"baseline_avg":68931.2,"bar_rvol":1.305983,"raw_accel":-0.133778,"smooth_accel":0.343109,"accel_momentum":0.298724,"rvol_3bar":[1.264716,1.555781,1.305983],"trend_3bar":"MIXED","projected_rvol":1.199504},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":9619.0,"sell_vol":23664.0,"unclassified_vol":0.0,"imbalance":-0.421987,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.981404},"context":{"vwap":11.291913,"price_vs_vwap_pct":0.583492,"ema9":11.354838,"ema20":11.348878,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.06446,"dist_to_hod_atr":3.261929,"atr":0.037462,"spread_atr":0.266934,"own_change_pct":-0.351648,"rel_strength_pct":{"SPY":-0.364192,"IWM":-0.367418}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.551108},"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":"aca46fc3d2ad","ts":"2026-09-15T18:04:00+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":11.0964,"target":11.42,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":24.8,"room_to_5d_high_atr":1.24},"price":11.3132,"vwap":11.292,"ext_from_open_pct":0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.1405,"volatility":"high"},"price":11.3132,"volume":{"bars":273,"last_bar_volume":90023.0,"baseline_avg":68931.2,"bar_rvol":1.305983,"raw_accel":-0.133778,"smooth_accel":0.343109,"accel_momentum":0.298724,"rvol_3bar":[1.264716,1.555781,1.305983],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":8579.0,"sell_vol":23049.0,"unclassified_vol":0.0,"imbalance":-0.457506,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":0.990526},"context":{"vwap":11.291913,"price_vs_vwap_pct":0.18852,"ema9":11.354838,"ema20":11.348878,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.452962,"dist_to_hod_atr":4.452452,"atr":0.037462,"spread_atr":0.266934,"own_change_pct":-0.351648,"rel_strength_pct":{"SPY":-0.374756,"IWM":-0.377055}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.597495},"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":"3108100fcdc1","ts":"2026-09-15T18:04:05+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4159,"target":12.72,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":13.0,"room_to_5d_high_atr":2.09},"price":12.635,"vwap":12.6172,"ext_from_open_pct":1.08,"max_ext_allowed_pct":3.0,"volume_pace":0.817,"trend":"flat","recent_slope_pct":-0.0292,"volatility":"high"},"price":12.635,"volume":{"bars":274,"last_bar_volume":2823.0,"baseline_avg":4595.35,"bar_rvol":0.614317,"raw_accel":-0.491076,"smooth_accel":-0.48923,"accel_momentum":-1.090278,"rvol_3bar":[0.251649,1.116355,0.614317],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":606.0,"sell_vol":529.0,"unclassified_vol":0.0,"imbalance":0.067841,"bid":12.63,"ask":12.64,"spread_pct":0.079145,"quote_size_imbalance":null,"quote_age_s":0.801544},"context":{"vwap":12.617229,"price_vs_vwap_pct":0.140846,"ema9":12.652852,"ema20":12.6539,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.956989,"dist_to_hod_atr":17.031405,"atr":0.022605,"spread_atr":0.442374,"own_change_pct":-0.042654,"rel_strength_pct":{"SPY":-0.065762,"IWM":-0.068061}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.041676},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8b6e8a360b8b","ts":"2026-09-15T18:04:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6271,"target":10.935,"target_label":"prev_day_high","reward_risk":1.08,"pos_in_5d_range_pct":43.9,"room_to_5d_high_atr":1.22},"price":10.7753,"vwap":10.5778,"ext_from_open_pct":3.51,"max_ext_allowed_pct":3.0,"volume_pace":0.925,"trend":"flat","recent_slope_pct":-0.0196,"volatility":"medium"},"price":10.7753,"volume":{"bars":274,"last_bar_volume":8107.0,"baseline_avg":9442.3,"bar_rvol":0.858583,"raw_accel":-0.064397,"smooth_accel":-0.168452,"accel_momentum":-0.955512,"rvol_3bar":[0.489114,0.91512,0.858583],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":4090.0,"sell_vol":617.0,"unclassified_vol":0.0,"imbalance":0.737837,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.208348},"context":{"vwap":10.577795,"price_vs_vwap_pct":1.86717,"ema9":10.779372,"ema20":10.78477,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.505484,"dist_to_hod_atr":5.761408,"atr":0.028587,"spread_atr":0.349812,"own_change_pct":-0.144578,"rel_strength_pct":{"SPY":-0.167686,"IWM":-0.169985}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.633495},"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":"da6ba57e7efd","ts":"2026-09-15T18:04:10+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2579,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.08,"pos_in_5d_range_pct":86.5,"room_to_5d_high_atr":0.3},"price":8.4476,"vwap":7.9917,"ext_from_open_pct":9.71,"max_ext_allowed_pct":3.0,"volume_pace":0.274,"trend":"flat","recent_slope_pct":-0.108,"volatility":"high"},"price":8.4476,"volume":{"bars":274,"last_bar_volume":31693.0,"baseline_avg":18215.2,"bar_rvol":1.739921,"raw_accel":0.596625,"smooth_accel":1.580085,"accel_momentum":1.361868,"rvol_3bar":[0.552459,1.144194,1.739921],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":1636.0,"sell_vol":23370.0,"unclassified_vol":0.0,"imbalance":-0.869151,"bid":8.42,"ask":8.44,"spread_pct":0.237248,"quote_size_imbalance":null,"quote_age_s":2.857855},"context":{"vwap":7.991613,"price_vs_vwap_pct":5.705818,"ema9":8.465049,"ema20":8.443469,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.616471,"dist_to_hod_atr":1.195451,"atr":0.043833,"spread_atr":0.456279,"own_change_pct":-0.137272,"rel_strength_pct":{"SPY":-0.160379,"IWM":-0.162678}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.512254},"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":"3f4c6dd05528","ts":"2026-09-15T18:04:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6318,"target":10.935,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":44.2,"room_to_5d_high_atr":1.21},"price":10.78,"vwap":10.5779,"ext_from_open_pct":3.55,"max_ext_allowed_pct":4.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":-0.0109,"volatility":"medium"},"price":10.78,"volume":{"bars":274,"last_bar_volume":8107.0,"baseline_avg":9442.3,"bar_rvol":0.858583,"raw_accel":-0.064397,"smooth_accel":-0.168452,"accel_momentum":-0.955512,"rvol_3bar":[0.489114,0.91512,0.858583],"trend_3bar":"MIXED","projected_rvol":0.820139},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":4340.0,"sell_vol":617.0,"unclassified_vol":0.0,"imbalance":0.751059,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.386368},"context":{"vwap":10.577795,"price_vs_vwap_pct":1.911602,"ema9":10.779372,"ema20":10.78477,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.462523,"dist_to_hod_atr":5.596997,"atr":0.028587,"spread_atr":0.349812,"own_change_pct":-0.144578,"rel_strength_pct":{"SPY":-0.167686,"IWM":-0.169985}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.644847},"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":"27753002ca2e","ts":"2026-09-15T18:04:15+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.2183,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.29,"pos_in_5d_range_pct":84.2,"room_to_5d_high_atr":0.35},"price":8.408,"vwap":7.9923,"ext_from_open_pct":9.19,"max_ext_allowed_pct":3.0,"volume_pace":0.274,"trend":"flat","recent_slope_pct":-0.2017,"volatility":"high"},"price":8.408,"volume":{"bars":274,"last_bar_volume":31693.0,"baseline_avg":18215.2,"bar_rvol":1.739921,"raw_accel":0.596625,"smooth_accel":1.580085,"accel_momentum":1.361868,"rvol_3bar":[0.552459,1.144194,1.739921],"trend_3bar":"ACCELERATING","projected_rvol":1.734815},"flow":{"window_s":30,"trades":68,"trade_rate":2.266667,"buy_vol":3691.0,"sell_vol":5895.0,"unclassified_vol":0.0,"imbalance":-0.229919,"bid":8.4,"ask":8.41,"spread_pct":0.118977,"quote_size_imbalance":null,"quote_age_s":0.64529},"context":{"vwap":7.991613,"price_vs_vwap_pct":5.210299,"ema9":8.465049,"ema20":8.443469,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.082353,"dist_to_hod_atr":2.098884,"atr":0.043833,"spread_atr":0.22814,"own_change_pct":-0.137272,"rel_strength_pct":{"SPY":-0.160379,"IWM":-0.162678}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.40004},"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":"c51d4ad793ce","ts":"2026-09-15T18:04:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.622,"target":10.935,"target_label":"prev_day_high","reward_risk":1.11,"pos_in_5d_range_pct":43.5,"room_to_5d_high_atr":1.23},"price":10.7702,"vwap":10.5779,"ext_from_open_pct":3.46,"max_ext_allowed_pct":3.0,"volume_pace":0.924,"trend":"flat","recent_slope_pct":-0.029,"volatility":"medium"},"price":10.7702,"volume":{"bars":274,"last_bar_volume":8107.0,"baseline_avg":9442.3,"bar_rvol":0.858583,"raw_accel":-0.064397,"smooth_accel":-0.168452,"accel_momentum":-0.955512,"rvol_3bar":[0.489114,0.91512,0.858583],"trend_3bar":"MIXED","projected_rvol":0.71042},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":2075.0,"sell_vol":917.0,"unclassified_vol":0.0,"imbalance":0.387032,"bid":10.77,"ask":10.78,"spread_pct":0.092807,"quote_size_imbalance":null,"quote_age_s":0.144441},"context":{"vwap":10.577795,"price_vs_vwap_pct":1.818955,"ema9":10.779372,"ema20":10.78477,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.552102,"dist_to_hod_atr":5.939813,"atr":0.028587,"spread_atr":0.349812,"own_change_pct":-0.144578,"rel_strength_pct":{"SPY":-0.167686,"IWM":-0.169985}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.332299},"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":"96fbe4aeefd6","ts":"2026-09-15T18:04:55+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.2639,"target":8.6523,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":86.9,"room_to_5d_high_atr":0.29},"price":8.4536,"vwap":7.9945,"ext_from_open_pct":9.79,"max_ext_allowed_pct":4.0,"volume_pace":0.275,"trend":"flat","recent_slope_pct":-0.0938,"volatility":"high"},"price":8.4536,"volume":{"bars":274,"last_bar_volume":31693.0,"baseline_avg":18215.2,"bar_rvol":1.739921,"raw_accel":0.596625,"smooth_accel":1.580085,"accel_momentum":1.361868,"rvol_3bar":[0.552459,1.144194,1.739921],"trend_3bar":"ACCELERATING","projected_rvol":2.010389},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":6169.0,"sell_vol":6302.0,"unclassified_vol":0.0,"imbalance":-0.010665,"bid":8.39,"ask":8.4,"spread_pct":0.119119,"quote_size_imbalance":null,"quote_age_s":1.936201},"context":{"vwap":7.991613,"price_vs_vwap_pct":5.780897,"ema9":8.465049,"ema20":8.443469,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.545882,"dist_to_hod_atr":1.058567,"atr":0.043833,"spread_atr":0.22814,"own_change_pct":-0.137272,"rel_strength_pct":{"SPY":-0.160379,"IWM":-0.162678}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.018556},"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":"9efa6e931c76","ts":"2026-09-15T18:05:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3072,"target":8.59,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":3.76},"price":8.4984,"vwap":8.4296,"ext_from_open_pct":1.53,"max_ext_allowed_pct":3.0,"volume_pace":0.762,"trend":"flat","recent_slope_pct":-0.1085,"volatility":"high"},"price":8.4984,"volume":{"bars":275,"last_bar_volume":23831.0,"baseline_avg":40053.95,"bar_rvol":0.594973,"raw_accel":-0.60222,"smooth_accel":-0.162655,"accel_momentum":-0.508916,"rvol_3bar":[0.744551,1.504492,0.594973],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":9599.0,"sell_vol":7035.0,"unclassified_vol":0.0,"imbalance":0.154142,"bid":8.5,"ask":8.51,"spread_pct":0.117578,"quote_size_imbalance":null,"quote_age_s":0.694347},"context":{"vwap":8.429561,"price_vs_vwap_pct":0.816643,"ema9":8.531874,"ema20":8.541806,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.035735,"dist_to_hod_atr":6.508778,"atr":0.027133,"spread_atr":0.36856,"own_change_pct":-0.265584,"rel_strength_pct":{"SPY":-0.292655,"IWM":-0.291869}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.09171},"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":"ec2491469202","ts":"2026-09-15T18:05:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6149,"target":10.935,"target_label":"prev_day_high","reward_risk":1.16,"pos_in_5d_range_pct":42.9,"room_to_5d_high_atr":1.24},"price":10.7631,"vwap":10.5781,"ext_from_open_pct":3.39,"max_ext_allowed_pct":4.0,"volume_pace":0.922,"trend":"flat","recent_slope_pct":-0.0323,"volatility":"medium"},"price":10.7631,"volume":{"bars":275,"last_bar_volume":6734.0,"baseline_avg":9417.35,"bar_rvol":0.715063,"raw_accel":-0.16936,"smooth_accel":-0.080899,"accel_momentum":0.087553,"rvol_3bar":[0.91512,0.858583,0.715063],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2727.0,"sell_vol":802.0,"unclassified_vol":0.0,"imbalance":0.54548,"bid":10.75,"ask":10.76,"spread_pct":0.09298,"quote_size_imbalance":null,"quote_age_s":0.0612},"context":{"vwap":10.577999,"price_vs_vwap_pct":1.749871,"ema9":10.778277,"ema20":10.783735,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.617002,"dist_to_hod_atr":6.160269,"atr":0.028716,"spread_atr":0.348235,"own_change_pct":-0.102921,"rel_strength_pct":{"SPY":-0.129992,"IWM":-0.129206}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.390053},"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":"2733739cb7e5","ts":"2026-09-15T18:05:55+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.00 below VWAP $5.12","plan":{"state":"PASS","setup":"","stop":4.5,"target":5.2307,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":-1.5,"room_to_5d_high_atr":2.96},"price":5.0,"vwap":5.1186,"ext_from_open_pct":-5.12,"max_ext_allowed_pct":3.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":-0.8021,"volatility":"high"},"price":5.0,"volume":{"bars":226,"last_bar_volume":10.0,"baseline_avg":1075.1,"bar_rvol":0.009301,"raw_accel":-0.998826,"smooth_accel":7.21747,"accel_momentum":-0.894418,"rvol_3bar":[0.738771,12.831865,0.009301],"trend_3bar":"MIXED","projected_rvol":1.94113},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":201.0,"sell_vol":799.0,"unclassified_vol":0.0,"imbalance":-0.598,"bid":4.95,"ask":5.2,"spread_pct":4.926108,"quote_size_imbalance":null,"quote_age_s":3.275251},"context":{"vwap":5.119027,"price_vs_vwap_pct":-2.325183,"ema9":5.207217,"ema20":5.181981,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-16.527546,"dist_to_hod_atr":22.732283,"atr":0.04355,"spread_atr":5.740475,"own_change_pct":0.575,"rel_strength_pct":{"SPY":0.547929,"IWM":0.548715}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.005562},"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":"5df8fa95f7ad","ts":"2026-09-15T18:05:55+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.29 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0733,"target":11.42,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":23.2,"room_to_5d_high_atr":1.26},"price":11.2901,"vwap":11.2922,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.1323,"volatility":"high"},"price":11.2901,"volume":{"bars":275,"last_bar_volume":70908.0,"baseline_avg":67589.25,"bar_rvol":1.049102,"raw_accel":-0.126577,"smooth_accel":0.061778,"accel_momentum":-0.251751,"rvol_3bar":[1.305983,1.205373,1.049102],"trend_3bar":"DECELERATING","projected_rvol":2.25457},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":26547.0,"sell_vol":61494.0,"unclassified_vol":0.0,"imbalance":-0.39694,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.231449},"context":{"vwap":11.292099,"price_vs_vwap_pct":-0.017702,"ema9":11.340209,"ema20":11.342577,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.654181,"dist_to_hod_atr":4.815268,"atr":0.039437,"spread_atr":0.253569,"own_change_pct":-0.574672,"rel_strength_pct":{"SPY":-0.601743,"IWM":-0.600958}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.416431},"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":"65488b40b002","ts":"2026-09-15T18:06:00+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":11.0782,"target":11.42,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":23.5,"room_to_5d_high_atr":1.26},"price":11.295,"vwap":11.2922,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.1236,"volatility":"high"},"price":11.295,"volume":{"bars":275,"last_bar_volume":70908.0,"baseline_avg":67589.25,"bar_rvol":1.049102,"raw_accel":-0.126577,"smooth_accel":0.061778,"accel_momentum":-0.251751,"rvol_3bar":[1.305983,1.205373,1.049102],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":18025.0,"sell_vol":59365.0,"unclassified_vol":0.0,"imbalance":-0.534178,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.649171},"context":{"vwap":11.292099,"price_vs_vwap_pct":0.025691,"ema9":11.340209,"ema20":11.342577,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.611498,"dist_to_hod_atr":4.69102,"atr":0.039437,"spread_atr":0.253569,"own_change_pct":-0.574672,"rel_strength_pct":{"SPY":-0.612972,"IWM":-0.620236}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.560407},"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":"101d570b2a0f","ts":"2026-09-15T18:06:05+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.3111,"target":8.59,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.5,"room_to_5d_high_atr":3.75},"price":8.5023,"vwap":8.4297,"ext_from_open_pct":1.58,"max_ext_allowed_pct":3.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":-0.0861,"volatility":"high"},"price":8.5023,"volume":{"bars":276,"last_bar_volume":24537.0,"baseline_avg":37256.0,"bar_rvol":0.658605,"raw_accel":0.029625,"smooth_accel":-0.102091,"accel_momentum":0.060564,"rvol_3bar":[1.504492,0.594973,0.658605],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":8769.0,"sell_vol":427.0,"unclassified_vol":0.0,"imbalance":0.907134,"bid":8.5,"ask":8.51,"spread_pct":0.117578,"quote_size_imbalance":null,"quote_age_s":0.027008},"context":{"vwap":8.429666,"price_vs_vwap_pct":0.861653,"ema9":8.529539,"ema20":8.539748,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.990778,"dist_to_hod_atr":6.242324,"atr":0.027666,"spread_atr":0.361455,"own_change_pct":-0.114889,"rel_strength_pct":{"SPY":-0.153189,"IWM":-0.160452}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.597443},"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":"84bf939b3d95","ts":"2026-09-15T18:06:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4301,"target":12.72,"target_label":"premarket_high","reward_risk":0.32,"pos_in_5d_range_pct":13.7,"room_to_5d_high_atr":2.08},"price":12.6492,"vwap":12.6173,"ext_from_open_pct":1.19,"max_ext_allowed_pct":3.0,"volume_pace":0.812,"trend":"flat","recent_slope_pct":-0.0078,"volatility":"high"},"price":12.6492,"volume":{"bars":276,"last_bar_volume":3019.0,"baseline_avg":4367.9,"bar_rvol":0.691179,"raw_accel":0.516323,"smooth_accel":-0.516511,"accel_momentum":-0.151961,"rvol_3bar":[0.614317,0.443321,0.691179],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":352.0,"sell_vol":297.0,"unclassified_vol":0.0,"imbalance":0.084746,"bid":12.63,"ask":12.64,"spread_pct":0.079145,"quote_size_imbalance":null,"quote_age_s":0.084434},"context":{"vwap":12.617252,"price_vs_vwap_pct":0.253213,"ema9":12.648565,"ema20":12.651446,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.847926,"dist_to_hod_atr":15.764022,"atr":0.023522,"spread_atr":0.425135,"own_change_pct":-0.023711,"rel_strength_pct":{"SPY":-0.062011,"IWM":-0.069275}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.058574},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e4f82bbf1ce3","ts":"2026-09-15T18:06:10+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7392,"target":13.2,"target_label":"ceiling","reward_risk":1.55,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.15},"price":12.92,"vwap":12.9016,"ext_from_open_pct":-1.0,"max_ext_allowed_pct":3.0,"volume_pace":0.744,"trend":"flat","recent_slope_pct":0.1045,"volatility":"medium"},"price":12.92,"volume":{"bars":275,"last_bar_volume":471.0,"baseline_avg":855.2,"bar_rvol":0.550748,"raw_accel":0.591216,"smooth_accel":-0.739563,"accel_momentum":0.088128,"rvol_3bar":[0.808978,0.351106,0.550748],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":74.0,"sell_vol":316.0,"unclassified_vol":0.0,"imbalance":-0.620513,"bid":12.89,"ask":12.95,"spread_pct":0.464396,"quote_size_imbalance":null,"quote_age_s":0.008554},"context":{"vwap":12.901611,"price_vs_vwap_pct":0.142529,"ema9":12.882177,"ema20":12.882791,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.930128,"dist_to_hod_atr":9.084809,"atr":0.042929,"spread_atr":1.397663,"own_change_pct":0.466563,"rel_strength_pct":{"SPY":0.428263,"IWM":0.420999}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.341746},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8318763164eb","ts":"2026-09-15T18:06:15+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":4.63,"target":5.2307,"target_label":"ceiling","reward_risk":0.2,"pos_in_5d_range_pct":2.3,"room_to_5d_high_atr":2.85},"price":5.13,"vwap":5.1186,"ext_from_open_pct":-2.66,"max_ext_allowed_pct":3.0,"volume_pace":0.658,"trend":"flat","recent_slope_pct":-0.7464,"volatility":"high"},"price":5.13,"volume":{"bars":227,"last_bar_volume":1913.0,"baseline_avg":1069.95,"bar_rvol":1.787934,"raw_accel":6.151736,"smooth_accel":5.742414,"accel_momentum":-1.475056,"rvol_3bar":[12.831865,0.009301,1.787934],"trend_3bar":"MIXED","projected_rvol":0.508435},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":237.0,"sell_vol":899.0,"unclassified_vol":0.0,"imbalance":-0.582746,"bid":4.95,"ask":5.2,"spread_pct":4.926108,"quote_size_imbalance":null,"quote_age_s":2.546734},"context":{"vwap":5.118565,"price_vs_vwap_pct":0.223401,"ema9":5.165774,"ema20":5.16465,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.357262,"dist_to_hod_atr":15.124579,"atr":0.056861,"spread_atr":4.39668,"own_change_pct":-3.474903,"rel_strength_pct":{"SPY":-3.513203,"IWM":-3.520467}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.041912},"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":"c141ecb08a40","ts":"2026-09-15T18:06:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6307,"target":10.935,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":44.1,"room_to_5d_high_atr":1.21},"price":10.7789,"vwap":10.5784,"ext_from_open_pct":3.54,"max_ext_allowed_pct":3.0,"volume_pace":0.92,"trend":"flat","recent_slope_pct":0.0152,"volatility":"medium"},"price":10.7789,"volume":{"bars":276,"last_bar_volume":10475.0,"baseline_avg":9037.9,"bar_rvol":1.159008,"raw_accel":0.555539,"smooth_accel":-0.073251,"accel_momentum":0.007648,"rvol_3bar":[0.858583,0.715063,1.159008],"trend_3bar":"MIXED","projected_rvol":0.78713},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":2759.0,"sell_vol":798.0,"unclassified_vol":0.0,"imbalance":0.551307,"bid":10.78,"ask":10.79,"spread_pct":0.092721,"quote_size_imbalance":null,"quote_age_s":0.503592},"context":{"vwap":10.578318,"price_vs_vwap_pct":1.896158,"ema9":10.778622,"ema20":10.783379,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.472578,"dist_to_hod_atr":5.592202,"atr":0.028808,"spread_atr":0.347126,"own_change_pct":-0.02504,"rel_strength_pct":{"SPY":-0.06334,"IWM":-0.070604}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.63897},"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":"e96db5644303","ts":"2026-09-15T18:06:40+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.29 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0732,"target":11.42,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":23.2,"room_to_5d_high_atr":1.26},"price":11.29,"vwap":11.2922,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.0957,"volatility":"high"},"price":11.29,"volume":{"bars":276,"last_bar_volume":142918.0,"baseline_avg":68126.3,"bar_rvol":2.097839,"raw_accel":1.015541,"smooth_accel":0.053099,"accel_momentum":-0.008678,"rvol_3bar":[1.205373,1.049102,2.097839],"trend_3bar":"MIXED","projected_rvol":1.335255},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":16785.0,"sell_vol":35851.0,"unclassified_vol":0.0,"imbalance":-0.362224,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.117563},"context":{"vwap":11.292197,"price_vs_vwap_pct":-0.019457,"ema9":11.331167,"ema20":11.338046,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.655052,"dist_to_hod_atr":4.615798,"atr":0.041163,"spread_atr":0.242937,"own_change_pct":-0.572183,"rel_strength_pct":{"SPY":-0.610483,"IWM":-0.617747}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.759887},"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":"cb1ced679e3e","ts":"2026-09-15T18:06:55+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":11.0819,"target":11.42,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":23.8,"room_to_5d_high_atr":1.25},"price":11.2987,"vwap":11.2922,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.0803,"volatility":"high"},"price":11.2987,"volume":{"bars":276,"last_bar_volume":142918.0,"baseline_avg":68126.3,"bar_rvol":2.097839,"raw_accel":1.015541,"smooth_accel":0.053099,"accel_momentum":-0.008678,"rvol_3bar":[1.205373,1.049102,2.097839],"trend_3bar":"MIXED","projected_rvol":1.779769},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":39203.0,"sell_vol":42586.0,"unclassified_vol":0.0,"imbalance":-0.041363,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":0.36605},"context":{"vwap":11.292197,"price_vs_vwap_pct":0.057588,"ema9":11.331167,"ema20":11.338046,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.579268,"dist_to_hod_atr":4.404443,"atr":0.041163,"spread_atr":0.242937,"own_change_pct":-0.572183,"rel_strength_pct":{"SPY":-0.610483,"IWM":-0.617747}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.086772},"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":"da43d6ad0ef8","ts":"2026-09-15T18:07:00+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.28 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0677,"target":11.42,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":22.8,"room_to_5d_high_atr":1.27},"price":11.2845,"vwap":11.2922,"ext_from_open_pct":0.22,"max_ext_allowed_pct":4.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.1054,"volatility":"high"},"price":11.2845,"volume":{"bars":276,"last_bar_volume":142918.0,"baseline_avg":68126.3,"bar_rvol":2.097839,"raw_accel":1.015541,"smooth_accel":0.053099,"accel_momentum":-0.008678,"rvol_3bar":[1.205373,1.049102,2.097839],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":38791.0,"sell_vol":35024.0,"unclassified_vol":0.0,"imbalance":0.051033,"bid":11.28,"ask":11.29,"spread_pct":0.088613,"quote_size_imbalance":null,"quote_age_s":1.019099},"context":{"vwap":11.292197,"price_vs_vwap_pct":-0.068163,"ema9":11.331167,"ema20":11.338046,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.702962,"dist_to_hod_atr":4.749413,"atr":0.041163,"spread_atr":0.242937,"own_change_pct":-0.572183,"rel_strength_pct":{"SPY":-0.59991,"IWM":-0.610732}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.107059},"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":"7400fa74a51e","ts":"2026-09-15T18:07:05+00:00","symbol":"RUM","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.2153,"target":8.5,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":84.0,"room_to_5d_high_atr":0.36},"price":8.405,"vwap":7.9967,"ext_from_open_pct":9.16,"max_ext_allowed_pct":3.0,"volume_pace":0.274,"trend":"flat","recent_slope_pct":-0.0234,"volatility":"high"},"price":8.405,"volume":{"bars":277,"last_bar_volume":15824.0,"baseline_avg":19568.0,"bar_rvol":0.808667,"raw_accel":0.636232,"smooth_accel":-0.002226,"accel_momentum":-1.003216,"rvol_3bar":[1.895924,0.492135,0.808667],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":3053.0,"sell_vol":4859.0,"unclassified_vol":0.0,"imbalance":-0.228261,"bid":8.4,"ask":8.41,"spread_pct":0.118977,"quote_size_imbalance":null,"quote_age_s":0.777727},"context":{"vwap":7.996717,"price_vs_vwap_pct":5.105638,"ema9":8.441285,"ema20":8.435922,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-1.117647,"dist_to_hod_atr":1.980168,"atr":0.047976,"spread_atr":0.208439,"own_change_pct":-0.301226,"rel_strength_pct":{"SPY":-0.328953,"IWM":-0.339775}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.184587},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"381f98f136ce","ts":"2026-09-15T18:07:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 915.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.47; R:R 0.47 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7009 sh","plan":{"state":"WATCH","setup":"","stop":9.2554,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4083,"vwap":9.3561,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0672,"volatility":"high"},"price":9.4083,"volume":{"bars":277,"last_bar_volume":3069.0,"baseline_avg":5129.6,"bar_rvol":0.598292,"raw_accel":-0.183994,"smooth_accel":-0.203163,"accel_momentum":-0.44516,"rvol_3bar":[0.553849,0.750152,0.598292],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1566.0,"sell_vol":848.0,"unclassified_vol":0.0,"imbalance":0.297432,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":6.362513},"context":{"vwap":9.356077,"price_vs_vwap_pct":0.558169,"ema9":9.386077,"ema20":9.384041,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.27702,"dist_to_hod_atr":7.417851,"atr":0.016406,"spread_atr":0.609519,"own_change_pct":0.002129,"rel_strength_pct":{"SPY":-0.025598,"IWM":-0.036419}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.177951},"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":"f27d99248abe","ts":"2026-09-15T18:07:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6419,"target":10.935,"target_label":"prev_day_high","reward_risk":0.98,"pos_in_5d_range_pct":45.0,"room_to_5d_high_atr":1.2},"price":10.7901,"vwap":10.5787,"ext_from_open_pct":3.65,"max_ext_allowed_pct":4.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":0.0441,"volatility":"medium"},"price":10.7901,"volume":{"bars":277,"last_bar_volume":6985.0,"baseline_avg":8887.45,"bar_rvol":0.78594,"raw_accel":-0.333174,"smooth_accel":0.121027,"accel_momentum":0.194278,"rvol_3bar":[0.715063,1.159008,0.78594],"trend_3bar":"MIXED","projected_rvol":1.678772},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":2981.0,"sell_vol":1584.0,"unclassified_vol":0.0,"imbalance":0.306024,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.841185},"context":{"vwap":10.578544,"price_vs_vwap_pct":1.99986,"ema9":10.780898,"ema20":10.78401,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.370201,"dist_to_hod_atr":5.25565,"atr":0.028522,"spread_atr":0.35061,"own_change_pct":0.086265,"rel_strength_pct":{"SPY":0.058538,"IWM":0.047717}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.240516},"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":"3f883f52f9d3","ts":"2026-09-15T18:07:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 920.0s, plan says PASS; stop 9.23, target 9.46 (ceiling), R:R 0.48; R:R 0.48 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2331,"target":9.46,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":6.9,"room_to_5d_high_atr":3.24},"price":9.386,"vwap":9.3561,"ext_from_open_pct":0.39,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0197,"volatility":"high"},"price":9.386,"volume":{"bars":277,"last_bar_volume":3069.0,"baseline_avg":5129.6,"bar_rvol":0.598292,"raw_accel":-0.183994,"smooth_accel":-0.203163,"accel_momentum":-0.44516,"rvol_3bar":[0.553849,0.750152,0.598292],"trend_3bar":"MIXED","projected_rvol":1.230505},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1567.0,"sell_vol":850.0,"unclassified_vol":0.0,"imbalance":0.296649,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":3.310345},"context":{"vwap":9.356077,"price_vs_vwap_pct":0.319821,"ema9":9.386077,"ema20":9.384041,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.511018,"dist_to_hod_atr":8.77708,"atr":0.016406,"spread_atr":0.609519,"own_change_pct":0.002129,"rel_strength_pct":{"SPY":-0.025598,"IWM":-0.036419}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.177483},"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":"a575c35e15e9","ts":"2026-09-15T18:07:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6445,"target":10.935,"target_label":"prev_day_high","reward_risk":0.96,"pos_in_5d_range_pct":45.2,"room_to_5d_high_atr":1.19},"price":10.7927,"vwap":10.5787,"ext_from_open_pct":3.68,"max_ext_allowed_pct":3.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":0.0489,"volatility":"medium"},"price":10.7927,"volume":{"bars":277,"last_bar_volume":6985.0,"baseline_avg":8887.45,"bar_rvol":0.78594,"raw_accel":-0.333174,"smooth_accel":0.121027,"accel_momentum":0.194278,"rvol_3bar":[0.715063,1.159008,0.78594],"trend_3bar":"MIXED","projected_rvol":1.336716},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2769.0,"sell_vol":1759.0,"unclassified_vol":0.0,"imbalance":0.223057,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.732443},"context":{"vwap":10.578544,"price_vs_vwap_pct":2.024438,"ema9":10.780898,"ema20":10.78401,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.346435,"dist_to_hod_atr":5.164491,"atr":0.028522,"spread_atr":0.35061,"own_change_pct":0.086265,"rel_strength_pct":{"SPY":0.058538,"IWM":0.047717}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.175309},"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":"ff3fa3fd7012","ts":"2026-09-15T18:07:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6335,"target":10.935,"target_label":"prev_day_high","reward_risk":1.03,"pos_in_5d_range_pct":44.3,"room_to_5d_high_atr":1.21},"price":10.7817,"vwap":10.5787,"ext_from_open_pct":3.57,"max_ext_allowed_pct":4.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":0.0285,"volatility":"medium"},"price":10.7817,"volume":{"bars":277,"last_bar_volume":6985.0,"baseline_avg":8887.45,"bar_rvol":0.78594,"raw_accel":-0.333174,"smooth_accel":0.121027,"accel_momentum":0.194278,"rvol_3bar":[0.715063,1.159008,0.78594],"trend_3bar":"MIXED","projected_rvol":1.317588},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":3741.0,"sell_vol":2114.0,"unclassified_vol":0.0,"imbalance":0.277882,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.052627},"context":{"vwap":10.578544,"price_vs_vwap_pct":1.920454,"ema9":10.780898,"ema20":10.78401,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.446984,"dist_to_hod_atr":5.550162,"atr":0.028522,"spread_atr":0.35061,"own_change_pct":0.086265,"rel_strength_pct":{"SPY":0.058538,"IWM":0.047717}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.218399},"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":"41272c9f590c","ts":"2026-09-15T18:07:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 935.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7009 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3561,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0708,"volatility":"high"},"price":9.41,"volume":{"bars":277,"last_bar_volume":3069.0,"baseline_avg":5129.6,"bar_rvol":0.598292,"raw_accel":-0.183994,"smooth_accel":-0.203163,"accel_momentum":-0.44516,"rvol_3bar":[0.553849,0.750152,0.598292],"trend_3bar":"MIXED","projected_rvol":0.682704},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":805.0,"sell_vol":946.0,"unclassified_vol":0.0,"imbalance":-0.080525,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.916499},"context":{"vwap":9.356077,"price_vs_vwap_pct":0.576339,"ema9":9.386077,"ema20":9.384041,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":7.314233,"atr":0.016406,"spread_atr":0.609519,"own_change_pct":0.002129,"rel_strength_pct":{"SPY":-0.025598,"IWM":-0.036419}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.048178},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b582bd73b48f","ts":"2026-09-15T18:07:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6543,"target":10.935,"target_label":"prev_day_high","reward_risk":0.89,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":1.17},"price":10.8025,"vwap":10.5789,"ext_from_open_pct":3.77,"max_ext_allowed_pct":3.0,"volume_pace":0.918,"trend":"flat","recent_slope_pct":0.067,"volatility":"medium"},"price":10.8025,"volume":{"bars":277,"last_bar_volume":6985.0,"baseline_avg":8887.45,"bar_rvol":0.78594,"raw_accel":-0.333174,"smooth_accel":0.121027,"accel_momentum":0.194278,"rvol_3bar":[0.715063,1.159008,0.78594],"trend_3bar":"MIXED","projected_rvol":1.726544},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":5715.0,"sell_vol":2604.0,"unclassified_vol":0.0,"imbalance":0.373963,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":1.050842},"context":{"vwap":10.578544,"price_vs_vwap_pct":2.117078,"ema9":10.780898,"ema20":10.78401,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.256856,"dist_to_hod_atr":4.820893,"atr":0.028522,"spread_atr":0.35061,"own_change_pct":0.086265,"rel_strength_pct":{"SPY":0.058538,"IWM":0.047717}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.293913},"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":"e9bd02de472e","ts":"2026-09-15T18:07:40+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.08 below VWAP $5.12","plan":{"state":"PASS","setup":"","stop":4.575,"target":5.2307,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":0.7,"room_to_5d_high_atr":2.89},"price":5.075,"vwap":5.1185,"ext_from_open_pct":-3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.655,"trend":"flat","recent_slope_pct":-0.7405,"volatility":"high"},"price":5.075,"volume":{"bars":228,"last_bar_volume":136.0,"baseline_avg":1160.55,"bar_rvol":0.117186,"raw_accel":-0.928907,"smooth_accel":-0.774257,"accel_momentum":-6.516672,"rvol_3bar":[0.009301,1.787934,0.117186],"trend_3bar":"MIXED","projected_rvol":0.258498},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":4.95,"ask":5.2,"spread_pct":4.926108,"quote_size_imbalance":null,"quote_age_s":87.546734},"context":{"vwap":5.118568,"price_vs_vwap_pct":-0.851168,"ema9":5.158619,"ema20":5.16135,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-15.275459,"dist_to_hod_atr":14.73779,"atr":0.062085,"spread_atr":4.026718,"own_change_pct":-1.629914,"rel_strength_pct":{"SPY":-1.657641,"IWM":-1.668462}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.117186},"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":"b60bdb7252dc","ts":"2026-09-15T18:07:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 945.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.47; R:R 0.47 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2352,"target":9.46,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":7.0,"room_to_5d_high_atr":3.24},"price":9.3881,"vwap":9.3562,"ext_from_open_pct":0.41,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0242,"volatility":"high"},"price":9.3881,"volume":{"bars":277,"last_bar_volume":3069.0,"baseline_avg":5129.6,"bar_rvol":0.598292,"raw_accel":-0.183994,"smooth_accel":-0.203163,"accel_momentum":-0.44516,"rvol_3bar":[0.553849,0.750152,0.598292],"trend_3bar":"MIXED","projected_rvol":1.52468},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":166.0,"sell_vol":3480.0,"unclassified_vol":0.0,"imbalance":-0.908941,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":2.677829},"context":{"vwap":9.356077,"price_vs_vwap_pct":0.342267,"ema9":9.386077,"ema20":9.384041,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.488982,"dist_to_hod_atr":8.649081,"atr":0.016406,"spread_atr":0.609519,"own_change_pct":0.002129,"rel_strength_pct":{"SPY":-0.025598,"IWM":-0.036419}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.543813},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a41fba98064f","ts":"2026-09-15T18:07:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 950.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7009 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3562,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0708,"volatility":"high"},"price":9.41,"volume":{"bars":277,"last_bar_volume":3069.0,"baseline_avg":5129.6,"bar_rvol":0.598292,"raw_accel":-0.183994,"smooth_accel":-0.203163,"accel_momentum":-0.44516,"rvol_3bar":[0.553849,0.750152,0.598292],"trend_3bar":"MIXED","projected_rvol":1.374506},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":189.0,"sell_vol":3521.0,"unclassified_vol":0.0,"imbalance":-0.898113,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.284362},"context":{"vwap":9.356077,"price_vs_vwap_pct":0.576339,"ema9":9.386077,"ema20":9.384041,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":7.314233,"atr":0.016406,"spread_atr":0.609519,"own_change_pct":0.002129,"rel_strength_pct":{"SPY":-0.025598,"IWM":-0.036419}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.537334},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"88bedbd97523","ts":"2026-09-15T18:07:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 955.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.47; R:R 0.47 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2352,"target":9.46,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":7.0,"room_to_5d_high_atr":3.24},"price":9.3881,"vwap":9.3562,"ext_from_open_pct":0.41,"max_ext_allowed_pct":3.0,"volume_pace":0.5,"trend":"flat","recent_slope_pct":0.0242,"volatility":"high"},"price":9.3881,"volume":{"bars":277,"last_bar_volume":3069.0,"baseline_avg":5129.6,"bar_rvol":0.598292,"raw_accel":-0.183994,"smooth_accel":-0.203163,"accel_momentum":-0.44516,"rvol_3bar":[0.553849,0.750152,0.598292],"trend_3bar":"MIXED","projected_rvol":1.272614},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":189.0,"sell_vol":3667.0,"unclassified_vol":0.0,"imbalance":-0.901971,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":6.284362},"context":{"vwap":9.356077,"price_vs_vwap_pct":0.342267,"ema9":9.386077,"ema20":9.384041,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.488982,"dist_to_hod_atr":8.649081,"atr":0.016406,"spread_atr":0.609519,"own_change_pct":0.002129,"rel_strength_pct":{"SPY":-0.025598,"IWM":-0.036419}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.539642},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f9e7ae59a6ce","ts":"2026-09-15T18:08:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.6536,"target":10.935,"target_label":"prev_day_high","reward_risk":0.9,"pos_in_5d_range_pct":45.9,"room_to_5d_high_atr":1.18},"price":10.8018,"vwap":10.579,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.916,"trend":"flat","recent_slope_pct":0.0656,"volatility":"medium"},"price":10.8018,"volume":{"bars":278,"last_bar_volume":13940.0,"baseline_avg":8551.25,"bar_rvol":1.630171,"raw_accel":0.995705,"smooth_accel":0.335829,"accel_momentum":0.214802,"rvol_3bar":[1.159008,0.78594,1.630171],"trend_3bar":"MIXED","projected_rvol":0.037889},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3519.0,"sell_vol":1149.0,"unclassified_vol":0.0,"imbalance":0.507712,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":1.578083},"context":{"vwap":10.579016,"price_vs_vwap_pct":2.105902,"ema9":10.783718,"ema20":10.785056,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.263254,"dist_to_hod_atr":4.735403,"atr":0.029184,"spread_atr":0.342649,"own_change_pct":0.199564,"rel_strength_pct":{"SPY":0.186362,"IWM":0.148336}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.827658},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"08de691ca3ac","ts":"2026-09-15T18:08:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6314,"target":10.935,"target_label":"prev_day_high","reward_risk":1.05,"pos_in_5d_range_pct":44.2,"room_to_5d_high_atr":1.21},"price":10.7796,"vwap":10.579,"ext_from_open_pct":3.55,"max_ext_allowed_pct":3.0,"volume_pace":0.916,"trend":"flat","recent_slope_pct":0.0245,"volatility":"medium"},"price":10.7796,"volume":{"bars":278,"last_bar_volume":13940.0,"baseline_avg":8551.25,"bar_rvol":1.630171,"raw_accel":0.995705,"smooth_accel":0.335829,"accel_momentum":0.214802,"rvol_3bar":[1.159008,0.78594,1.630171],"trend_3bar":"MIXED","projected_rvol":0.07634},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":289.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":0.174797,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.004733},"context":{"vwap":10.579016,"price_vs_vwap_pct":1.896053,"ema9":10.783718,"ema20":10.785056,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.466179,"dist_to_hod_atr":5.496082,"atr":0.029184,"spread_atr":0.342649,"own_change_pct":0.199564,"rel_strength_pct":{"SPY":0.186362,"IWM":0.148336}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.284949},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"72cf287a5ed8","ts":"2026-09-15T18:08:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.6518,"target":10.935,"target_label":"prev_day_high","reward_risk":0.91,"pos_in_5d_range_pct":45.8,"room_to_5d_high_atr":1.18},"price":10.8,"vwap":10.579,"ext_from_open_pct":3.75,"max_ext_allowed_pct":4.0,"volume_pace":0.916,"trend":"flat","recent_slope_pct":0.0623,"volatility":"medium"},"price":10.8,"volume":{"bars":278,"last_bar_volume":13940.0,"baseline_avg":8551.25,"bar_rvol":1.630171,"raw_accel":0.995705,"smooth_accel":0.335829,"accel_momentum":0.214802,"rvol_3bar":[1.159008,0.78594,1.630171],"trend_3bar":"MIXED","projected_rvol":0.115539},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":296.0,"sell_vol":198.0,"unclassified_vol":0.0,"imbalance":0.198381,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.640867},"context":{"vwap":10.579016,"price_vs_vwap_pct":2.088888,"ema9":10.783718,"ema20":10.785056,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.279707,"dist_to_hod_atr":4.797079,"atr":0.029184,"spread_atr":0.342649,"own_change_pct":0.199564,"rel_strength_pct":{"SPY":0.186362,"IWM":0.148336}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.323394},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1587a33fb7d2","ts":"2026-09-15T18:08:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6568,"target":10.935,"target_label":"prev_day_high","reward_risk":0.88,"pos_in_5d_range_pct":46.2,"room_to_5d_high_atr":1.17},"price":10.805,"vwap":10.5791,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.915,"trend":"flat","recent_slope_pct":0.0716,"volatility":"medium"},"price":10.805,"volume":{"bars":278,"last_bar_volume":13940.0,"baseline_avg":8551.25,"bar_rvol":1.630171,"raw_accel":0.995705,"smooth_accel":0.335829,"accel_momentum":0.214802,"rvol_3bar":[1.159008,0.78594,1.630171],"trend_3bar":"MIXED","projected_rvol":0.447654},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1820.0,"sell_vol":1116.0,"unclassified_vol":0.0,"imbalance":0.239782,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.969552},"context":{"vwap":10.579016,"price_vs_vwap_pct":2.136151,"ema9":10.783718,"ema20":10.785056,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.234004,"dist_to_hod_atr":4.625755,"atr":0.029184,"spread_atr":0.342649,"own_change_pct":0.199564,"rel_strength_pct":{"SPY":0.186362,"IWM":0.148336}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.390886},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"aacb73e28cd8","ts":"2026-09-15T18:09:00+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":11.0965,"target":11.42,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":24.8,"room_to_5d_high_atr":1.24},"price":11.3133,"vwap":11.2922,"ext_from_open_pct":0.47,"max_ext_allowed_pct":3.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.0296,"volatility":"high"},"price":11.3133,"volume":{"bars":278,"last_bar_volume":104594.0,"baseline_avg":73375.45,"bar_rvol":1.425463,"raw_accel":-0.064312,"smooth_accel":0.483985,"accel_momentum":0.300525,"rvol_3bar":[2.097839,1.589528,1.425463],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":32708.0,"sell_vol":53874.0,"unclassified_vol":0.0,"imbalance":-0.244462,"bid":11.25,"ask":11.26,"spread_pct":0.088849,"quote_size_imbalance":null,"quote_age_s":0.351667},"context":{"vwap":11.29221,"price_vs_vwap_pct":0.186766,"ema9":11.310467,"ema20":11.326476,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.452091,"dist_to_hod_atr":3.619921,"atr":0.046051,"spread_atr":0.217152,"own_change_pct":-0.617556,"rel_strength_pct":{"SPY":-0.62417,"IWM":-0.672736}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.348471},"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":"d259ecf8075e","ts":"2026-09-15T18:09:05+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.26 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0439,"target":11.42,"target_label":"ceiling","reward_risk":0.73,"pos_in_5d_range_pct":21.1,"room_to_5d_high_atr":1.3},"price":11.2607,"vwap":11.2922,"ext_from_open_pct":0.01,"max_ext_allowed_pct":4.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.0353,"volatility":"high"},"price":11.2607,"volume":{"bars":279,"last_bar_volume":178088.0,"baseline_avg":74560.05,"bar_rvol":2.388518,"raw_accel":0.70266,"smooth_accel":0.337124,"accel_momentum":-0.146861,"rvol_3bar":[1.589528,1.425463,2.388518],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":87,"trade_rate":2.9,"buy_vol":45421.0,"sell_vol":35855.0,"unclassified_vol":0.0,"imbalance":0.117698,"bid":11.25,"ask":11.26,"spread_pct":0.088849,"quote_size_imbalance":null,"quote_age_s":0.512149},"context":{"vwap":11.292215,"price_vs_vwap_pct":-0.279084,"ema9":11.311033,"ema20":11.325221,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.910279,"dist_to_hod_atr":4.485583,"atr":0.04889,"spread_atr":0.204541,"own_change_pct":0.000884,"rel_strength_pct":{"SPY":-0.00573,"IWM":-0.054295}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.281123},"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":"c9a8fac103bc","ts":"2026-09-15T18:09:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1035.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.47; R:R 0.47 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7152 sh","plan":{"state":"WATCH","setup":"","stop":9.2554,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4083,"vwap":9.3563,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.499,"trend":"flat","recent_slope_pct":0.062,"volatility":"high"},"price":9.4083,"volume":{"bars":279,"last_bar_volume":4584.0,"baseline_avg":5201.15,"bar_rvol":0.881344,"raw_accel":-0.254149,"smooth_accel":-0.140999,"accel_momentum":-0.115246,"rvol_3bar":[0.598292,1.219711,0.881344],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":381.0,"sell_vol":272.0,"unclassified_vol":0.0,"imbalance":0.166922,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":5.538864},"context":{"vwap":9.356302,"price_vs_vwap_pct":0.555752,"ema9":9.392049,"ema20":9.387443,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.27702,"dist_to_hod_atr":7.166402,"atr":0.016982,"spread_atr":0.588858,"own_change_pct":0.209997,"rel_strength_pct":{"SPY":0.203383,"IWM":0.154817}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.147116},"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":"e8effa72b14b","ts":"2026-09-15T18:09:15+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.88 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.6984,"target":13.2,"target_label":"ceiling","reward_risk":1.77,"pos_in_5d_range_pct":41.9,"room_to_5d_high_atr":1.2},"price":12.8792,"vwap":12.9017,"ext_from_open_pct":-1.31,"max_ext_allowed_pct":3.0,"volume_pace":0.737,"trend":"flat","recent_slope_pct":-0.0544,"volatility":"medium"},"price":12.8792,"volume":{"bars":278,"last_bar_volume":278.0,"baseline_avg":725.7,"bar_rvol":0.383078,"raw_accel":0.532314,"smooth_accel":-0.37127,"accel_momentum":-0.501928,"rvol_3bar":[0.541657,0.190942,0.383078],"trend_3bar":"MIXED","projected_rvol":0.060631},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":4.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":-0.724138,"bid":12.91,"ask":12.97,"spread_pct":0.463679,"quote_size_imbalance":null,"quote_age_s":39.986967},"context":{"vwap":12.901671,"price_vs_vwap_pct":-0.174169,"ema9":12.904881,"ema20":12.894601,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.236664,"dist_to_hod_atr":9.238163,"atr":0.046633,"spread_atr":1.286652,"own_change_pct":0.485029,"rel_strength_pct":{"SPY":0.478415,"IWM":0.42985}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.277402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"215e8a90d685","ts":"2026-09-15T18:09:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1040.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.42; R:R 0.42 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2424,"target":9.46,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.3953,"vwap":9.3563,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.499,"trend":"flat","recent_slope_pct":0.0344,"volatility":"high"},"price":9.3953,"volume":{"bars":279,"last_bar_volume":4584.0,"baseline_avg":5201.15,"bar_rvol":0.881344,"raw_accel":-0.254149,"smooth_accel":-0.140999,"accel_momentum":-0.115246,"rvol_3bar":[0.598292,1.219711,0.881344],"trend_3bar":"MIXED","projected_rvol":0.246868},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":60.0,"sell_vol":332.0,"unclassified_vol":0.0,"imbalance":-0.693878,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.311178},"context":{"vwap":9.356302,"price_vs_vwap_pct":0.416808,"ema9":9.392049,"ema20":9.387443,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.413431,"dist_to_hod_atr":7.931918,"atr":0.016982,"spread_atr":0.588858,"own_change_pct":0.209997,"rel_strength_pct":{"SPY":0.203383,"IWM":0.154817}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.611545},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"baefcf4b34df","ts":"2026-09-15T18:09:20+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7592,"target":13.2,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":1.12},"price":12.94,"vwap":12.9017,"ext_from_open_pct":-0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.738,"trend":"flat","recent_slope_pct":0.0397,"volatility":"medium"},"price":12.94,"volume":{"bars":278,"last_bar_volume":278.0,"baseline_avg":725.7,"bar_rvol":0.383078,"raw_accel":0.532314,"smooth_accel":-0.37127,"accel_momentum":-0.501928,"rvol_3bar":[0.541657,0.190942,0.383078],"trend_3bar":"MIXED","projected_rvol":0.463001},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":101.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.603175,"bid":12.91,"ask":12.97,"spread_pct":0.463679,"quote_size_imbalance":null,"quote_age_s":44.986967},"context":{"vwap":12.901671,"price_vs_vwap_pct":0.297088,"ema9":12.904881,"ema20":12.894601,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.779865,"dist_to_hod_atr":7.934355,"atr":0.046633,"spread_atr":1.286652,"own_change_pct":0.485029,"rel_strength_pct":{"SPY":0.478415,"IWM":0.42985}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.231063},"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":"c8b39cac6b05","ts":"2026-09-15T18:09:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1050.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.43; R:R 0.43 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7152 sh","plan":{"state":"WATCH","setup":"","stop":9.2621,"target":9.48,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":3.2},"price":9.415,"vwap":9.3563,"ext_from_open_pct":0.7,"max_ext_allowed_pct":4.0,"volume_pace":0.499,"trend":"flat","recent_slope_pct":0.0763,"volatility":"high"},"price":9.415,"volume":{"bars":279,"last_bar_volume":4584.0,"baseline_avg":5201.15,"bar_rvol":0.881344,"raw_accel":-0.254149,"smooth_accel":-0.140999,"accel_momentum":-0.115246,"rvol_3bar":[0.598292,1.219711,0.881344],"trend_3bar":"MIXED","projected_rvol":0.606327},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":906.0,"sell_vol":408.0,"unclassified_vol":0.0,"imbalance":0.378995,"bid":9.41,"ask":9.42,"spread_pct":0.106213,"quote_size_imbalance":null,"quote_age_s":0.06802},"context":{"vwap":9.356302,"price_vs_vwap_pct":0.627361,"ema9":9.392049,"ema20":9.387443,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.206716,"dist_to_hod_atr":6.771868,"atr":0.016982,"spread_atr":0.588858,"own_change_pct":0.209997,"rel_strength_pct":{"SPY":0.203383,"IWM":0.154817}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.334025},"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":"a5b74ffe45ea","ts":"2026-09-15T18:09:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6346,"target":10.935,"target_label":"prev_day_high","reward_risk":1.03,"pos_in_5d_range_pct":44.4,"room_to_5d_high_atr":1.21},"price":10.7828,"vwap":10.5793,"ext_from_open_pct":3.58,"max_ext_allowed_pct":4.0,"volume_pace":0.913,"trend":"flat","recent_slope_pct":-0.0019,"volatility":"medium"},"price":10.7828,"volume":{"bars":279,"last_bar_volume":3756.0,"baseline_avg":8815.8,"bar_rvol":0.426053,"raw_accel":-0.73056,"smooth_accel":-0.025083,"accel_momentum":-0.360912,"rvol_3bar":[0.78594,1.630171,0.426053],"trend_3bar":"MIXED","projected_rvol":0.589396},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1909.0,"sell_vol":1210.0,"unclassified_vol":0.0,"imbalance":0.22411,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":1.813981},"context":{"vwap":10.579142,"price_vs_vwap_pct":1.925089,"ema9":10.783434,"ema20":10.784794,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.436929,"dist_to_hod_atr":5.370457,"atr":0.029271,"spread_atr":0.341632,"own_change_pct":0.073322,"rel_strength_pct":{"SPY":0.066708,"IWM":0.018143}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.095483},"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":"1ece201f70ee","ts":"2026-09-15T18:09:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6381,"target":10.935,"target_label":"prev_day_high","reward_risk":1.0,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.2},"price":10.7863,"vwap":10.5793,"ext_from_open_pct":3.61,"max_ext_allowed_pct":3.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.0045,"volatility":"medium"},"price":10.7863,"volume":{"bars":279,"last_bar_volume":3756.0,"baseline_avg":8815.8,"bar_rvol":0.426053,"raw_accel":-0.73056,"smooth_accel":-0.025083,"accel_momentum":-0.360912,"rvol_3bar":[0.78594,1.630171,0.426053],"trend_3bar":"MIXED","projected_rvol":0.581229},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1478.0,"sell_vol":746.0,"unclassified_vol":0.0,"imbalance":0.329137,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.93636},"context":{"vwap":10.579142,"price_vs_vwap_pct":1.958173,"ema9":10.783434,"ema20":10.784794,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.404936,"dist_to_hod_atr":5.250886,"atr":0.029271,"spread_atr":0.341632,"own_change_pct":0.073322,"rel_strength_pct":{"SPY":0.066708,"IWM":0.018143}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.14023},"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":"6a4a1e33b62e","ts":"2026-09-15T18:09:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1075.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2472,"target":9.46,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":3.22},"price":9.4001,"vwap":9.3564,"ext_from_open_pct":0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.499,"trend":"flat","recent_slope_pct":0.0446,"volatility":"high"},"price":9.4001,"volume":{"bars":279,"last_bar_volume":4584.0,"baseline_avg":5201.15,"bar_rvol":0.881344,"raw_accel":-0.254149,"smooth_accel":-0.140999,"accel_momentum":-0.115246,"rvol_3bar":[0.598292,1.219711,0.881344],"trend_3bar":"MIXED","projected_rvol":1.317862},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":2740.0,"sell_vol":2538.0,"unclassified_vol":0.0,"imbalance":0.038272,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":3.554628},"context":{"vwap":9.356302,"price_vs_vwap_pct":0.46811,"ema9":9.392049,"ema20":9.387443,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.363064,"dist_to_hod_atr":7.649266,"atr":0.016982,"spread_atr":0.588858,"own_change_pct":0.209997,"rel_strength_pct":{"SPY":0.203383,"IWM":0.154817}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.033731},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"09294f3e8260","ts":"2026-09-15T18:10:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"held 900.0s, plan says PASS; stop 5.69, target 5.83 (prev_day_high), R:R 0.45; R:R 0.45 < 2.0 at 5.79; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":5.6854,"target":5.83,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":91.7,"room_to_5d_high_atr":0.11},"price":5.785,"vwap":5.7518,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":5.785,"volume":{"bars":280,"last_bar_volume":1002.0,"baseline_avg":3537.2,"bar_rvol":0.283275,"raw_accel":-0.331108,"smooth_accel":0.025852,"accel_momentum":0.813822,"rvol_3bar":[0.540674,0.425641,0.283275],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":281.0,"sell_vol":348.0,"unclassified_vol":0.0,"imbalance":-0.106518,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":4.630021},"context":{"vwap":5.751804,"price_vs_vwap_pct":0.577144,"ema9":5.783388,"ema20":5.782281,"ema_stack":true,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.111111,"dist_to_hod_atr":6.900584,"atr":0.009419,"spread_atr":1.061628,"own_change_pct":0.008646,"rel_strength_pct":{"SPY":-0.017097,"IWM":-0.080701}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.030174},"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":"c1a37b779b6e","ts":"2026-09-15T18:10:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.6619,"target":10.935,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.16},"price":10.8101,"vwap":10.5795,"ext_from_open_pct":3.84,"max_ext_allowed_pct":4.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.0534,"volatility":"medium"},"price":10.8101,"volume":{"bars":280,"last_bar_volume":7756.0,"baseline_avg":8204.05,"bar_rvol":0.945387,"raw_accel":1.064963,"smooth_accel":0.051996,"accel_momentum":0.077079,"rvol_3bar":[1.630171,0.426053,0.945387],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":6229.0,"sell_vol":1422.0,"unclassified_vol":0.0,"imbalance":0.628284,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.751921},"context":{"vwap":10.579417,"price_vs_vwap_pct":2.180487,"ema9":10.789248,"ema20":10.787432,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.187386,"dist_to_hod_atr":4.400979,"atr":0.029516,"spread_atr":0.338797,"own_change_pct":0.358273,"rel_strength_pct":{"SPY":0.33253,"IWM":0.268927}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.593971},"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":"923f1848ce1f","ts":"2026-09-15T18:10:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6367,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.7849,"vwap":10.5795,"ext_from_open_pct":3.6,"max_ext_allowed_pct":3.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.0068,"volatility":"medium"},"price":10.7849,"volume":{"bars":280,"last_bar_volume":7756.0,"baseline_avg":8204.05,"bar_rvol":0.945387,"raw_accel":1.064963,"smooth_accel":0.051996,"accel_momentum":0.077079,"rvol_3bar":[1.630171,0.426053,0.945387],"trend_3bar":"MIXED","projected_rvol":1.720614},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":6284.0,"sell_vol":1435.0,"unclassified_vol":0.0,"imbalance":0.62819,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.587998},"context":{"vwap":10.579417,"price_vs_vwap_pct":1.942289,"ema9":10.789248,"ema20":10.787432,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.417733,"dist_to_hod_atr":5.254748,"atr":0.029516,"spread_atr":0.338797,"own_change_pct":0.358273,"rel_strength_pct":{"SPY":0.33253,"IWM":0.268927}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.593883},"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":"2b16330c3873","ts":"2026-09-15T18:10:25+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.6718,"target":10.935,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":1.15},"price":10.82,"vwap":10.5795,"ext_from_open_pct":3.94,"max_ext_allowed_pct":4.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.0718,"volatility":"medium"},"price":10.82,"volume":{"bars":280,"last_bar_volume":7756.0,"baseline_avg":8204.05,"bar_rvol":0.945387,"raw_accel":1.064963,"smooth_accel":0.051996,"accel_momentum":0.077079,"rvol_3bar":[1.630171,0.426053,0.945387],"trend_3bar":"MIXED","projected_rvol":1.072446},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":3793.0,"sell_vol":1306.0,"unclassified_vol":0.0,"imbalance":0.487743,"bid":10.81,"ask":10.82,"spread_pct":0.092464,"quote_size_imbalance":null,"quote_age_s":0.40989},"context":{"vwap":10.579417,"price_vs_vwap_pct":2.274065,"ema9":10.789248,"ema20":10.787432,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.096892,"dist_to_hod_atr":4.065569,"atr":0.029516,"spread_atr":0.338797,"own_change_pct":0.358273,"rel_strength_pct":{"SPY":0.33253,"IWM":0.268927}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.461105},"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":"92979698c604","ts":"2026-09-15T18:10:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1110.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.45; R:R 0.45 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7175 sh","plan":{"state":"WATCH","setup":"","stop":9.2576,"target":9.48,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4105,"vwap":9.3564,"ext_from_open_pct":0.65,"max_ext_allowed_pct":4.0,"volume_pace":0.498,"trend":"flat","recent_slope_pct":0.0337,"volatility":"high"},"price":9.4105,"volume":{"bars":280,"last_bar_volume":5866.0,"baseline_avg":5222.8,"bar_rvol":1.123152,"raw_accel":0.279668,"smooth_accel":0.72426,"accel_momentum":0.865258,"rvol_3bar":[1.219711,0.881344,1.123152],"trend_3bar":"MIXED","projected_rvol":0.196676},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":390.0,"sell_vol":192.0,"unclassified_vol":0.0,"imbalance":0.340206,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.347857},"context":{"vwap":9.356431,"price_vs_vwap_pct":0.577883,"ema9":9.3937,"ema20":9.388668,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.253935,"dist_to_hod_atr":6.785194,"atr":0.017612,"spread_atr":0.567799,"own_change_pct":0.17797,"rel_strength_pct":{"SPY":0.152227,"IWM":0.088623}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.382103},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7f45dd602627","ts":"2026-09-15T18:10:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6768,"target":10.935,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":47.7,"room_to_5d_high_atr":1.14},"price":10.825,"vwap":10.5796,"ext_from_open_pct":3.99,"max_ext_allowed_pct":3.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":0.081,"volatility":"medium"},"price":10.825,"volume":{"bars":280,"last_bar_volume":7756.0,"baseline_avg":8204.05,"bar_rvol":0.945387,"raw_accel":1.064963,"smooth_accel":0.051996,"accel_momentum":0.077079,"rvol_3bar":[1.630171,0.426053,0.945387],"trend_3bar":"MIXED","projected_rvol":1.022666},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":3127.0,"sell_vol":1068.0,"unclassified_vol":0.0,"imbalance":0.490822,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":2.290191},"context":{"vwap":10.579417,"price_vs_vwap_pct":2.321327,"ema9":10.789248,"ema20":10.787432,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.051188,"dist_to_hod_atr":3.896171,"atr":0.029516,"spread_atr":0.338797,"own_change_pct":0.358273,"rel_strength_pct":{"SPY":0.33253,"IWM":0.268927}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.464017},"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":"202d51683ae5","ts":"2026-09-15T18:10:35+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.6369,"target":10.935,"target_label":"prev_day_high","reward_risk":1.01,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.2},"price":10.7851,"vwap":10.5796,"ext_from_open_pct":3.6,"max_ext_allowed_pct":4.0,"volume_pace":0.911,"trend":"flat","recent_slope_pct":0.0071,"volatility":"medium"},"price":10.7851,"volume":{"bars":280,"last_bar_volume":7756.0,"baseline_avg":8204.05,"bar_rvol":0.945387,"raw_accel":1.064963,"smooth_accel":0.051996,"accel_momentum":0.077079,"rvol_3bar":[1.630171,0.426053,0.945387],"trend_3bar":"MIXED","projected_rvol":0.941974},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":3285.0,"sell_vol":778.0,"unclassified_vol":0.0,"imbalance":0.617032,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.382755},"context":{"vwap":10.579417,"price_vs_vwap_pct":1.944179,"ema9":10.789248,"ema20":10.787432,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.415905,"dist_to_hod_atr":5.247972,"atr":0.029516,"spread_atr":0.338797,"own_change_pct":0.358273,"rel_strength_pct":{"SPY":0.33253,"IWM":0.268927}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.583334},"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":"a9dd7270f9bf","ts":"2026-09-15T18:10:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1120.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2475,"target":9.46,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":3.22},"price":9.4004,"vwap":9.3564,"ext_from_open_pct":0.54,"max_ext_allowed_pct":4.0,"volume_pace":0.498,"trend":"flat","recent_slope_pct":0.0122,"volatility":"high"},"price":9.4004,"volume":{"bars":280,"last_bar_volume":5866.0,"baseline_avg":5222.8,"bar_rvol":1.123152,"raw_accel":0.279668,"smooth_accel":0.72426,"accel_momentum":0.865258,"rvol_3bar":[1.219711,0.881344,1.123152],"trend_3bar":"MIXED","projected_rvol":0.148689},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":324.0,"sell_vol":85.0,"unclassified_vol":0.0,"imbalance":0.584352,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.006239},"context":{"vwap":9.356431,"price_vs_vwap_pct":0.469936,"ema9":9.3937,"ema20":9.388668,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.359916,"dist_to_hod_atr":7.35867,"atr":0.017612,"spread_atr":0.567799,"own_change_pct":0.17797,"rel_strength_pct":{"SPY":0.152227,"IWM":0.088623}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.656316},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"36970ce41ce4","ts":"2026-09-15T18:10:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6409,"target":10.935,"target_label":"prev_day_high","reward_risk":0.98,"pos_in_5d_range_pct":44.9,"room_to_5d_high_atr":1.2},"price":10.7891,"vwap":10.5799,"ext_from_open_pct":3.64,"max_ext_allowed_pct":3.0,"volume_pace":0.912,"trend":"flat","recent_slope_pct":0.0145,"volatility":"medium"},"price":10.7891,"volume":{"bars":280,"last_bar_volume":7756.0,"baseline_avg":8204.05,"bar_rvol":0.945387,"raw_accel":1.064963,"smooth_accel":0.051996,"accel_momentum":0.077079,"rvol_3bar":[1.630171,0.426053,0.945387],"trend_3bar":"MIXED","projected_rvol":2.567025},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":6214.0,"sell_vol":4467.0,"unclassified_vol":0.0,"imbalance":0.163561,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.048583},"context":{"vwap":10.579417,"price_vs_vwap_pct":1.981989,"ema9":10.789248,"ema20":10.787432,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.379342,"dist_to_hod_atr":5.112453,"atr":0.029516,"spread_atr":0.338797,"own_change_pct":0.358273,"rel_strength_pct":{"SPY":0.33253,"IWM":0.268927}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.154629},"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":"b0c14252a474","ts":"2026-09-15T18:10:45+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"spread 6.07% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":4.64,"target":5.3208,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":2.74},"price":5.26,"vwap":5.1186,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":4.0,"volume_pace":0.648,"trend":"flat","recent_slope_pct":0.9103,"volatility":"high"},"price":5.26,"volume":{"bars":230,"last_bar_volume":100.0,"baseline_avg":837.3,"bar_rvol":0.119432,"raw_accel":-0.522274,"smooth_accel":-0.958254,"accel_momentum":-0.207285,"rvol_3bar":[0.117186,0.204489,0.119432],"trend_3bar":"MIXED","projected_rvol":0.159242},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":100.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":4.95,"ask":5.26,"spread_pct":6.072478,"quote_size_imbalance":null,"quote_age_s":3.030059},"context":{"vwap":5.118517,"price_vs_vwap_pct":2.764139,"ema9":5.128516,"ema20":5.145685,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-12.186978,"dist_to_hod_atr":12.766548,"atr":0.057181,"spread_atr":5.421411,"own_change_pct":-2.684564,"rel_strength_pct":{"SPY":-2.710307,"IWM":-2.77391}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.119432},"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":"47e6bf1ee104","ts":"2026-09-15T18:10:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1130.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7175 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3564,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.498,"trend":"flat","recent_slope_pct":0.0327,"volatility":"high"},"price":9.41,"volume":{"bars":280,"last_bar_volume":5866.0,"baseline_avg":5222.8,"bar_rvol":1.123152,"raw_accel":0.279668,"smooth_accel":0.72426,"accel_momentum":0.865258,"rvol_3bar":[1.219711,0.881344,1.123152],"trend_3bar":"MIXED","projected_rvol":0.129432},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":242.0,"sell_vol":57.0,"unclassified_vol":0.0,"imbalance":0.618729,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":2.008588},"context":{"vwap":9.356431,"price_vs_vwap_pct":0.572539,"ema9":9.3937,"ema20":9.388668,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":6.813584,"atr":0.017612,"spread_atr":0.567799,"own_change_pct":0.17797,"rel_strength_pct":{"SPY":0.152227,"IWM":0.088623}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.694927},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5f2746472f8e","ts":"2026-09-15T18:10:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1140.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.44; R:R 0.44 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2402,"target":9.46,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":7.2,"room_to_5d_high_atr":3.23},"price":9.3931,"vwap":9.3565,"ext_from_open_pct":0.46,"max_ext_allowed_pct":3.0,"volume_pace":0.498,"trend":"flat","recent_slope_pct":-0.0033,"volatility":"high"},"price":9.3931,"volume":{"bars":280,"last_bar_volume":5866.0,"baseline_avg":5222.8,"bar_rvol":1.123152,"raw_accel":0.279668,"smooth_accel":0.72426,"accel_momentum":0.865258,"rvol_3bar":[1.219711,0.881344,1.123152],"trend_3bar":"MIXED","projected_rvol":0.203861},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":308.0,"sell_vol":240.0,"unclassified_vol":0.0,"imbalance":0.124088,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.395863},"context":{"vwap":9.356431,"price_vs_vwap_pct":0.391914,"ema9":9.3937,"ema20":9.388668,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.436516,"dist_to_hod_atr":7.773163,"atr":0.017612,"spread_atr":0.567799,"own_change_pct":0.17797,"rel_strength_pct":{"SPY":0.152227,"IWM":0.088623}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.139369},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6ff82cf6e9be","ts":"2026-09-15T18:11:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1145.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7175 sh","plan":{"state":"WATCH","setup":"","stop":9.257,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4099,"vwap":9.3565,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":0.0324,"volatility":"high"},"price":9.4099,"volume":{"bars":280,"last_bar_volume":5866.0,"baseline_avg":5222.8,"bar_rvol":1.123152,"raw_accel":0.279668,"smooth_accel":0.72426,"accel_momentum":0.865258,"rvol_3bar":[1.219711,0.881344,1.123152],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":310.0,"sell_vol":254.0,"unclassified_vol":0.0,"imbalance":0.099291,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":3.355329},"context":{"vwap":9.356431,"price_vs_vwap_pct":0.57147,"ema9":9.3937,"ema20":9.388668,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.260231,"dist_to_hod_atr":6.819262,"atr":0.017612,"spread_atr":0.567799,"own_change_pct":0.17797,"rel_strength_pct":{"SPY":0.162788,"IWM":0.130676}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.111519},"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":"f592b749f321","ts":"2026-09-15T18:11:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1160.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 56402 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0767,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":0.018,"volatility":"low"},"price":10.095,"volume":{"bars":281,"last_bar_volume":22136.0,"baseline_avg":32308.8,"bar_rvol":0.685138,"raw_accel":-0.303067,"smooth_accel":0.443385,"accel_momentum":0.204423,"rvol_3bar":[0.659249,1.02282,0.685138],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":165,"trade_rate":5.5,"buy_vol":69178.0,"sell_vol":2783.0,"unclassified_vol":0.0,"imbalance":0.922653,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.385192},"context":{"vwap":10.076663,"price_vs_vwap_pct":0.181979,"ema9":10.086862,"ema20":10.083394,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.243609,"atr":0.012332,"spread_atr":0.810902,"own_change_pct":0.080357,"rel_strength_pct":{"SPY":0.065175,"IWM":0.033063}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.632145},"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":"cbe4b2c3668a","ts":"2026-09-15T18:11:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1165.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.43; R:R 0.43 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2418,"target":9.46,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.3947,"vwap":9.3565,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.498,"trend":"flat","recent_slope_pct":-0.0122,"volatility":"high"},"price":9.3947,"volume":{"bars":281,"last_bar_volume":996.0,"baseline_avg":5177.5,"bar_rvol":0.192371,"raw_accel":-0.830208,"smooth_accel":-0.11791,"accel_momentum":-0.84217,"rvol_3bar":[0.881344,1.123152,0.192371],"trend_3bar":"MIXED","projected_rvol":1.764365},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1234.0,"sell_vol":2032.0,"unclassified_vol":0.0,"imbalance":-0.244336,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.849753},"context":{"vwap":9.356454,"price_vs_vwap_pct":0.408769,"ema9":9.39694,"ema20":9.39069,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.419727,"dist_to_hod_atr":7.630076,"atr":0.017732,"spread_atr":0.563938,"own_change_pct":0.282414,"rel_strength_pct":{"SPY":0.267232,"IWM":0.235119}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.047003},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9346d0c34afd","ts":"2026-09-15T18:11:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1170.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.88; target 0.04 away > ~0.04 reachable in 104 min","plan":{"state":"PASS","setup":"","stop":10.0438,"target":10.13,"target_label":"premarket_high","reward_risk":0.88,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":4.22},"price":10.0897,"vwap":10.0767,"ext_from_open_pct":-0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":0.0075,"volatility":"low"},"price":10.0897,"volume":{"bars":281,"last_bar_volume":22136.0,"baseline_avg":32308.8,"bar_rvol":0.685138,"raw_accel":-0.303067,"smooth_accel":0.443385,"accel_momentum":0.204423,"rvol_3bar":[0.659249,1.02282,0.685138],"trend_3bar":"MIXED","projected_rvol":5.884341},"flow":{"window_s":30,"trades":163,"trade_rate":5.433333,"buy_vol":65874.0,"sell_vol":3186.0,"unclassified_vol":0.0,"imbalance":0.907732,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":4.530406},"context":{"vwap":10.076663,"price_vs_vwap_pct":0.129383,"ema9":10.086862,"ema20":10.083394,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.446966,"dist_to_hod_atr":3.673387,"atr":0.012332,"spread_atr":0.810902,"own_change_pct":0.080357,"rel_strength_pct":{"SPY":0.065175,"IWM":0.033063}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.621922},"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":"02d81ac3c20a","ts":"2026-09-15T18:11:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1170.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 6849 sh","plan":{"state":"WATCH","setup":"","stop":9.2573,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4102,"vwap":9.3565,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":0.0207,"volatility":"high"},"price":9.4102,"volume":{"bars":281,"last_bar_volume":996.0,"baseline_avg":5177.5,"bar_rvol":0.192371,"raw_accel":-0.830208,"smooth_accel":-0.11791,"accel_momentum":-0.84217,"rvol_3bar":[0.881344,1.123152,0.192371],"trend_3bar":"MIXED","projected_rvol":1.654853},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":1253.0,"sell_vol":2337.0,"unclassified_vol":0.0,"imbalance":-0.30195,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.098032},"context":{"vwap":9.356454,"price_vs_vwap_pct":0.57443,"ema9":9.39694,"ema20":9.39069,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.257083,"dist_to_hod_atr":6.755973,"atr":0.017732,"spread_atr":0.563938,"own_change_pct":0.282414,"rel_strength_pct":{"SPY":0.267232,"IWM":0.235119}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.058086},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8e8a3c96839b","ts":"2026-09-15T18:11:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1175.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 56402 sh","plan":{"state":"WATCH","setup":"","stop":10.0541,"target":10.13,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.0768,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":0.0279,"volatility":"low"},"price":10.1,"volume":{"bars":281,"last_bar_volume":22136.0,"baseline_avg":32308.8,"bar_rvol":0.685138,"raw_accel":-0.303067,"smooth_accel":0.443385,"accel_momentum":0.204423,"rvol_3bar":[0.659249,1.02282,0.685138],"trend_3bar":"MIXED","projected_rvol":4.895112},"flow":{"window_s":30,"trades":167,"trade_rate":5.566667,"buy_vol":62742.0,"sell_vol":3790.0,"unclassified_vol":0.0,"imbalance":0.88607,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.221688},"context":{"vwap":10.076663,"price_vs_vwap_pct":0.231599,"ema9":10.086862,"ema20":10.083394,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.838158,"atr":0.012332,"spread_atr":0.810902,"own_change_pct":0.080357,"rel_strength_pct":{"SPY":0.065175,"IWM":0.033063}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.60708},"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":"aef3f70ea780","ts":"2026-09-15T18:11:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1175.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.43; R:R 0.43 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.242,"target":9.46,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.3949,"vwap":9.3565,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0118,"volatility":"high"},"price":9.3949,"volume":{"bars":281,"last_bar_volume":996.0,"baseline_avg":5177.5,"bar_rvol":0.192371,"raw_accel":-0.830208,"smooth_accel":-0.11791,"accel_momentum":-0.84217,"rvol_3bar":[0.881344,1.123152,0.192371],"trend_3bar":"MIXED","projected_rvol":1.385611},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":1254.0,"sell_vol":2333.0,"unclassified_vol":0.0,"imbalance":-0.300808,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.047477},"context":{"vwap":9.356454,"price_vs_vwap_pct":0.410906,"ema9":9.39694,"ema20":9.39069,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.417629,"dist_to_hod_atr":7.618797,"atr":0.017732,"spread_atr":0.563938,"own_change_pct":0.282414,"rel_strength_pct":{"SPY":0.267232,"IWM":0.235119}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.057867},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"678cfa6b7bda","ts":"2026-09-15T18:11:35+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.11 below VWAP $5.12","plan":{"state":"PASS","setup":"","stop":4.4851,"target":5.3208,"target_label":"premarket_high","reward_risk":0.35,"pos_in_5d_range_pct":1.6,"room_to_5d_high_atr":2.87},"price":5.1051,"vwap":5.1186,"ext_from_open_pct":-3.13,"max_ext_allowed_pct":4.0,"volume_pace":0.646,"trend":"flat","recent_slope_pct":0.2636,"volatility":"high"},"price":5.1051,"volume":{"bars":231,"last_bar_volume":100.0,"baseline_avg":832.3,"bar_rvol":0.120149,"raw_accel":-0.519404,"smooth_accel":-0.805731,"accel_momentum":0.152523,"rvol_3bar":[0.204489,0.119432,0.120149],"trend_3bar":"MIXED","projected_rvol":0.00206},"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":4.95,"ask":5.26,"spread_pct":6.072478,"quote_size_imbalance":null,"quote_age_s":53.030059},"context":{"vwap":5.118572,"price_vs_vwap_pct":-0.263193,"ema9":5.154813,"ema20":5.156572,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.772955,"dist_to_hod_atr":13.344767,"atr":0.066311,"spread_atr":4.674966,"own_change_pct":0.575537,"rel_strength_pct":{"SPY":0.560355,"IWM":0.528242}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.120149},"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":"e2ec3ef62af1","ts":"2026-09-15T18:11:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1180.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 6849 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3565,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":0.0203,"volatility":"high"},"price":9.41,"volume":{"bars":281,"last_bar_volume":996.0,"baseline_avg":5177.5,"bar_rvol":0.192371,"raw_accel":-0.830208,"smooth_accel":-0.11791,"accel_momentum":-0.84217,"rvol_3bar":[0.881344,1.123152,0.192371],"trend_3bar":"MIXED","projected_rvol":1.287991},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1075.0,"sell_vol":1850.0,"unclassified_vol":0.0,"imbalance":-0.264957,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.408244},"context":{"vwap":9.356454,"price_vs_vwap_pct":0.572292,"ema9":9.39694,"ema20":9.39069,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":6.767252,"atr":0.017732,"spread_atr":0.563938,"own_change_pct":0.282414,"rel_strength_pct":{"SPY":0.267232,"IWM":0.235119}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.05097},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f3395bd31d9b","ts":"2026-09-15T18:11:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1185.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.43; R:R 0.43 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2421,"target":9.46,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.395,"vwap":9.3565,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0116,"volatility":"high"},"price":9.395,"volume":{"bars":281,"last_bar_volume":996.0,"baseline_avg":5177.5,"bar_rvol":0.192371,"raw_accel":-0.830208,"smooth_accel":-0.11791,"accel_momentum":-0.84217,"rvol_3bar":[0.881344,1.123152,0.192371],"trend_3bar":"MIXED","projected_rvol":1.162627},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":363.0,"sell_vol":1971.0,"unclassified_vol":0.0,"imbalance":-0.688946,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.409992},"context":{"vwap":9.356454,"price_vs_vwap_pct":0.411975,"ema9":9.39694,"ema20":9.39069,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.416579,"dist_to_hod_atr":7.613158,"atr":0.017732,"spread_atr":0.563938,"own_change_pct":0.282414,"rel_strength_pct":{"SPY":0.267232,"IWM":0.235119}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.132533},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2c2d4b47b293","ts":"2026-09-15T18:11:45+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 290.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; R:R 0.68 < 2.0 at 7.85; breakout: 1-min close > 7.90 on >= 14371 sh","plan":{"state":"WATCH","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7663,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0371,"volatility":"medium"},"price":7.85,"volume":{"bars":281,"last_bar_volume":1649.0,"baseline_avg":7699.65,"bar_rvol":0.214166,"raw_accel":-0.143338,"smooth_accel":-0.900018,"accel_momentum":-0.009732,"rvol_3bar":[0.163573,0.178262,0.214166],"trend_3bar":"ACCELERATING","projected_rvol":2.162869},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":11614.0,"sell_vol":467.0,"unclassified_vol":0.0,"imbalance":0.922689,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.250959},"context":{"vwap":7.766018,"price_vs_vwap_pct":1.081408,"ema9":7.83161,"ema20":7.830619,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.506971,"dist_to_hod_atr":2.490432,"atr":0.016061,"spread_atr":0.622608,"own_change_pct":-0.021698,"rel_strength_pct":{"SPY":-0.03688,"IWM":-0.068992}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.197608},"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":"6ad155b4fa38","ts":"2026-09-15T18:11:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1190.0s, plan says WATCH; stop 9.30, target 9.48 (premarket_high), R:R 0.20; R:R 0.20 < 2.0 at 9.45; breakout: 1-min close > 9.47 on >= 6849 sh","plan":{"state":"WATCH","setup":"","stop":9.2971,"target":9.48,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":9.9,"room_to_5d_high_atr":3.14},"price":9.45,"vwap":9.3566,"ext_from_open_pct":1.07,"max_ext_allowed_pct":4.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":0.1053,"volatility":"high"},"price":9.45,"volume":{"bars":281,"last_bar_volume":996.0,"baseline_avg":5177.5,"bar_rvol":0.192371,"raw_accel":-0.830208,"smooth_accel":-0.11791,"accel_momentum":-0.84217,"rvol_3bar":[0.881344,1.123152,0.192371],"trend_3bar":"MIXED","projected_rvol":1.088556},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":532.0,"sell_vol":757.0,"unclassified_vol":0.0,"imbalance":-0.174554,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.422003},"context":{"vwap":9.356454,"price_vs_vwap_pct":0.999805,"ema9":9.39694,"ema20":9.39069,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-0.839454,"dist_to_hod_atr":4.511501,"atr":0.017732,"spread_atr":0.563938,"own_change_pct":0.282414,"rel_strength_pct":{"SPY":0.267232,"IWM":0.235119}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.033579},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ef3e2346f16c","ts":"2026-09-15T18:11:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1195.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.42; R:R 0.42 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2423,"target":9.46,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.3952,"vwap":9.3566,"ext_from_open_pct":0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0112,"volatility":"high"},"price":9.3952,"volume":{"bars":281,"last_bar_volume":996.0,"baseline_avg":5177.5,"bar_rvol":0.192371,"raw_accel":-0.830208,"smooth_accel":-0.11791,"accel_momentum":-0.84217,"rvol_3bar":[0.881344,1.123152,0.192371],"trend_3bar":"MIXED","projected_rvol":0.982482},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":531.0,"sell_vol":663.0,"unclassified_vol":0.0,"imbalance":-0.110553,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.154298},"context":{"vwap":9.356454,"price_vs_vwap_pct":0.414113,"ema9":9.39694,"ema20":9.39069,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.414481,"dist_to_hod_atr":7.601879,"atr":0.017732,"spread_atr":0.563938,"own_change_pct":0.282414,"rel_strength_pct":{"SPY":0.267232,"IWM":0.235119}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.021267},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a3eef3e3eff8","ts":"2026-09-15T18:11:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 300.0s, plan says PASS; stop 7.76, target 7.91 (prev_day_high), R:R 0.72; target 0.06 away > ~0.06 reachable in 103 min","plan":{"state":"PASS","setup":"","stop":7.7588,"target":7.91,"target_label":"prev_day_high","reward_risk":0.72,"pos_in_5d_range_pct":71.0,"room_to_5d_high_atr":0.45},"price":7.8467,"vwap":7.7663,"ext_from_open_pct":1.91,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0287,"volatility":"medium"},"price":7.8467,"volume":{"bars":281,"last_bar_volume":1649.0,"baseline_avg":7699.65,"bar_rvol":0.214166,"raw_accel":-0.143338,"smooth_accel":-0.900018,"accel_momentum":-0.009732,"rvol_3bar":[0.163573,0.178262,0.214166],"trend_3bar":"ACCELERATING","projected_rvol":1.857038},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":11979.0,"sell_vol":469.0,"unclassified_vol":0.0,"imbalance":0.924647,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.214751},"context":{"vwap":7.766018,"price_vs_vwap_pct":1.038915,"ema9":7.83161,"ema20":7.830619,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.548796,"dist_to_hod_atr":2.695892,"atr":0.016061,"spread_atr":0.622608,"own_change_pct":-0.021698,"rel_strength_pct":{"SPY":-0.03688,"IWM":-0.068992}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.198027},"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":"ce4971a2e6ca","ts":"2026-09-15T18:11:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1205.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.85; target 0.04 away > ~0.04 reachable in 103 min","plan":{"state":"PASS","setup":"","stop":10.0452,"target":10.13,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":4.22},"price":10.0911,"vwap":10.0768,"ext_from_open_pct":0.01,"max_ext_allowed_pct":4.0,"volume_pace":0.672,"trend":"flat","recent_slope_pct":0.0103,"volatility":"low"},"price":10.0911,"volume":{"bars":281,"last_bar_volume":22136.0,"baseline_avg":32308.8,"bar_rvol":0.685138,"raw_accel":-0.303067,"smooth_accel":0.443385,"accel_momentum":0.204423,"rvol_3bar":[0.659249,1.02282,0.685138],"trend_3bar":"MIXED","projected_rvol":2.42261},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":5261.0,"sell_vol":590.0,"unclassified_vol":0.0,"imbalance":0.798325,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":6.369161},"context":{"vwap":10.076663,"price_vs_vwap_pct":0.143276,"ema9":10.086862,"ema20":10.083394,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.433152,"dist_to_hod_atr":3.559861,"atr":0.012332,"spread_atr":0.810902,"own_change_pct":0.080357,"rel_strength_pct":{"SPY":0.065175,"IWM":0.033063}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.546963},"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":"6bfae98d326a","ts":"2026-09-15T18:12:00+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 305.0s, plan says WATCH; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; R:R 0.68 < 2.0 at 7.85; breakout: 1-min close > 7.90 on >= 14371 sh","plan":{"state":"WATCH","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7663,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0371,"volatility":"medium"},"price":7.85,"volume":{"bars":281,"last_bar_volume":1649.0,"baseline_avg":7699.65,"bar_rvol":0.214166,"raw_accel":-0.143338,"smooth_accel":-0.900018,"accel_momentum":-0.009732,"rvol_3bar":[0.163573,0.178262,0.214166],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":12025.0,"sell_vol":475.0,"unclassified_vol":0.0,"imbalance":0.924,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.056562},"context":{"vwap":7.766018,"price_vs_vwap_pct":1.081408,"ema9":7.83161,"ema20":7.830619,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.506971,"dist_to_hod_atr":2.490432,"atr":0.016061,"spread_atr":0.622608,"own_change_pct":-0.021698,"rel_strength_pct":{"SPY":-0.042157,"IWM":-0.100516}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.197889},"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":"9d0ac82305f4","ts":"2026-09-15T18:12:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1210.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 56402 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0768,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.672,"trend":"flat","recent_slope_pct":0.018,"volatility":"low"},"price":10.095,"volume":{"bars":281,"last_bar_volume":22136.0,"baseline_avg":32308.8,"bar_rvol":0.685138,"raw_accel":-0.303067,"smooth_accel":0.443385,"accel_momentum":0.204423,"rvol_3bar":[0.659249,1.02282,0.685138],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":7384.0,"sell_vol":691.0,"unclassified_vol":0.0,"imbalance":0.828854,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.424971},"context":{"vwap":10.076663,"price_vs_vwap_pct":0.181979,"ema9":10.086862,"ema20":10.083394,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.243609,"atr":0.012332,"spread_atr":0.810902,"own_change_pct":0.080357,"rel_strength_pct":{"SPY":0.059898,"IWM":0.001538}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.56788},"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":"1362a8a201d5","ts":"2026-09-15T18:12:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 310.0s, plan says PASS; stop 7.76, target 7.91 (prev_day_high), R:R 0.74; target 0.07 away > ~0.06 reachable in 103 min","plan":{"state":"PASS","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7663,"ext_from_open_pct":1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0503,"volatility":"medium"},"price":7.845,"volume":{"bars":282,"last_bar_volume":13159.0,"baseline_avg":7725.8,"bar_rvol":1.703254,"raw_accel":5.813016,"smooth_accel":0.556056,"accel_momentum":1.456073,"rvol_3bar":[0.178262,0.214166,1.703254],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":12126.0,"sell_vol":1075.0,"unclassified_vol":0.0,"imbalance":0.837134,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.229296},"context":{"vwap":7.766297,"price_vs_vwap_pct":1.013387,"ema9":7.835288,"ema20":7.832465,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.570342,"dist_to_hod_atr":2.765594,"atr":0.016271,"spread_atr":0.614577,"own_change_pct":0.140324,"rel_strength_pct":{"SPY":0.119864,"IWM":0.061505}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.425851},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a303d3257a2e","ts":"2026-09-15T18:12:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1210.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 6934 sh","plan":{"state":"WATCH","setup":"","stop":9.2566,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.21},"price":9.4095,"vwap":9.3566,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":0.0131,"volatility":"high"},"price":9.4095,"volume":{"bars":282,"last_bar_volume":4419.0,"baseline_avg":5096.15,"bar_rvol":0.867125,"raw_accel":2.468501,"smooth_accel":-0.182477,"accel_momentum":-0.064567,"rvol_3bar":[1.123152,0.192371,0.867125],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":822.0,"sell_vol":319.0,"unclassified_vol":0.0,"imbalance":0.440841,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.153732},"context":{"vwap":9.356575,"price_vs_vwap_pct":0.565642,"ema9":9.396592,"ema20":9.391119,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.264428,"dist_to_hod_atr":5.902276,"atr":0.020416,"spread_atr":0.489815,"own_change_pct":0.030876,"rel_strength_pct":{"SPY":0.010417,"IWM":-0.047942}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.382265},"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":"895960e4b289","ts":"2026-09-15T18:12:10+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 315.0s, plan says WATCH; stop 7.77, target 7.91 (prev_day_high), R:R 0.57; R:R 0.57 < 2.0 at 7.86; breakout: 1-min close > 7.90 on >= 14458 sh","plan":{"state":"WATCH","setup":"","stop":7.7721,"target":7.91,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":73.4,"room_to_5d_high_atr":0.41},"price":7.86,"vwap":7.7664,"ext_from_open_pct":2.08,"max_ext_allowed_pct":3.0,"volume_pace":0.534,"trend":"flat","recent_slope_pct":0.0885,"volatility":"medium"},"price":7.86,"volume":{"bars":282,"last_bar_volume":13159.0,"baseline_avg":7725.8,"bar_rvol":1.703254,"raw_accel":5.813016,"smooth_accel":0.556056,"accel_momentum":1.456073,"rvol_3bar":[0.178262,0.214166,1.703254],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":4381.0,"sell_vol":1746.0,"unclassified_vol":0.0,"imbalance":0.430064,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.673456},"context":{"vwap":7.766297,"price_vs_vwap_pct":1.206529,"ema9":7.835288,"ema20":7.832465,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.380228,"dist_to_hod_atr":1.84373,"atr":0.016271,"spread_atr":0.614577,"own_change_pct":0.140324,"rel_strength_pct":{"SPY":0.119864,"IWM":0.061505}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.732508},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"70796a83366e","ts":"2026-09-15T18:12:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1220.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.83; target 0.04 away > ~0.04 reachable in 103 min","plan":{"state":"PASS","setup":"","stop":10.0458,"target":10.13,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":8.5,"room_to_5d_high_atr":4.21},"price":10.0917,"vwap":10.0768,"ext_from_open_pct":0.02,"max_ext_allowed_pct":3.0,"volume_pace":0.672,"trend":"flat","recent_slope_pct":0.0135,"volatility":"low"},"price":10.0917,"volume":{"bars":282,"last_bar_volume":74289.0,"baseline_avg":32011.75,"bar_rvol":2.320679,"raw_accel":2.356026,"smooth_accel":1.216005,"accel_momentum":0.772619,"rvol_3bar":[1.02282,0.685138,2.320679],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":7525.0,"sell_vol":4898.0,"unclassified_vol":0.0,"imbalance":0.211463,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.902807},"context":{"vwap":10.076762,"price_vs_vwap_pct":0.148243,"ema9":10.08849,"ema20":10.084499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.427232,"dist_to_hod_atr":3.51593,"atr":0.012315,"spread_atr":0.811993,"own_change_pct":0.049554,"rel_strength_pct":{"SPY":0.029094,"IWM":-0.029265}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.490737},"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":"505810c2fce0","ts":"2026-09-15T18:12:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1220.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.35; R:R 0.35 < 2.0 at 9.41; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2531,"target":9.46,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":7.8,"room_to_5d_high_atr":3.21},"price":9.406,"vwap":9.3566,"ext_from_open_pct":0.6,"max_ext_allowed_pct":4.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":0.0056,"volatility":"high"},"price":9.406,"volume":{"bars":282,"last_bar_volume":4419.0,"baseline_avg":5096.15,"bar_rvol":0.867125,"raw_accel":2.468501,"smooth_accel":-0.182477,"accel_momentum":-0.064567,"rvol_3bar":[1.123152,0.192371,0.867125],"trend_3bar":"MIXED","projected_rvol":0.747231},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":958.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":0.674825,"bid":9.41,"ask":9.42,"spread_pct":0.106213,"quote_size_imbalance":null,"quote_age_s":1.453156},"context":{"vwap":9.356575,"price_vs_vwap_pct":0.528236,"ema9":9.396592,"ema20":9.391119,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.301154,"dist_to_hod_atr":6.073711,"atr":0.020416,"spread_atr":0.489815,"own_change_pct":0.030876,"rel_strength_pct":{"SPY":0.010417,"IWM":-0.047942}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.585158},"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":"6266970ed886","ts":"2026-09-15T18:12:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1225.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.43; R:R 0.43 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 6934 sh","plan":{"state":"WATCH","setup":"","stop":9.2621,"target":9.48,"target_label":"premarket_high","reward_risk":0.43,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":3.2},"price":9.415,"vwap":9.3566,"ext_from_open_pct":0.7,"max_ext_allowed_pct":4.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":0.0248,"volatility":"high"},"price":9.415,"volume":{"bars":282,"last_bar_volume":4419.0,"baseline_avg":5096.15,"bar_rvol":0.867125,"raw_accel":2.468501,"smooth_accel":-0.182477,"accel_momentum":-0.064567,"rvol_3bar":[1.123152,0.192371,0.867125],"trend_3bar":"MIXED","projected_rvol":0.991337},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1682.0,"sell_vol":182.0,"unclassified_vol":0.0,"imbalance":0.804721,"bid":9.41,"ask":9.42,"spread_pct":0.106213,"quote_size_imbalance":null,"quote_age_s":1.077352},"context":{"vwap":9.356575,"price_vs_vwap_pct":0.624425,"ema9":9.396592,"ema20":9.391119,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.206716,"dist_to_hod_atr":5.632877,"atr":0.020416,"spread_atr":0.489815,"own_change_pct":0.030876,"rel_strength_pct":{"SPY":0.010417,"IWM":-0.047942}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.697794},"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":"fadf73713f53","ts":"2026-09-15T18:12:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 330.0s, plan says PASS; stop 7.76, target 7.91 (prev_day_high), R:R 0.68; target 0.06 away > ~0.06 reachable in 103 min","plan":{"state":"PASS","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7665,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.063,"volatility":"medium"},"price":7.85,"volume":{"bars":282,"last_bar_volume":13159.0,"baseline_avg":7725.8,"bar_rvol":1.703254,"raw_accel":5.813016,"smooth_accel":0.556056,"accel_momentum":1.456073,"rvol_3bar":[0.178262,0.214166,1.703254],"trend_3bar":"ACCELERATING","projected_rvol":2.285744},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":4195.0,"sell_vol":3215.0,"unclassified_vol":0.0,"imbalance":0.132254,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.160344},"context":{"vwap":7.766297,"price_vs_vwap_pct":1.077768,"ema9":7.835288,"ema20":7.832465,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.506971,"dist_to_hod_atr":2.458306,"atr":0.016271,"spread_atr":0.614577,"own_change_pct":0.140324,"rel_strength_pct":{"SPY":0.119864,"IWM":0.061505}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.225262},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"dda0916d9c1f","ts":"2026-09-15T18:12:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1235.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.42; R:R 0.42 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2433,"target":9.46,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.3962,"vwap":9.3566,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0152,"volatility":"high"},"price":9.3962,"volume":{"bars":282,"last_bar_volume":4419.0,"baseline_avg":5096.15,"bar_rvol":0.867125,"raw_accel":2.468501,"smooth_accel":-0.182477,"accel_momentum":-0.064567,"rvol_3bar":[1.123152,0.192371,0.867125],"trend_3bar":"MIXED","projected_rvol":0.773525},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1780.0,"sell_vol":191.0,"unclassified_vol":0.0,"imbalance":0.80619,"bid":9.41,"ask":9.42,"spread_pct":0.106213,"quote_size_imbalance":null,"quote_age_s":0.257723},"context":{"vwap":9.356575,"price_vs_vwap_pct":0.423496,"ema9":9.396592,"ema20":9.391119,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.403987,"dist_to_hod_atr":6.55373,"atr":0.020416,"spread_atr":0.489815,"own_change_pct":0.030876,"rel_strength_pct":{"SPY":0.010417,"IWM":-0.047942}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.699067},"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":"5978907bcd1f","ts":"2026-09-15T18:12:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1240.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 6934 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3566,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":0.0141,"volatility":"high"},"price":9.41,"volume":{"bars":282,"last_bar_volume":4419.0,"baseline_avg":5096.15,"bar_rvol":0.867125,"raw_accel":2.468501,"smooth_accel":-0.182477,"accel_momentum":-0.064567,"rvol_3bar":[1.123152,0.192371,0.867125],"trend_3bar":"MIXED","projected_rvol":0.669077},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1175.0,"sell_vol":202.0,"unclassified_vol":0.0,"imbalance":0.706609,"bid":9.41,"ask":9.42,"spread_pct":0.106213,"quote_size_imbalance":null,"quote_age_s":5.257723},"context":{"vwap":9.356575,"price_vs_vwap_pct":0.570986,"ema9":9.396592,"ema20":9.391119,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":5.877785,"atr":0.020416,"spread_atr":0.489815,"own_change_pct":0.030876,"rel_strength_pct":{"SPY":0.010417,"IWM":-0.047942}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.612718},"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":"1b3497a85b99","ts":"2026-09-15T18:12:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1250.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 57533 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0768,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.02,"volatility":"low"},"price":10.095,"volume":{"bars":282,"last_bar_volume":74289.0,"baseline_avg":32011.75,"bar_rvol":2.320679,"raw_accel":2.356026,"smooth_accel":1.216005,"accel_momentum":0.772619,"rvol_3bar":[1.02282,0.685138,2.320679],"trend_3bar":"MIXED","projected_rvol":0.885472},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":11641.0,"sell_vol":2785.0,"unclassified_vol":0.0,"imbalance":0.613892,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.360398},"context":{"vwap":10.076762,"price_vs_vwap_pct":0.180991,"ema9":10.08849,"ema20":10.084499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.247972,"atr":0.012315,"spread_atr":0.811993,"own_change_pct":0.049554,"rel_strength_pct":{"SPY":0.029094,"IWM":-0.029265}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.424645},"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":"4eab59b136d3","ts":"2026-09-15T18:12:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 355.0s, plan says WATCH; stop 7.77, target 7.91 (prev_day_high), R:R 0.63; R:R 0.63 < 2.0 at 7.86; breakout: 1-min close > 7.90 on >= 14458 sh","plan":{"state":"WATCH","setup":"","stop":7.7671,"target":7.91,"target_label":"prev_day_high","reward_risk":0.63,"pos_in_5d_range_pct":72.5,"room_to_5d_high_atr":0.43},"price":7.855,"vwap":7.7666,"ext_from_open_pct":2.01,"max_ext_allowed_pct":3.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0758,"volatility":"medium"},"price":7.855,"volume":{"bars":282,"last_bar_volume":13159.0,"baseline_avg":7725.8,"bar_rvol":1.703254,"raw_accel":5.813016,"smooth_accel":0.556056,"accel_momentum":1.456073,"rvol_3bar":[0.178262,0.214166,1.703254],"trend_3bar":"ACCELERATING","projected_rvol":1.925082},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":4624.0,"sell_vol":1632.0,"unclassified_vol":0.0,"imbalance":0.478261,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":2.38485},"context":{"vwap":7.766297,"price_vs_vwap_pct":1.142148,"ema9":7.835288,"ema20":7.832465,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.443599,"dist_to_hod_atr":2.151018,"atr":0.016271,"spread_atr":0.614577,"own_change_pct":0.140324,"rel_strength_pct":{"SPY":0.119864,"IWM":0.061505}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.8146},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8531315695cc","ts":"2026-09-15T18:12:50+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1260.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.82; target 0.04 away > ~0.04 reachable in 102 min","plan":{"state":"PASS","setup":"","stop":10.0466,"target":10.13,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":4.21},"price":10.0925,"vwap":10.0768,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.0151,"volatility":"low"},"price":10.0925,"volume":{"bars":282,"last_bar_volume":74289.0,"baseline_avg":32011.75,"bar_rvol":2.320679,"raw_accel":2.356026,"smooth_accel":1.216005,"accel_momentum":0.772619,"rvol_3bar":[1.02282,0.685138,2.320679],"trend_3bar":"MIXED","projected_rvol":0.777202},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":6398.0,"sell_vol":2054.0,"unclassified_vol":0.0,"imbalance":0.513961,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.207255},"context":{"vwap":10.076762,"price_vs_vwap_pct":0.156182,"ema9":10.08849,"ema20":10.084499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.419339,"dist_to_hod_atr":3.45097,"atr":0.012315,"spread_atr":0.811993,"own_change_pct":0.049554,"rel_strength_pct":{"SPY":0.029094,"IWM":-0.029265}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.192739},"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":"801ff2aa9d52","ts":"2026-09-15T18:12:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1265.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 57533 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0768,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.02,"volatility":"low"},"price":10.095,"volume":{"bars":282,"last_bar_volume":74289.0,"baseline_avg":32011.75,"bar_rvol":2.320679,"raw_accel":2.356026,"smooth_accel":1.216005,"accel_momentum":0.772619,"rvol_3bar":[1.02282,0.685138,2.320679],"trend_3bar":"MIXED","projected_rvol":0.741103},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":7336.0,"sell_vol":952.0,"unclassified_vol":0.0,"imbalance":0.77027,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.122597},"context":{"vwap":10.076762,"price_vs_vwap_pct":0.180991,"ema9":10.08849,"ema20":10.084499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.247972,"atr":0.012315,"spread_atr":0.811993,"own_change_pct":0.049554,"rel_strength_pct":{"SPY":0.029094,"IWM":-0.029265}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.78755},"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":"6c24af834ac4","ts":"2026-09-15T18:13:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.8458,"target":10.07,"target_label":"ceiling","reward_risk":2.49,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.7149,"ext_from_open_pct":4.87,"max_ext_allowed_pct":5.0,"volume_pace":3.597,"trend":"flat","recent_slope_pct":-0.0202,"volatility":"low"},"price":9.91,"volume":{"bars":282,"last_bar_volume":867.0,"baseline_avg":7146.55,"bar_rvol":0.121317,"raw_accel":-0.821862,"smooth_accel":0.7456,"accel_momentum":0.83722,"rvol_3bar":[0.245994,0.696754,0.121317],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":4643.0,"sell_vol":1292.0,"unclassified_vol":0.0,"imbalance":0.564617,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":5.239706},"context":{"vwap":9.714397,"price_vs_vwap_pct":2.013537,"ema9":9.918868,"ema20":9.907076,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.614444,"atr":0.043843,"spread_atr":0.456169,"own_change_pct":0.041306,"rel_strength_pct":{"SPY":0.009625,"IWM":-0.014308}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.068498},"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":"09d650dfe053","ts":"2026-09-15T18:13:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.1% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"PASS","setup":"","stop":9.8658,"target":10.07,"target_label":"ceiling","reward_risk":2.18,"pos_in_5d_range_pct":505.4,"room_to_5d_high_atr":-5.84},"price":9.93,"vwap":9.7149,"ext_from_open_pct":5.08,"max_ext_allowed_pct":5.0,"volume_pace":3.596,"trend":"flat","recent_slope_pct":0.0566,"volatility":"low"},"price":9.93,"volume":{"bars":283,"last_bar_volume":6183.0,"baseline_avg":5030.7,"bar_rvol":1.229054,"raw_accel":3.916214,"smooth_accel":3.675167,"accel_momentum":2.929567,"rvol_3bar":[0.696754,0.121317,1.229054],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":4659.0,"sell_vol":1291.0,"unclassified_vol":0.0,"imbalance":0.56605,"bid":9.91,"ask":9.93,"spread_pct":0.201613,"quote_size_imbalance":null,"quote_age_s":10.239706},"context":{"vwap":9.71493,"price_vs_vwap_pct":2.213809,"ema9":9.917094,"ema20":9.907355,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.647059,"dist_to_hod_atr":6.394157,"atr":0.042226,"spread_atr":0.473641,"own_change_pct":-0.20141,"rel_strength_pct":{"SPY":-0.233091,"IWM":-0.257024}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.695706},"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":"7922b0656adc","ts":"2026-09-15T18:13:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 370.0s, plan says PASS; stop 7.76, target 7.91 (prev_day_high), R:R 0.73; target 0.06 away > ~0.06 reachable in 102 min","plan":{"state":"PASS","setup":"","stop":7.7576,"target":7.91,"target_label":"prev_day_high","reward_risk":0.73,"pos_in_5d_range_pct":70.7,"room_to_5d_high_atr":0.45},"price":7.8455,"vwap":7.7666,"ext_from_open_pct":1.89,"max_ext_allowed_pct":3.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0706,"volatility":"medium"},"price":7.8455,"volume":{"bars":283,"last_bar_volume":12914.0,"baseline_avg":7276.55,"bar_rvol":1.774742,"raw_accel":-0.018618,"smooth_accel":3.829617,"accel_momentum":3.273561,"rvol_3bar":[0.214166,1.703254,1.774742],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":4825.0,"sell_vol":731.0,"unclassified_vol":0.0,"imbalance":0.736861,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":4.99175},"context":{"vwap":7.766597,"price_vs_vwap_pct":1.015929,"ema9":7.84001,"ema20":7.834983,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.564005,"dist_to_hod_atr":2.635054,"atr":0.016888,"spread_atr":0.592147,"own_change_pct":0.310163,"rel_strength_pct":{"SPY":0.278482,"IWM":0.254549}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.307738},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6c0f01101e52","ts":"2026-09-15T18:13:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1275.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.84; target 0.04 away > ~0.04 reachable in 102 min","plan":{"state":"PASS","setup":"","stop":10.0454,"target":10.13,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":4.21},"price":10.0913,"vwap":10.0768,"ext_from_open_pct":0.01,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.0193,"volatility":"low"},"price":10.0913,"volume":{"bars":283,"last_bar_volume":31304.0,"baseline_avg":35132.9,"bar_rvol":0.891017,"raw_accel":-0.578619,"smooth_accel":0.837642,"accel_momentum":-0.378362,"rvol_3bar":[0.685138,2.320679,0.891017],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":14242.0,"sell_vol":992.0,"unclassified_vol":0.0,"imbalance":0.869765,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":4.384705},"context":{"vwap":10.076805,"price_vs_vwap_pct":0.143844,"ema9":10.089792,"ema20":10.085499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.431179,"dist_to_hod_atr":3.59671,"atr":0.01215,"spread_atr":0.823046,"own_change_pct":0.099157,"rel_strength_pct":{"SPY":0.067477,"IWM":0.043543}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.774975},"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":"4d3de719381c","ts":"2026-09-15T18:13:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1280.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 55788 sh","plan":{"state":"WATCH","setup":"","stop":10.0541,"target":10.13,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.0768,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.0366,"volatility":"low"},"price":10.1,"volume":{"bars":283,"last_bar_volume":31304.0,"baseline_avg":35132.9,"bar_rvol":0.891017,"raw_accel":-0.578619,"smooth_accel":0.837642,"accel_momentum":-0.378362,"rvol_3bar":[0.685138,2.320679,0.891017],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":14257.0,"sell_vol":867.0,"unclassified_vol":0.0,"imbalance":0.885348,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":9.384705},"context":{"vwap":10.076805,"price_vs_vwap_pct":0.230181,"ema9":10.089792,"ema20":10.085499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.88066,"atr":0.01215,"spread_atr":0.823046,"own_change_pct":0.099157,"rel_strength_pct":{"SPY":0.067477,"IWM":0.043543}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.78886},"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":"7e694ade4c5d","ts":"2026-09-15T18:13:15+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7493,"target":13.2,"target_label":"ceiling","reward_risk":1.49,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":1.13},"price":12.9301,"vwap":12.9017,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.729,"trend":"flat","recent_slope_pct":-0.0175,"volatility":"medium"},"price":12.9301,"volume":{"bars":282,"last_bar_volume":116.0,"baseline_avg":678.8,"bar_rvol":0.17089,"raw_accel":-0.557252,"smooth_accel":-0.245171,"accel_momentum":0.058361,"rvol_3bar":[0.18642,0.392833,0.17089],"trend_3bar":"MIXED","projected_rvol":0.147319},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":22.0,"sell_vol":31.0,"unclassified_vol":0.0,"imbalance":-0.169811,"bid":12.92,"ask":12.96,"spread_pct":0.309119,"quote_size_imbalance":null,"quote_age_s":2.418333},"context":{"vwap":12.901747,"price_vs_vwap_pct":0.219762,"ema9":12.928127,"ema20":12.910938,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.854245,"dist_to_hod_atr":8.130611,"atr":0.046725,"spread_atr":0.856079,"own_change_pct":0.040185,"rel_strength_pct":{"SPY":0.008505,"IWM":-0.015428}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.029019},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"f065e2652466","ts":"2026-09-15T18:13:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 380.0s, plan says WATCH; stop 7.78, target 7.91 (prev_day_high), R:R 0.51; R:R 0.51 < 2.0 at 7.87; breakout: 1-min close > 7.90 on >= 14608 sh","plan":{"state":"WATCH","setup":"","stop":7.7771,"target":7.91,"target_label":"prev_day_high","reward_risk":0.51,"pos_in_5d_range_pct":74.3,"room_to_5d_high_atr":0.4},"price":7.865,"vwap":7.7667,"ext_from_open_pct":2.14,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.1203,"volatility":"medium"},"price":7.865,"volume":{"bars":283,"last_bar_volume":12914.0,"baseline_avg":7276.55,"bar_rvol":1.774742,"raw_accel":-0.018618,"smooth_accel":3.829617,"accel_momentum":3.273561,"rvol_3bar":[0.214166,1.703254,1.774742],"trend_3bar":"ACCELERATING","projected_rvol":3.198219},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":10126.0,"sell_vol":731.0,"unclassified_vol":0.0,"imbalance":0.86534,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.02783},"context":{"vwap":7.766597,"price_vs_vwap_pct":1.267004,"ema9":7.84001,"ema20":7.834983,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.316857,"dist_to_hod_atr":1.480368,"atr":0.016888,"spread_atr":0.592147,"own_change_pct":0.310163,"rel_strength_pct":{"SPY":0.278482,"IWM":0.254549}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.535756},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"778172e04804","ts":"2026-09-15T18:13:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 390.0s, plan says PASS; stop 7.76, target 7.91 (prev_day_high), R:R 0.70; target 0.06 away > ~0.06 reachable in 102 min","plan":{"state":"PASS","setup":"","stop":7.7604,"target":7.91,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":71.2,"room_to_5d_high_atr":0.45},"price":7.8483,"vwap":7.7667,"ext_from_open_pct":1.93,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0778,"volatility":"medium"},"price":7.8483,"volume":{"bars":283,"last_bar_volume":12914.0,"baseline_avg":7276.55,"bar_rvol":1.774742,"raw_accel":-0.018618,"smooth_accel":3.829617,"accel_momentum":3.273561,"rvol_3bar":[0.214166,1.703254,1.774742],"trend_3bar":"ACCELERATING","projected_rvol":2.011283},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":6030.0,"sell_vol":69.0,"unclassified_vol":0.0,"imbalance":0.977373,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.682731},"context":{"vwap":7.766597,"price_vs_vwap_pct":1.051981,"ema9":7.84001,"ema20":7.834983,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.528517,"dist_to_hod_atr":2.469253,"atr":0.016888,"spread_atr":0.592147,"own_change_pct":0.310163,"rel_strength_pct":{"SPY":0.278482,"IWM":0.254549}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.734586},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a675aa3117b0","ts":"2026-09-15T18:13:25+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1295.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.84; target 0.04 away > ~0.04 reachable in 102 min","plan":{"state":"PASS","setup":"","stop":10.0456,"target":10.13,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":8.5,"room_to_5d_high_atr":4.21},"price":10.0915,"vwap":10.0768,"ext_from_open_pct":0.01,"max_ext_allowed_pct":3.0,"volume_pace":0.671,"trend":"flat","recent_slope_pct":0.0197,"volatility":"low"},"price":10.0915,"volume":{"bars":283,"last_bar_volume":31304.0,"baseline_avg":35132.9,"bar_rvol":0.891017,"raw_accel":-0.578619,"smooth_accel":0.837642,"accel_momentum":-0.378362,"rvol_3bar":[0.685138,2.320679,0.891017],"trend_3bar":"MIXED","projected_rvol":0.426745},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":14045.0,"sell_vol":1759.0,"unclassified_vol":0.0,"imbalance":0.777398,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.979651},"context":{"vwap":10.076805,"price_vs_vwap_pct":0.145829,"ema9":10.089792,"ema20":10.085499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.429206,"dist_to_hod_atr":3.580249,"atr":0.01215,"spread_atr":0.823046,"own_change_pct":0.099157,"rel_strength_pct":{"SPY":0.067477,"IWM":0.043543}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.692675},"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":"c7ef25ca8698","ts":"2026-09-15T18:13:30+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7792,"target":13.2,"target_label":"ceiling","reward_risk":1.33,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":1.09},"price":12.96,"vwap":12.9018,"ext_from_open_pct":-0.69,"max_ext_allowed_pct":4.0,"volume_pace":0.729,"trend":"flat","recent_slope_pct":0.0287,"volatility":"medium"},"price":12.96,"volume":{"bars":282,"last_bar_volume":116.0,"baseline_avg":678.8,"bar_rvol":0.17089,"raw_accel":-0.557252,"smooth_accel":-0.245171,"accel_momentum":0.058361,"rvol_3bar":[0.18642,0.392833,0.17089],"trend_3bar":"MIXED","projected_rvol":1.196229},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":381.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.876847,"bid":12.93,"ask":12.98,"spread_pct":0.385951,"quote_size_imbalance":null,"quote_age_s":0.244529},"context":{"vwap":12.901747,"price_vs_vwap_pct":0.451514,"ema9":12.928127,"ema20":12.910938,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.629602,"dist_to_hod_atr":7.490692,"atr":0.046725,"spread_atr":1.070099,"own_change_pct":0.040185,"rel_strength_pct":{"SPY":0.008505,"IWM":-0.015428}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.149844},"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":"1ea2f1e2eca6","ts":"2026-09-15T18:13:30+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 395.0s, plan says WATCH; stop 7.78, target 7.91 (prev_day_high), R:R 0.45; R:R 0.45 < 2.0 at 7.87; breakout: 1-min close > 7.90 on >= 14608 sh","plan":{"state":"WATCH","setup":"","stop":7.7821,"target":7.91,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":75.2,"room_to_5d_high_atr":0.38},"price":7.87,"vwap":7.7668,"ext_from_open_pct":2.21,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.133,"volatility":"medium"},"price":7.87,"volume":{"bars":283,"last_bar_volume":12914.0,"baseline_avg":7276.55,"bar_rvol":1.774742,"raw_accel":-0.018618,"smooth_accel":3.829617,"accel_momentum":3.273561,"rvol_3bar":[0.214166,1.703254,1.774742],"trend_3bar":"ACCELERATING","projected_rvol":1.896778},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":6832.0,"sell_vol":69.0,"unclassified_vol":0.0,"imbalance":0.980003,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.688778},"context":{"vwap":7.766597,"price_vs_vwap_pct":1.331382,"ema9":7.84001,"ema20":7.834983,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.253485,"dist_to_hod_atr":1.184294,"atr":0.016888,"spread_atr":0.592147,"own_change_pct":0.310163,"rel_strength_pct":{"SPY":0.278482,"IWM":0.254549}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.739252},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"487387c9cc1b","ts":"2026-09-15T18:13:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1300.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 55788 sh","plan":{"state":"WATCH","setup":"","stop":10.0541,"target":10.13,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.0768,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":0.0366,"volatility":"low"},"price":10.1,"volume":{"bars":283,"last_bar_volume":31304.0,"baseline_avg":35132.9,"bar_rvol":0.891017,"raw_accel":-0.578619,"smooth_accel":0.837642,"accel_momentum":-0.378362,"rvol_3bar":[0.685138,2.320679,0.891017],"trend_3bar":"MIXED","projected_rvol":0.372813},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":4703.0,"sell_vol":1846.0,"unclassified_vol":0.0,"imbalance":0.43625,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.407882},"context":{"vwap":10.076805,"price_vs_vwap_pct":0.230181,"ema9":10.089792,"ema20":10.085499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.88066,"atr":0.01215,"spread_atr":0.823046,"own_change_pct":0.099157,"rel_strength_pct":{"SPY":0.067477,"IWM":0.043543}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.388706},"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":"9f87a3b8f884","ts":"2026-09-15T18:13:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 400.0s, plan says PASS; stop 7.76, target 7.91 (prev_day_high), R:R 0.69; target 0.06 away > ~0.06 reachable in 101 min","plan":{"state":"PASS","setup":"","stop":7.761,"target":7.91,"target_label":"prev_day_high","reward_risk":0.69,"pos_in_5d_range_pct":71.4,"room_to_5d_high_atr":0.44},"price":7.8489,"vwap":7.7668,"ext_from_open_pct":1.93,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":0.0793,"volatility":"medium"},"price":7.8489,"volume":{"bars":283,"last_bar_volume":12914.0,"baseline_avg":7276.55,"bar_rvol":1.774742,"raw_accel":-0.018618,"smooth_accel":3.829617,"accel_momentum":3.273561,"rvol_3bar":[0.214166,1.703254,1.774742],"trend_3bar":"ACCELERATING","projected_rvol":1.626045},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":6832.0,"sell_vol":68.0,"unclassified_vol":0.0,"imbalance":0.98029,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":1.239387},"context":{"vwap":7.766597,"price_vs_vwap_pct":1.059706,"ema9":7.84001,"ema20":7.834983,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.520913,"dist_to_hod_atr":2.433724,"atr":0.016888,"spread_atr":0.592147,"own_change_pct":0.310163,"rel_strength_pct":{"SPY":0.278482,"IWM":0.254549}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.739762},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1ea299c3d4bf","ts":"2026-09-15T18:13:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1310.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.83; target 0.04 away > ~0.04 reachable in 101 min","plan":{"state":"PASS","setup":"","stop":10.0458,"target":10.13,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":8.5,"room_to_5d_high_atr":4.21},"price":10.0917,"vwap":10.0768,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":0.0201,"volatility":"low"},"price":10.0917,"volume":{"bars":283,"last_bar_volume":31304.0,"baseline_avg":35132.9,"bar_rvol":0.891017,"raw_accel":-0.578619,"smooth_accel":0.837642,"accel_momentum":-0.378362,"rvol_3bar":[0.685138,2.320679,0.891017],"trend_3bar":"MIXED","projected_rvol":0.391215},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":4835.0,"sell_vol":1611.0,"unclassified_vol":0.0,"imbalance":0.500155,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.692327},"context":{"vwap":10.076805,"price_vs_vwap_pct":0.147814,"ema9":10.089792,"ema20":10.085499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.427232,"dist_to_hod_atr":3.563788,"atr":0.01215,"spread_atr":0.823046,"own_change_pct":0.099157,"rel_strength_pct":{"SPY":0.067477,"IWM":0.043543}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.445647},"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":"6039f1461941","ts":"2026-09-15T18:13:50+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1320.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.79; R:R 0.79 < 2.0 at 10.09; breakout: 1-min close > 10.11 on >= 55788 sh","plan":{"state":"WATCH","setup":"","stop":10.0479,"target":10.13,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":8.7,"room_to_5d_high_atr":4.2},"price":10.0938,"vwap":10.0768,"ext_from_open_pct":0.04,"max_ext_allowed_pct":3.0,"volume_pace":0.67,"trend":"flat","recent_slope_pct":0.0243,"volatility":"low"},"price":10.0938,"volume":{"bars":283,"last_bar_volume":31304.0,"baseline_avg":35132.9,"bar_rvol":0.891017,"raw_accel":-0.578619,"smooth_accel":0.837642,"accel_momentum":-0.378362,"rvol_3bar":[0.685138,2.320679,0.891017],"trend_3bar":"MIXED","projected_rvol":0.461687},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":5885.0,"sell_vol":1992.0,"unclassified_vol":0.0,"imbalance":0.494224,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.427962},"context":{"vwap":10.076805,"price_vs_vwap_pct":0.168654,"ema9":10.089792,"ema20":10.085499,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.406512,"dist_to_hod_atr":3.390949,"atr":0.01215,"spread_atr":0.823046,"own_change_pct":0.099157,"rel_strength_pct":{"SPY":0.067477,"IWM":0.043543}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.440362},"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":"c88d9b6f0873","ts":"2026-09-15T18:14:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 430.0s, plan says WATCH; stop 7.77, target 7.91 (prev_day_high), R:R 0.61; R:R 0.61 < 2.0 at 7.86; breakout: 1-min close > 7.90 on >= 14623 sh","plan":{"state":"WATCH","setup":"","stop":7.7689,"target":7.91,"target_label":"prev_day_high","reward_risk":0.61,"pos_in_5d_range_pct":72.8,"room_to_5d_high_atr":0.42},"price":7.8568,"vwap":7.7668,"ext_from_open_pct":2.04,"max_ext_allowed_pct":3.0,"volume_pace":0.532,"trend":"flat","recent_slope_pct":0.0591,"volatility":"medium"},"price":7.8568,"volume":{"bars":284,"last_bar_volume":8264.0,"baseline_avg":7628.55,"bar_rvol":1.083299,"raw_accel":-0.360074,"smooth_accel":6.673073,"accel_momentum":2.843456,"rvol_3bar":[1.703254,1.774742,1.083299],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":1147.0,"sell_vol":226.0,"unclassified_vol":0.0,"imbalance":0.670794,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":2.003505},"context":{"vwap":7.766792,"price_vs_vwap_pct":1.158883,"ema9":7.841888,"ema20":7.836356,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.420786,"dist_to_hod_atr":1.867116,"atr":0.017781,"spread_atr":0.562384,"own_change_pct":0.183791,"rel_strength_pct":{"SPY":0.142222,"IWM":0.141772}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.72667},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"91d2f6542d91","ts":"2026-09-15T18:14:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 450.0s, plan says PASS; stop 7.75, target 7.89 (ceiling), R:R 0.56; R:R 0.56 < 2.0 at 7.84; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":7.753,"target":7.89,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":69.9,"room_to_5d_high_atr":0.47},"price":7.8409,"vwap":7.7668,"ext_from_open_pct":1.83,"max_ext_allowed_pct":3.0,"volume_pace":0.532,"trend":"flat","recent_slope_pct":0.0186,"volatility":"medium"},"price":7.8409,"volume":{"bars":284,"last_bar_volume":8264.0,"baseline_avg":7628.55,"bar_rvol":1.083299,"raw_accel":-0.360074,"smooth_accel":6.673073,"accel_momentum":2.843456,"rvol_3bar":[1.703254,1.774742,1.083299],"trend_3bar":"MIXED","projected_rvol":0.102877},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":117.0,"sell_vol":210.0,"unclassified_vol":0.0,"imbalance":-0.284404,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":7.574378},"context":{"vwap":7.766792,"price_vs_vwap_pct":0.954165,"ema9":7.841888,"ema20":7.836356,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.622307,"dist_to_hod_atr":2.761307,"atr":0.017781,"spread_atr":0.562384,"own_change_pct":0.183791,"rel_strength_pct":{"SPY":0.142222,"IWM":0.141772}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.308094},"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":"71552ff3e9ab","ts":"2026-09-15T18:14:35+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 460.0s, plan says WATCH; stop 7.78, target 7.91 (prev_day_high), R:R 0.48; R:R 0.48 < 2.0 at 7.87; breakout: 1-min close > 7.90 on >= 14623 sh","plan":{"state":"WATCH","setup":"","stop":7.7798,"target":7.91,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":74.8,"room_to_5d_high_atr":0.39},"price":7.8677,"vwap":7.7668,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":0.531,"trend":"flat","recent_slope_pct":0.0869,"volatility":"medium"},"price":7.8677,"volume":{"bars":284,"last_bar_volume":8264.0,"baseline_avg":7628.55,"bar_rvol":1.083299,"raw_accel":-0.360074,"smooth_accel":6.673073,"accel_momentum":2.843456,"rvol_3bar":[1.703254,1.774742,1.083299],"trend_3bar":"MIXED","projected_rvol":0.079551},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":143.0,"sell_vol":200.0,"unclassified_vol":0.0,"imbalance":-0.166181,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":4.991687},"context":{"vwap":7.766792,"price_vs_vwap_pct":1.299224,"ema9":7.841888,"ema20":7.836356,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.282636,"dist_to_hod_atr":1.254117,"atr":0.017781,"spread_atr":0.562384,"own_change_pct":0.183791,"rel_strength_pct":{"SPY":0.142222,"IWM":0.141772}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.180023},"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":"5c1103c4989a","ts":"2026-09-15T18:14:45+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 470.0s, plan says PASS; stop 7.76, target 7.91 (prev_day_high), R:R 0.67; target 0.06 away > ~0.06 reachable in 100 min","plan":{"state":"PASS","setup":"","stop":7.7633,"target":7.91,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":71.8,"room_to_5d_high_atr":0.44},"price":7.8512,"vwap":7.7669,"ext_from_open_pct":1.96,"max_ext_allowed_pct":3.0,"volume_pace":0.532,"trend":"flat","recent_slope_pct":0.0448,"volatility":"medium"},"price":7.8512,"volume":{"bars":284,"last_bar_volume":8264.0,"baseline_avg":7628.55,"bar_rvol":1.083299,"raw_accel":-0.360074,"smooth_accel":6.673073,"accel_momentum":2.843456,"rvol_3bar":[1.703254,1.774742,1.083299],"trend_3bar":"MIXED","projected_rvol":0.630788},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":2146.0,"sell_vol":1236.0,"unclassified_vol":0.0,"imbalance":0.269072,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":7.98335},"context":{"vwap":7.766792,"price_vs_vwap_pct":1.086781,"ema9":7.841888,"ema20":7.836356,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.491762,"dist_to_hod_atr":2.182051,"atr":0.017781,"spread_atr":0.562384,"own_change_pct":0.183791,"rel_strength_pct":{"SPY":0.142222,"IWM":0.141772}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.291485},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2b0794392d1d","ts":"2026-09-15T18:14:50+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"held 475.0s, plan says WATCH; stop 7.77, target 7.91 (prev_day_high), R:R 0.57; R:R 0.57 < 2.0 at 7.86; breakout: 1-min close > 7.90 on >= 14623 sh","plan":{"state":"WATCH","setup":"","stop":7.7721,"target":7.91,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":73.4,"room_to_5d_high_atr":0.41},"price":7.86,"vwap":7.7669,"ext_from_open_pct":2.08,"max_ext_allowed_pct":3.0,"volume_pace":0.531,"trend":"flat","recent_slope_pct":0.0673,"volatility":"medium"},"price":7.86,"volume":{"bars":284,"last_bar_volume":8264.0,"baseline_avg":7628.55,"bar_rvol":1.083299,"raw_accel":-0.360074,"smooth_accel":6.673073,"accel_momentum":2.843456,"rvol_3bar":[1.703254,1.774742,1.083299],"trend_3bar":"MIXED","projected_rvol":0.632676},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":2348.0,"sell_vol":1447.0,"unclassified_vol":0.0,"imbalance":0.237418,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":1.251518},"context":{"vwap":7.766792,"price_vs_vwap_pct":1.200084,"ema9":7.841888,"ema20":7.836356,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.380228,"dist_to_hod_atr":1.687153,"atr":0.017781,"spread_atr":0.562384,"own_change_pct":0.183791,"rel_strength_pct":{"SPY":0.142222,"IWM":0.141772}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.257194},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2cc0029962a9","ts":"2026-09-15T18:15:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1390.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.82; target 0.04 away > ~0.04 reachable in 100 min","plan":{"state":"PASS","setup":"","stop":10.0466,"target":10.13,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":4.21},"price":10.0925,"vwap":10.0769,"ext_from_open_pct":0.02,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":0.0087,"volatility":"low"},"price":10.0925,"volume":{"bars":284,"last_bar_volume":15447.0,"baseline_avg":35275.5,"bar_rvol":0.437896,"raw_accel":-0.506549,"smooth_accel":0.592359,"accel_momentum":-0.245283,"rvol_3bar":[2.320679,0.891017,0.437896],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":4481.0,"sell_vol":8345.0,"unclassified_vol":0.0,"imbalance":-0.301263,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.911447},"context":{"vwap":10.076826,"price_vs_vwap_pct":0.155542,"ema9":10.090833,"ema20":10.086404,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.419339,"dist_to_hod_atr":3.542723,"atr":0.011996,"spread_atr":0.833582,"own_change_pct":0.050546,"rel_strength_pct":{"SPY":0.038007,"IWM":0.029542}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.131922},"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":"2455b49d0abd","ts":"2026-09-15T18:15:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1395.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 54917 sh","plan":{"state":"WATCH","setup":"","stop":10.0494,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.0953,"vwap":10.0769,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":-0.0019,"volatility":"low"},"price":10.0953,"volume":{"bars":285,"last_bar_volume":36097.0,"baseline_avg":28756.75,"bar_rvol":1.255253,"raw_accel":1.336829,"smooth_accel":-0.353694,"accel_momentum":-0.946053,"rvol_3bar":[0.891017,0.437896,1.255253],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3845.0,"sell_vol":9158.0,"unclassified_vol":0.0,"imbalance":-0.408598,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.928091},"context":{"vwap":10.076874,"price_vs_vwap_pct":0.182859,"ema9":10.091167,"ema20":10.086985,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.391712,"dist_to_hod_atr":3.349131,"atr":0.011854,"spread_atr":0.84361,"own_change_pct":0.074368,"rel_strength_pct":{"SPY":0.061829,"IWM":0.053364}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.512894},"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":"43edf6fcd0d2","ts":"2026-09-15T18:15:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1400.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 100 min","plan":{"state":"PASS","setup":"","stop":10.0442,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.0901,"vwap":10.0769,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":-0.0122,"volatility":"low"},"price":10.0901,"volume":{"bars":285,"last_bar_volume":36097.0,"baseline_avg":28756.75,"bar_rvol":1.255253,"raw_accel":1.336829,"smooth_accel":-0.353694,"accel_momentum":-0.946053,"rvol_3bar":[0.891017,0.437896,1.255253],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":5452.0,"sell_vol":7007.0,"unclassified_vol":0.0,"imbalance":-0.124809,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.504597},"context":{"vwap":10.076874,"price_vs_vwap_pct":0.131256,"ema9":10.091167,"ema20":10.086985,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.443019,"dist_to_hod_atr":3.787808,"atr":0.011854,"spread_atr":0.84361,"own_change_pct":0.074368,"rel_strength_pct":{"SPY":0.061829,"IWM":0.053364}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.156667},"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":"99637bc0ff01","ts":"2026-09-15T18:15:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1405.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 54917 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0769,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":-0.0025,"volatility":"low"},"price":10.095,"volume":{"bars":285,"last_bar_volume":36097.0,"baseline_avg":28756.75,"bar_rvol":1.255253,"raw_accel":1.336829,"smooth_accel":-0.353694,"accel_momentum":-0.946053,"rvol_3bar":[0.891017,0.437896,1.255253],"trend_3bar":"MIXED","projected_rvol":0.895651},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":6316.0,"sell_vol":3588.0,"unclassified_vol":0.0,"imbalance":0.275444,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.167778},"context":{"vwap":10.076874,"price_vs_vwap_pct":0.179882,"ema9":10.091167,"ema20":10.086985,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.37444,"atr":0.011854,"spread_atr":0.84361,"own_change_pct":0.074368,"rel_strength_pct":{"SPY":0.061829,"IWM":0.053364}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.345752},"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":"88990595eafb","ts":"2026-09-15T18:15:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1420.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 100 min","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0769,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.669,"trend":"flat","recent_slope_pct":-0.0124,"volatility":"low"},"price":10.09,"volume":{"bars":285,"last_bar_volume":36097.0,"baseline_avg":28756.75,"bar_rvol":1.255253,"raw_accel":1.336829,"smooth_accel":-0.353694,"accel_momentum":-0.946053,"rvol_3bar":[0.891017,0.437896,1.255253],"trend_3bar":"MIXED","projected_rvol":1.179619},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":13081.0,"sell_vol":3880.0,"unclassified_vol":0.0,"imbalance":0.54248,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.413655},"context":{"vwap":10.076874,"price_vs_vwap_pct":0.130263,"ema9":10.091167,"ema20":10.086985,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":3.796245,"atr":0.011854,"spread_atr":0.84361,"own_change_pct":0.074368,"rel_strength_pct":{"SPY":0.061829,"IWM":0.053364}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.680949},"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":"9c363debfd45","ts":"2026-09-15T18:16:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1475.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3575,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0161,"volatility":"high"},"price":9.405,"volume":{"bars":286,"last_bar_volume":17562.0,"baseline_avg":5105.7,"bar_rvol":3.439685,"raw_accel":1.503849,"smooth_accel":2.600694,"accel_momentum":2.462142,"rvol_3bar":[0.673606,1.359961,3.439685],"trend_3bar":"ACCELERATING","projected_rvol":1.730615},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":1952.0,"sell_vol":2466.0,"unclassified_vol":0.0,"imbalance":-0.116342,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.255601},"context":{"vwap":9.357409,"price_vs_vwap_pct":0.508594,"ema9":9.407893,"ema20":9.399198,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":5.795101,"atr":0.02157,"spread_atr":0.463608,"own_change_pct":0.040383,"rel_strength_pct":{"SPY":0.030483,"IWM":0.029878}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.400181},"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":"3f8cd865e529","ts":"2026-09-15T18:16:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1485.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60058 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.68,"trend":"flat","recent_slope_pct":-0.0023,"volatility":"low"},"price":10.095,"volume":{"bars":286,"last_bar_volume":223334.0,"baseline_avg":29641.35,"bar_rvol":7.534542,"raw_accel":5.187052,"smooth_accel":1.152041,"accel_momentum":1.505735,"rvol_3bar":[0.437896,1.255253,7.534542],"trend_3bar":"ACCELERATING","projected_rvol":3.342821},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":48258.0,"sell_vol":4470.0,"unclassified_vol":0.0,"imbalance":0.830451,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.401402},"context":{"vwap":10.077106,"price_vs_vwap_pct":0.177574,"ema9":10.091473,"ema20":10.087529,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.216548,"atr":0.012436,"spread_atr":0.804137,"own_change_pct":0.045598,"rel_strength_pct":{"SPY":0.035698,"IWM":0.035093}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":6.257065},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ccc4085d84ad","ts":"2026-09-15T18:16:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1485.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.45; R:R 0.45 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7410 sh","plan":{"state":"WATCH","setup":"","stop":9.2589,"target":9.48,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":8.1,"room_to_5d_high_atr":3.2},"price":9.4118,"vwap":9.3575,"ext_from_open_pct":0.66,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0017,"volatility":"high"},"price":9.4118,"volume":{"bars":286,"last_bar_volume":17562.0,"baseline_avg":5105.7,"bar_rvol":3.439685,"raw_accel":1.503849,"smooth_accel":2.600694,"accel_momentum":2.462142,"rvol_3bar":[0.673606,1.359961,3.439685],"trend_3bar":"ACCELERATING","projected_rvol":1.316176},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":1725.0,"sell_vol":2178.0,"unclassified_vol":0.0,"imbalance":-0.116065,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.062967},"context":{"vwap":9.357409,"price_vs_vwap_pct":0.581264,"ema9":9.407893,"ema20":9.399198,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.240294,"dist_to_hod_atr":5.479847,"atr":0.02157,"spread_atr":0.463608,"own_change_pct":0.040383,"rel_strength_pct":{"SPY":0.030483,"IWM":0.029878}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.399226},"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":"679fc4dab33d","ts":"2026-09-15T18:16:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1490.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 98 min","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0772,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.68,"trend":"flat","recent_slope_pct":-0.0122,"volatility":"low"},"price":10.09,"volume":{"bars":286,"last_bar_volume":223334.0,"baseline_avg":29641.35,"bar_rvol":7.534542,"raw_accel":5.187052,"smooth_accel":1.152041,"accel_momentum":1.505735,"rvol_3bar":[0.437896,1.255253,7.534542],"trend_3bar":"ACCELERATING","projected_rvol":3.230571},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":48665.0,"sell_vol":5465.0,"unclassified_vol":0.0,"imbalance":0.798079,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.923185},"context":{"vwap":10.077106,"price_vs_vwap_pct":0.127957,"ema9":10.091473,"ema20":10.087529,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":3.618617,"atr":0.012436,"spread_atr":0.804137,"own_change_pct":0.045598,"rel_strength_pct":{"SPY":0.035698,"IWM":0.035093}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":6.013158},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5dfbfc3cab3a","ts":"2026-09-15T18:16:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1495.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3575,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0161,"volatility":"high"},"price":9.405,"volume":{"bars":286,"last_bar_volume":17562.0,"baseline_avg":5105.7,"bar_rvol":3.439685,"raw_accel":1.503849,"smooth_accel":2.600694,"accel_momentum":2.462142,"rvol_3bar":[0.673606,1.359961,3.439685],"trend_3bar":"ACCELERATING","projected_rvol":1.170927},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":1610.0,"sell_vol":2366.0,"unclassified_vol":0.0,"imbalance":-0.190141,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.963079},"context":{"vwap":9.357409,"price_vs_vwap_pct":0.508594,"ema9":9.407893,"ema20":9.399198,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":5.795101,"atr":0.02157,"spread_atr":0.463608,"own_change_pct":0.040383,"rel_strength_pct":{"SPY":0.030483,"IWM":0.029878}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.654025},"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":"3de02630c23b","ts":"2026-09-15T18:16:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1500.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.42; R:R 0.42 < 2.0 at 9.42; breakout: 1-min close > 9.47 on >= 7410 sh","plan":{"state":"WATCH","setup":"","stop":9.2627,"target":9.48,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":8.2,"room_to_5d_high_atr":3.2},"price":9.4156,"vwap":9.3575,"ext_from_open_pct":0.7,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":0.0064,"volatility":"high"},"price":9.4156,"volume":{"bars":286,"last_bar_volume":17562.0,"baseline_avg":5105.7,"bar_rvol":3.439685,"raw_accel":1.503849,"smooth_accel":2.600694,"accel_momentum":2.462142,"rvol_3bar":[0.673606,1.359961,3.439685],"trend_3bar":"ACCELERATING","projected_rvol":1.066188},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":1615.0,"sell_vol":2365.0,"unclassified_vol":0.0,"imbalance":-0.188442,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":6.963079},"context":{"vwap":9.357409,"price_vs_vwap_pct":0.621874,"ema9":9.407893,"ema20":9.399198,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.20042,"dist_to_hod_atr":5.303676,"atr":0.02157,"spread_atr":0.463608,"own_change_pct":0.040383,"rel_strength_pct":{"SPY":0.030483,"IWM":0.029878}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.648182},"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":"7fc441b4b6c1","ts":"2026-09-15T18:16:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1505.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60058 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.0023,"volatility":"low"},"price":10.095,"volume":{"bars":286,"last_bar_volume":223334.0,"baseline_avg":29641.35,"bar_rvol":7.534542,"raw_accel":5.187052,"smooth_accel":1.152041,"accel_momentum":1.505735,"rvol_3bar":[0.437896,1.255253,7.534542],"trend_3bar":"ACCELERATING","projected_rvol":2.426132},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":49778.0,"sell_vol":2149.0,"unclassified_vol":0.0,"imbalance":0.91723,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.373052},"context":{"vwap":10.077106,"price_vs_vwap_pct":0.177574,"ema9":10.091473,"ema20":10.087529,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.216548,"atr":0.012436,"spread_atr":0.804137,"own_change_pct":0.045598,"rel_strength_pct":{"SPY":0.035698,"IWM":0.035093}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":6.910908},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d7429482e982","ts":"2026-09-15T18:17:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1510.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.83; target 0.04 away > ~0.04 reachable in 98 min","plan":{"state":"PASS","setup":"","stop":10.0458,"target":10.13,"target_label":"premarket_high","reward_risk":0.83,"pos_in_5d_range_pct":8.5,"room_to_5d_high_atr":4.21},"price":10.0917,"vwap":10.0772,"ext_from_open_pct":0.02,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.0088,"volatility":"low"},"price":10.0917,"volume":{"bars":286,"last_bar_volume":223334.0,"baseline_avg":29641.35,"bar_rvol":7.534542,"raw_accel":5.187052,"smooth_accel":1.152041,"accel_momentum":1.505735,"rvol_3bar":[0.437896,1.255253,7.534542],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":12482.0,"sell_vol":3388.0,"unclassified_vol":0.0,"imbalance":0.573031,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":4.035125},"context":{"vwap":10.077106,"price_vs_vwap_pct":0.144826,"ema9":10.091473,"ema20":10.087529,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.427232,"dist_to_hod_atr":3.481914,"atr":0.012436,"spread_atr":0.804137,"own_change_pct":0.045598,"rel_strength_pct":{"SPY":0.071333,"IWM":0.0631}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.317525},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1e36df79b7aa","ts":"2026-09-15T18:17:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1510.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.43; R:R 0.43 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2421,"target":9.46,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.395,"vwap":9.3576,"ext_from_open_pct":0.48,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0458,"volatility":"high"},"price":9.395,"volume":{"bars":287,"last_bar_volume":5003.0,"baseline_avg":5848.9,"bar_rvol":0.855375,"raw_accel":-0.715124,"smooth_accel":1.886038,"accel_momentum":-0.714656,"rvol_3bar":[1.359961,3.439685,0.855375],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1115.0,"sell_vol":1744.0,"unclassified_vol":0.0,"imbalance":-0.220007,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":6.1e-05},"context":{"vwap":9.357542,"price_vs_vwap_pct":0.400294,"ema9":9.409434,"ema20":9.40076,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.416579,"dist_to_hod_atr":6.397903,"atr":0.021101,"spread_atr":0.473919,"own_change_pct":0.217132,"rel_strength_pct":{"SPY":0.242866,"IWM":0.234634}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.188188},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f75821c35b41","ts":"2026-09-15T18:17:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1520.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 61304 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.0008,"volatility":"low"},"price":10.095,"volume":{"bars":287,"last_bar_volume":68557.0,"baseline_avg":39179.35,"bar_rvol":1.749825,"raw_accel":-0.693029,"smooth_accel":1.709749,"accel_momentum":0.557708,"rvol_3bar":[1.255253,7.534542,1.749825],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3428.0,"sell_vol":2612.0,"unclassified_vol":0.0,"imbalance":0.135099,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.011016},"context":{"vwap":10.077174,"price_vs_vwap_pct":0.176897,"ema9":10.091519,"ema20":10.087926,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.082615,"atr":0.012976,"spread_atr":0.770654,"own_change_pct":-0.032689,"rel_strength_pct":{"SPY":-0.006955,"IWM":-0.015188}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.2364},"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":"c94008392009","ts":"2026-09-15T18:17:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1525.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 98 min","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0772,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.679,"trend":"flat","recent_slope_pct":-0.0107,"volatility":"low"},"price":10.09,"volume":{"bars":287,"last_bar_volume":68557.0,"baseline_avg":39179.35,"bar_rvol":1.749825,"raw_accel":-0.693029,"smooth_accel":1.709749,"accel_momentum":0.557708,"rvol_3bar":[1.255253,7.534542,1.749825],"trend_3bar":"MIXED","projected_rvol":0.160084},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":2394.0,"sell_vol":2793.0,"unclassified_vol":0.0,"imbalance":-0.076923,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.829397},"context":{"vwap":10.077174,"price_vs_vwap_pct":0.12728,"ema9":10.091519,"ema20":10.087926,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":3.467941,"atr":0.012976,"spread_atr":0.770654,"own_change_pct":-0.032689,"rel_strength_pct":{"SPY":-0.006955,"IWM":-0.015188}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.134602},"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":"d977df12e999","ts":"2026-09-15T18:17:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1535.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7495 sh","plan":{"state":"WATCH","setup":"","stop":9.2572,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4101,"vwap":9.3577,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0137,"volatility":"high"},"price":9.4101,"volume":{"bars":287,"last_bar_volume":5003.0,"baseline_avg":5848.9,"bar_rvol":0.855375,"raw_accel":-0.715124,"smooth_accel":1.886038,"accel_momentum":-0.714656,"rvol_3bar":[1.359961,3.439685,0.855375],"trend_3bar":"MIXED","projected_rvol":2.604934},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":4843.0,"sell_vol":2775.0,"unclassified_vol":0.0,"imbalance":0.271462,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.809507},"context":{"vwap":9.357542,"price_vs_vwap_pct":0.561661,"ema9":9.409434,"ema20":9.40076,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.258132,"dist_to_hod_atr":5.682286,"atr":0.021101,"spread_atr":0.473919,"own_change_pct":0.217132,"rel_strength_pct":{"SPY":0.242866,"IWM":0.234634}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.232202},"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":"9ea0378bb392","ts":"2026-09-15T18:17:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1550.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.41; R:R 0.41 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2437,"target":9.46,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":3.23},"price":9.3966,"vwap":9.3577,"ext_from_open_pct":0.5,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0424,"volatility":"high"},"price":9.3966,"volume":{"bars":287,"last_bar_volume":5003.0,"baseline_avg":5848.9,"bar_rvol":0.855375,"raw_accel":-0.715124,"smooth_accel":1.886038,"accel_momentum":-0.714656,"rvol_3bar":[1.359961,3.439685,0.855375],"trend_3bar":"MIXED","projected_rvol":1.784723},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":3919.0,"sell_vol":1480.0,"unclassified_vol":0.0,"imbalance":0.45175,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.072309},"context":{"vwap":9.357542,"price_vs_vwap_pct":0.417393,"ema9":9.409434,"ema20":9.40076,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.39979,"dist_to_hod_atr":6.322076,"atr":0.021101,"spread_atr":0.473919,"own_change_pct":0.217132,"rel_strength_pct":{"SPY":0.242866,"IWM":0.234634}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.386416},"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":"e83385984b04","ts":"2026-09-15T18:17:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1560.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.45; R:R 0.45 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7495 sh","plan":{"state":"WATCH","setup":"","stop":9.2578,"target":9.48,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4107,"vwap":9.3577,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0124,"volatility":"high"},"price":9.4107,"volume":{"bars":287,"last_bar_volume":5003.0,"baseline_avg":5848.9,"bar_rvol":0.855375,"raw_accel":-0.715124,"smooth_accel":1.886038,"accel_momentum":-0.714656,"rvol_3bar":[1.359961,3.439685,0.855375],"trend_3bar":"MIXED","projected_rvol":1.49063},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":178.0,"sell_vol":332.0,"unclassified_vol":0.0,"imbalance":-0.301961,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.184438},"context":{"vwap":9.357542,"price_vs_vwap_pct":0.568073,"ema9":9.409434,"ema20":9.40076,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.251836,"dist_to_hod_atr":5.653851,"atr":0.021101,"spread_atr":0.473919,"own_change_pct":0.217132,"rel_strength_pct":{"SPY":0.242866,"IWM":0.234634}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.25829},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4cc89d8bafbc","ts":"2026-09-15T18:17:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1565.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 61304 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.677,"trend":"flat","recent_slope_pct":-0.0008,"volatility":"low"},"price":10.095,"volume":{"bars":287,"last_bar_volume":68557.0,"baseline_avg":39179.35,"bar_rvol":1.749825,"raw_accel":-0.693029,"smooth_accel":1.709749,"accel_momentum":0.557708,"rvol_3bar":[1.255253,7.534542,1.749825],"trend_3bar":"MIXED","projected_rvol":0.236423},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":4997.0,"sell_vol":1243.0,"unclassified_vol":0.0,"imbalance":0.601603,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.290516},"context":{"vwap":10.077174,"price_vs_vwap_pct":0.176897,"ema9":10.091519,"ema20":10.087926,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.082615,"atr":0.012976,"spread_atr":0.770654,"own_change_pct":-0.032689,"rel_strength_pct":{"SPY":-0.006955,"IWM":-0.015188}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.052699},"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":"a812781a498e","ts":"2026-09-15T18:18:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1565.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3577,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.497,"trend":"flat","recent_slope_pct":-0.0245,"volatility":"high"},"price":9.405,"volume":{"bars":287,"last_bar_volume":5003.0,"baseline_avg":5848.9,"bar_rvol":0.855375,"raw_accel":-0.715124,"smooth_accel":1.886038,"accel_momentum":-0.714656,"rvol_3bar":[1.359961,3.439685,0.855375],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":251.0,"sell_vol":330.0,"unclassified_vol":0.0,"imbalance":-0.135972,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.194358},"context":{"vwap":9.357542,"price_vs_vwap_pct":0.50716,"ema9":9.409434,"ema20":9.40076,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":5.923985,"atr":0.021101,"spread_atr":0.473919,"own_change_pct":0.217132,"rel_strength_pct":{"SPY":0.254081,"IWM":0.252134}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.116307},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"835b9a057909","ts":"2026-09-15T18:18:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1570.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 97 min","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0772,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":0.677,"trend":"flat","recent_slope_pct":-0.0107,"volatility":"low"},"price":10.09,"volume":{"bars":287,"last_bar_volume":68557.0,"baseline_avg":39179.35,"bar_rvol":1.749825,"raw_accel":-0.693029,"smooth_accel":1.709749,"accel_momentum":0.557708,"rvol_3bar":[1.255253,7.534542,1.749825],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":8271.0,"sell_vol":1409.0,"unclassified_vol":0.0,"imbalance":0.708884,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.47719},"context":{"vwap":10.077174,"price_vs_vwap_pct":0.12728,"ema9":10.091519,"ema20":10.087926,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":3.467941,"atr":0.012976,"spread_atr":0.770654,"own_change_pct":-0.032689,"rel_strength_pct":{"SPY":0.00426,"IWM":0.002312}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.240423},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"06cfec815721","ts":"2026-09-15T18:18:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1570.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7557 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3577,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.035,"volatility":"high"},"price":9.41,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":156.0,"sell_vol":250.0,"unclassified_vol":0.0,"imbalance":-0.231527,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":4.114708},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.558823,"ema9":9.408548,"ema20":9.401164,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":5.420953,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.373121},"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":"f6c9ff2f1a10","ts":"2026-09-15T18:18:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1575.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.42; R:R 0.42 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2432,"target":9.46,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.3961,"vwap":9.3577,"ext_from_open_pct":0.49,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0645,"volatility":"high"},"price":9.3961,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":348.0,"sell_vol":470.0,"unclassified_vol":0.0,"imbalance":-0.149144,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.524955},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.410283,"ema9":9.408548,"ema20":9.401164,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.405037,"dist_to_hod_atr":6.04888,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.240356},"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":"ce650b1b0fda","ts":"2026-09-15T18:18:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1580.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.45; R:R 0.45 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7557 sh","plan":{"state":"WATCH","setup":"","stop":9.258,"target":9.48,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4109,"vwap":9.3577,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.033,"volatility":"high"},"price":9.4109,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":0.415127},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":428.0,"sell_vol":470.0,"unclassified_vol":0.0,"imbalance":-0.046771,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":4.016613},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.568441,"ema9":9.408548,"ema20":9.401164,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.249738,"dist_to_hod_atr":5.380296,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.075374},"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":"ad913b432c0e","ts":"2026-09-15T18:18:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1585.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60889 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.677,"trend":"flat","recent_slope_pct":0.0023,"volatility":"low"},"price":10.095,"volume":{"bars":288,"last_bar_volume":12115.0,"baseline_avg":41349.95,"bar_rvol":0.292987,"raw_accel":-0.823286,"smooth_accel":2.669443,"accel_momentum":0.959694,"rvol_3bar":[7.534542,1.749825,0.292987],"trend_3bar":"DECELERATING","projected_rvol":0.626168},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":7735.0,"sell_vol":3200.0,"unclassified_vol":0.0,"imbalance":0.414723,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.527571},"context":{"vwap":10.077188,"price_vs_vwap_pct":0.176754,"ema9":10.091215,"ema20":10.088124,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.133955,"atr":0.012763,"spread_atr":0.783489,"own_change_pct":-0.049529,"rel_strength_pct":{"SPY":-0.01258,"IWM":-0.014528}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.121509},"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":"1ab567c8c7c0","ts":"2026-09-15T18:18:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1590.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 97 min","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0772,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.677,"trend":"flat","recent_slope_pct":-0.0076,"volatility":"low"},"price":10.09,"volume":{"bars":288,"last_bar_volume":12115.0,"baseline_avg":41349.95,"bar_rvol":0.292987,"raw_accel":-0.823286,"smooth_accel":2.669443,"accel_momentum":0.959694,"rvol_3bar":[7.534542,1.749825,0.292987],"trend_3bar":"DECELERATING","projected_rvol":0.501548},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":7560.0,"sell_vol":3288.0,"unclassified_vol":0.0,"imbalance":0.393805,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.802751},"context":{"vwap":10.077188,"price_vs_vwap_pct":0.127137,"ema9":10.091215,"ema20":10.088124,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":3.525699,"atr":0.012763,"spread_atr":0.783489,"own_change_pct":-0.049529,"rel_strength_pct":{"SPY":-0.01258,"IWM":-0.014528}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.11538},"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":"de9a517da145","ts":"2026-09-15T18:18:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1590.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2481,"target":9.46,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":7.6,"room_to_5d_high_atr":3.22},"price":9.401,"vwap":9.3577,"ext_from_open_pct":0.55,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0541,"volatility":"high"},"price":9.401,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":0.476453},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":660.0,"sell_vol":557.0,"unclassified_vol":0.0,"imbalance":0.084634,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.399964},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.462646,"ema9":9.408548,"ema20":9.401164,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.35362,"dist_to_hod_atr":5.827524,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.136394},"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":"a8430a867ed2","ts":"2026-09-15T18:18:25+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4659,"target":12.72,"target_label":"premarket_high","reward_risk":0.16,"pos_in_5d_range_pct":15.4,"room_to_5d_high_atr":2.04},"price":12.685,"vwap":12.6182,"ext_from_open_pct":1.48,"max_ext_allowed_pct":3.0,"volume_pace":0.788,"trend":"flat","recent_slope_pct":-0.0401,"volatility":"high"},"price":12.685,"volume":{"bars":288,"last_bar_volume":5041.0,"baseline_avg":4685.05,"bar_rvol":1.075976,"raw_accel":-0.588926,"smooth_accel":1.171148,"accel_momentum":0.819247,"rvol_3bar":[0.980527,2.747826,1.075976],"trend_3bar":"MIXED","projected_rvol":0.480507},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":988.0,"sell_vol":502.0,"unclassified_vol":0.0,"imbalance":0.326174,"bid":12.68,"ask":12.69,"spread_pct":0.078833,"quote_size_imbalance":null,"quote_age_s":0.174732},"context":{"vwap":12.618174,"price_vs_vwap_pct":0.529599,"ema9":12.695939,"ema20":12.679952,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.572965,"dist_to_hod_atr":9.859971,"atr":0.033976,"spread_atr":0.294327,"own_change_pct":0.246016,"rel_strength_pct":{"SPY":0.282965,"IWM":0.281018}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.350956},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a66286aad24d","ts":"2026-09-15T18:18:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1595.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.45; R:R 0.45 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7557 sh","plan":{"state":"WATCH","setup":"","stop":9.2583,"target":9.48,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4112,"vwap":9.3577,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0324,"volatility":"high"},"price":9.4112,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":0.437141},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":655.0,"sell_vol":457.0,"unclassified_vol":0.0,"imbalance":0.178058,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.635998},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.571647,"ema9":9.408548,"ema20":9.401164,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.24659,"dist_to_hod_atr":5.366743,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.286951},"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":"8c16a9141b6c","ts":"2026-09-15T18:18:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1600.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3577,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0456,"volatility":"high"},"price":9.405,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":0.475779},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":839.0,"sell_vol":544.0,"unclassified_vol":0.0,"imbalance":0.213304,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":6.635998},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.505392,"ema9":9.408548,"ema20":9.401164,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":5.646826,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.343754},"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":"736758f44021","ts":"2026-09-15T18:18:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1605.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.70; R:R 0.70 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60889 sh","plan":{"state":"WATCH","setup":"","stop":10.0521,"target":10.13,"target_label":"premarket_high","reward_risk":0.7,"pos_in_5d_range_pct":9.2,"room_to_5d_high_atr":4.18},"price":10.098,"vwap":10.0772,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.677,"trend":"flat","recent_slope_pct":0.0082,"volatility":"low"},"price":10.098,"volume":{"bars":288,"last_bar_volume":12115.0,"baseline_avg":41349.95,"bar_rvol":0.292987,"raw_accel":-0.823286,"smooth_accel":2.669443,"accel_momentum":0.959694,"rvol_3bar":[7.534542,1.749825,0.292987],"trend_3bar":"DECELERATING","projected_rvol":1.011824},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":8103.0,"sell_vol":14757.0,"unclassified_vol":0.0,"imbalance":-0.291076,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.013815},"context":{"vwap":10.077188,"price_vs_vwap_pct":0.206524,"ema9":10.091215,"ema20":10.088124,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.365072,"dist_to_hod_atr":2.898908,"atr":0.012763,"spread_atr":0.783489,"own_change_pct":-0.049529,"rel_strength_pct":{"SPY":-0.01258,"IWM":-0.014528}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.085282},"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":"da56a86f0f31","ts":"2026-09-15T18:18:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1605.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.45; R:R 0.45 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7557 sh","plan":{"state":"WATCH","setup":"","stop":9.2583,"target":9.48,"target_label":"premarket_high","reward_risk":0.45,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4112,"vwap":9.3577,"ext_from_open_pct":0.65,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0324,"volatility":"high"},"price":9.4112,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":0.447854},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":648.0,"sell_vol":424.0,"unclassified_vol":0.0,"imbalance":0.208955,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.612116},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.571647,"ema9":9.408548,"ema20":9.401164,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.24659,"dist_to_hod_atr":5.366743,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.336745},"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":"52ed750684b7","ts":"2026-09-15T18:18:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1610.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.80; target 0.04 away > ~0.04 reachable in 96 min","plan":{"state":"PASS","setup":"","stop":10.0472,"target":10.13,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":8.7,"room_to_5d_high_atr":4.2},"price":10.0931,"vwap":10.0772,"ext_from_open_pct":0.03,"max_ext_allowed_pct":3.0,"volume_pace":0.677,"trend":"flat","recent_slope_pct":-0.0015,"volatility":"low"},"price":10.0931,"volume":{"bars":288,"last_bar_volume":12115.0,"baseline_avg":41349.95,"bar_rvol":0.292987,"raw_accel":-0.823286,"smooth_accel":2.669443,"accel_momentum":0.959694,"rvol_3bar":[7.534542,1.749825,0.292987],"trend_3bar":"DECELERATING","projected_rvol":0.901198},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":7937.0,"sell_vol":14065.0,"unclassified_vol":0.0,"imbalance":-0.27852,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.627548},"context":{"vwap":10.077188,"price_vs_vwap_pct":0.1579,"ema9":10.091215,"ema20":10.088124,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.413419,"dist_to_hod_atr":3.282817,"atr":0.012763,"spread_atr":0.783489,"own_change_pct":-0.049529,"rel_strength_pct":{"SPY":-0.01258,"IWM":-0.014528}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.081603},"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":"bd2dba67a600","ts":"2026-09-15T18:18:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1610.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.35; R:R 0.35 < 2.0 at 9.41; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2534,"target":9.46,"target_label":"ceiling","reward_risk":0.35,"pos_in_5d_range_pct":7.8,"room_to_5d_high_atr":3.21},"price":9.4063,"vwap":9.3577,"ext_from_open_pct":0.6,"max_ext_allowed_pct":3.0,"volume_pace":0.496,"trend":"flat","recent_slope_pct":-0.0428,"volatility":"high"},"price":9.4063,"volume":{"bars":288,"last_bar_volume":8199.0,"baseline_avg":5087.6,"bar_rvol":1.611565,"raw_accel":0.638817,"smooth_accel":1.395204,"accel_momentum":-0.490834,"rvol_3bar":[3.439685,0.855375,1.611565],"trend_3bar":"MIXED","projected_rvol":0.426396},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":571.0,"sell_vol":528.0,"unclassified_vol":0.0,"imbalance":0.039126,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":4.18304},"context":{"vwap":9.357707,"price_vs_vwap_pct":0.519284,"ema9":9.408548,"ema20":9.401164,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.298006,"dist_to_hod_atr":5.588099,"atr":0.022136,"spread_atr":0.451746,"own_change_pct":-0.082866,"rel_strength_pct":{"SPY":-0.045917,"IWM":-0.047864}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.063055},"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":"e828a0eae3b7","ts":"2026-09-15T18:18:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1625.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60889 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":0.0023,"volatility":"low"},"price":10.095,"volume":{"bars":288,"last_bar_volume":12115.0,"baseline_avg":41349.95,"bar_rvol":0.292987,"raw_accel":-0.823286,"smooth_accel":2.669443,"accel_momentum":0.959694,"rvol_3bar":[7.534542,1.749825,0.292987],"trend_3bar":"DECELERATING","projected_rvol":0.681746},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":1822.0,"sell_vol":9741.0,"unclassified_vol":0.0,"imbalance":-0.684857,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":9.53308},"context":{"vwap":10.077188,"price_vs_vwap_pct":0.176754,"ema9":10.091215,"ema20":10.088124,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.133955,"atr":0.012763,"spread_atr":0.783489,"own_change_pct":-0.049529,"rel_strength_pct":{"SPY":-0.01258,"IWM":-0.014528}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.200654},"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":"7107206863b1","ts":"2026-09-15T18:19:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1630.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.82; target 0.04 away > ~0.04 reachable in 96 min","plan":{"state":"PASS","setup":"","stop":10.0464,"target":10.13,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":4.21},"price":10.0923,"vwap":10.0772,"ext_from_open_pct":0.02,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":-0.0031,"volatility":"low"},"price":10.0923,"volume":{"bars":288,"last_bar_volume":12115.0,"baseline_avg":41349.95,"bar_rvol":0.292987,"raw_accel":-0.823286,"smooth_accel":2.669443,"accel_momentum":0.959694,"rvol_3bar":[7.534542,1.749825,0.292987],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":1184.0,"sell_vol":1255.0,"unclassified_vol":0.0,"imbalance":-0.02911,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.520732},"context":{"vwap":10.077188,"price_vs_vwap_pct":0.149961,"ema9":10.091215,"ema20":10.088124,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.421312,"dist_to_hod_atr":3.345497,"atr":0.012763,"spread_atr":0.783489,"own_change_pct":-0.049529,"rel_strength_pct":{"SPY":-0.008625,"IWM":-0.012779}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.008529},"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":"00cec65ab352","ts":"2026-09-15T18:19:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4759,"target":12.72,"target_label":"premarket_high","reward_risk":0.11,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.03},"price":12.695,"vwap":12.6182,"ext_from_open_pct":1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.786,"trend":"flat","recent_slope_pct":0.0053,"volatility":"high"},"price":12.695,"volume":{"bars":289,"last_bar_volume":3026.0,"baseline_avg":4910.8,"bar_rvol":0.616193,"raw_accel":-0.399722,"smooth_accel":0.589896,"accel_momentum":-0.581252,"rvol_3bar":[2.747826,1.075976,0.616193],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":132.0,"sell_vol":137.0,"unclassified_vol":0.0,"imbalance":-0.018587,"bid":12.69,"ask":12.7,"spread_pct":0.078771,"quote_size_imbalance":null,"quote_age_s":4.993857},"context":{"vwap":12.618224,"price_vs_vwap_pct":0.60845,"ema9":12.696811,"ema20":12.68189,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.49616,"dist_to_hod_atr":9.563145,"atr":0.033985,"spread_atr":0.294251,"own_change_pct":-0.115611,"rel_strength_pct":{"SPY":-0.074707,"IWM":-0.078861}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.011453},"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":"e48a5c355c06","ts":"2026-09-15T18:19:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1635.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60957 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":0.0052,"volatility":"low"},"price":10.095,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":1648.0,"sell_vol":462.0,"unclassified_vol":0.0,"imbalance":0.562085,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.590256},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.176434,"ema9":10.091432,"ema20":10.088522,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.183183,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.370014},"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":"a1c4ecf6ee17","ts":"2026-09-15T18:19:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1635.0s, plan says WATCH; stop 9.25, target 9.48 (premarket_high), R:R 0.47; R:R 0.47 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7509 sh","plan":{"state":"WATCH","setup":"","stop":9.2545,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4074,"vwap":9.3578,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0247,"volatility":"high"},"price":9.4074,"volume":{"bars":289,"last_bar_volume":2498.0,"baseline_avg":5278.9,"bar_rvol":0.473205,"raw_accel":-0.695329,"smooth_accel":-0.439986,"accel_momentum":-1.83519,"rvol_3bar":[0.855375,1.611565,0.473205],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":823.0,"sell_vol":435.0,"unclassified_vol":0.0,"imbalance":0.308426,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":2.241269},"context":{"vwap":9.357762,"price_vs_vwap_pct":0.530447,"ema9":9.407838,"ema20":9.401529,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.286464,"dist_to_hod_atr":5.655871,"atr":0.021677,"spread_atr":0.461327,"own_change_pct":-0.088173,"rel_strength_pct":{"SPY":-0.047268,"IWM":-0.051423}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.145949},"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":"e01facb3f1a5","ts":"2026-09-15T18:19:10+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3188,"target":8.59,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":8.8,"room_to_5d_high_atr":3.74},"price":8.51,"vwap":8.4324,"ext_from_open_pct":1.67,"max_ext_allowed_pct":3.0,"volume_pace":0.747,"trend":"flat","recent_slope_pct":-0.0892,"volatility":"high"},"price":8.51,"volume":{"bars":289,"last_bar_volume":44725.0,"baseline_avg":42351.8,"bar_rvol":1.056035,"raw_accel":-0.135899,"smooth_accel":-0.424355,"accel_momentum":-0.57035,"rvol_3bar":[0.223008,1.266292,1.056035],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":920.0,"sell_vol":17942.0,"unclassified_vol":0.0,"imbalance":-0.902449,"bid":8.51,"ask":8.52,"spread_pct":0.11744,"quote_size_imbalance":null,"quote_age_s":0.024413},"context":{"vwap":8.432398,"price_vs_vwap_pct":0.920278,"ema9":8.528378,"ema20":8.530782,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.902017,"dist_to_hod_atr":6.215018,"atr":0.026549,"spread_atr":0.376668,"own_change_pct":-0.537383,"rel_strength_pct":{"SPY":-0.496479,"IWM":-0.500633}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.953018},"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":"3ff5bc6c4e86","ts":"2026-09-15T18:19:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1640.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.85; target 0.04 away > ~0.04 reachable in 96 min","plan":{"state":"PASS","setup":"","stop":10.0452,"target":10.13,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":4.22},"price":10.0911,"vwap":10.0772,"ext_from_open_pct":0.01,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":-0.0026,"volatility":"low"},"price":10.0911,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1602.0,"sell_vol":1455.0,"unclassified_vol":0.0,"imbalance":0.048086,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":4.297168},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.137733,"ema9":10.091432,"ema20":10.088522,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.433152,"dist_to_hod_atr":3.493543,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.031655},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"3fe1d685701d","ts":"2026-09-15T18:19:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1640.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3578,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0298,"volatility":"high"},"price":9.405,"volume":{"bars":289,"last_bar_volume":2498.0,"baseline_avg":5278.9,"bar_rvol":0.473205,"raw_accel":-0.695329,"smooth_accel":-0.439986,"accel_momentum":-1.83519,"rvol_3bar":[0.855375,1.611565,0.473205],"trend_3bar":"MIXED","projected_rvol":0.590274},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":820.0,"sell_vol":830.0,"unclassified_vol":0.0,"imbalance":-0.006061,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.924667},"context":{"vwap":9.357762,"price_vs_vwap_pct":0.5048,"ema9":9.407838,"ema20":9.401529,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":5.766589,"atr":0.021677,"spread_atr":0.461327,"own_change_pct":-0.088173,"rel_strength_pct":{"SPY":-0.047268,"IWM":-0.051423}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.002868},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"e0039a8a0088","ts":"2026-09-15T18:19:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1645.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60957 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":0.0052,"volatility":"low"},"price":10.095,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":0.261281},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1699.0,"sell_vol":1917.0,"unclassified_vol":0.0,"imbalance":-0.060288,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.384956},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.176434,"ema9":10.091432,"ema20":10.088522,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.183183,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.039687},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c7a8936f6a1e","ts":"2026-09-15T18:19:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1645.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7509 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3578,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0191,"volatility":"high"},"price":9.41,"volume":{"bars":289,"last_bar_volume":2498.0,"baseline_avg":5278.9,"bar_rvol":0.473205,"raw_accel":-0.695329,"smooth_accel":-0.439986,"accel_momentum":-1.83519,"rvol_3bar":[0.855375,1.611565,0.473205],"trend_3bar":"MIXED","projected_rvol":1.080907},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":1800.0,"sell_vol":972.0,"unclassified_vol":0.0,"imbalance":0.298701,"bid":9.41,"ask":9.42,"spread_pct":0.106213,"quote_size_imbalance":null,"quote_age_s":1.490803},"context":{"vwap":9.357762,"price_vs_vwap_pct":0.558232,"ema9":9.407838,"ema20":9.401529,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":5.535926,"atr":0.021677,"spread_atr":0.461327,"own_change_pct":-0.088173,"rel_strength_pct":{"SPY":-0.047268,"IWM":-0.051423}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.141347},"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":"0f0715d0f715","ts":"2026-09-15T18:19:20+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1650.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.85; target 0.04 away > ~0.04 reachable in 96 min","plan":{"state":"PASS","setup":"","stop":10.0451,"target":10.13,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":4.22},"price":10.091,"vwap":10.0772,"ext_from_open_pct":0.01,"max_ext_allowed_pct":3.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":-0.0028,"volatility":"low"},"price":10.091,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":0.223955},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1203.0,"sell_vol":1908.0,"unclassified_vol":0.0,"imbalance":-0.226615,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":4.956403},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.136741,"ema9":10.091432,"ema20":10.088522,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.434139,"dist_to_hod_atr":3.501501,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.149178},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"41f349236d53","ts":"2026-09-15T18:19:25+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7661,"target":13.2,"target_label":"ceiling","reward_risk":1.4,"pos_in_5d_range_pct":46.5,"room_to_5d_high_atr":1.11},"price":12.9469,"vwap":12.9021,"ext_from_open_pct":-0.79,"max_ext_allowed_pct":3.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":-0.0356,"volatility":"medium"},"price":12.9469,"volume":{"bars":288,"last_bar_volume":1646.0,"baseline_avg":519.5,"bar_rvol":3.168431,"raw_accel":11.673725,"smooth_accel":2.023102,"accel_momentum":2.522276,"rvol_3bar":[0.10571,0.240709,3.168431],"trend_3bar":"ACCELERATING","projected_rvol":0.041578},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":1.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":-0.777778,"bid":12.92,"ask":12.98,"spread_pct":0.46332,"quote_size_imbalance":null,"quote_age_s":24.679468},"context":{"vwap":12.902135,"price_vs_vwap_pct":0.346957,"ema9":12.953766,"ema20":12.934531,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.728024,"dist_to_hod_atr":8.996718,"atr":0.040359,"spread_atr":1.486651,"own_change_pct":-0.07716,"rel_strength_pct":{"SPY":-0.036256,"IWM":-0.04041}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.464335},"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":"1d5e4b825093","ts":"2026-09-15T18:19:30+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1660.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60957 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":0.0052,"volatility":"low"},"price":10.095,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":0.232906},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2679.0,"sell_vol":1901.0,"unclassified_vol":0.0,"imbalance":0.169869,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":5.102245},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.176434,"ema9":10.091432,"ema20":10.088522,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.183183,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.111823},"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":"6d34c28e9df3","ts":"2026-09-15T18:19:35+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4181,"target":9.87,"target_label":"premarket_high","reward_risk":1.99,"pos_in_5d_range_pct":5.8,"room_to_5d_high_atr":3.22},"price":9.5695,"vwap":9.5578,"ext_from_open_pct":-1.85,"max_ext_allowed_pct":4.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":0.0205,"volatility":"high"},"price":9.5695,"volume":{"bars":289,"last_bar_volume":738.0,"baseline_avg":8705.2,"bar_rvol":0.084777,"raw_accel":-0.93264,"smooth_accel":-0.416806,"accel_momentum":-0.196765,"rvol_3bar":[0.651599,1.334649,0.084777],"trend_3bar":"MIXED","projected_rvol":1.703218},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":7215.0,"sell_vol":1062.0,"unclassified_vol":0.0,"imbalance":0.743385,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":0.743512},"context":{"vwap":9.557791,"price_vs_vwap_pct":0.122503,"ema9":9.543904,"ema20":9.531448,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.650051,"dist_to_hod_atr":12.56843,"atr":0.020727,"spread_atr":0.482473,"own_change_pct":-0.028257,"rel_strength_pct":{"SPY":0.012647,"IWM":0.008493}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.063022},"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":"38bfde132db5","ts":"2026-09-15T18:19:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1665.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.82; target 0.04 away > ~0.04 reachable in 95 min","plan":{"state":"PASS","setup":"","stop":10.0463,"target":10.13,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":8.5,"room_to_5d_high_atr":4.21},"price":10.0922,"vwap":10.0772,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":-0.0004,"volatility":"low"},"price":10.0922,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":0.213494},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":2302.0,"sell_vol":1970.0,"unclassified_vol":0.0,"imbalance":0.077715,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.166222},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.148649,"ema9":10.091432,"ema20":10.088522,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.422299,"dist_to_hod_atr":3.406006,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.051159},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6d45031920c8","ts":"2026-09-15T18:19:40+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.55 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.3974,"target":9.62,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":4.8,"room_to_5d_high_atr":3.26},"price":9.5488,"vwap":9.5578,"ext_from_open_pct":-2.06,"max_ext_allowed_pct":4.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"high"},"price":9.5488,"volume":{"bars":289,"last_bar_volume":738.0,"baseline_avg":8705.2,"bar_rvol":0.084777,"raw_accel":-0.93264,"smooth_accel":-0.416806,"accel_momentum":-0.196765,"rvol_3bar":[0.651599,1.334649,0.084777],"trend_3bar":"MIXED","projected_rvol":1.508753},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":7220.0,"sell_vol":1163.0,"unclassified_vol":0.0,"imbalance":0.722534,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":0.047587},"context":{"vwap":9.557791,"price_vs_vwap_pct":-0.094074,"ema9":9.543904,"ema20":9.531448,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.860631,"dist_to_hod_atr":13.567149,"atr":0.020727,"spread_atr":0.482473,"own_change_pct":-0.028257,"rel_strength_pct":{"SPY":0.012647,"IWM":0.008493}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.061254},"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":"64d69e0f75e9","ts":"2026-09-15T18:19:40+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1670.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60957 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0772,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":0.0052,"volatility":"low"},"price":10.095,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":0.247297},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":3344.0,"sell_vol":1130.0,"unclassified_vol":0.0,"imbalance":0.494859,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.350053},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.176434,"ema9":10.091432,"ema20":10.088522,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.183183,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.32576},"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":"8da023733f3c","ts":"2026-09-15T18:19:45+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4201,"target":9.87,"target_label":"premarket_high","reward_risk":1.97,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.22},"price":9.5715,"vwap":9.5578,"ext_from_open_pct":-1.83,"max_ext_allowed_pct":4.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":0.0247,"volatility":"high"},"price":9.5715,"volume":{"bars":289,"last_bar_volume":738.0,"baseline_avg":8705.2,"bar_rvol":0.084777,"raw_accel":-0.93264,"smooth_accel":-0.416806,"accel_momentum":-0.196765,"rvol_3bar":[0.651599,1.334649,0.084777],"trend_3bar":"MIXED","projected_rvol":1.523074},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":4996.0,"sell_vol":1372.0,"unclassified_vol":0.0,"imbalance":0.569095,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":2.214449},"context":{"vwap":9.557791,"price_vs_vwap_pct":0.143428,"ema9":9.543904,"ema20":9.531448,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.629705,"dist_to_hod_atr":12.471935,"atr":0.020727,"spread_atr":0.482473,"own_change_pct":-0.028257,"rel_strength_pct":{"SPY":0.012647,"IWM":0.008493}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.048246},"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":"9504ab8465a5","ts":"2026-09-15T18:19:55+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1685.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 95 min","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0772,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":-0.0048,"volatility":"low"},"price":10.09,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":0.197549},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":1907.0,"sell_vol":792.0,"unclassified_vol":0.0,"imbalance":0.413116,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.003583},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.126817,"ema9":10.091432,"ema20":10.088522,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":3.581081,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.014159,"IWM":0.010005}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.27195},"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":"7f5073d8db60","ts":"2026-09-15T18:20:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1685.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2517,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.4046,"vwap":9.3579,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0306,"volatility":"high"},"price":9.4046,"volume":{"bars":289,"last_bar_volume":2498.0,"baseline_avg":5278.9,"bar_rvol":0.473205,"raw_accel":-0.695329,"smooth_accel":-0.439986,"accel_momentum":-1.83519,"rvol_3bar":[0.855375,1.611565,0.473205],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":766.0,"sell_vol":2904.0,"unclassified_vol":0.0,"imbalance":-0.582561,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.225267},"context":{"vwap":9.357762,"price_vs_vwap_pct":0.500526,"ema9":9.407838,"ema20":9.401529,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.315845,"dist_to_hod_atr":5.785042,"atr":0.021677,"spread_atr":0.461327,"own_change_pct":-0.088173,"rel_strength_pct":{"SPY":-0.060684,"IWM":-0.056674}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.275671},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"610ba47385d2","ts":"2026-09-15T18:20:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1690.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.70; R:R 0.70 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60957 sh","plan":{"state":"WATCH","setup":"","stop":10.0518,"target":10.13,"target_label":"premarket_high","reward_risk":0.7,"pos_in_5d_range_pct":9.2,"room_to_5d_high_atr":4.18},"price":10.0977,"vwap":10.0772,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":0.0105,"volatility":"low"},"price":10.0977,"volume":{"bars":289,"last_bar_volume":25890.0,"baseline_avg":39329.25,"bar_rvol":0.658289,"raw_accel":1.13702,"smooth_accel":-0.61233,"accel_momentum":-3.281773,"rvol_3bar":[1.749825,0.292987,0.658289],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":1900.0,"sell_vol":1266.0,"unclassified_vol":0.0,"imbalance":0.200253,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.170863},"context":{"vwap":10.07722,"price_vs_vwap_pct":0.203227,"ema9":10.091432,"ema20":10.088522,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.368032,"dist_to_hod_atr":2.968318,"atr":0.012566,"spread_atr":0.795796,"own_change_pct":-0.026746,"rel_strength_pct":{"SPY":0.000743,"IWM":0.004753}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.131824},"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":"2adf0cf83cb2","ts":"2026-09-15T18:20:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7692,"target":13.2,"target_label":"ceiling","reward_risk":1.38,"pos_in_5d_range_pct":46.7,"room_to_5d_high_atr":1.11},"price":12.95,"vwap":12.9021,"ext_from_open_pct":-0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":-0.0409,"volatility":"medium"},"price":12.95,"volume":{"bars":289,"last_bar_volume":76.0,"baseline_avg":558.75,"bar_rvol":0.136018,"raw_accel":-0.953827,"smooth_accel":6.076628,"accel_momentum":4.053526,"rvol_3bar":[0.240709,3.168431,0.136018],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":2.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":-0.833333,"bid":12.92,"ask":12.98,"spread_pct":0.46332,"quote_size_imbalance":null,"quote_age_s":1.877374},"context":{"vwap":12.902147,"price_vs_vwap_pct":0.370893,"ema9":12.952413,"ema20":12.935718,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.704733,"dist_to_hod_atr":9.415825,"atr":0.038234,"spread_atr":1.569304,"own_change_pct":-0.138835,"rel_strength_pct":{"SPY":-0.111347,"IWM":-0.107336}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.113348},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"670793a87395","ts":"2026-09-15T18:20:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.6972,"target":10.935,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":49.3,"room_to_5d_high_atr":1.1},"price":10.8454,"vwap":10.586,"ext_from_open_pct":4.18,"max_ext_allowed_pct":3.0,"volume_pace":0.903,"trend":"flat","recent_slope_pct":0.0087,"volatility":"medium"},"price":10.8454,"volume":{"bars":290,"last_bar_volume":13089.0,"baseline_avg":11843.1,"bar_rvol":1.1052,"raw_accel":3.420802,"smooth_accel":-0.472556,"accel_momentum":-0.105966,"rvol_3bar":[0.503062,0.234487,1.1052],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1121.0,"sell_vol":1118.0,"unclassified_vol":0.0,"imbalance":0.00134,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":3.535005},"context":{"vwap":10.585988,"price_vs_vwap_pct":2.450523,"ema9":10.843229,"ema20":10.82706,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.864717,"dist_to_hod_atr":2.496895,"atr":0.037887,"spread_atr":0.263942,"own_change_pct":-0.092081,"rel_strength_pct":{"SPY":-0.064592,"IWM":-0.060582}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.001481},"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":"8a43263dbab9","ts":"2026-09-15T18:20:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1690.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7626 sh","plan":{"state":"WATCH","setup":"","stop":9.2564,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4093,"vwap":9.3579,"ext_from_open_pct":0.63,"max_ext_allowed_pct":3.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0138,"volatility":"high"},"price":9.4093,"volume":{"bars":290,"last_bar_volume":6068.0,"baseline_avg":5126.55,"bar_rvol":1.183642,"raw_accel":1.429143,"smooth_accel":-0.433213,"accel_momentum":0.006773,"rvol_3bar":[1.611565,0.473205,1.183642],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":881.0,"sell_vol":3059.0,"unclassified_vol":0.0,"imbalance":-0.552792,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":2.148511},"context":{"vwap":9.357906,"price_vs_vwap_pct":0.549207,"ema9":9.40719,"ema20":9.401822,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.266527,"dist_to_hod_atr":5.586195,"atr":0.021607,"spread_atr":0.462817,"own_change_pct":-0.185734,"rel_strength_pct":{"SPY":-0.158245,"IWM":-0.154234}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.654308},"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":"a5f1562c9dc9","ts":"2026-09-15T18:20:05+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.3301,"target":8.59,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":3.73},"price":8.5213,"vwap":8.4327,"ext_from_open_pct":1.81,"max_ext_allowed_pct":4.0,"volume_pace":0.748,"trend":"flat","recent_slope_pct":-0.0658,"volatility":"high"},"price":8.5213,"volume":{"bars":290,"last_bar_volume":72060.0,"baseline_avg":42939.6,"bar_rvol":1.678171,"raw_accel":0.611179,"smooth_accel":0.046487,"accel_momentum":0.470841,"rvol_3bar":[1.266292,1.056035,1.678171],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":99,"trade_rate":3.3,"buy_vol":24371.0,"sell_vol":4300.0,"unclassified_vol":0.0,"imbalance":0.700045,"bid":8.5,"ask":8.51,"spread_pct":0.117578,"quote_size_imbalance":null,"quote_age_s":0.092865},"context":{"vwap":8.432677,"price_vs_vwap_pct":1.050953,"ema9":8.523702,"ema20":8.528327,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.771758,"dist_to_hod_atr":5.722389,"atr":0.026859,"spread_atr":0.372309,"own_change_pct":-0.48325,"rel_strength_pct":{"SPY":-0.455761,"IWM":-0.451751}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.174796},"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":"6dc09aa14b12","ts":"2026-09-15T18:20:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1695.0s, plan says PASS; stop 10.04, target 10.13 (premarket_high), R:R 0.87; target 0.04 away > ~0.04 reachable in 95 min","plan":{"state":"PASS","setup":"","stop":10.0441,"target":10.13,"target_label":"premarket_high","reward_risk":0.87,"pos_in_5d_range_pct":8.3,"room_to_5d_high_atr":4.22},"price":10.09,"vwap":10.0772,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":0.0043,"volatility":"low"},"price":10.09,"volume":{"bars":290,"last_bar_volume":7746.0,"baseline_avg":39633.85,"bar_rvol":0.195439,"raw_accel":-0.700811,"smooth_accel":-0.86051,"accel_momentum":-0.24818,"rvol_3bar":[0.292987,0.658289,0.195439],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":6944.0,"sell_vol":5800.0,"unclassified_vol":0.0,"imbalance":0.089768,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":2.945001},"context":{"vwap":10.077231,"price_vs_vwap_pct":0.126712,"ema9":10.092686,"ema20":10.089396,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.444006,"dist_to_hod_atr":3.634088,"atr":0.012383,"spread_atr":0.807575,"own_change_pct":0.051523,"rel_strength_pct":{"SPY":0.079012,"IWM":0.083023}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.017544},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"75751b1f5677","ts":"2026-09-15T18:20:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1695.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.358,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.023,"volatility":"high"},"price":9.405,"volume":{"bars":290,"last_bar_volume":6068.0,"baseline_avg":5126.55,"bar_rvol":1.183642,"raw_accel":1.429143,"smooth_accel":-0.433213,"accel_momentum":0.006773,"rvol_3bar":[1.611565,0.473205,1.183642],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":90,"trade_rate":3.0,"buy_vol":2502.0,"sell_vol":3647.0,"unclassified_vol":0.0,"imbalance":-0.186209,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.117354},"context":{"vwap":9.357906,"price_vs_vwap_pct":0.503256,"ema9":9.40719,"ema20":9.401822,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":5.785206,"atr":0.021607,"spread_atr":0.462817,"own_change_pct":-0.185734,"rel_strength_pct":{"SPY":-0.158245,"IWM":-0.154234}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.220405},"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":"fc1b6caeaf9c","ts":"2026-09-15T18:20:10+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1700.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.66; R:R 0.66 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60624 sh","plan":{"state":"WATCH","setup":"","stop":10.054,"target":10.13,"target_label":"premarket_high","reward_risk":0.66,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.0999,"vwap":10.0772,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":0.0239,"volatility":"low"},"price":10.0999,"volume":{"bars":290,"last_bar_volume":7746.0,"baseline_avg":39633.85,"bar_rvol":0.195439,"raw_accel":-0.700811,"smooth_accel":-0.86051,"accel_momentum":-0.24818,"rvol_3bar":[0.292987,0.658289,0.195439],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":5883.0,"sell_vol":6355.0,"unclassified_vol":0.0,"imbalance":-0.038568,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.454133},"context":{"vwap":10.077231,"price_vs_vwap_pct":0.224953,"ema9":10.092686,"ema20":10.089396,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.346325,"dist_to_hod_atr":2.834588,"atr":0.012383,"spread_atr":0.807575,"own_change_pct":0.051523,"rel_strength_pct":{"SPY":0.079012,"IWM":0.083023}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.007538},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7e4bad507440","ts":"2026-09-15T18:20:15+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1705.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.79; target 0.04 away > ~0.04 reachable in 95 min","plan":{"state":"PASS","setup":"","stop":10.0479,"target":10.13,"target_label":"premarket_high","reward_risk":0.79,"pos_in_5d_range_pct":8.7,"room_to_5d_high_atr":4.2},"price":10.0938,"vwap":10.0772,"ext_from_open_pct":0.04,"max_ext_allowed_pct":3.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":0.0118,"volatility":"low"},"price":10.0938,"volume":{"bars":290,"last_bar_volume":7746.0,"baseline_avg":39633.85,"bar_rvol":0.195439,"raw_accel":-0.700811,"smooth_accel":-0.86051,"accel_momentum":-0.24818,"rvol_3bar":[0.292987,0.658289,0.195439],"trend_3bar":"MIXED","projected_rvol":1.184745},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":6177.0,"sell_vol":6684.0,"unclassified_vol":0.0,"imbalance":-0.039422,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":3.029601},"context":{"vwap":10.077231,"price_vs_vwap_pct":0.16442,"ema9":10.092686,"ema20":10.089396,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.406512,"dist_to_hod_atr":3.327209,"atr":0.012383,"spread_atr":0.807575,"own_change_pct":0.051523,"rel_strength_pct":{"SPY":0.079012,"IWM":0.083023}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.007704},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"61fbadf614be","ts":"2026-09-15T18:20:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1730.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7626 sh","plan":{"state":"WATCH","setup":"","stop":9.257,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4099,"vwap":9.358,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0125,"volatility":"high"},"price":9.4099,"volume":{"bars":290,"last_bar_volume":6068.0,"baseline_avg":5126.55,"bar_rvol":1.183642,"raw_accel":1.429143,"smooth_accel":-0.433213,"accel_momentum":0.006773,"rvol_3bar":[1.611565,0.473205,1.183642],"trend_3bar":"MIXED","projected_rvol":1.715774},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":179.0,"sell_vol":3798.0,"unclassified_vol":0.0,"imbalance":-0.909982,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":0.204855},"context":{"vwap":9.357906,"price_vs_vwap_pct":0.555619,"ema9":9.40719,"ema20":9.401822,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.260231,"dist_to_hod_atr":5.558426,"atr":0.021607,"spread_atr":0.462817,"own_change_pct":-0.185734,"rel_strength_pct":{"SPY":-0.158245,"IWM":-0.154234}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.077093},"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":"07720acd3c47","ts":"2026-09-15T18:20:45+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1735.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.76; R:R 0.76 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60624 sh","plan":{"state":"WATCH","setup":"","stop":10.0491,"target":10.13,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":4.19},"price":10.095,"vwap":10.0773,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.674,"trend":"flat","recent_slope_pct":0.0142,"volatility":"low"},"price":10.095,"volume":{"bars":290,"last_bar_volume":7746.0,"baseline_avg":39633.85,"bar_rvol":0.195439,"raw_accel":-0.700811,"smooth_accel":-0.86051,"accel_momentum":-0.24818,"rvol_3bar":[0.292987,0.658289,0.195439],"trend_3bar":"MIXED","projected_rvol":0.670538},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":7007.0,"sell_vol":1186.0,"unclassified_vol":0.0,"imbalance":0.710485,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":3.207147},"context":{"vwap":10.077231,"price_vs_vwap_pct":0.176328,"ema9":10.092686,"ema20":10.089396,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.394672,"dist_to_hod_atr":3.2303,"atr":0.012383,"spread_atr":0.807575,"own_change_pct":0.051523,"rel_strength_pct":{"SPY":0.079012,"IWM":0.083023}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.138856},"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":"30251167c2a7","ts":"2026-09-15T18:20:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1735.0s, plan says PASS; stop 9.24, target 9.46 (ceiling), R:R 0.43; R:R 0.43 < 2.0 at 9.39; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2421,"target":9.46,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":3.23},"price":9.395,"vwap":9.358,"ext_from_open_pct":0.48,"max_ext_allowed_pct":4.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0442,"volatility":"high"},"price":9.395,"volume":{"bars":290,"last_bar_volume":6068.0,"baseline_avg":5126.55,"bar_rvol":1.183642,"raw_accel":1.429143,"smooth_accel":-0.433213,"accel_momentum":0.006773,"rvol_3bar":[1.611565,0.473205,1.183642],"trend_3bar":"MIXED","projected_rvol":1.560816},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":147.0,"sell_vol":3090.0,"unclassified_vol":0.0,"imbalance":-0.909175,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":0.073209},"context":{"vwap":9.357906,"price_vs_vwap_pct":0.396395,"ema9":9.40719,"ema20":9.401822,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.416579,"dist_to_hod_atr":6.248023,"atr":0.021607,"spread_atr":0.462817,"own_change_pct":-0.185734,"rel_strength_pct":{"SPY":-0.158245,"IWM":-0.154234}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.076138},"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":"dc0541fd45a8","ts":"2026-09-15T18:20:50+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1740.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.82; target 0.04 away > ~0.04 reachable in 94 min","plan":{"state":"PASS","setup":"","stop":10.0466,"target":10.13,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":4.21},"price":10.0925,"vwap":10.0773,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.673,"trend":"flat","recent_slope_pct":0.0092,"volatility":"low"},"price":10.0925,"volume":{"bars":290,"last_bar_volume":7746.0,"baseline_avg":39633.85,"bar_rvol":0.195439,"raw_accel":-0.700811,"smooth_accel":-0.86051,"accel_momentum":-0.24818,"rvol_3bar":[0.292987,0.658289,0.195439],"trend_3bar":"MIXED","projected_rvol":0.624799},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":7104.0,"sell_vol":1763.0,"unclassified_vol":0.0,"imbalance":0.602346,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":1.482821},"context":{"vwap":10.077231,"price_vs_vwap_pct":0.15152,"ema9":10.092686,"ema20":10.089396,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.419339,"dist_to_hod_atr":3.432194,"atr":0.012383,"spread_atr":0.807575,"own_change_pct":0.051523,"rel_strength_pct":{"SPY":0.079012,"IWM":0.083023}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.117722},"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":"3c71b937a645","ts":"2026-09-15T18:20:55+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4755,"target":12.72,"target_label":"premarket_high","reward_risk":0.12,"pos_in_5d_range_pct":15.9,"room_to_5d_high_atr":2.03},"price":12.6946,"vwap":12.6184,"ext_from_open_pct":1.56,"max_ext_allowed_pct":4.0,"volume_pace":0.784,"trend":"flat","recent_slope_pct":-0.0362,"volatility":"high"},"price":12.6946,"volume":{"bars":290,"last_bar_volume":2571.0,"baseline_avg":4865.0,"bar_rvol":0.528469,"raw_accel":-0.150364,"smooth_accel":-0.509724,"accel_momentum":-1.09962,"rvol_3bar":[1.075976,0.616193,0.528469],"trend_3bar":"DECELERATING","projected_rvol":2.166122},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":4849.0,"sell_vol":2133.0,"unclassified_vol":0.0,"imbalance":0.389,"bid":12.68,"ask":12.69,"spread_pct":0.078833,"quote_size_imbalance":null,"quote_age_s":0.074219},"context":{"vwap":12.618269,"price_vs_vwap_pct":0.604921,"ema9":12.699069,"ema20":12.684386,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.499232,"dist_to_hod_atr":9.839303,"atr":0.033071,"spread_atr":0.302376,"own_change_pct":-0.132809,"rel_strength_pct":{"SPY":-0.105321,"IWM":-0.10131}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.205574},"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":"df83c09cc88e","ts":"2026-09-15T18:21:00+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1750.0s, plan says WATCH; stop 10.05, target 10.13 (premarket_high), R:R 0.65; R:R 0.65 < 2.0 at 10.10; breakout: 1-min close > 10.11 on >= 60624 sh","plan":{"state":"WATCH","setup":"","stop":10.0541,"target":10.13,"target_label":"premarket_high","reward_risk":0.65,"pos_in_5d_range_pct":9.5,"room_to_5d_high_atr":4.17},"price":10.1,"vwap":10.0773,"ext_from_open_pct":0.1,"max_ext_allowed_pct":4.0,"volume_pace":0.676,"trend":"flat","recent_slope_pct":0.0241,"volatility":"low"},"price":10.1,"volume":{"bars":290,"last_bar_volume":7746.0,"baseline_avg":39633.85,"bar_rvol":0.195439,"raw_accel":-0.700811,"smooth_accel":-0.86051,"accel_momentum":-0.24818,"rvol_3bar":[0.292987,0.658289,0.195439],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":80,"trade_rate":2.666667,"buy_vol":57239.0,"sell_vol":1080.0,"unclassified_vol":0.0,"imbalance":0.962962,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":0.09644},"context":{"vwap":10.077231,"price_vs_vwap_pct":0.225945,"ema9":10.092686,"ema20":10.089396,"ema_stack":true,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.345338,"dist_to_hod_atr":2.826513,"atr":0.012383,"spread_atr":0.807575,"own_change_pct":0.051523,"rel_strength_pct":{"SPY":0.063402,"IWM":0.032266}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.1882},"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":"80dcc1abd244","ts":"2026-09-15T18:21:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1750.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7757 sh","plan":{"state":"WATCH","setup":"","stop":9.257,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4099,"vwap":9.3581,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":0.0091,"volatility":"high"},"price":9.4099,"volume":{"bars":291,"last_bar_volume":6782.0,"baseline_avg":5312.6,"bar_rvol":1.276588,"raw_accel":0.117666,"smooth_accel":-0.501105,"accel_momentum":-0.067892,"rvol_3bar":[0.473205,1.183642,1.276588],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":294.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":0.225,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":0.096294},"context":{"vwap":9.358045,"price_vs_vwap_pct":0.554118,"ema9":9.406512,"ema20":9.40201,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.260231,"dist_to_hod_atr":5.56407,"atr":0.021585,"spread_atr":0.463286,"own_change_pct":-0.105166,"rel_strength_pct":{"SPY":-0.093287,"IWM":-0.124423}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.287232},"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":"dca07a8a1e09","ts":"2026-09-15T18:21:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.4809,"target":12.72,"target_label":"premarket_high","reward_risk":0.09,"pos_in_5d_range_pct":16.1,"room_to_5d_high_atr":2.02},"price":12.7,"vwap":12.6184,"ext_from_open_pct":1.6,"max_ext_allowed_pct":4.0,"volume_pace":0.783,"trend":"flat","recent_slope_pct":-0.0179,"volatility":"high"},"price":12.7,"volume":{"bars":291,"last_bar_volume":9776.0,"baseline_avg":4711.0,"bar_rvol":2.075143,"raw_accel":2.802412,"smooth_accel":-0.289668,"accel_momentum":0.220056,"rvol_3bar":[0.616193,0.528469,2.075143],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":5163.0,"sell_vol":1222.0,"unclassified_vol":0.0,"imbalance":0.617228,"bid":12.69,"ask":12.7,"spread_pct":0.078771,"quote_size_imbalance":null,"quote_age_s":0.860854},"context":{"vwap":12.61843,"price_vs_vwap_pct":0.646436,"ema9":12.700095,"ema20":12.686273,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.457757,"dist_to_hod_atr":9.815331,"atr":0.032602,"spread_atr":0.306729,"own_change_pct":0.156887,"rel_strength_pct":{"SPY":0.168766,"IWM":0.13763}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.280836},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9e626533254b","ts":"2026-09-15T18:21:05+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1755.0s, plan says PASS; stop 10.05, target 10.13 (premarket_high), R:R 0.82; target 0.04 away > ~0.03 reachable in 94 min","plan":{"state":"PASS","setup":"","stop":10.0466,"target":10.13,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":4.21},"price":10.0925,"vwap":10.0773,"ext_from_open_pct":0.02,"max_ext_allowed_pct":4.0,"volume_pace":0.675,"trend":"flat","recent_slope_pct":0.0126,"volatility":"low"},"price":10.0925,"volume":{"bars":291,"last_bar_volume":71279.0,"baseline_avg":38200.1,"bar_rvol":1.865938,"raw_accel":6.46375,"smooth_accel":-0.654892,"accel_momentum":0.205618,"rvol_3bar":[0.658289,0.195439,1.865938],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":55952.0,"sell_vol":1321.0,"unclassified_vol":0.0,"imbalance":0.95387,"bid":10.09,"ask":10.1,"spread_pct":0.099059,"quote_size_imbalance":null,"quote_age_s":3.432452},"context":{"vwap":10.077332,"price_vs_vwap_pct":0.150513,"ema9":10.094148,"ema20":10.090406,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.419339,"dist_to_hod_atr":3.480026,"atr":0.012213,"spread_atr":0.81883,"own_change_pct":0.07233,"rel_strength_pct":{"SPY":0.084208,"IWM":0.053072}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.779862},"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":"df635cb0b43e","ts":"2026-09-15T18:21:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1755.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2471,"target":9.46,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":3.22},"price":9.4,"vwap":9.3581,"ext_from_open_pct":0.53,"max_ext_allowed_pct":4.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0119,"volatility":"high"},"price":9.4,"volume":{"bars":291,"last_bar_volume":6782.0,"baseline_avg":5312.6,"bar_rvol":1.276588,"raw_accel":0.117666,"smooth_accel":-0.501105,"accel_momentum":-0.067892,"rvol_3bar":[0.473205,1.183642,1.276588],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":437.0,"sell_vol":296.0,"unclassified_vol":0.0,"imbalance":0.19236,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":0.206534},"context":{"vwap":9.358045,"price_vs_vwap_pct":0.448326,"ema9":9.406512,"ema20":9.40201,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.364113,"dist_to_hod_atr":6.022724,"atr":0.021585,"spread_atr":0.463286,"own_change_pct":-0.105166,"rel_strength_pct":{"SPY":-0.093287,"IWM":-0.124423}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.245565},"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":"38fbece710ef","ts":"2026-09-15T18:21:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1760.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7757 sh","plan":{"state":"WATCH","setup":"","stop":9.2569,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.21},"price":9.4098,"vwap":9.3581,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":0.0089,"volatility":"high"},"price":9.4098,"volume":{"bars":291,"last_bar_volume":6782.0,"baseline_avg":5312.6,"bar_rvol":1.276588,"raw_accel":0.117666,"smooth_accel":-0.501105,"accel_momentum":-0.067892,"rvol_3bar":[0.473205,1.183642,1.276588],"trend_3bar":"ACCELERATING","projected_rvol":0.438956},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":462.0,"sell_vol":306.0,"unclassified_vol":0.0,"imbalance":0.203125,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":2.055639},"context":{"vwap":9.358045,"price_vs_vwap_pct":0.553049,"ema9":9.406512,"ema20":9.40201,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.26128,"dist_to_hod_atr":5.568703,"atr":0.021585,"spread_atr":0.463286,"own_change_pct":-0.105166,"rel_strength_pct":{"SPY":-0.093287,"IWM":-0.124423}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.259307},"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":"c440b657b01b","ts":"2026-09-15T18:21:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1765.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.37; R:R 0.37 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.25,"target":9.46,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":7.6,"room_to_5d_high_atr":3.22},"price":9.4029,"vwap":9.3581,"ext_from_open_pct":0.57,"max_ext_allowed_pct":4.0,"volume_pace":0.495,"trend":"flat","recent_slope_pct":-0.0057,"volatility":"high"},"price":9.4029,"volume":{"bars":291,"last_bar_volume":6782.0,"baseline_avg":5312.6,"bar_rvol":1.276588,"raw_accel":0.117666,"smooth_accel":-0.501105,"accel_momentum":-0.067892,"rvol_3bar":[0.473205,1.183642,1.276588],"trend_3bar":"ACCELERATING","projected_rvol":0.411098},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":601.0,"sell_vol":241.0,"unclassified_vol":0.0,"imbalance":0.427553,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":1.539406},"context":{"vwap":9.358045,"price_vs_vwap_pct":0.479316,"ema9":9.406512,"ema20":9.40201,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.333683,"dist_to_hod_atr":5.888371,"atr":0.021585,"spread_atr":0.463286,"own_change_pct":-0.105166,"rel_strength_pct":{"SPY":-0.093287,"IWM":-0.124423}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.545809},"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":"51c99c251d4f","ts":"2026-09-15T18:21:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.279,"target":8.6,"target_label":"ceiling","reward_risk":0.68,"pos_in_5d_range_pct":127.6,"room_to_5d_high_atr":-1.01},"price":8.47,"vwap":8.1984,"ext_from_open_pct":10.57,"max_ext_allowed_pct":4.0,"volume_pace":0.274,"trend":"flat","recent_slope_pct":0.016,"volatility":"high"},"price":8.47,"volume":{"bars":290,"last_bar_volume":45.0,"baseline_avg":840.45,"bar_rvol":0.053543,"raw_accel":-0.785829,"smooth_accel":-0.481108,"accel_momentum":-0.239886,"rvol_3bar":[0.551833,0.143318,0.053543],"trend_3bar":"DECELERATING","projected_rvol":0.053543},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":30.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.44,"ask":8.5,"spread_pct":0.708383,"quote_size_imbalance":null,"quote_age_s":23.873208},"context":{"vwap":8.198393,"price_vs_vwap_pct":3.312927,"ema9":8.482364,"ema20":8.472169,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-1.511628,"dist_to_hod_atr":3.862085,"atr":0.033661,"spread_atr":1.782501,"own_change_pct":-0.01648,"rel_strength_pct":{"SPY":-0.004602,"IWM":-0.035737}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.053543},"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":"5c4317b6421f","ts":"2026-09-15T18:21:45+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8984,"target":12.59,"target_label":"prev_day_high","reward_risk":2.27,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":2.1},"price":12.11,"vwap":12.0878,"ext_from_open_pct":-3.04,"max_ext_allowed_pct":4.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":0.0331,"volatility":"high"},"price":12.11,"volume":{"bars":291,"last_bar_volume":220.0,"baseline_avg":1000.75,"bar_rvol":0.219835,"raw_accel":-0.12066,"smooth_accel":-0.265092,"accel_momentum":-0.314318,"rvol_3bar":[0.569961,0.216747,0.219835],"trend_3bar":"MIXED","projected_rvol":3.659922},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":2004.0,"sell_vol":727.0,"unclassified_vol":0.0,"imbalance":0.467594,"bid":12.09,"ask":12.11,"spread_pct":0.165289,"quote_size_imbalance":null,"quote_age_s":3.739201},"context":{"vwap":12.08776,"price_vs_vwap_pct":0.183984,"ema9":12.076969,"ema20":12.065022,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.117181,"dist_to_hod_atr":16.993807,"atr":0.030599,"spread_atr":0.653608,"own_change_pct":0.060461,"rel_strength_pct":{"SPY":0.07234,"IWM":0.041204}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.102794},"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":"897fb2710f5d","ts":"2026-09-15T18:21:50+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.08 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8702,"target":12.18,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":8.7,"room_to_5d_high_atr":2.14},"price":12.0818,"vwap":12.0878,"ext_from_open_pct":-3.27,"max_ext_allowed_pct":4.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":-0.0136,"volatility":"high"},"price":12.0818,"volume":{"bars":291,"last_bar_volume":220.0,"baseline_avg":1000.75,"bar_rvol":0.219835,"raw_accel":-0.12066,"smooth_accel":-0.265092,"accel_momentum":-0.314318,"rvol_3bar":[0.569961,0.216747,0.219835],"trend_3bar":"MIXED","projected_rvol":3.322708},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":1824.0,"sell_vol":751.0,"unclassified_vol":0.0,"imbalance":0.416699,"bid":12.09,"ask":12.11,"spread_pct":0.165289,"quote_size_imbalance":null,"quote_age_s":4.472315},"context":{"vwap":12.08776,"price_vs_vwap_pct":-0.049309,"ema9":12.076969,"ema20":12.065022,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.340459,"dist_to_hod_atr":17.915395,"atr":0.030599,"spread_atr":0.653608,"own_change_pct":0.060461,"rel_strength_pct":{"SPY":0.07234,"IWM":0.041204}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.091605},"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":"e85de9e28310","ts":"2026-09-15T18:21:55+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8795,"target":12.18,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.0911,"vwap":12.0878,"ext_from_open_pct":-3.19,"max_ext_allowed_pct":3.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":0.0018,"volatility":"high"},"price":12.0911,"volume":{"bars":291,"last_bar_volume":220.0,"baseline_avg":1000.75,"bar_rvol":0.219835,"raw_accel":-0.12066,"smooth_accel":-0.265092,"accel_momentum":-0.314318,"rvol_3bar":[0.569961,0.216747,0.219835],"trend_3bar":"MIXED","projected_rvol":3.240842},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":2025.0,"sell_vol":730.0,"unclassified_vol":0.0,"imbalance":0.470054,"bid":12.09,"ask":12.11,"spread_pct":0.165289,"quote_size_imbalance":null,"quote_age_s":9.472315},"context":{"vwap":12.08776,"price_vs_vwap_pct":0.027628,"ema9":12.076969,"ema20":12.065022,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.266825,"dist_to_hod_atr":17.611467,"atr":0.030599,"spread_atr":0.653608,"own_change_pct":0.060461,"rel_strength_pct":{"SPY":0.07234,"IWM":0.041204}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.103334},"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":"0dd7508a715c","ts":"2026-09-15T18:22:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1805.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7757 sh","plan":{"state":"WATCH","setup":"","stop":9.257,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.4099,"vwap":9.3581,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.494,"trend":"flat","recent_slope_pct":0.0091,"volatility":"high"},"price":9.4099,"volume":{"bars":291,"last_bar_volume":6782.0,"baseline_avg":5312.6,"bar_rvol":1.276588,"raw_accel":0.117666,"smooth_accel":-0.501105,"accel_momentum":-0.067892,"rvol_3bar":[0.473205,1.183642,1.276588],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":1292.0,"sell_vol":527.0,"unclassified_vol":0.0,"imbalance":0.420561,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":3.5306},"context":{"vwap":9.358045,"price_vs_vwap_pct":0.554118,"ema9":9.406512,"ema20":9.40201,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.260231,"dist_to_hod_atr":5.56407,"atr":0.021585,"spread_atr":0.463286,"own_change_pct":-0.105166,"rel_strength_pct":{"SPY":-0.106486,"IWM":-0.115669}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.536883},"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":"2b6b3039d240","ts":"2026-09-15T18:22:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.5868,"ext_from_open_pct":4.51,"max_ext_allowed_pct":4.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0583,"volatility":"medium"},"price":10.88,"volume":{"bars":292,"last_bar_volume":11298.0,"baseline_avg":11872.2,"bar_rvol":0.951635,"raw_accel":0.368128,"smooth_accel":0.338349,"accel_momentum":0.604067,"rvol_3bar":[1.1052,0.679592,0.951635],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":3004.0,"sell_vol":619.0,"unclassified_vol":0.0,"imbalance":0.658294,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":2.696251},"context":{"vwap":10.586807,"price_vs_vwap_pct":2.769414,"ema9":10.848215,"ema20":10.832453,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":1.644155,"atr":0.036493,"spread_atr":0.274026,"own_change_pct":0.120757,"rel_strength_pct":{"SPY":0.119437,"IWM":0.110255}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.626456},"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":"766e0299469c","ts":"2026-09-15T18:22:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1810.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.36; R:R 0.36 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3581,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.494,"trend":"flat","recent_slope_pct":0.0056,"volatility":"high"},"price":9.405,"volume":{"bars":292,"last_bar_volume":2656.0,"baseline_avg":5133.55,"bar_rvol":0.517381,"raw_accel":-0.608375,"smooth_accel":-0.012357,"accel_momentum":0.488748,"rvol_3bar":[1.183642,1.276588,0.517381],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":36.0,"sell_vol":1037.0,"unclassified_vol":0.0,"imbalance":-0.932898,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.087912},"context":{"vwap":9.358104,"price_vs_vwap_pct":0.501128,"ema9":9.40719,"ema20":9.402761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":5.922087,"atr":0.021107,"spread_atr":0.473767,"own_change_pct":-0.060538,"rel_strength_pct":{"SPY":-0.061858,"IWM":-0.071041}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.482664},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"1edf88644e65","ts":"2026-09-15T18:22:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7149,"target":10.935,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":50.7,"room_to_5d_high_atr":1.07},"price":10.8631,"vwap":10.5869,"ext_from_open_pct":4.35,"max_ext_allowed_pct":4.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0272,"volatility":"medium"},"price":10.8631,"volume":{"bars":292,"last_bar_volume":11298.0,"baseline_avg":11872.2,"bar_rvol":0.951635,"raw_accel":0.368128,"smooth_accel":0.338349,"accel_momentum":0.604067,"rvol_3bar":[1.1052,0.679592,0.951635],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":76,"trade_rate":2.533333,"buy_vol":3665.0,"sell_vol":713.0,"unclassified_vol":0.0,"imbalance":0.67428,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.050325},"context":{"vwap":10.586807,"price_vs_vwap_pct":2.609781,"ema9":10.848215,"ema20":10.832453,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.702925,"dist_to_hod_atr":2.107258,"atr":0.036493,"spread_atr":0.274026,"own_change_pct":0.120757,"rel_strength_pct":{"SPY":0.119437,"IWM":0.110255}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.641669},"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":"d059fe258bdd","ts":"2026-09-15T18:22:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1815.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7766 sh","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3581,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.494,"trend":"flat","recent_slope_pct":0.0163,"volatility":"high"},"price":9.41,"volume":{"bars":292,"last_bar_volume":2656.0,"baseline_avg":5133.55,"bar_rvol":0.517381,"raw_accel":-0.608375,"smooth_accel":-0.012357,"accel_momentum":0.488748,"rvol_3bar":[1.183642,1.276588,0.517381],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":321.0,"sell_vol":880.0,"unclassified_vol":0.0,"imbalance":-0.465445,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.238212},"context":{"vwap":9.358104,"price_vs_vwap_pct":0.554558,"ema9":9.40719,"ema20":9.402761,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":5.685203,"atr":0.021107,"spread_atr":0.473767,"own_change_pct":-0.060538,"rel_strength_pct":{"SPY":-0.061858,"IWM":-0.071041}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.240813},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2df9cb49bead","ts":"2026-09-15T18:22:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7328,"target":14.19,"target_label":"range_20d_high","reward_risk":22.32,"pos_in_5d_range_pct":52.1,"room_to_5d_high_atr":1.04},"price":10.881,"vwap":10.5869,"ext_from_open_pct":4.52,"max_ext_allowed_pct":3.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0601,"volatility":"medium"},"price":10.881,"volume":{"bars":292,"last_bar_volume":11298.0,"baseline_avg":11872.2,"bar_rvol":0.951635,"raw_accel":0.368128,"smooth_accel":0.338349,"accel_momentum":0.604067,"rvol_3bar":[1.1052,0.679592,0.951635],"trend_3bar":"MIXED","projected_rvol":0.862519},"flow":{"window_s":30,"trades":83,"trade_rate":2.766667,"buy_vol":3643.0,"sell_vol":1993.0,"unclassified_vol":0.0,"imbalance":0.292761,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.4389},"context":{"vwap":10.586807,"price_vs_vwap_pct":2.77886,"ema9":10.848215,"ema20":10.832453,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.539305,"dist_to_hod_atr":1.616752,"atr":0.036493,"spread_atr":0.274026,"own_change_pct":0.120757,"rel_strength_pct":{"SPY":0.119437,"IWM":0.110255}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.278601},"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":"13fe43ed9f14","ts":"2026-09-15T18:22:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7283,"target":10.935,"target_label":"prev_day_high","reward_risk":0.39,"pos_in_5d_range_pct":51.7,"room_to_5d_high_atr":1.05},"price":10.8765,"vwap":10.5872,"ext_from_open_pct":4.48,"max_ext_allowed_pct":3.0,"volume_pace":0.9,"trend":"flat","recent_slope_pct":0.0518,"volatility":"medium"},"price":10.8765,"volume":{"bars":292,"last_bar_volume":11298.0,"baseline_avg":11872.2,"bar_rvol":0.951635,"raw_accel":0.368128,"smooth_accel":0.338349,"accel_momentum":0.604067,"rvol_3bar":[1.1052,0.679592,0.951635],"trend_3bar":"MIXED","projected_rvol":2.205741},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":3992.0,"sell_vol":7806.0,"unclassified_vol":0.0,"imbalance":-0.323275,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.008901},"context":{"vwap":10.586807,"price_vs_vwap_pct":2.736354,"ema9":10.848215,"ema20":10.832453,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.580439,"dist_to_hod_atr":1.740064,"atr":0.036493,"spread_atr":0.274026,"own_change_pct":0.120757,"rel_strength_pct":{"SPY":0.119437,"IWM":0.110255}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.30764},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"47ad51933b72","ts":"2026-09-15T18:22:30+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.08 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8684,"target":12.18,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":2.14},"price":12.08,"vwap":12.0878,"ext_from_open_pct":-3.28,"max_ext_allowed_pct":3.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":-0.0011,"volatility":"high"},"price":12.08,"volume":{"bars":292,"last_bar_volume":2973.0,"baseline_avg":995.15,"bar_rvol":2.987489,"raw_accel":10.949957,"smooth_accel":0.77824,"accel_momentum":1.043332,"rvol_3bar":[0.216747,0.219835,2.987489],"trend_3bar":"ACCELERATING","projected_rvol":2.492087},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":8.0,"sell_vol":1232.0,"unclassified_vol":0.0,"imbalance":-0.987097,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":1.344564},"context":{"vwap":12.087777,"price_vs_vwap_pct":-0.064338,"ema9":12.079795,"ema20":12.067505,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.354711,"dist_to_hod_atr":17.588262,"atr":0.031271,"spread_atr":0.95936,"own_change_pct":0.224635,"rel_strength_pct":{"SPY":0.223315,"IWM":0.214133}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.948941},"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":"fcdd8eb070ff","ts":"2026-09-15T18:22:45+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8795,"target":12.18,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.0911,"vwap":12.0878,"ext_from_open_pct":-3.19,"max_ext_allowed_pct":3.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":0.0173,"volatility":"high"},"price":12.0911,"volume":{"bars":292,"last_bar_volume":2973.0,"baseline_avg":995.15,"bar_rvol":2.987489,"raw_accel":10.949957,"smooth_accel":0.77824,"accel_momentum":1.043332,"rvol_3bar":[0.216747,0.219835,2.987489],"trend_3bar":"ACCELERATING","projected_rvol":1.67077},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":11.0,"sell_vol":3.0,"unclassified_vol":0.0,"imbalance":0.571429,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":1.047734},"context":{"vwap":12.087777,"price_vs_vwap_pct":0.02749,"ema9":12.079795,"ema20":12.067505,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.266825,"dist_to_hod_atr":17.233299,"atr":0.031271,"spread_atr":0.95936,"own_change_pct":0.224635,"rel_strength_pct":{"SPY":0.223315,"IWM":0.214133}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.707137},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"83865bc33da7","ts":"2026-09-15T18:22:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1850.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.37; R:R 0.37 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2505,"target":9.46,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.22},"price":9.4034,"vwap":9.3581,"ext_from_open_pct":0.57,"max_ext_allowed_pct":3.0,"volume_pace":0.493,"trend":"flat","recent_slope_pct":0.0022,"volatility":"high"},"price":9.4034,"volume":{"bars":292,"last_bar_volume":2656.0,"baseline_avg":5133.55,"bar_rvol":0.517381,"raw_accel":-0.608375,"smooth_accel":-0.012357,"accel_momentum":0.488748,"rvol_3bar":[1.183642,1.276588,0.517381],"trend_3bar":"MIXED","projected_rvol":0.551665},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":517.0,"sell_vol":711.0,"unclassified_vol":0.0,"imbalance":-0.15798,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":2.810751},"context":{"vwap":9.358104,"price_vs_vwap_pct":0.484031,"ema9":9.40719,"ema20":9.402761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.328437,"dist_to_hod_atr":5.99789,"atr":0.021107,"spread_atr":0.473767,"own_change_pct":-0.060538,"rel_strength_pct":{"SPY":-0.061858,"IWM":-0.071041}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.081736},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"05d5f8e991ef","ts":"2026-09-15T18:22:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.5874,"ext_from_open_pct":4.51,"max_ext_allowed_pct":4.0,"volume_pace":0.899,"trend":"flat","recent_slope_pct":0.0583,"volatility":"medium"},"price":10.88,"volume":{"bars":292,"last_bar_volume":11298.0,"baseline_avg":11872.2,"bar_rvol":0.951635,"raw_accel":0.368128,"smooth_accel":0.338349,"accel_momentum":0.604067,"rvol_3bar":[1.1052,0.679592,0.951635],"trend_3bar":"MIXED","projected_rvol":1.26103},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":3248.0,"sell_vol":499.0,"unclassified_vol":0.0,"imbalance":0.733654,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.638866},"context":{"vwap":10.586807,"price_vs_vwap_pct":2.769414,"ema9":10.848215,"ema20":10.832453,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":1.644155,"atr":0.036493,"spread_atr":0.274026,"own_change_pct":0.120757,"rel_strength_pct":{"SPY":0.119437,"IWM":0.110255}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.69817},"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":"d90d298e6eca","ts":"2026-09-15T18:22:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7101,"target":10.935,"target_label":"prev_day_high","reward_risk":0.52,"pos_in_5d_range_pct":50.3,"room_to_5d_high_atr":1.08},"price":10.8583,"vwap":10.5873,"ext_from_open_pct":4.31,"max_ext_allowed_pct":4.0,"volume_pace":0.898,"trend":"flat","recent_slope_pct":0.0183,"volatility":"medium"},"price":10.8583,"volume":{"bars":292,"last_bar_volume":11298.0,"baseline_avg":11872.2,"bar_rvol":0.951635,"raw_accel":0.368128,"smooth_accel":0.338349,"accel_momentum":0.604067,"rvol_3bar":[1.1052,0.679592,0.951635],"trend_3bar":"MIXED","projected_rvol":1.147494},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":3250.0,"sell_vol":503.0,"unclassified_vol":0.0,"imbalance":0.731948,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.414526},"context":{"vwap":10.586807,"price_vs_vwap_pct":2.564442,"ema9":10.848215,"ema20":10.832453,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.746801,"dist_to_hod_atr":2.238791,"atr":0.036493,"spread_atr":0.274026,"own_change_pct":0.120757,"rel_strength_pct":{"SPY":0.119437,"IWM":0.110255}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.696547},"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":"cdf2f1d9eb70","ts":"2026-09-15T18:23:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 1865.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; R:R 0.46 < 2.0 at 9.41; breakout: 1-min close > 9.47 on >= 7766 sh","plan":{"state":"WATCH","setup":"","stop":9.2565,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.21},"price":9.4094,"vwap":9.3582,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.493,"trend":"flat","recent_slope_pct":0.015,"volatility":"high"},"price":9.4094,"volume":{"bars":292,"last_bar_volume":2656.0,"baseline_avg":5133.55,"bar_rvol":0.517381,"raw_accel":-0.608375,"smooth_accel":-0.012357,"accel_momentum":0.488748,"rvol_3bar":[1.183642,1.276588,0.517381],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":212.0,"sell_vol":663.0,"unclassified_vol":0.0,"imbalance":-0.515429,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.398657},"context":{"vwap":9.358104,"price_vs_vwap_pct":0.548146,"ema9":9.40719,"ema20":9.402761,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.265477,"dist_to_hod_atr":5.713629,"atr":0.021107,"spread_atr":0.473767,"own_change_pct":-0.060538,"rel_strength_pct":{"SPY":-0.059218,"IWM":-0.074543}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.266673},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8f853302739e","ts":"2026-09-15T18:23:05+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.08 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8684,"target":12.18,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":2.14},"price":12.08,"vwap":12.0878,"ext_from_open_pct":-3.28,"max_ext_allowed_pct":4.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.0088,"volatility":"high"},"price":12.08,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":144.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.73494,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":2.076334},"context":{"vwap":12.087793,"price_vs_vwap_pct":-0.064469,"ema9":12.081956,"ema20":12.069705,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.354711,"dist_to_hod_atr":17.639468,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.006283,"IWM":-0.009043}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.828256},"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":"6dd4706ce867","ts":"2026-09-15T18:23:10+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8798,"target":12.18,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":9.2,"room_to_5d_high_atr":2.12},"price":12.0914,"vwap":12.0878,"ext_from_open_pct":-3.19,"max_ext_allowed_pct":4.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":0.0101,"volatility":"high"},"price":12.0914,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":145.0,"sell_vol":22.0,"unclassified_vol":0.0,"imbalance":0.736527,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":7.076334},"context":{"vwap":12.087793,"price_vs_vwap_pct":0.029841,"ema9":12.081956,"ema20":12.069705,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.26445,"dist_to_hod_atr":17.27385,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.006283,"IWM":-0.009043}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.830044},"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":"9bc505d9d669","ts":"2026-09-15T18:23:15+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.874,"target":12.18,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":2.13},"price":12.0856,"vwap":12.0878,"ext_from_open_pct":-3.24,"max_ext_allowed_pct":3.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":0.0005,"volatility":"high"},"price":12.0856,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":0.787035},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":139.0,"sell_vol":121.0,"unclassified_vol":0.0,"imbalance":0.069231,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":0.267674},"context":{"vwap":12.087793,"price_vs_vwap_pct":-0.018142,"ema9":12.081956,"ema20":12.069705,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.310372,"dist_to_hod_atr":17.459866,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.006283,"IWM":-0.009043}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.078021},"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":"1b166f0b0562","ts":"2026-09-15T18:23:20+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8984,"target":12.59,"target_label":"prev_day_high","reward_risk":2.27,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":2.1},"price":12.11,"vwap":12.0878,"ext_from_open_pct":-3.04,"max_ext_allowed_pct":3.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":0.0409,"volatility":"high"},"price":12.11,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":0.64825},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":150.0,"sell_vol":132.0,"unclassified_vol":0.0,"imbalance":0.06383,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":4.041653},"context":{"vwap":12.087793,"price_vs_vwap_pct":0.183715,"ema9":12.081956,"ema20":12.069705,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.117181,"dist_to_hod_atr":16.677315,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.006283,"IWM":-0.009043}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.071934},"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":"0cd9cdaeaccd","ts":"2026-09-15T18:23:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7295,"target":14.19,"target_label":"range_20d_high","reward_risk":22.35,"pos_in_5d_range_pct":51.8,"room_to_5d_high_atr":1.05},"price":10.8777,"vwap":10.5874,"ext_from_open_pct":4.49,"max_ext_allowed_pct":3.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":0.07,"volatility":"medium"},"price":10.8777,"volume":{"bars":293,"last_bar_volume":12585.0,"baseline_avg":12196.6,"bar_rvol":1.031845,"raw_accel":0.113914,"smooth_accel":0.471523,"accel_momentum":0.133174,"rvol_3bar":[0.679592,0.951635,1.031845],"trend_3bar":"ACCELERATING","projected_rvol":0.321237},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":896.0,"sell_vol":519.0,"unclassified_vol":0.0,"imbalance":0.266431,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.861028},"context":{"vwap":10.587354,"price_vs_vwap_pct":2.742389,"ema9":10.853052,"ema20":10.836257,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.56947,"dist_to_hod_atr":1.715552,"atr":0.036315,"spread_atr":0.275369,"own_change_pct":0.345178,"rel_strength_pct":{"SPY":0.346498,"IWM":0.331172}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.274916},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b8b4e7924410","ts":"2026-09-15T18:23:25+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8741,"target":12.18,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":2.13},"price":12.0857,"vwap":12.0878,"ext_from_open_pct":-3.24,"max_ext_allowed_pct":3.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":0.0007,"volatility":"high"},"price":12.0857,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":0.573411},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":134.0,"sell_vol":158.0,"unclassified_vol":0.0,"imbalance":-0.082192,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":4.524072},"context":{"vwap":12.087793,"price_vs_vwap_pct":-0.017314,"ema9":12.081956,"ema20":12.069705,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.30958,"dist_to_hod_atr":17.456659,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.006283,"IWM":-0.009043}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.092628},"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":"fc7926c57c38","ts":"2026-09-15T18:23:25+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7392,"target":13.2,"target_label":"ceiling","reward_risk":1.55,"pos_in_5d_range_pct":44.7,"room_to_5d_high_atr":1.15},"price":12.92,"vwap":12.9022,"ext_from_open_pct":-1.0,"max_ext_allowed_pct":3.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":-0.0456,"volatility":"medium"},"price":12.92,"volume":{"bars":292,"last_bar_volume":76.0,"baseline_avg":282.9,"bar_rvol":0.268646,"raw_accel":0.074585,"smooth_accel":-0.932864,"accel_momentum":-0.00055,"rvol_3bar":[0.078988,0.007171,0.268646],"trend_3bar":"MIXED","projected_rvol":0.882291},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":1.0,"sell_vol":103.0,"unclassified_vol":0.0,"imbalance":-0.980769,"bid":12.9,"ask":12.97,"spread_pct":0.541167,"quote_size_imbalance":null,"quote_age_s":1.603506},"context":{"vwap":12.902163,"price_vs_vwap_pct":0.138248,"ema9":12.949803,"ema20":12.938714,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.930128,"dist_to_hod_atr":12.102868,"atr":0.032224,"spread_atr":2.17231,"own_change_pct":-0.269646,"rel_strength_pct":{"SPY":-0.268326,"IWM":-0.283651}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.26348},"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":"e67ab1e368c4","ts":"2026-09-15T18:23:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5874,"ext_from_open_pct":4.47,"max_ext_allowed_pct":3.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":0.065,"volatility":"medium"},"price":10.875,"volume":{"bars":293,"last_bar_volume":12585.0,"baseline_avg":12196.6,"bar_rvol":1.031845,"raw_accel":0.113914,"smooth_accel":0.471523,"accel_momentum":0.133174,"rvol_3bar":[0.679592,0.951635,1.031845],"trend_3bar":"ACCELERATING","projected_rvol":0.278241},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":994.0,"sell_vol":517.0,"unclassified_vol":0.0,"imbalance":0.315685,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.706237},"context":{"vwap":10.587354,"price_vs_vwap_pct":2.716887,"ema9":10.853052,"ema20":10.836257,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":1.789901,"atr":0.036315,"spread_atr":0.275369,"own_change_pct":0.345178,"rel_strength_pct":{"SPY":0.346498,"IWM":0.331172}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.325738},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b8ca32e62edb","ts":"2026-09-15T18:23:35+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.881,"target":12.18,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":9.2,"room_to_5d_high_atr":2.12},"price":12.0926,"vwap":12.0878,"ext_from_open_pct":-3.18,"max_ext_allowed_pct":3.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":0.0121,"volatility":"high"},"price":12.0926,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":0.511974},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":13.0,"sell_vol":204.0,"unclassified_vol":0.0,"imbalance":-0.880184,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":1.984114},"context":{"vwap":12.087793,"price_vs_vwap_pct":0.039768,"ema9":12.081956,"ema20":12.069705,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.254949,"dist_to_hod_atr":17.235363,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.006283,"IWM":-0.009043}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.991942},"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":"457b650787f3","ts":"2026-09-15T18:23:45+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8752,"target":12.18,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":2.13},"price":12.0868,"vwap":12.0878,"ext_from_open_pct":-3.23,"max_ext_allowed_pct":3.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":0.0025,"volatility":"high"},"price":12.0868,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":0.527032},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":113.0,"sell_vol":113.0,"unclassified_vol":0.0,"imbalance":0.0,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":0.826735},"context":{"vwap":12.087793,"price_vs_vwap_pct":-0.008214,"ema9":12.081956,"ema20":12.069705,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.300871,"dist_to_hod_atr":17.42138,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.006283,"IWM":-0.009043}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"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":"68902b186a3f","ts":"2026-09-15T18:23:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7302,"target":14.19,"target_label":"range_20d_high","reward_risk":22.34,"pos_in_5d_range_pct":51.9,"room_to_5d_high_atr":1.05},"price":10.8784,"vwap":10.5876,"ext_from_open_pct":4.5,"max_ext_allowed_pct":4.0,"volume_pace":0.897,"trend":"flat","recent_slope_pct":0.0713,"volatility":"medium"},"price":10.8784,"volume":{"bars":293,"last_bar_volume":12585.0,"baseline_avg":12196.6,"bar_rvol":1.031845,"raw_accel":0.113914,"smooth_accel":0.471523,"accel_momentum":0.133174,"rvol_3bar":[0.679592,0.951635,1.031845],"trend_3bar":"ACCELERATING","projected_rvol":0.650017},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":3104.0,"sell_vol":2341.0,"unclassified_vol":0.0,"imbalance":0.140129,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.745134},"context":{"vwap":10.587354,"price_vs_vwap_pct":2.749001,"ema9":10.853052,"ema20":10.836257,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.563071,"dist_to_hod_atr":1.696276,"atr":0.036315,"spread_atr":0.275369,"own_change_pct":0.345178,"rel_strength_pct":{"SPY":0.346498,"IWM":0.331172}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.144591},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"654ef940b4ec","ts":"2026-09-15T18:23:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5876,"ext_from_open_pct":4.47,"max_ext_allowed_pct":4.0,"volume_pace":0.896,"trend":"flat","recent_slope_pct":0.065,"volatility":"medium"},"price":10.875,"volume":{"bars":293,"last_bar_volume":12585.0,"baseline_avg":12196.6,"bar_rvol":1.031845,"raw_accel":0.113914,"smooth_accel":0.471523,"accel_momentum":0.133174,"rvol_3bar":[0.679592,0.951635,1.031845],"trend_3bar":"ACCELERATING","projected_rvol":0.60489},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":2771.0,"sell_vol":2071.0,"unclassified_vol":0.0,"imbalance":0.144568,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.774857},"context":{"vwap":10.587354,"price_vs_vwap_pct":2.716887,"ema9":10.853052,"ema20":10.836257,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":1.789901,"atr":0.036315,"spread_atr":0.275369,"own_change_pct":0.345178,"rel_strength_pct":{"SPY":0.346498,"IWM":0.331172}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.149172},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f1e3d64bcc14","ts":"2026-09-15T18:24:00+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8834,"target":12.18,"target_label":"ceiling","reward_risk":0.4,"pos_in_5d_range_pct":9.3,"room_to_5d_high_atr":2.12},"price":12.095,"vwap":12.0878,"ext_from_open_pct":-3.16,"max_ext_allowed_pct":4.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":0.016,"volatility":"high"},"price":12.095,"volume":{"bars":293,"last_bar_volume":1283.0,"baseline_avg":1138.45,"bar_rvol":1.126971,"raw_accel":-0.568449,"smooth_accel":2.0,"accel_momentum":1.22176,"rvol_3bar":[0.219835,2.987489,1.126971],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":104.0,"sell_vol":13.0,"unclassified_vol":0.0,"imbalance":0.777778,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":1.023687},"context":{"vwap":12.087793,"price_vs_vwap_pct":0.059623,"ema9":12.081956,"ema20":12.069705,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.235946,"dist_to_hod_atr":17.158391,"atr":0.03118,"spread_atr":0.962153,"own_change_pct":0.004963,"rel_strength_pct":{"SPY":0.020803,"IWM":0.003212}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.876533},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"be61ad0e36bd","ts":"2026-09-15T18:24:15+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7618,"target":13.2,"target_label":"ceiling","reward_risk":1.42,"pos_in_5d_range_pct":46.2,"room_to_5d_high_atr":1.12},"price":12.9426,"vwap":12.9022,"ext_from_open_pct":-0.82,"max_ext_allowed_pct":4.0,"volume_pace":0.708,"trend":"flat","recent_slope_pct":-0.0308,"volatility":"medium"},"price":12.9426,"volume":{"bars":293,"last_bar_volume":142.0,"baseline_avg":286.6,"bar_rvol":0.495464,"raw_accel":0.868421,"smooth_accel":-0.874292,"accel_momentum":0.058572,"rvol_3bar":[0.007171,0.268646,0.495464],"trend_3bar":"ACCELERATING","projected_rvol":0.418702},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":28.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.866667,"bid":12.9,"ask":12.97,"spread_pct":0.541167,"quote_size_imbalance":null,"quote_age_s":35.905054},"context":{"vwap":12.902175,"price_vs_vwap_pct":0.313319,"ema9":12.944303,"ema20":12.93715,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.760331,"dist_to_hod_atr":11.58706,"atr":0.031708,"spread_atr":2.20766,"own_change_pct":-0.2139,"rel_strength_pct":{"SPY":-0.198059,"IWM":-0.21565}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.429402},"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":"eb2cb8f87f99","ts":"2026-09-15T18:25:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.5883,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":0.0368,"volatility":"medium"},"price":10.88,"volume":{"bars":295,"last_bar_volume":13868.0,"baseline_avg":12337.65,"bar_rvol":1.124039,"raw_accel":0.978881,"smooth_accel":0.024996,"accel_momentum":-0.254028,"rvol_3bar":[1.031845,0.565499,1.124039],"trend_3bar":"MIXED","projected_rvol":0.411424},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":4600.0,"sell_vol":1660.0,"unclassified_vol":0.0,"imbalance":0.469649,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.03008},"context":{"vwap":10.588256,"price_vs_vwap_pct":2.755353,"ema9":10.861289,"ema20":10.843466,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":1.753625,"atr":0.034215,"spread_atr":0.292271,"own_change_pct":0.230415,"rel_strength_pct":{"SPY":0.240553,"IWM":0.24792}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.527903},"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":"a154c9a59b53","ts":"2026-09-15T18:25:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7237,"target":10.935,"target_label":"prev_day_high","reward_risk":0.43,"pos_in_5d_range_pct":51.3,"room_to_5d_high_atr":1.06},"price":10.8719,"vwap":10.5883,"ext_from_open_pct":4.44,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":0.0219,"volatility":"medium"},"price":10.8719,"volume":{"bars":295,"last_bar_volume":13868.0,"baseline_avg":12337.65,"bar_rvol":1.124039,"raw_accel":0.978881,"smooth_accel":0.024996,"accel_momentum":-0.254028,"rvol_3bar":[1.031845,0.565499,1.124039],"trend_3bar":"MIXED","projected_rvol":0.344798},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":4699.0,"sell_vol":1694.0,"unclassified_vol":0.0,"imbalance":0.470045,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.244787},"context":{"vwap":10.588256,"price_vs_vwap_pct":2.678853,"ema9":10.861289,"ema20":10.843466,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.622486,"dist_to_hod_atr":1.990364,"atr":0.034215,"spread_atr":0.292271,"own_change_pct":0.230415,"rel_strength_pct":{"SPY":0.240553,"IWM":0.24792}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.528349},"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":"02d2dc0ca7e0","ts":"2026-09-15T18:25:20+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4559,"target":12.72,"target_label":"premarket_high","reward_risk":0.21,"pos_in_5d_range_pct":14.9,"room_to_5d_high_atr":2.05},"price":12.675,"vwap":12.6188,"ext_from_open_pct":1.4,"max_ext_allowed_pct":3.0,"volume_pace":0.776,"trend":"flat","recent_slope_pct":-0.0405,"volatility":"high"},"price":12.675,"volume":{"bars":295,"last_bar_volume":4304.0,"baseline_avg":4834.4,"bar_rvol":0.890286,"raw_accel":0.007727,"smooth_accel":-0.413213,"accel_momentum":-0.175328,"rvol_3bar":[0.38737,0.896892,0.890286],"trend_3bar":"MIXED","projected_rvol":5.736389},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":8951.0,"sell_vol":1054.0,"unclassified_vol":0.0,"imbalance":0.789305,"bid":12.67,"ask":12.68,"spread_pct":0.078895,"quote_size_imbalance":null,"quote_age_s":0.389621},"context":{"vwap":12.618687,"price_vs_vwap_pct":0.446268,"ema9":12.697841,"ema20":12.689662,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.64977,"dist_to_hod_atr":12.107523,"atr":0.028495,"spread_atr":0.350943,"own_change_pct":-0.105445,"rel_strength_pct":{"SPY":-0.095307,"IWM":-0.087939}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.702708},"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":"db87fc0da040","ts":"2026-09-15T18:25:30+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.7419,"target":13.2,"target_label":"ceiling","reward_risk":1.53,"pos_in_5d_range_pct":44.8,"room_to_5d_high_atr":1.14},"price":12.9227,"vwap":12.9022,"ext_from_open_pct":-0.98,"max_ext_allowed_pct":3.0,"volume_pace":0.706,"trend":"flat","recent_slope_pct":-0.0425,"volatility":"medium"},"price":12.9227,"volume":{"bars":294,"last_bar_volume":324.0,"baseline_avg":260.0,"bar_rvol":1.246154,"raw_accel":1.28169,"smooth_accel":3.370968,"accel_momentum":4.24526,"rvol_3bar":[0.268646,0.495464,1.246154],"trend_3bar":"ACCELERATING","projected_rvol":0.146154},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":5.0,"sell_vol":14.0,"unclassified_vol":0.0,"imbalance":-0.473684,"bid":12.91,"ask":12.95,"spread_pct":0.309358,"quote_size_imbalance":null,"quote_age_s":5.265562},"context":{"vwap":12.902217,"price_vs_vwap_pct":0.158756,"ema9":12.943282,"ema20":12.937346,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.909842,"dist_to_hod_atr":11.731255,"atr":0.033014,"spread_atr":1.211594,"own_change_pct":-0.060246,"rel_strength_pct":{"SPY":-0.050108,"IWM":-0.04274}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.590283},"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":"d2c50c999ad4","ts":"2026-09-15T18:26:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7492,"target":13.2,"target_label":"ceiling","reward_risk":1.49,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":1.13},"price":12.93,"vwap":12.9022,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":-0.022,"volatility":"medium"},"price":12.93,"volume":{"bars":295,"last_bar_volume":22.0,"baseline_avg":261.4,"bar_rvol":0.084162,"raw_accel":-0.932099,"smooth_accel":2.935484,"accel_momentum":-0.435484,"rvol_3bar":[0.495464,1.246154,0.084162],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":4.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.6,"bid":12.91,"ask":12.95,"spread_pct":0.309358,"quote_size_imbalance":null,"quote_age_s":27.305354},"context":{"vwap":12.902219,"price_vs_vwap_pct":0.215322,"ema9":12.939386,"ema20":12.936056,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.854996,"dist_to_hod_atr":11.508007,"atr":0.03302,"spread_atr":1.211369,"own_change_pct":-0.202317,"rel_strength_pct":{"SPY":-0.197037,"IWM":-0.169061}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.050497},"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":"d956ac102d18","ts":"2026-09-15T18:26:15+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8734,"target":12.18,"target_label":"ceiling","reward_risk":0.45,"pos_in_5d_range_pct":8.8,"room_to_5d_high_atr":2.13},"price":12.085,"vwap":12.0878,"ext_from_open_pct":-3.24,"max_ext_allowed_pct":3.0,"volume_pace":0.573,"trend":"flat","recent_slope_pct":0.0031,"volatility":"high"},"price":12.085,"volume":{"bars":296,"last_bar_volume":246.0,"baseline_avg":1207.9,"bar_rvol":0.203659,"raw_accel":-0.744283,"smooth_accel":-0.629133,"accel_momentum":-0.418653,"rvol_3bar":[0.384125,0.82152,0.203659],"trend_3bar":"MIXED","projected_rvol":2.715457},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":116.0,"sell_vol":756.0,"unclassified_vol":0.0,"imbalance":-0.733945,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":2.986281},"context":{"vwap":12.087831,"price_vs_vwap_pct":-0.023423,"ema9":12.093722,"ema20":12.078987,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.315123,"dist_to_hod_atr":17.611984,"atr":0.030945,"spread_atr":0.969467,"own_change_pct":0.238387,"rel_strength_pct":{"SPY":0.243667,"IWM":0.271643}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.149475},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"eaab77dccb85","ts":"2026-09-15T18:26:15+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.24 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1862,"target":5.43,"target_label":"prev_day_high","reward_risk":3.99,"pos_in_5d_range_pct":-1.3,"room_to_5d_high_atr":2.02},"price":5.235,"vwap":5.2385,"ext_from_open_pct":-1.78,"max_ext_allowed_pct":3.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":-0.0415,"volatility":"medium"},"price":5.235,"volume":{"bars":296,"last_bar_volume":675.0,"baseline_avg":1389.1,"bar_rvol":0.485926,"raw_accel":0.943705,"smooth_accel":10.305622,"accel_momentum":0.241603,"rvol_3bar":[34.27646,0.171816,0.485926],"trend_3bar":"MIXED","projected_rvol":24.479159},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":2366.0,"sell_vol":6147.0,"unclassified_vol":0.0,"imbalance":-0.444144,"bid":5.23,"ask":5.24,"spread_pct":0.191022,"quote_size_imbalance":null,"quote_age_s":0.769843},"context":{"vwap":5.238456,"price_vs_vwap_pct":-0.065982,"ema9":5.250282,"ema20":5.24942,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.145236,"dist_to_hod_atr":19.610866,"atr":0.008669,"spread_atr":1.15358,"own_change_pct":0.129568,"rel_strength_pct":{"SPY":0.134848,"IWM":0.162824}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.215821},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a8d94f4441bc","ts":"2026-09-15T18:26:20+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8984,"target":12.59,"target_label":"prev_day_high","reward_risk":2.27,"pos_in_5d_range_pct":10.1,"room_to_5d_high_atr":2.1},"price":12.11,"vwap":12.0879,"ext_from_open_pct":-3.04,"max_ext_allowed_pct":3.0,"volume_pace":0.573,"trend":"flat","recent_slope_pct":0.0445,"volatility":"high"},"price":12.11,"volume":{"bars":296,"last_bar_volume":246.0,"baseline_avg":1207.9,"bar_rvol":0.203659,"raw_accel":-0.744283,"smooth_accel":-0.629133,"accel_momentum":-0.418653,"rvol_3bar":[0.384125,0.82152,0.203659],"trend_3bar":"MIXED","projected_rvol":2.237768},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":165.0,"sell_vol":771.0,"unclassified_vol":0.0,"imbalance":-0.647436,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":1.097669},"context":{"vwap":12.087831,"price_vs_vwap_pct":0.183396,"ema9":12.093722,"ema20":12.078987,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.117181,"dist_to_hod_atr":16.804095,"atr":0.030945,"spread_atr":0.969467,"own_change_pct":0.238387,"rel_strength_pct":{"SPY":0.243667,"IWM":0.271643}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.131856},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5b7721912735","ts":"2026-09-15T18:27:05+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"held 45.0s, plan says WATCH; stop 11.88, target 12.18 (ceiling), R:R 0.42; selling not fading: red-bar volume 1.05x the advance (max 0.7); imbalance -69% still heavy selling; no reclaim yet (needs a c","plan":{"state":"WATCH","setup":"","stop":11.8803,"target":12.18,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":9.2,"room_to_5d_high_atr":2.12},"price":12.0919,"vwap":12.0879,"ext_from_open_pct":-3.19,"max_ext_allowed_pct":3.0,"volume_pace":0.572,"trend":"flat","recent_slope_pct":-0.0175,"volatility":"high"},"price":12.0919,"volume":{"bars":297,"last_bar_volume":1221.0,"baseline_avg":1199.25,"bar_rvol":1.018136,"raw_accel":3.072545,"smooth_accel":-0.48407,"accel_momentum":0.145063,"rvol_3bar":[0.82152,0.203659,1.018136],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":42.0,"sell_vol":268.0,"unclassified_vol":0.0,"imbalance":-0.729032,"bid":12.08,"ask":12.11,"spread_pct":0.248036,"quote_size_imbalance":null,"quote_age_s":1.244045},"context":{"vwap":12.08785,"price_vs_vwap_pct":0.033504,"ema9":12.093977,"ema20":12.080512,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.260491,"dist_to_hod_atr":17.427014,"atr":0.030877,"spread_atr":0.971586,"own_change_pct":0.032255,"rel_strength_pct":{"SPY":0.038855,"IWM":0.060259}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.742254},"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":"096839241383","ts":"2026-09-15T18:27:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3188,"target":8.59,"target_label":"premarket_high","reward_risk":0.42,"pos_in_5d_range_pct":8.8,"room_to_5d_high_atr":3.74},"price":8.51,"vwap":8.4337,"ext_from_open_pct":1.67,"max_ext_allowed_pct":3.0,"volume_pace":0.739,"trend":"flat","recent_slope_pct":-0.0345,"volatility":"high"},"price":8.51,"volume":{"bars":297,"last_bar_volume":25067.0,"baseline_avg":43937.95,"bar_rvol":0.570509,"raw_accel":-0.41218,"smooth_accel":0.233186,"accel_momentum":0.470941,"rvol_3bar":[1.01334,0.99097,0.570509],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":10500.0,"sell_vol":6908.0,"unclassified_vol":0.0,"imbalance":0.206342,"bid":8.51,"ask":8.52,"spread_pct":0.11744,"quote_size_imbalance":null,"quote_age_s":0.624102},"context":{"vwap":8.433703,"price_vs_vwap_pct":0.904665,"ema9":8.519622,"ema20":8.523728,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.902017,"dist_to_hod_atr":7.07119,"atr":0.023334,"spread_atr":0.428557,"own_change_pct":-0.164223,"rel_strength_pct":{"SPY":-0.157623,"IWM":-0.136219}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.11772},"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":"52a40d88f890","ts":"2026-09-15T18:27:20+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.08 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8684,"target":12.18,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":2.14},"price":12.08,"vwap":12.0878,"ext_from_open_pct":-3.28,"max_ext_allowed_pct":3.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.0372,"volatility":"high"},"price":12.08,"volume":{"bars":297,"last_bar_volume":1221.0,"baseline_avg":1199.25,"bar_rvol":1.018136,"raw_accel":3.072545,"smooth_accel":-0.48407,"accel_momentum":0.145063,"rvol_3bar":[0.82152,0.203659,1.018136],"trend_3bar":"MIXED","projected_rvol":8.592871},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":1249.0,"sell_vol":2338.0,"unclassified_vol":0.0,"imbalance":-0.303596,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":0.904169},"context":{"vwap":12.08785,"price_vs_vwap_pct":-0.064941,"ema9":12.093977,"ema20":12.080512,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.354711,"dist_to_hod_atr":17.81241,"atr":0.030877,"spread_atr":0.647724,"own_change_pct":0.032255,"rel_strength_pct":{"SPY":0.038855,"IWM":0.060259}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.309102},"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":"267fcfc3305a","ts":"2026-09-15T18:27:50+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":11.8784,"target":12.18,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0879,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":-0.0207,"volatility":"high"},"price":12.09,"volume":{"bars":297,"last_bar_volume":1221.0,"baseline_avg":1199.25,"bar_rvol":1.018136,"raw_accel":3.072545,"smooth_accel":-0.48407,"accel_momentum":0.145063,"rvol_3bar":[0.82152,0.203659,1.018136],"trend_3bar":"MIXED","projected_rvol":3.565228},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":114.0,"sell_vol":14.0,"unclassified_vol":0.0,"imbalance":0.78125,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":3.808939},"context":{"vwap":12.08785,"price_vs_vwap_pct":0.017786,"ema9":12.093977,"ema20":12.080512,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":17.488548,"atr":0.030877,"spread_atr":0.647724,"own_change_pct":0.032255,"rel_strength_pct":{"SPY":0.038855,"IWM":0.060259}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.795419},"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":"0077fe7d5897","ts":"2026-09-15T18:28:00+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.07 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8584,"target":12.18,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":8.1,"room_to_5d_high_atr":2.15},"price":12.07,"vwap":12.0878,"ext_from_open_pct":-3.36,"max_ext_allowed_pct":3.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":-0.0537,"volatility":"high"},"price":12.07,"volume":{"bars":297,"last_bar_volume":1221.0,"baseline_avg":1199.25,"bar_rvol":1.018136,"raw_accel":3.072545,"smooth_accel":-0.48407,"accel_momentum":0.145063,"rvol_3bar":[0.82152,0.203659,1.018136],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":114.0,"sell_vol":167.0,"unclassified_vol":0.0,"imbalance":-0.188612,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":13.808939},"context":{"vwap":12.08785,"price_vs_vwap_pct":-0.147669,"ema9":12.093977,"ema20":12.080512,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.433888,"dist_to_hod_atr":18.136272,"atr":0.030877,"spread_atr":0.647724,"own_change_pct":0.032255,"rel_strength_pct":{"SPY":0.046776,"IWM":0.067264}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.192033},"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":"0a4c556933b0","ts":"2026-09-15T18:28:05+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.3238,"target":8.59,"target_label":"premarket_high","reward_risk":0.39,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":3.73},"price":8.515,"vwap":8.4337,"ext_from_open_pct":1.73,"max_ext_allowed_pct":4.0,"volume_pace":0.737,"trend":"flat","recent_slope_pct":-0.033,"volatility":"high"},"price":8.515,"volume":{"bars":298,"last_bar_volume":11310.0,"baseline_avg":43437.8,"bar_rvol":0.260372,"raw_accel":-0.548809,"smooth_accel":-0.179301,"accel_momentum":-0.412487,"rvol_3bar":[0.99097,0.570509,0.260372],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1551.0,"sell_vol":1255.0,"unclassified_vol":0.0,"imbalance":0.105488,"bid":8.51,"ask":8.52,"spread_pct":0.11744,"quote_size_imbalance":null,"quote_age_s":0.329464},"context":{"vwap":8.433747,"price_vs_vwap_pct":0.963424,"ema9":8.518698,"ema20":8.522896,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.84438,"dist_to_hod_atr":7.148702,"atr":0.022382,"spread_atr":0.446794,"own_change_pct":-0.117302,"rel_strength_pct":{"SPY":-0.102781,"IWM":-0.082293}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.027466},"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":"366cda25480b","ts":"2026-09-15T18:28:05+00:00","symbol":"INFQ","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.4574,"target":12.72,"target_label":"premarket_high","reward_risk":0.2,"pos_in_5d_range_pct":15.0,"room_to_5d_high_atr":2.05},"price":12.6765,"vwap":12.619,"ext_from_open_pct":1.41,"max_ext_allowed_pct":3.0,"volume_pace":0.771,"trend":"flat","recent_slope_pct":-0.0561,"volatility":"high"},"price":12.6765,"volume":{"bars":298,"last_bar_volume":2810.0,"baseline_avg":5678.0,"bar_rvol":0.494893,"raw_accel":-0.669839,"smooth_accel":1.199142,"accel_momentum":0.102607,"rvol_3bar":[2.373309,1.580061,0.494893],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":663.0,"sell_vol":1435.0,"unclassified_vol":0.0,"imbalance":-0.367969,"bid":12.68,"ask":12.69,"spread_pct":0.078833,"quote_size_imbalance":null,"quote_age_s":0.0793},"context":{"vwap":12.618954,"price_vs_vwap_pct":0.456025,"ema9":12.682996,"ema20":12.684241,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.638249,"dist_to_hod_atr":10.902893,"atr":0.031505,"spread_atr":0.317406,"own_change_pct":-0.379357,"rel_strength_pct":{"SPY":-0.364836,"IWM":-0.344348}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.182105},"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":"e7e0e5390dc7","ts":"2026-09-15T18:28:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.5898,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":0.017,"volatility":"medium"},"price":10.88,"volume":{"bars":298,"last_bar_volume":9999.0,"baseline_avg":13154.5,"bar_rvol":0.76012,"raw_accel":-0.462506,"smooth_accel":0.095664,"accel_momentum":-0.216401,"rvol_3bar":[0.634928,1.479529,0.76012],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":5620.0,"sell_vol":1547.0,"unclassified_vol":0.0,"imbalance":0.568299,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.280265},"context":{"vwap":10.589814,"price_vs_vwap_pct":2.740239,"ema9":10.862963,"ema20":10.848891,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":1.9216,"atr":0.031224,"spread_atr":0.320267,"own_change_pct":-0.041389,"rel_strength_pct":{"SPY":-0.026868,"IWM":-0.00638}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.431976},"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":"33bf44a1e62a","ts":"2026-09-15T18:28:15+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.8784,"target":12.18,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0878,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.0661,"volatility":"high"},"price":12.09,"volume":{"bars":298,"last_bar_volume":3719.0,"baseline_avg":1036.05,"bar_rvol":3.589595,"raw_accel":2.045864,"smooth_accel":0.922877,"accel_momentum":1.406947,"rvol_3bar":[0.203659,1.018136,3.589595],"trend_3bar":"ACCELERATING","projected_rvol":5.219825},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":538.0,"sell_vol":981.0,"unclassified_vol":0.0,"imbalance":-0.291639,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":0.341884},"context":{"vwap":12.087815,"price_vs_vwap_pct":0.01808,"ema9":12.089182,"ema20":12.079511,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":17.127107,"atr":0.031529,"spread_atr":0.634337,"own_change_pct":-0.17038,"rel_strength_pct":{"SPY":-0.155859,"IWM":-0.135371}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-1.046867},"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":"8f78975817b6","ts":"2026-09-15T18:28:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7207,"target":10.935,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":51.1,"room_to_5d_high_atr":1.06},"price":10.8689,"vwap":10.5899,"ext_from_open_pct":4.41,"max_ext_allowed_pct":3.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":-0.0034,"volatility":"medium"},"price":10.8689,"volume":{"bars":298,"last_bar_volume":9999.0,"baseline_avg":13154.5,"bar_rvol":0.76012,"raw_accel":-0.462506,"smooth_accel":0.095664,"accel_momentum":-0.216401,"rvol_3bar":[0.634928,1.479529,0.76012],"trend_3bar":"MIXED","projected_rvol":0.290699},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":5699.0,"sell_vol":1770.0,"unclassified_vol":0.0,"imbalance":0.526041,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.673166},"context":{"vwap":10.589814,"price_vs_vwap_pct":2.635421,"ema9":10.862963,"ema20":10.848891,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.649909,"dist_to_hod_atr":2.277096,"atr":0.031224,"spread_atr":0.320267,"own_change_pct":-0.041389,"rel_strength_pct":{"SPY":-0.026868,"IWM":-0.00638}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.399854},"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":"3f947d689072","ts":"2026-09-15T18:28:25+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8743,"target":12.18,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":2.13},"price":12.0859,"vwap":12.0878,"ext_from_open_pct":-3.24,"max_ext_allowed_pct":4.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.0729,"volatility":"high"},"price":12.0859,"volume":{"bars":298,"last_bar_volume":3719.0,"baseline_avg":1036.05,"bar_rvol":3.589595,"raw_accel":2.045864,"smooth_accel":0.922877,"accel_momentum":1.406947,"rvol_3bar":[0.203659,1.018136,3.589595],"trend_3bar":"ACCELERATING","projected_rvol":3.384393},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":546.0,"sell_vol":1071.0,"unclassified_vol":0.0,"imbalance":-0.324675,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":0.003677},"context":{"vwap":12.087815,"price_vs_vwap_pct":-0.015838,"ema9":12.089182,"ema20":12.079511,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.307997,"dist_to_hod_atr":17.257146,"atr":0.031529,"spread_atr":0.634337,"own_change_pct":-0.17038,"rel_strength_pct":{"SPY":-0.155859,"IWM":-0.135371}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.165453},"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":"f53b5880512b","ts":"2026-09-15T18:28:30+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.8784,"target":12.18,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0878,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":4.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.0661,"volatility":"high"},"price":12.09,"volume":{"bars":298,"last_bar_volume":3719.0,"baseline_avg":1036.05,"bar_rvol":3.589595,"raw_accel":2.045864,"smooth_accel":0.922877,"accel_momentum":1.406947,"rvol_3bar":[0.203659,1.018136,3.589595],"trend_3bar":"ACCELERATING","projected_rvol":3.015298},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":646.0,"sell_vol":916.0,"unclassified_vol":0.0,"imbalance":-0.172855,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":0.295573},"context":{"vwap":12.087815,"price_vs_vwap_pct":0.01808,"ema9":12.089182,"ema20":12.079511,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":17.127107,"atr":0.031529,"spread_atr":0.634337,"own_change_pct":-0.17038,"rel_strength_pct":{"SPY":-0.155859,"IWM":-0.135371}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.620481},"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":"fb75d02fdc44","ts":"2026-09-15T18:28:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.59,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":0.017,"volatility":"medium"},"price":10.88,"volume":{"bars":298,"last_bar_volume":9999.0,"baseline_avg":13154.5,"bar_rvol":0.76012,"raw_accel":-0.462506,"smooth_accel":0.095664,"accel_momentum":-0.216401,"rvol_3bar":[0.634928,1.479529,0.76012],"trend_3bar":"MIXED","projected_rvol":0.604356},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":2917.0,"sell_vol":1058.0,"unclassified_vol":0.0,"imbalance":0.467673,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.048127},"context":{"vwap":10.589814,"price_vs_vwap_pct":2.740239,"ema9":10.862963,"ema20":10.848891,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":1.9216,"atr":0.031224,"spread_atr":0.320267,"own_change_pct":-0.041389,"rel_strength_pct":{"SPY":-0.026868,"IWM":-0.00638}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.355488},"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":"3bdb80afca54","ts":"2026-09-15T18:28:35+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.08 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8682,"target":12.18,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":8.6,"room_to_5d_high_atr":2.14},"price":12.0798,"vwap":12.0878,"ext_from_open_pct":-3.28,"max_ext_allowed_pct":4.0,"volume_pace":0.576,"trend":"flat","recent_slope_pct":-0.083,"volatility":"high"},"price":12.0798,"volume":{"bars":298,"last_bar_volume":3719.0,"baseline_avg":1036.05,"bar_rvol":3.589595,"raw_accel":2.045864,"smooth_accel":0.922877,"accel_momentum":1.406947,"rvol_3bar":[0.203659,1.018136,3.589595],"trend_3bar":"ACCELERATING","projected_rvol":2.586196},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":646.0,"sell_vol":906.0,"unclassified_vol":0.0,"imbalance":-0.167526,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":5.295573},"context":{"vwap":12.087815,"price_vs_vwap_pct":-0.066302,"ema9":12.089182,"ema20":12.079511,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.356295,"dist_to_hod_atr":17.450619,"atr":0.031529,"spread_atr":0.634337,"own_change_pct":-0.17038,"rel_strength_pct":{"SPY":-0.155859,"IWM":-0.135371}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.60135},"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":"32c80b6827d5","ts":"2026-09-15T18:28:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.59,"ext_from_open_pct":4.47,"max_ext_allowed_pct":3.0,"volume_pace":0.89,"trend":"flat","recent_slope_pct":0.0078,"volatility":"medium"},"price":10.875,"volume":{"bars":298,"last_bar_volume":9999.0,"baseline_avg":13154.5,"bar_rvol":0.76012,"raw_accel":-0.462506,"smooth_accel":0.095664,"accel_momentum":-0.216401,"rvol_3bar":[0.634928,1.479529,0.76012],"trend_3bar":"MIXED","projected_rvol":0.623057},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":3416.0,"sell_vol":1049.0,"unclassified_vol":0.0,"imbalance":0.530123,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.026533},"context":{"vwap":10.589814,"price_vs_vwap_pct":2.693023,"ema9":10.862963,"ema20":10.848891,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":2.081733,"atr":0.031224,"spread_atr":0.320267,"own_change_pct":-0.041389,"rel_strength_pct":{"SPY":-0.026868,"IWM":-0.00638}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.402957},"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":"5c3138757649","ts":"2026-09-15T18:28:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2205.0s, plan says PASS; stop 9.25, target 9.48 (premarket_high), R:R 0.48; target 0.07 away > ~0.07 reachable in 86 min","plan":{"state":"PASS","setup":"","stop":9.2542,"target":9.48,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":7.8,"room_to_5d_high_atr":3.21},"price":9.4071,"vwap":9.3585,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.487,"trend":"flat","recent_slope_pct":0.0064,"volatility":"high"},"price":9.4071,"volume":{"bars":298,"last_bar_volume":2749.0,"baseline_avg":4826.45,"bar_rvol":0.56957,"raw_accel":-0.441033,"smooth_accel":0.238987,"accel_momentum":0.398855,"rvol_3bar":[0.204423,1.038868,0.56957],"trend_3bar":"MIXED","projected_rvol":0.348703},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":397.0,"sell_vol":277.0,"unclassified_vol":0.0,"imbalance":0.178042,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.022599},"context":{"vwap":9.358456,"price_vs_vwap_pct":0.519784,"ema9":9.40821,"ema20":9.405355,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.289612,"dist_to_hod_atr":7.297501,"atr":0.016841,"spread_atr":0.593776,"own_change_pct":0.006377,"rel_strength_pct":{"SPY":0.020898,"IWM":0.041386}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.101407},"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":"0b6192068eef","ts":"2026-09-15T18:28:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2210.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; selling not fading: red-bar volume 1.46x the advance (max 0.7); no reclaim yet (needs a close > 9.41); R:R 0.46 < 2.0 ","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3585,"ext_from_open_pct":0.64,"max_ext_allowed_pct":4.0,"volume_pace":0.487,"trend":"flat","recent_slope_pct":0.0125,"volatility":"high"},"price":9.41,"volume":{"bars":298,"last_bar_volume":2749.0,"baseline_avg":4826.45,"bar_rvol":0.56957,"raw_accel":-0.441033,"smooth_accel":0.238987,"accel_momentum":0.398855,"rvol_3bar":[0.204423,1.038868,0.56957],"trend_3bar":"MIXED","projected_rvol":0.363276},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":481.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":0.96728,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.035095},"context":{"vwap":9.358456,"price_vs_vwap_pct":0.550772,"ema9":9.40821,"ema20":9.405355,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":7.125306,"atr":0.016841,"spread_atr":0.593776,"own_change_pct":0.006377,"rel_strength_pct":{"SPY":0.020898,"IWM":0.041386}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.550934},"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":"e3fb63e719e1","ts":"2026-09-15T18:28:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2220.0s, plan says PASS; stop 9.25, target 9.48 (premarket_high), R:R 0.48; target 0.07 away > ~0.07 reachable in 86 min","plan":{"state":"PASS","setup":"","stop":9.2542,"target":9.48,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":7.8,"room_to_5d_high_atr":3.21},"price":9.4071,"vwap":9.3585,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":0.0064,"volatility":"high"},"price":9.4071,"volume":{"bars":298,"last_bar_volume":2749.0,"baseline_avg":4826.45,"bar_rvol":0.56957,"raw_accel":-0.441033,"smooth_accel":0.238987,"accel_momentum":0.398855,"rvol_3bar":[0.204423,1.038868,0.56957],"trend_3bar":"MIXED","projected_rvol":0.397582},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":915.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":0.982665,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":4.302533},"context":{"vwap":9.358456,"price_vs_vwap_pct":0.519784,"ema9":9.40821,"ema20":9.405355,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.289612,"dist_to_hod_atr":7.297501,"atr":0.016841,"spread_atr":0.593776,"own_change_pct":0.006377,"rel_strength_pct":{"SPY":0.020898,"IWM":0.041386}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.559696},"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":"a2efa0c2fc50","ts":"2026-09-15T18:29:00+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.8784,"target":12.18,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":9.1,"room_to_5d_high_atr":2.13},"price":12.09,"vwap":12.0878,"ext_from_open_pct":-3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":-0.0661,"volatility":"high"},"price":12.09,"volume":{"bars":298,"last_bar_volume":3719.0,"baseline_avg":1036.05,"bar_rvol":3.589595,"raw_accel":2.045864,"smooth_accel":0.922877,"accel_momentum":1.406947,"rvol_3bar":[0.203659,1.018136,3.589595],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":178.0,"sell_vol":25.0,"unclassified_vol":0.0,"imbalance":0.753695,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":3.736834},"context":{"vwap":12.087815,"price_vs_vwap_pct":0.01808,"ema9":12.089182,"ema20":12.079511,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.275534,"dist_to_hod_atr":17.127107,"atr":0.031529,"spread_atr":0.634337,"own_change_pct":-0.17038,"rel_strength_pct":{"SPY":-0.198106,"IWM":-0.159876}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":2.705458},"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":"3e52a2c1bbb3","ts":"2026-09-15T18:29:05+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7817,"target":8.0,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":2.64},"price":7.9,"vwap":7.8502,"ext_from_open_pct":0.0,"max_ext_allowed_pct":4.0,"volume_pace":1.052,"trend":"flat","recent_slope_pct":-0.024,"volatility":"medium"},"price":7.9,"volume":{"bars":299,"last_bar_volume":10542.0,"baseline_avg":4808.35,"bar_rvol":2.192436,"raw_accel":7.769744,"smooth_accel":3.214215,"accel_momentum":0.3486,"rvol_3bar":[2.195868,0.160102,2.192436],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":3626.0,"sell_vol":7073.0,"unclassified_vol":0.0,"imbalance":-0.32218,"bid":7.89,"ask":7.9,"spread_pct":0.126662,"quote_size_imbalance":null,"quote_age_s":1.750066},"context":{"vwap":7.850193,"price_vs_vwap_pct":0.634469,"ema9":7.901304,"ema20":7.897352,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.37831,"dist_to_hod_atr":2.526176,"atr":0.011876,"spread_atr":0.842059,"own_change_pct":-0.126502,"rel_strength_pct":{"SPY":-0.154228,"IWM":-0.115998}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.706358},"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":"0c8eecd038ca","ts":"2026-09-15T18:29:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2230.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; selling not fading: red-bar volume 1.46x the advance (max 0.7); no reclaim yet (needs a close > 9.41); R:R 0.46 < 2.0 ","plan":{"state":"WATCH","setup":"","stop":9.2566,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.21},"price":9.4095,"vwap":9.3586,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.487,"trend":"flat","recent_slope_pct":0.0018,"volatility":"high"},"price":9.4095,"volume":{"bars":299,"last_bar_volume":2834.0,"baseline_avg":4656.6,"bar_rvol":0.608599,"raw_accel":0.03092,"smooth_accel":0.798424,"accel_momentum":0.559437,"rvol_3bar":[1.038868,0.56957,0.608599],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":79,"trade_rate":2.633333,"buy_vol":3019.0,"sell_vol":1953.0,"unclassified_vol":0.0,"imbalance":0.214401,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.1444},"context":{"vwap":9.358521,"price_vs_vwap_pct":0.544734,"ema9":9.408048,"ema20":9.40555,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.264428,"dist_to_hod_atr":7.211314,"atr":0.01671,"spread_atr":0.598449,"own_change_pct":-0.02763,"rel_strength_pct":{"SPY":-0.055356,"IWM":-0.017126}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.130484},"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":"85ea656648d5","ts":"2026-09-15T18:29:05+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.1912,"target":5.43,"target_label":"prev_day_high","reward_risk":3.89,"pos_in_5d_range_pct":0.0,"room_to_5d_high_atr":2.0},"price":5.24,"vwap":5.2386,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":4.0,"volume_pace":0.8,"trend":"flat","recent_slope_pct":-0.0893,"volatility":"medium"},"price":5.24,"volume":{"bars":299,"last_bar_volume":274.0,"baseline_avg":1981.2,"bar_rvol":0.1383,"raw_accel":-0.916565,"smooth_accel":-0.342274,"accel_momentum":-0.029871,"rvol_3bar":[6.339739,1.805685,0.1383],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":221.0,"sell_vol":8.0,"unclassified_vol":0.0,"imbalance":0.930131,"bid":5.22,"ask":5.23,"spread_pct":0.191388,"quote_size_imbalance":null,"quote_age_s":11.699402},"context":{"vwap":5.238557,"price_vs_vwap_pct":0.027549,"ema9":5.245089,"ema20":5.247064,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.052729,"dist_to_hod_atr":13.577741,"atr":0.012152,"spread_atr":0.822893,"own_change_pct":-0.450999,"rel_strength_pct":{"SPY":-0.478724,"IWM":-0.440495}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.128637},"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":"5f209b0ae146","ts":"2026-09-15T18:29:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.5901,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.888,"trend":"flat","recent_slope_pct":0.0471,"volatility":"medium"},"price":10.88,"volume":{"bars":299,"last_bar_volume":6654.0,"baseline_avg":12957.45,"bar_rvol":0.513527,"raw_accel":-0.334533,"smooth_accel":0.218413,"accel_momentum":0.122749,"rvol_3bar":[1.479529,0.76012,0.513527],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":852.0,"sell_vol":1144.0,"unclassified_vol":0.0,"imbalance":-0.146293,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":1.061218},"context":{"vwap":10.590101,"price_vs_vwap_pct":2.737457,"ema9":10.865371,"ema20":10.851378,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":1.994246,"atr":0.030087,"spread_atr":0.332374,"own_change_pct":-0.019307,"rel_strength_pct":{"SPY":-0.047032,"IWM":-0.008803}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.075125},"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":"221abe35ac2f","ts":"2026-09-15T18:29:15+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.08 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8709,"target":12.18,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":8.7,"room_to_5d_high_atr":2.14},"price":12.0825,"vwap":12.0878,"ext_from_open_pct":-3.26,"max_ext_allowed_pct":4.0,"volume_pace":0.575,"trend":"flat","recent_slope_pct":-0.0496,"volatility":"high"},"price":12.0825,"volume":{"bars":299,"last_bar_volume":1765.0,"baseline_avg":1111.5,"bar_rvol":1.587944,"raw_accel":-0.52541,"smooth_accel":3.039157,"accel_momentum":2.116279,"rvol_3bar":[1.018136,3.589595,1.587944],"trend_3bar":"MIXED","projected_rvol":1.835358},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":641.0,"sell_vol":23.0,"unclassified_vol":0.0,"imbalance":0.930723,"bid":12.07,"ask":12.09,"spread_pct":0.165563,"quote_size_imbalance":null,"quote_age_s":2.857257},"context":{"vwap":12.087798,"price_vs_vwap_pct":-0.043828,"ema9":12.089345,"ema20":12.08051,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.334917,"dist_to_hod_atr":17.8307,"atr":0.030705,"spread_atr":0.65135,"own_change_pct":-0.041339,"rel_strength_pct":{"SPY":-0.069065,"IWM":-0.030836}},"vas":{"raw":7,"score":8.8,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.477936},"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":"83b1a8a5afd2","ts":"2026-09-15T18:29:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5902,"ext_from_open_pct":4.47,"max_ext_allowed_pct":3.0,"volume_pace":0.888,"trend":"flat","recent_slope_pct":0.0379,"volatility":"medium"},"price":10.875,"volume":{"bars":299,"last_bar_volume":6654.0,"baseline_avg":12957.45,"bar_rvol":0.513527,"raw_accel":-0.334533,"smooth_accel":0.218413,"accel_momentum":0.122749,"rvol_3bar":[1.479529,0.76012,0.513527],"trend_3bar":"DECELERATING","projected_rvol":0.358713},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1163.0,"sell_vol":1685.0,"unclassified_vol":0.0,"imbalance":-0.183287,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.697832},"context":{"vwap":10.590101,"price_vs_vwap_pct":2.690243,"ema9":10.865371,"ema20":10.851378,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":2.160433,"atr":0.030087,"spread_atr":0.332374,"own_change_pct":-0.019307,"rel_strength_pct":{"SPY":-0.047032,"IWM":-0.008803}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.094123},"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":"5f9d6f2f7204","ts":"2026-09-15T18:29:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.7368,"target":14.19,"target_label":"range_20d_high","reward_risk":22.3,"pos_in_5d_range_pct":52.4,"room_to_5d_high_atr":1.04},"price":10.885,"vwap":10.5917,"ext_from_open_pct":4.56,"max_ext_allowed_pct":4.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":0.0563,"volatility":"medium"},"price":10.885,"volume":{"bars":299,"last_bar_volume":6654.0,"baseline_avg":12957.45,"bar_rvol":0.513527,"raw_accel":-0.334533,"smooth_accel":0.218413,"accel_momentum":0.122749,"rvol_3bar":[1.479529,0.76012,0.513527],"trend_3bar":"DECELERATING","projected_rvol":4.733074},"flow":{"window_s":30,"trades":82,"trade_rate":2.733333,"buy_vol":33736.0,"sell_vol":1978.0,"unclassified_vol":0.0,"imbalance":0.889231,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.742913},"context":{"vwap":10.590101,"price_vs_vwap_pct":2.784671,"ema9":10.865371,"ema20":10.851378,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.502742,"dist_to_hod_atr":1.828059,"atr":0.030087,"spread_atr":0.332374,"own_change_pct":-0.019307,"rel_strength_pct":{"SPY":-0.047032,"IWM":-0.008803}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.456644},"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":"91f3d2591168","ts":"2026-09-15T18:29:35+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.23 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1808,"target":5.27,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":-2.7,"room_to_5d_high_atr":2.05},"price":5.2296,"vwap":5.2386,"ext_from_open_pct":-1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.799,"trend":"flat","recent_slope_pct":-0.129,"volatility":"medium"},"price":5.2296,"volume":{"bars":299,"last_bar_volume":274.0,"baseline_avg":1981.2,"bar_rvol":0.1383,"raw_accel":-0.916565,"smooth_accel":-0.342274,"accel_momentum":-0.029871,"rvol_3bar":[6.339739,1.805685,0.1383],"trend_3bar":"DECELERATING","projected_rvol":0.309769},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":142.0,"sell_vol":209.0,"unclassified_vol":0.0,"imbalance":-0.190883,"bid":5.22,"ask":5.23,"spread_pct":0.191388,"quote_size_imbalance":null,"quote_age_s":7.351755},"context":{"vwap":5.238557,"price_vs_vwap_pct":-0.170979,"ema9":5.245089,"ema20":5.247064,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.245143,"dist_to_hod_atr":14.43355,"atr":0.012152,"spread_atr":0.822893,"own_change_pct":-0.450999,"rel_strength_pct":{"SPY":-0.478724,"IWM":-0.440495}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.026399},"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":"18702466fa45","ts":"2026-09-15T18:29:40+00:00","symbol":"SVRA","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.2027,"target":5.43,"target_label":"prev_day_high","reward_risk":3.65,"pos_in_5d_range_pct":2.9,"room_to_5d_high_atr":1.94},"price":5.2515,"vwap":5.2386,"ext_from_open_pct":-1.47,"max_ext_allowed_pct":4.0,"volume_pace":0.799,"trend":"flat","recent_slope_pct":-0.0454,"volatility":"medium"},"price":5.2515,"volume":{"bars":299,"last_bar_volume":274.0,"baseline_avg":1981.2,"bar_rvol":0.1383,"raw_accel":-0.916565,"smooth_accel":-0.342274,"accel_momentum":-0.029871,"rvol_3bar":[6.339739,1.805685,0.1383],"trend_3bar":"DECELERATING","projected_rvol":0.295276},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":158.0,"sell_vol":209.0,"unclassified_vol":0.0,"imbalance":-0.138965,"bid":5.22,"ask":5.23,"spread_pct":0.191388,"quote_size_imbalance":null,"quote_age_s":12.351755},"context":{"vwap":5.238557,"price_vs_vwap_pct":0.247075,"ema9":5.245089,"ema20":5.247064,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-2.839963,"dist_to_hod_atr":12.631413,"atr":0.012152,"spread_atr":0.822893,"own_change_pct":-0.450999,"rel_strength_pct":{"SPY":-0.478724,"IWM":-0.440495}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.019219},"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":"4be021406db5","ts":"2026-09-15T18:29:50+00:00","symbol":"SVRA","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.22 below VWAP $5.24","plan":{"state":"PASS","setup":"","stop":5.1762,"target":5.27,"target_label":"ceiling","reward_risk":0.92,"pos_in_5d_range_pct":-3.8,"room_to_5d_high_atr":2.07},"price":5.225,"vwap":5.2386,"ext_from_open_pct":-1.97,"max_ext_allowed_pct":4.0,"volume_pace":0.798,"trend":"flat","recent_slope_pct":-0.1465,"volatility":"medium"},"price":5.225,"volume":{"bars":299,"last_bar_volume":274.0,"baseline_avg":1981.2,"bar_rvol":0.1383,"raw_accel":-0.916565,"smooth_accel":-0.342274,"accel_momentum":-0.029871,"rvol_3bar":[6.339739,1.805685,0.1383],"trend_3bar":"DECELERATING","projected_rvol":0.334949},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":60.0,"sell_vol":355.0,"unclassified_vol":0.0,"imbalance":-0.710843,"bid":5.22,"ask":5.23,"spread_pct":0.191388,"quote_size_imbalance":null,"quote_age_s":0.306884},"context":{"vwap":5.238557,"price_vs_vwap_pct":-0.258789,"ema9":5.245089,"ema20":5.247064,"ema_stack":false,"ema_warm":true,"hod":5.405,"dist_to_hod_pct":-3.33025,"dist_to_hod_atr":14.812081,"atr":0.012152,"spread_atr":0.822893,"own_change_pct":-0.450999,"rel_strength_pct":{"SPY":-0.478724,"IWM":-0.440495}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.09831},"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":"9ec60b845f4e","ts":"2026-09-15T18:30:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7264,"target":10.935,"target_label":"prev_day_high","reward_risk":0.41,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.8746,"vwap":10.5919,"ext_from_open_pct":4.46,"max_ext_allowed_pct":3.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":0.0372,"volatility":"medium"},"price":10.8746,"volume":{"bars":299,"last_bar_volume":6654.0,"baseline_avg":12957.45,"bar_rvol":0.513527,"raw_accel":-0.334533,"smooth_accel":0.218413,"accel_momentum":0.122749,"rvol_3bar":[1.479529,0.76012,0.513527],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":105,"trade_rate":3.5,"buy_vol":32266.0,"sell_vol":5986.0,"unclassified_vol":0.0,"imbalance":0.687023,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":3.08254},"context":{"vwap":10.590101,"price_vs_vwap_pct":2.686466,"ema9":10.865371,"ema20":10.851378,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.597806,"dist_to_hod_atr":2.173728,"atr":0.030087,"spread_atr":0.332374,"own_change_pct":-0.019307,"rel_strength_pct":{"SPY":-0.044403,"IWM":-0.017556}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.352805},"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":"159910abe70d","ts":"2026-09-15T18:30:05+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.55 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.3986,"target":9.62,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":4.8,"room_to_5d_high_atr":3.25},"price":9.55,"vwap":9.5583,"ext_from_open_pct":-2.05,"max_ext_allowed_pct":3.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":-0.0784,"volatility":"high"},"price":9.55,"volume":{"bars":300,"last_bar_volume":21921.0,"baseline_avg":7261.4,"bar_rvol":3.018839,"raw_accel":11.075357,"smooth_accel":-0.147536,"accel_momentum":-1.879172,"rvol_3bar":[0.245925,0.19125,3.018839],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":12412.0,"sell_vol":12421.0,"unclassified_vol":0.0,"imbalance":-0.000362,"bid":9.55,"ask":9.56,"spread_pct":0.104657,"quote_size_imbalance":null,"quote_age_s":0.015249},"context":{"vwap":9.558294,"price_vs_vwap_pct":-0.086768,"ema9":9.573399,"ema20":9.561845,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.848423,"dist_to_hod_atr":14.474355,"atr":0.019345,"spread_atr":0.516941,"own_change_pct":-0.052219,"rel_strength_pct":{"SPY":-0.077316,"IWM":-0.050468}},"vas":{"raw":1,"score":5.0,"components":{"rvol":3,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.001094},"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":"a1a4bb5c3e20","ts":"2026-09-15T18:30:05+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6854,"target":5.83,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":91.7,"room_to_5d_high_atr":0.11},"price":5.785,"vwap":5.7547,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":0.537,"trend":"flat","recent_slope_pct":-0.0195,"volatility":"high"},"price":5.785,"volume":{"bars":300,"last_bar_volume":949.0,"baseline_avg":3207.35,"bar_rvol":0.295883,"raw_accel":0.183532,"smooth_accel":0.154264,"accel_momentum":0.839869,"rvol_3bar":[0.344303,0.209655,0.295883],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":132,"trade_rate":4.4,"buy_vol":11537.0,"sell_vol":7472.0,"unclassified_vol":0.0,"imbalance":0.213846,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":2.919307},"context":{"vwap":5.754184,"price_vs_vwap_pct":0.535535,"ema9":5.795893,"ema20":5.79292,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.111111,"dist_to_hod_atr":6.044978,"atr":0.010753,"spread_atr":0.929997,"own_change_pct":0.07247,"rel_strength_pct":{"SPY":0.047374,"IWM":0.074221}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.063273},"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":"88f5d2b5be0f","ts":"2026-09-15T18:30:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2290.0s, plan says PASS; stop 9.25, target 9.48 (premarket_high), R:R 0.47; target 0.07 away > ~0.07 reachable in 85 min","plan":{"state":"PASS","setup":"","stop":9.2547,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4076,"vwap":9.3586,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"high"},"price":9.4076,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":496.0,"sell_vol":302.0,"unclassified_vol":0.0,"imbalance":0.243108,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.935468},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.523235,"ema9":9.407438,"ema20":9.405498,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.284365,"dist_to_hod_atr":7.378952,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.025096,"IWM":0.001751}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.264917},"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":"1fcde129b894","ts":"2026-09-15T18:30:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7356,"target":14.19,"target_label":"range_20d_high","reward_risk":22.31,"pos_in_5d_range_pct":52.3,"room_to_5d_high_atr":1.04},"price":10.8838,"vwap":10.5933,"ext_from_open_pct":4.55,"max_ext_allowed_pct":3.0,"volume_pace":0.895,"trend":"flat","recent_slope_pct":0.0407,"volatility":"medium"},"price":10.8838,"volume":{"bars":300,"last_bar_volume":41152.0,"baseline_avg":13102.35,"bar_rvol":3.140811,"raw_accel":5.184551,"smooth_accel":0.426192,"accel_momentum":0.207779,"rvol_3bar":[0.76012,0.513527,3.140811],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":221,"trade_rate":7.366667,"buy_vol":17857.0,"sell_vol":18293.0,"unclassified_vol":0.0,"imbalance":-0.012061,"bid":10.88,"ask":10.89,"spread_pct":0.09187,"quote_size_imbalance":null,"quote_age_s":0.066557},"context":{"vwap":10.591886,"price_vs_vwap_pct":2.756014,"ema9":10.867216,"ema20":10.853589,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.513711,"dist_to_hod_atr":1.901286,"atr":0.029559,"spread_atr":0.338307,"own_change_pct":-0.003678,"rel_strength_pct":{"SPY":-0.028775,"IWM":-0.001927}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.037881},"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":"ea6170414ad8","ts":"2026-09-15T18:30:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2295.0s, plan says WATCH; stop 9.25, target 9.46 (ceiling), R:R 0.36; selling not fading: red-bar volume 1.46x the advance (max 0.7); no reclaim yet (needs a close > 9.41); R:R 0.36 < 2.0 at 9.40","plan":{"state":"WATCH","setup":"","stop":9.2516,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.4045,"vwap":9.3586,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":-0.0134,"volatility":"high"},"price":9.4045,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":635.0,"sell_vol":301.0,"unclassified_vol":0.0,"imbalance":0.356838,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.537748},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.490111,"ema9":9.407438,"ema20":9.405498,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.316894,"dist_to_hod_atr":7.565837,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.025096,"IWM":0.001751}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.38885},"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":"ae41e7556158","ts":"2026-09-15T18:30:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2305.0s, plan says PASS; stop 9.25, target 9.48 (premarket_high), R:R 0.47; target 0.07 away > ~0.07 reachable in 85 min","plan":{"state":"PASS","setup":"","stop":9.2547,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4076,"vwap":9.3586,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":-0.0068,"volatility":"high"},"price":9.4076,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":0.485872},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":737.0,"sell_vol":329.0,"unclassified_vol":0.0,"imbalance":0.382739,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.579461},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.523235,"ema9":9.407438,"ema20":9.405498,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.284365,"dist_to_hod_atr":7.378952,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.025096,"IWM":0.001751}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.417075},"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":"317eab8d4ebb","ts":"2026-09-15T18:30:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2310.0s, plan says WATCH; stop 9.25, target 9.46 (ceiling), R:R 0.36; selling not fading: red-bar volume 1.46x the advance (max 0.7); no reclaim yet (needs a close > 9.41); R:R 0.36 < 2.0 at 9.41","plan":{"state":"WATCH","setup":"","stop":9.2528,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.8,"room_to_5d_high_atr":3.21},"price":9.4057,"vwap":9.3586,"ext_from_open_pct":0.6,"max_ext_allowed_pct":4.0,"volume_pace":0.486,"trend":"flat","recent_slope_pct":-0.0108,"volatility":"high"},"price":9.4057,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":0.389223},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":727.0,"sell_vol":229.0,"unclassified_vol":0.0,"imbalance":0.520921,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":1.815929},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.502933,"ema9":9.407438,"ema20":9.405498,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.304302,"dist_to_hod_atr":7.493495,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.025096,"IWM":0.001751}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.567653},"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":"ffacb48c334e","ts":"2026-09-15T18:30:35+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2320.0s, plan says PASS; stop 9.26, target 9.48 (premarket_high), R:R 0.47; target 0.07 away > ~0.07 reachable in 84 min","plan":{"state":"PASS","setup":"","stop":9.255,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4079,"vwap":9.3586,"ext_from_open_pct":0.62,"max_ext_allowed_pct":4.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":-0.0062,"volatility":"high"},"price":9.4079,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":0.28552},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":573.0,"sell_vol":47.0,"unclassified_vol":0.0,"imbalance":0.848387,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.132246},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.526441,"ema9":9.407438,"ema20":9.405498,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.281217,"dist_to_hod_atr":7.360866,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.025096,"IWM":0.001751}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.924497},"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":"cb0db861f114","ts":"2026-09-15T18:30:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5935,"ext_from_open_pct":4.47,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":0.0246,"volatility":"medium"},"price":10.875,"volume":{"bars":300,"last_bar_volume":41152.0,"baseline_avg":13102.35,"bar_rvol":3.140811,"raw_accel":5.184551,"smooth_accel":0.426192,"accel_momentum":0.207779,"rvol_3bar":[0.76012,0.513527,3.140811],"trend_3bar":"MIXED","projected_rvol":4.202223},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":818.0,"sell_vol":4640.0,"unclassified_vol":0.0,"imbalance":-0.700257,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.222136},"context":{"vwap":10.591886,"price_vs_vwap_pct":2.672932,"ema9":10.867216,"ema20":10.853589,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":2.198996,"atr":0.029559,"spread_atr":0.338307,"own_change_pct":-0.003678,"rel_strength_pct":{"SPY":-0.028775,"IWM":-0.001927}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.199373},"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":"28626ef88033","ts":"2026-09-15T18:30:40+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2325.0s, plan says WATCH; stop 9.25, target 9.46 (ceiling), R:R 0.36; selling not fading: red-bar volume 1.46x the advance (max 0.7); imbalance -98% still heavy selling; no reclaim yet (needs a c","plan":{"state":"WATCH","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3587,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":-0.0123,"volatility":"high"},"price":9.405,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":0.333545},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":431.0,"sell_vol":301.0,"unclassified_vol":0.0,"imbalance":0.177596,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":5.132246},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.495454,"ema9":9.407438,"ema20":9.405498,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":7.535694,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.025096,"IWM":0.001751}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.193528},"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":"00d0768e0b24","ts":"2026-09-15T18:30:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7309,"target":14.19,"target_label":"range_20d_high","reward_risk":22.34,"pos_in_5d_range_pct":51.9,"room_to_5d_high_atr":1.05},"price":10.8791,"vwap":10.5935,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":0.0321,"volatility":"medium"},"price":10.8791,"volume":{"bars":300,"last_bar_volume":41152.0,"baseline_avg":13102.35,"bar_rvol":3.140811,"raw_accel":5.184551,"smooth_accel":0.426192,"accel_momentum":0.207779,"rvol_3bar":[0.76012,0.513527,3.140811],"trend_3bar":"MIXED","projected_rvol":3.424882},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1383.0,"sell_vol":3696.0,"unclassified_vol":0.0,"imbalance":-0.455405,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":1.378729},"context":{"vwap":10.591886,"price_vs_vwap_pct":2.711641,"ema9":10.867216,"ema20":10.853589,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.556673,"dist_to_hod_atr":2.06029,"atr":0.029559,"spread_atr":0.338307,"own_change_pct":-0.003678,"rel_strength_pct":{"SPY":-0.028775,"IWM":-0.001927}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.43034},"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":"cf0ff6150fa3","ts":"2026-09-15T18:30:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5935,"ext_from_open_pct":4.47,"max_ext_allowed_pct":3.0,"volume_pace":0.894,"trend":"flat","recent_slope_pct":0.0246,"volatility":"medium"},"price":10.875,"volume":{"bars":300,"last_bar_volume":41152.0,"baseline_avg":13102.35,"bar_rvol":3.140811,"raw_accel":5.184551,"smooth_accel":0.426192,"accel_momentum":0.207779,"rvol_3bar":[0.76012,0.513527,3.140811],"trend_3bar":"MIXED","projected_rvol":3.114278},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":1287.0,"sell_vol":3688.0,"unclassified_vol":0.0,"imbalance":-0.482613,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":2.393764},"context":{"vwap":10.591886,"price_vs_vwap_pct":2.672932,"ema9":10.867216,"ema20":10.853589,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":2.198996,"atr":0.029559,"spread_atr":0.338307,"own_change_pct":-0.003678,"rel_strength_pct":{"SPY":-0.028775,"IWM":-0.001927}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.515796},"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":"1839009575d6","ts":"2026-09-15T18:30:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2340.0s, plan says PASS; stop 9.25, target 9.48 (premarket_high), R:R 0.47; target 0.07 away > ~0.07 reachable in 84 min","plan":{"state":"PASS","setup":"","stop":9.2546,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4075,"vwap":9.3587,"ext_from_open_pct":0.61,"max_ext_allowed_pct":3.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":-0.007,"volatility":"high"},"price":9.4075,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":0.326382},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":64.0,"sell_vol":562.0,"unclassified_vol":0.0,"imbalance":-0.795527,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":8.181834},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.522167,"ema9":9.407438,"ema20":9.405498,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.285414,"dist_to_hod_atr":7.384981,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.025096,"IWM":0.001751}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.866895},"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":"908aef82b204","ts":"2026-09-15T18:31:00+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.8884,"target":12.18,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":2.11},"price":12.1,"vwap":12.0878,"ext_from_open_pct":-3.12,"max_ext_allowed_pct":3.0,"volume_pace":0.578,"trend":"flat","recent_slope_pct":0.0178,"volatility":"high"},"price":12.1,"volume":{"bars":300,"last_bar_volume":776.0,"baseline_avg":1167.8,"bar_rvol":0.664497,"raw_accel":-0.56034,"smooth_accel":1.577192,"accel_momentum":-1.461964,"rvol_3bar":[3.589595,1.587944,0.664497],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":31.0,"sell_vol":154.0,"unclassified_vol":0.0,"imbalance":-0.664865,"bid":12.08,"ask":12.1,"spread_pct":0.165426,"quote_size_imbalance":null,"quote_age_s":12.643955},"context":{"vwap":12.087791,"price_vs_vwap_pct":0.101003,"ema9":12.087776,"ema20":12.080604,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.196358,"dist_to_hod_atr":18.098837,"atr":0.029284,"spread_atr":0.682975,"own_change_pct":-0.235343,"rel_strength_pct":{"SPY":-0.222142,"IWM":-0.210795}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.441801},"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":"a27c6784c5c9","ts":"2026-09-15T18:31:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.731,"target":14.19,"target_label":"range_20d_high","reward_risk":22.34,"pos_in_5d_range_pct":51.9,"room_to_5d_high_atr":1.05},"price":10.8792,"vwap":10.5935,"ext_from_open_pct":4.51,"max_ext_allowed_pct":4.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":0.0323,"volatility":"medium"},"price":10.8792,"volume":{"bars":300,"last_bar_volume":41152.0,"baseline_avg":13102.35,"bar_rvol":3.140811,"raw_accel":5.184551,"smooth_accel":0.426192,"accel_momentum":0.207779,"rvol_3bar":[0.76012,0.513527,3.140811],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1529.0,"sell_vol":3801.0,"unclassified_vol":0.0,"imbalance":-0.426266,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.047134},"context":{"vwap":10.591886,"price_vs_vwap_pct":2.712585,"ema9":10.867216,"ema20":10.853589,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.555759,"dist_to_hod_atr":2.056907,"atr":0.029559,"spread_atr":0.338307,"own_change_pct":-0.003678,"rel_strength_pct":{"SPY":0.009523,"IWM":0.020869}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.338822},"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":"2f356b7346d4","ts":"2026-09-15T18:31:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2345.0s, plan says WATCH; stop 9.25, target 9.46 (ceiling), R:R 0.36; selling not fading: red-bar volume 1.46x the advance (max 0.7); imbalance -83% still heavy selling; no reclaim yet (needs a c","plan":{"state":"WATCH","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3587,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.485,"trend":"flat","recent_slope_pct":-0.0123,"volatility":"high"},"price":9.405,"volume":{"bars":300,"last_bar_volume":4979.0,"baseline_avg":4569.1,"bar_rvol":1.089711,"raw_accel":0.756881,"smooth_accel":0.486559,"accel_momentum":-0.311866,"rvol_3bar":[0.56957,0.608599,1.089711],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":64.0,"sell_vol":668.0,"unclassified_vol":0.0,"imbalance":-0.825137,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":2.832907},"context":{"vwap":9.358632,"price_vs_vwap_pct":0.495454,"ema9":9.407438,"ema20":9.405498,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":7.535694,"atr":0.016588,"spread_atr":0.602856,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.013201,"IWM":0.024547}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.899161},"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":"59732931ffd9","ts":"2026-09-15T18:31:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.5936,"ext_from_open_pct":4.47,"max_ext_allowed_pct":4.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":0.0169,"volatility":"medium"},"price":10.875,"volume":{"bars":301,"last_bar_volume":37989.0,"baseline_avg":14772.15,"bar_rvol":2.571664,"raw_accel":-0.076861,"smooth_accel":1.340161,"accel_momentum":0.913969,"rvol_3bar":[0.513527,3.140811,2.571664],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1574.0,"sell_vol":3867.0,"unclassified_vol":0.0,"imbalance":-0.42143,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.921675},"context":{"vwap":10.593538,"price_vs_vwap_pct":2.656919,"ema9":10.869613,"ema20":10.856028,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":2.223491,"atr":0.029233,"spread_atr":0.342076,"own_change_pct":0.182331,"rel_strength_pct":{"SPY":0.195531,"IWM":0.206878}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.083776},"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":"45320e48fc26","ts":"2026-09-15T18:31:10+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.09 below VWAP $12.09","plan":{"state":"PASS","setup":"","stop":11.8752,"target":12.18,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":8.9,"room_to_5d_high_atr":2.13},"price":12.0868,"vwap":12.0878,"ext_from_open_pct":-3.23,"max_ext_allowed_pct":3.0,"volume_pace":0.577,"trend":"flat","recent_slope_pct":0.0361,"volatility":"high"},"price":12.0868,"volume":{"bars":301,"last_bar_volume":4529.0,"baseline_avg":1089.75,"bar_rvol":4.155999,"raw_accel":4.83634,"smooth_accel":0.363286,"accel_momentum":-1.213906,"rvol_3bar":[1.587944,0.664497,4.155999],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":24.0,"sell_vol":27.0,"unclassified_vol":0.0,"imbalance":-0.058824,"bid":12.08,"ask":12.1,"spread_pct":0.165426,"quote_size_imbalance":null,"quote_age_s":22.643955},"context":{"vwap":12.087843,"price_vs_vwap_pct":-0.00863,"ema9":12.090221,"ema20":12.082451,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.300871,"dist_to_hod_atr":18.979381,"atr":0.028621,"spread_atr":0.698799,"own_change_pct":-0.082576,"rel_strength_pct":{"SPY":-0.069376,"IWM":-0.058029}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.244471},"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":"278b75d88885","ts":"2026-09-15T18:31:15+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8619,"target":6.03,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":102.0,"room_to_5d_high_atr":-0.05},"price":5.945,"vwap":5.9356,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":1.179,"trend":"flat","recent_slope_pct":0.1519,"volatility":"medium"},"price":5.945,"volume":{"bars":301,"last_bar_volume":179026.0,"baseline_avg":102728.5,"bar_rvol":1.74271,"raw_accel":2.292372,"smooth_accel":0.383754,"accel_momentum":1.013061,"rvol_3bar":[1.026801,0.538382,1.74271],"trend_3bar":"MIXED","projected_rvol":3.420901},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":57607.0,"sell_vol":66949.0,"unclassified_vol":0.0,"imbalance":-0.075002,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.505621},"context":{"vwap":5.935567,"price_vs_vwap_pct":0.158919,"ema9":5.92195,"ema20":5.910712,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.059308,"dist_to_hod_atr":5.306468,"atr":0.023556,"spread_atr":0.424517,"own_change_pct":0.594412,"rel_strength_pct":{"SPY":0.607612,"IWM":0.618959}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.130707},"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":"3909f027959b","ts":"2026-09-15T18:31:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2360.0s, plan says PASS; stop 9.25, target 9.48 (premarket_high), R:R 0.47; target 0.07 away > ~0.07 reachable in 84 min","plan":{"state":"PASS","setup":"","stop":9.2547,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4076,"vwap":9.3587,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0077,"volatility":"high"},"price":9.4076,"volume":{"bars":301,"last_bar_volume":1473.0,"baseline_avg":4524.75,"bar_rvol":0.325543,"raw_accel":-0.704157,"smooth_accel":0.071915,"accel_momentum":-0.414644,"rvol_3bar":[0.608599,1.089711,0.325543],"trend_3bar":"MIXED","projected_rvol":0.115808},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":116.0,"sell_vol":449.0,"unclassified_vol":0.0,"imbalance":-0.589381,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":3.845934},"context":{"vwap":9.358664,"price_vs_vwap_pct":0.522895,"ema9":9.406951,"ema20":9.40545,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.284365,"dist_to_hod_atr":7.594385,"atr":0.016117,"spread_atr":0.620456,"own_change_pct":-0.034013,"rel_strength_pct":{"SPY":-0.020812,"IWM":-0.009465}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.191869},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fff30cc020d3","ts":"2026-09-15T18:31:15+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0982,"target":11.415,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":24.9,"room_to_5d_high_atr":1.23},"price":11.315,"vwap":11.29,"ext_from_open_pct":0.49,"max_ext_allowed_pct":4.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.1086,"volatility":"high"},"price":11.315,"volume":{"bars":301,"last_bar_volume":138888.0,"baseline_avg":91839.65,"bar_rvol":1.512288,"raw_accel":0.03297,"smooth_accel":0.331539,"accel_momentum":0.095862,"rvol_3bar":[1.021192,1.447974,1.512288],"trend_3bar":"ACCELERATING","projected_rvol":1.043079},"flow":{"window_s":30,"trades":118,"trade_rate":3.933333,"buy_vol":54056.0,"sell_vol":18547.0,"unclassified_vol":0.0,"imbalance":0.489084,"bid":11.31,"ask":11.32,"spread_pct":0.088378,"quote_size_imbalance":null,"quote_age_s":1.275484},"context":{"vwap":11.290016,"price_vs_vwap_pct":0.221292,"ema9":11.269269,"ema20":11.267385,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.437282,"dist_to_hod_atr":4.439244,"atr":0.037168,"spread_atr":0.269045,"own_change_pct":0.545553,"rel_strength_pct":{"SPY":0.558754,"IWM":0.570101}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.739637},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7ab3959f5650","ts":"2026-09-15T18:31:20+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8455,"target":5.98,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":99.8,"room_to_5d_high_atr":0.0},"price":5.9286,"vwap":5.9356,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":0.0967,"volatility":"medium"},"price":5.9286,"volume":{"bars":301,"last_bar_volume":179026.0,"baseline_avg":102728.5,"bar_rvol":1.74271,"raw_accel":2.292372,"smooth_accel":0.383754,"accel_momentum":1.013061,"rvol_3bar":[1.026801,0.538382,1.74271],"trend_3bar":"MIXED","projected_rvol":2.599785},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":58074.0,"sell_vol":57955.0,"unclassified_vol":0.0,"imbalance":0.001026,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.4981},"context":{"vwap":5.935567,"price_vs_vwap_pct":-0.117381,"ema9":5.92195,"ema20":5.910712,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.329489,"dist_to_hod_atr":6.002676,"atr":0.023556,"spread_atr":0.424517,"own_change_pct":0.594412,"rel_strength_pct":{"SPY":0.607612,"IWM":0.618959}},"vas":{"raw":4,"score":6.9,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.001787},"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":"93ed4ad37a1b","ts":"2026-09-15T18:31:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7309,"target":14.19,"target_label":"range_20d_high","reward_risk":22.34,"pos_in_5d_range_pct":51.9,"room_to_5d_high_atr":1.05},"price":10.8791,"vwap":10.5937,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":0.0245,"volatility":"medium"},"price":10.8791,"volume":{"bars":301,"last_bar_volume":37989.0,"baseline_avg":14772.15,"bar_rvol":2.571664,"raw_accel":-0.076861,"smooth_accel":1.340161,"accel_momentum":0.913969,"rvol_3bar":[0.513527,3.140811,2.571664],"trend_3bar":"MIXED","projected_rvol":0.715671},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":899.0,"sell_vol":3219.0,"unclassified_vol":0.0,"imbalance":-0.56338,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":0.433241},"context":{"vwap":10.593538,"price_vs_vwap_pct":2.695622,"ema9":10.869613,"ema20":10.856028,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.556673,"dist_to_hod_atr":2.08324,"atr":0.029233,"spread_atr":0.342076,"own_change_pct":0.182331,"rel_strength_pct":{"SPY":0.195531,"IWM":0.206878}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.448825},"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":"dc76a24156e1","ts":"2026-09-15T18:31:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2365.0s, plan says WATCH; stop 9.26, target 9.48 (premarket_high), R:R 0.46; selling not fading: red-bar volume 1.40x the advance (max 0.7); no reclaim yet (needs a close > 9.41); R:R 0.46 < 2.0 ","plan":{"state":"WATCH","setup":"","stop":9.2571,"target":9.48,"target_label":"premarket_high","reward_risk":0.46,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.2},"price":9.41,"vwap":9.3587,"ext_from_open_pct":0.64,"max_ext_allowed_pct":3.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0026,"volatility":"high"},"price":9.41,"volume":{"bars":301,"last_bar_volume":1473.0,"baseline_avg":4524.75,"bar_rvol":0.325543,"raw_accel":-0.704157,"smooth_accel":0.071915,"accel_momentum":-0.414644,"rvol_3bar":[0.608599,1.089711,0.325543],"trend_3bar":"MIXED","projected_rvol":0.16907},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":230.0,"sell_vol":195.0,"unclassified_vol":0.0,"imbalance":0.082353,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.709467},"context":{"vwap":9.358664,"price_vs_vwap_pct":0.54854,"ema9":9.406951,"ema20":9.40545,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.259182,"dist_to_hod_atr":7.445476,"atr":0.016117,"spread_atr":0.620456,"own_change_pct":-0.034013,"rel_strength_pct":{"SPY":-0.020812,"IWM":-0.009465}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.026809},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"db3b13b61d11","ts":"2026-09-15T18:31:25+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8583,"target":5.98,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":101.5,"room_to_5d_high_atr":-0.03},"price":5.9414,"vwap":5.9356,"ext_from_open_pct":0.53,"max_ext_allowed_pct":3.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":0.1398,"volatility":"medium"},"price":5.9414,"volume":{"bars":301,"last_bar_volume":179026.0,"baseline_avg":102728.5,"bar_rvol":1.74271,"raw_accel":2.292372,"smooth_accel":0.383754,"accel_momentum":1.013061,"rvol_3bar":[1.026801,0.538382,1.74271],"trend_3bar":"MIXED","projected_rvol":2.113096},"flow":{"window_s":30,"trades":93,"trade_rate":3.1,"buy_vol":57875.0,"sell_vol":45171.0,"unclassified_vol":0.0,"imbalance":0.123285,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":5.4981},"context":{"vwap":5.935567,"price_vs_vwap_pct":0.098268,"ema9":5.92195,"ema20":5.910712,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.118616,"dist_to_hod_atr":5.459294,"atr":0.023556,"spread_atr":0.424517,"own_change_pct":0.594412,"rel_strength_pct":{"SPY":0.607612,"IWM":0.618959}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.21485},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"13c56fca30b0","ts":"2026-09-15T18:31:25+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3799,"target":8.5586,"target_label":"premarket_high","reward_risk":0.98,"pos_in_5d_range_pct":65.5,"room_to_5d_high_atr":0.83},"price":8.47,"vwap":8.3766,"ext_from_open_pct":1.68,"max_ext_allowed_pct":3.0,"volume_pace":0.75,"trend":"flat","recent_slope_pct":-0.0329,"volatility":"medium"},"price":8.47,"volume":{"bars":301,"last_bar_volume":2918.0,"baseline_avg":746.55,"bar_rvol":3.908646,"raw_accel":8.630363,"smooth_accel":42.737705,"accel_momentum":30.586354,"rvol_3bar":[2.437478,0.411937,3.908646],"trend_3bar":"MIXED","projected_rvol":3.748443},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":352.0,"sell_vol":814.0,"unclassified_vol":0.0,"imbalance":-0.396226,"bid":8.47,"ask":8.48,"spread_pct":0.117994,"quote_size_imbalance":null,"quote_age_s":3.346793},"context":{"vwap":8.376285,"price_vs_vwap_pct":1.118812,"ema9":8.48481,"ema20":8.48282,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.352941,"dist_to_hod_atr":3.156758,"atr":0.009503,"spread_atr":1.052253,"own_change_pct":-0.102464,"rel_strength_pct":{"SPY":-0.089263,"IWM":-0.077916}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.548709},"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":"21026ac0f902","ts":"2026-09-15T18:31:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2370.0s, plan says PASS; stop 9.25, target 9.48 (premarket_high), R:R 0.47; target 0.07 away > ~0.07 reachable in 84 min","plan":{"state":"PASS","setup":"","stop":9.2546,"target":9.48,"target_label":"premarket_high","reward_risk":0.47,"pos_in_5d_range_pct":7.9,"room_to_5d_high_atr":3.21},"price":9.4075,"vwap":9.3587,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0079,"volatility":"high"},"price":9.4075,"volume":{"bars":301,"last_bar_volume":1473.0,"baseline_avg":4524.75,"bar_rvol":0.325543,"raw_accel":-0.704157,"smooth_accel":0.071915,"accel_momentum":-0.414644,"rvol_3bar":[0.608599,1.089711,0.325543],"trend_3bar":"MIXED","projected_rvol":0.182463},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":264.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":0.173333,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":4.696424},"context":{"vwap":9.358664,"price_vs_vwap_pct":0.521826,"ema9":9.406951,"ema20":9.40545,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.285414,"dist_to_hod_atr":7.60059,"atr":0.016117,"spread_atr":0.620456,"own_change_pct":-0.034013,"rel_strength_pct":{"SPY":-0.020812,"IWM":-0.009465}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.056427},"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":"2004858c67e5","ts":"2026-09-15T18:31:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7168,"target":10.935,"target_label":"prev_day_high","reward_risk":0.47,"pos_in_5d_range_pct":50.8,"room_to_5d_high_atr":1.07},"price":10.865,"vwap":10.5937,"ext_from_open_pct":4.37,"max_ext_allowed_pct":3.0,"volume_pace":0.893,"trend":"flat","recent_slope_pct":-0.0015,"volatility":"medium"},"price":10.865,"volume":{"bars":301,"last_bar_volume":37989.0,"baseline_avg":14772.15,"bar_rvol":2.571664,"raw_accel":-0.076861,"smooth_accel":1.340161,"accel_momentum":0.913969,"rvol_3bar":[0.513527,3.140811,2.571664],"trend_3bar":"MIXED","projected_rvol":0.65813},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":1113.0,"sell_vol":3748.0,"unclassified_vol":0.0,"imbalance":-0.54207,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.637296},"context":{"vwap":10.593538,"price_vs_vwap_pct":2.562522,"ema9":10.869613,"ema20":10.856028,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.685558,"dist_to_hod_atr":2.565567,"atr":0.029233,"spread_atr":0.342076,"own_change_pct":0.182331,"rel_strength_pct":{"SPY":0.195531,"IWM":0.206878}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.39402},"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":"07f256d53456","ts":"2026-09-15T18:31:35+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8473,"target":5.98,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":100.1,"room_to_5d_high_atr":-0.0},"price":5.9304,"vwap":5.9356,"ext_from_open_pct":0.35,"max_ext_allowed_pct":3.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":0.1027,"volatility":"medium"},"price":5.9304,"volume":{"bars":301,"last_bar_volume":179026.0,"baseline_avg":102728.5,"bar_rvol":1.74271,"raw_accel":2.292372,"smooth_accel":0.383754,"accel_momentum":1.013061,"rvol_3bar":[1.026801,0.538382,1.74271],"trend_3bar":"MIXED","projected_rvol":1.526676},"flow":{"window_s":30,"trades":92,"trade_rate":3.066667,"buy_vol":55271.0,"sell_vol":30905.0,"unclassified_vol":0.0,"imbalance":0.282747,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.448128},"context":{"vwap":5.935567,"price_vs_vwap_pct":-0.087055,"ema9":5.92195,"ema20":5.910712,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.299835,"dist_to_hod_atr":5.926263,"atr":0.023556,"spread_atr":0.424517,"own_change_pct":0.594412,"rel_strength_pct":{"SPY":0.607612,"IWM":0.618959}},"vas":{"raw":5,"score":7.5,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.492746},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b2609929f943","ts":"2026-09-15T18:31:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.7308,"target":14.19,"target_label":"range_20d_high","reward_risk":22.34,"pos_in_5d_range_pct":51.9,"room_to_5d_high_atr":1.05},"price":10.879,"vwap":10.5938,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":0.0243,"volatility":"medium"},"price":10.879,"volume":{"bars":301,"last_bar_volume":37989.0,"baseline_avg":14772.15,"bar_rvol":2.571664,"raw_accel":-0.076861,"smooth_accel":1.340161,"accel_momentum":0.913969,"rvol_3bar":[0.513527,3.140811,2.571664],"trend_3bar":"MIXED","projected_rvol":0.605773},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1044.0,"sell_vol":3225.0,"unclassified_vol":0.0,"imbalance":-0.510892,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.266832},"context":{"vwap":10.593538,"price_vs_vwap_pct":2.694678,"ema9":10.869613,"ema20":10.856028,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.557587,"dist_to_hod_atr":2.086661,"atr":0.029233,"spread_atr":0.342076,"own_change_pct":0.182331,"rel_strength_pct":{"SPY":0.195531,"IWM":0.206878}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.313844},"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":"eddbb0ce46d1","ts":"2026-09-15T18:31:35+00:00","symbol":"INFQ","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":12.4225,"target":12.72,"target_label":"premarket_high","reward_risk":0.36,"pos_in_5d_range_pct":13.3,"room_to_5d_high_atr":2.09},"price":12.6416,"vwap":12.6192,"ext_from_open_pct":1.13,"max_ext_allowed_pct":3.0,"volume_pace":0.767,"trend":"flat","recent_slope_pct":-0.0466,"volatility":"high"},"price":12.6416,"volume":{"bars":301,"last_bar_volume":14733.0,"baseline_avg":5808.0,"bar_rvol":2.536674,"raw_accel":2.056005,"smooth_accel":0.225627,"accel_momentum":0.559951,"rvol_3bar":[1.600808,0.830191,2.536674],"trend_3bar":"MIXED","projected_rvol":0.425325},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":243.0,"sell_vol":1183.0,"unclassified_vol":0.0,"imbalance":-0.659187,"bid":12.64,"ask":12.65,"spread_pct":0.079083,"quote_size_imbalance":null,"quote_age_s":1.091656},"context":{"vwap":12.61923,"price_vs_vwap_pct":0.177272,"ema9":12.674376,"ema20":12.679635,"ema_stack":false,"ema_warm":true,"hod":13.02,"dist_to_hod_pct":-2.906298,"dist_to_hod_atr":12.180782,"atr":0.031065,"spread_atr":0.321902,"own_change_pct":-0.332488,"rel_strength_pct":{"SPY":-0.319287,"IWM":-0.30794}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.672141},"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":"5fe35be88849","ts":"2026-09-15T18:31:35+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.29 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0732,"target":11.415,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":23.2,"room_to_5d_high_atr":1.26},"price":11.29,"vwap":11.29,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0643,"volatility":"high"},"price":11.29,"volume":{"bars":301,"last_bar_volume":138888.0,"baseline_avg":91839.65,"bar_rvol":1.512288,"raw_accel":0.03297,"smooth_accel":0.331539,"accel_momentum":0.095862,"rvol_3bar":[1.021192,1.447974,1.512288],"trend_3bar":"ACCELERATING","projected_rvol":1.165566},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":25985.0,"sell_vol":28742.0,"unclassified_vol":0.0,"imbalance":-0.050377,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.003637},"context":{"vwap":11.290016,"price_vs_vwap_pct":-0.000143,"ema9":11.269269,"ema20":11.267385,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.655052,"dist_to_hod_atr":5.111857,"atr":0.037168,"spread_atr":0.269045,"own_change_pct":0.545553,"rel_strength_pct":{"SPY":0.558754,"IWM":0.570101}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.076185},"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":"9cba0bbf4694","ts":"2026-09-15T18:31:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.4% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.7168,"target":10.935,"target_label":"prev_day_high","reward_risk":0.47,"pos_in_5d_range_pct":50.8,"room_to_5d_high_atr":1.07},"price":10.865,"vwap":10.5938,"ext_from_open_pct":4.37,"max_ext_allowed_pct":3.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":-0.0015,"volatility":"medium"},"price":10.865,"volume":{"bars":301,"last_bar_volume":37989.0,"baseline_avg":14772.15,"bar_rvol":2.571664,"raw_accel":-0.076861,"smooth_accel":1.340161,"accel_momentum":0.913969,"rvol_3bar":[0.513527,3.140811,2.571664],"trend_3bar":"MIXED","projected_rvol":0.64185},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":1568.0,"sell_vol":3422.0,"unclassified_vol":0.0,"imbalance":-0.371543,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":0.828309},"context":{"vwap":10.593538,"price_vs_vwap_pct":2.562522,"ema9":10.869613,"ema20":10.856028,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.685558,"dist_to_hod_atr":2.565567,"atr":0.029233,"spread_atr":0.342076,"own_change_pct":0.182331,"rel_strength_pct":{"SPY":0.195531,"IWM":0.206878}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.955484},"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":"87f05049a03e","ts":"2026-09-15T18:31:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.732,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.8802,"vwap":10.5939,"ext_from_open_pct":4.52,"max_ext_allowed_pct":3.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":0.0265,"volatility":"medium"},"price":10.8802,"volume":{"bars":301,"last_bar_volume":37989.0,"baseline_avg":14772.15,"bar_rvol":2.571664,"raw_accel":-0.076861,"smooth_accel":1.340161,"accel_momentum":0.913969,"rvol_3bar":[0.513527,3.140811,2.571664],"trend_3bar":"MIXED","projected_rvol":0.685253},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":2714.0,"sell_vol":1805.0,"unclassified_vol":0.0,"imbalance":0.201151,"bid":10.86,"ask":10.87,"spread_pct":0.092039,"quote_size_imbalance":null,"quote_age_s":3.508641},"context":{"vwap":10.593538,"price_vs_vwap_pct":2.706006,"ema9":10.869613,"ema20":10.856028,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.546618,"dist_to_hod_atr":2.045612,"atr":0.029233,"spread_atr":0.342076,"own_change_pct":0.182331,"rel_strength_pct":{"SPY":0.195531,"IWM":0.206878}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.517292},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"5815856431c6","ts":"2026-09-15T18:31:45+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2390.0s, plan says WATCH; stop 9.25, target 9.46 (ceiling), R:R 0.36; selling not fading: red-bar volume 1.40x the advance (max 0.7); imbalance -97% still heavy selling; no reclaim yet (needs a c","plan":{"state":"WATCH","setup":"","stop":9.2521,"target":9.46,"target_label":"ceiling","reward_risk":0.36,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.21},"price":9.405,"vwap":9.3587,"ext_from_open_pct":0.59,"max_ext_allowed_pct":3.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0132,"volatility":"high"},"price":9.405,"volume":{"bars":301,"last_bar_volume":1473.0,"baseline_avg":4524.75,"bar_rvol":0.325543,"raw_accel":-0.704157,"smooth_accel":0.071915,"accel_momentum":-0.414644,"rvol_3bar":[0.608599,1.089711,0.325543],"trend_3bar":"MIXED","projected_rvol":0.379247},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":218.0,"sell_vol":938.0,"unclassified_vol":0.0,"imbalance":-0.622837,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":0.969576},"context":{"vwap":9.358664,"price_vs_vwap_pct":0.495113,"ema9":9.406951,"ema20":9.40545,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.311647,"dist_to_hod_atr":7.755704,"atr":0.016117,"spread_atr":0.620456,"own_change_pct":-0.034013,"rel_strength_pct":{"SPY":-0.020812,"IWM":-0.009465}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.20276},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a183f01571e2","ts":"2026-09-15T18:31:50+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8609,"target":6.03,"target_label":"premarket_high","reward_risk":1.03,"pos_in_5d_range_pct":101.9,"room_to_5d_high_atr":-0.04},"price":5.944,"vwap":5.9356,"ext_from_open_pct":0.58,"max_ext_allowed_pct":3.0,"volume_pace":1.177,"trend":"flat","recent_slope_pct":0.1485,"volatility":"medium"},"price":5.944,"volume":{"bars":301,"last_bar_volume":179026.0,"baseline_avg":102728.5,"bar_rvol":1.74271,"raw_accel":2.292372,"smooth_accel":0.383754,"accel_momentum":1.013061,"rvol_3bar":[1.026801,0.538382,1.74271],"trend_3bar":"MIXED","projected_rvol":1.138142},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2423.0,"sell_vol":5986.0,"unclassified_vol":0.0,"imbalance":-0.423713,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.052931},"context":{"vwap":5.935567,"price_vs_vwap_pct":0.142072,"ema9":5.92195,"ema20":5.910712,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.075783,"dist_to_hod_atr":5.348919,"atr":0.023556,"spread_atr":0.424517,"own_change_pct":0.594412,"rel_strength_pct":{"SPY":0.607612,"IWM":0.618959}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.738408},"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":"a21a0147cff2","ts":"2026-09-15T18:31:50+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0882,"target":11.415,"target_label":"ceiling","reward_risk":0.51,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":1.25},"price":11.305,"vwap":11.29,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0909,"volatility":"high"},"price":11.305,"volume":{"bars":301,"last_bar_volume":138888.0,"baseline_avg":91839.65,"bar_rvol":1.512288,"raw_accel":0.03297,"smooth_accel":0.331539,"accel_momentum":0.095862,"rvol_3bar":[1.021192,1.447974,1.512288],"trend_3bar":"ACCELERATING","projected_rvol":1.12588},"flow":{"window_s":30,"trades":102,"trade_rate":3.4,"buy_vol":8675.0,"sell_vol":37379.0,"unclassified_vol":0.0,"imbalance":-0.623268,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.123255},"context":{"vwap":11.290016,"price_vs_vwap_pct":0.132718,"ema9":11.269269,"ema20":11.267385,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.52439,"dist_to_hod_atr":4.708289,"atr":0.037168,"spread_atr":0.269045,"own_change_pct":0.545553,"rel_strength_pct":{"SPY":0.558754,"IWM":0.570101}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.942561},"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":"c3ee41d051f9","ts":"2026-09-15T18:31:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.5% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"WATCH","setup":"","stop":10.7268,"target":10.935,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":51.6,"room_to_5d_high_atr":1.05},"price":10.875,"vwap":10.594,"ext_from_open_pct":4.47,"max_ext_allowed_pct":4.0,"volume_pace":0.892,"trend":"flat","recent_slope_pct":0.0169,"volatility":"medium"},"price":10.875,"volume":{"bars":301,"last_bar_volume":37989.0,"baseline_avg":14772.15,"bar_rvol":2.571664,"raw_accel":-0.076861,"smooth_accel":1.340161,"accel_momentum":0.913969,"rvol_3bar":[0.513527,3.140811,2.571664],"trend_3bar":"MIXED","projected_rvol":0.849264},"flow":{"window_s":30,"trades":91,"trade_rate":3.033333,"buy_vol":5595.0,"sell_vol":2276.0,"unclassified_vol":0.0,"imbalance":0.421675,"bid":10.87,"ask":10.88,"spread_pct":0.091954,"quote_size_imbalance":null,"quote_age_s":1.603408},"context":{"vwap":10.593538,"price_vs_vwap_pct":2.656919,"ema9":10.869613,"ema20":10.856028,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.59415,"dist_to_hod_atr":2.223491,"atr":0.029233,"spread_atr":0.342076,"own_change_pct":0.182331,"rel_strength_pct":{"SPY":0.195531,"IWM":0.206878}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.084405},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"ebcfaaaff4bb","ts":"2026-09-15T18:32:00+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.787,"target":7.91,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":76.1,"room_to_5d_high_atr":0.37},"price":7.8749,"vwap":7.7714,"ext_from_open_pct":2.27,"max_ext_allowed_pct":3.0,"volume_pace":0.522,"trend":"flat","recent_slope_pct":-0.0151,"volatility":"medium"},"price":7.8749,"volume":{"bars":301,"last_bar_volume":2756.0,"baseline_avg":9010.35,"bar_rvol":0.30587,"raw_accel":-0.770582,"smooth_accel":0.803476,"accel_momentum":-0.211781,"rvol_3bar":[1.369887,1.416302,0.30587],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":126.0,"sell_vol":3870.0,"unclassified_vol":0.0,"imbalance":-0.936937,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":4.10307},"context":{"vwap":7.771101,"price_vs_vwap_pct":1.335701,"ema9":7.879696,"ema20":7.871658,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.191381,"dist_to_hod_atr":0.952762,"atr":0.015849,"spread_atr":0.630969,"own_change_pct":-0.013959,"rel_strength_pct":{"SPY":0.011123,"IWM":0.035062}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.286581},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e982da9a9f05","ts":"2026-09-15T18:32:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"WATCH","setup":"","stop":9.9108,"target":10.0899,"target_label":"ceiling","reward_risk":1.79,"pos_in_5d_range_pct":517.6,"room_to_5d_high_atr":-6.02},"price":9.975,"vwap":9.7198,"ext_from_open_pct":5.56,"max_ext_allowed_pct":4.0,"volume_pace":3.439,"trend":"flat","recent_slope_pct":0.036,"volatility":"low"},"price":9.975,"volume":{"bars":302,"last_bar_volume":1183.0,"baseline_avg":2666.4,"bar_rvol":0.443669,"raw_accel":0.774677,"smooth_accel":-0.805508,"accel_momentum":0.132736,"rvol_3bar":[0.084701,0.131802,0.443669],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":133.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":0.141631,"bid":9.96,"ask":9.99,"spread_pct":0.300752,"quote_size_imbalance":null,"quote_age_s":2.204549},"context":{"vwap":9.719756,"price_vs_vwap_pct":2.626038,"ema9":9.970636,"ema20":9.958706,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.205882,"dist_to_hod_atr":6.78453,"atr":0.033164,"spread_atr":0.904604,"own_change_pct":0.059178,"rel_strength_pct":{"SPY":0.08426,"IWM":0.108199}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.062837},"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":"992a24258d3d","ts":"2026-09-15T18:32:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.6854,"target":5.83,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":91.7,"room_to_5d_high_atr":0.11},"price":5.785,"vwap":5.7549,"ext_from_open_pct":1.49,"max_ext_allowed_pct":4.0,"volume_pace":0.535,"trend":"flat","recent_slope_pct":-0.0483,"volatility":"high"},"price":5.785,"volume":{"bars":302,"last_bar_volume":2776.0,"baseline_avg":4157.05,"bar_rvol":0.667781,"raw_accel":-0.861422,"smooth_accel":7.039594,"accel_momentum":0.941953,"rvol_3bar":[0.295883,6.250819,0.667781],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":168.0,"sell_vol":126.0,"unclassified_vol":0.0,"imbalance":0.142857,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":1.357496},"context":{"vwap":5.754877,"price_vs_vwap_pct":0.523436,"ema9":5.793839,"ema20":5.792426,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.111111,"dist_to_hod_atr":5.818651,"atr":0.011171,"spread_atr":0.895177,"own_change_pct":-0.017268,"rel_strength_pct":{"SPY":0.007814,"IWM":0.031753}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.095397},"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":"446199c028e2","ts":"2026-09-15T18:32:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"held 2410.0s, plan says PASS; stop 9.25, target 9.46 (ceiling), R:R 0.39; R:R 0.39 < 2.0 at 9.40; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":9.2471,"target":9.46,"target_label":"ceiling","reward_risk":0.39,"pos_in_5d_range_pct":7.5,"room_to_5d_high_atr":3.22},"price":9.4,"vwap":9.3587,"ext_from_open_pct":0.53,"max_ext_allowed_pct":3.0,"volume_pace":0.484,"trend":"flat","recent_slope_pct":-0.0157,"volatility":"high"},"price":9.4,"volume":{"bars":302,"last_bar_volume":2140.0,"baseline_avg":4548.6,"bar_rvol":0.470474,"raw_accel":0.452817,"smooth_accel":-0.181792,"accel_momentum":-0.253707,"rvol_3bar":[1.089711,0.325543,0.470474],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":351.0,"sell_vol":1720.0,"unclassified_vol":0.0,"imbalance":-0.661033,"bid":9.4,"ask":9.41,"spread_pct":0.106326,"quote_size_imbalance":null,"quote_age_s":6.076048},"context":{"vwap":9.35871,"price_vs_vwap_pct":0.441193,"ema9":9.40656,"ema20":9.405407,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.364113,"dist_to_hod_atr":8.290695,"atr":0.01568,"spread_atr":0.637746,"own_change_pct":-0.035075,"rel_strength_pct":{"SPY":-0.009993,"IWM":0.013946}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.310999},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"4ccc348d4f86","ts":"2026-09-15T18:32:20+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6819,"target":5.83,"target_label":"prev_day_high","reward_risk":0.49,"pos_in_5d_range_pct":91.0,"room_to_5d_high_atr":0.12},"price":5.7815,"vwap":5.7549,"ext_from_open_pct":1.43,"max_ext_allowed_pct":4.0,"volume_pace":0.535,"trend":"flat","recent_slope_pct":-0.0604,"volatility":"high"},"price":5.7815,"volume":{"bars":302,"last_bar_volume":2776.0,"baseline_avg":4157.05,"bar_rvol":0.667781,"raw_accel":-0.861422,"smooth_accel":7.039594,"accel_momentum":0.941953,"rvol_3bar":[0.295883,6.250819,0.667781],"trend_3bar":"MIXED","projected_rvol":0.526816},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":660.0,"sell_vol":238.0,"unclassified_vol":0.0,"imbalance":0.469933,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.768008},"context":{"vwap":5.754877,"price_vs_vwap_pct":0.462618,"ema9":5.793839,"ema20":5.792426,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.17094,"dist_to_hod_atr":6.131963,"atr":0.011171,"spread_atr":0.895177,"own_change_pct":-0.017268,"rel_strength_pct":{"SPY":0.007814,"IWM":0.031753}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.313813},"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":"5fb3bcaab3d6","ts":"2026-09-15T18:32:20+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.27 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0546,"target":11.415,"target_label":"ceiling","reward_risk":0.66,"pos_in_5d_range_pct":21.9,"room_to_5d_high_atr":1.28},"price":11.2714,"vwap":11.29,"ext_from_open_pct":0.1,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":-0.0005,"volatility":"high"},"price":11.2714,"volume":{"bars":302,"last_bar_volume":120248.0,"baseline_avg":90512.95,"bar_rvol":1.328517,"raw_accel":-0.134209,"smooth_accel":0.407925,"accel_momentum":0.076386,"rvol_3bar":[1.447974,1.512288,1.328517],"trend_3bar":"MIXED","projected_rvol":0.59355},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":28567.0,"sell_vol":23422.0,"unclassified_vol":0.0,"imbalance":0.098963,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.352113},"context":{"vwap":11.290032,"price_vs_vwap_pct":-0.165032,"ema9":11.275735,"ema20":11.270644,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.817073,"dist_to_hod_atr":5.392267,"atr":0.038685,"spread_atr":0.258498,"own_change_pct":0.458667,"rel_strength_pct":{"SPY":0.483749,"IWM":0.507688}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.131474},"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":"a6d52a87e0d6","ts":"2026-09-15T18:32:25+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8464,"target":5.969,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":99.9,"room_to_5d_high_atr":0.0},"price":5.9295,"vwap":5.9356,"ext_from_open_pct":0.33,"max_ext_allowed_pct":4.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":0.0108,"volatility":"medium"},"price":5.9295,"volume":{"bars":302,"last_bar_volume":131184.0,"baseline_avg":109986.6,"bar_rvol":1.192727,"raw_accel":-0.267235,"smooth_accel":0.631834,"accel_momentum":0.24808,"rvol_3bar":[0.538382,1.74271,1.192727],"trend_3bar":"MIXED","projected_rvol":0.991124},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":26422.0,"sell_vol":23647.0,"unclassified_vol":0.0,"imbalance":0.055424,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.232449},"context":{"vwap":5.935588,"price_vs_vwap_pct":-0.102576,"ema9":5.92604,"ema20":5.91373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.314662,"dist_to_hod_atr":5.981813,"atr":0.023488,"spread_atr":0.425752,"own_change_pct":0.548223,"rel_strength_pct":{"SPY":0.573306,"IWM":0.597245}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.066105},"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":"556f24b0368e","ts":"2026-09-15T18:32:25+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":4.64,"target":5.3208,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":2.74},"price":5.26,"vwap":5.1175,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":4.0,"volume_pace":0.611,"trend":"flat","recent_slope_pct":1.0517,"volatility":"high"},"price":5.26,"volume":{"bars":241,"last_bar_volume":798.0,"baseline_avg":758.1,"bar_rvol":1.052632,"raw_accel":-0.20597,"smooth_accel":2.769231,"accel_momentum":-5.733139,"rvol_3bar":[0.730994,1.419592,1.052632],"trend_3bar":"MIXED","projected_rvol":1.614563},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":510.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":4.95,"ask":5.26,"spread_pct":6.072478,"quote_size_imbalance":null,"quote_age_s":32.673409},"context":{"vwap":5.117395,"price_vs_vwap_pct":2.786679,"ema9":5.033512,"ema20":5.083242,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-12.186978,"dist_to_hod_atr":9.324616,"atr":0.078287,"spread_atr":3.959768,"own_change_pct":-3.036239,"rel_strength_pct":{"SPY":-3.011157,"IWM":-2.987218}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.052632},"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":"83a7fa872f48","ts":"2026-09-15T18:32:25+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0782,"target":11.415,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":23.5,"room_to_5d_high_atr":1.26},"price":11.295,"vwap":11.29,"ext_from_open_pct":0.31,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0413,"volatility":"high"},"price":11.295,"volume":{"bars":302,"last_bar_volume":120248.0,"baseline_avg":90512.95,"bar_rvol":1.328517,"raw_accel":-0.134209,"smooth_accel":0.407925,"accel_momentum":0.076386,"rvol_3bar":[1.447974,1.512288,1.328517],"trend_3bar":"MIXED","projected_rvol":0.487727},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":11930.0,"sell_vol":21906.0,"unclassified_vol":0.0,"imbalance":-0.294834,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.377877},"context":{"vwap":11.290032,"price_vs_vwap_pct":0.044002,"ema9":11.275735,"ema20":11.270644,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.611498,"dist_to_hod_atr":4.782212,"atr":0.038685,"spread_atr":0.258498,"own_change_pct":0.458667,"rel_strength_pct":{"SPY":0.483749,"IWM":0.507688}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.391692},"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":"59cc6191dd5c","ts":"2026-09-15T18:32:30+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8632,"target":6.03,"target_label":"premarket_high","reward_risk":1.01,"pos_in_5d_range_pct":102.2,"room_to_5d_high_atr":-0.05},"price":5.9463,"vwap":5.9356,"ext_from_open_pct":0.61,"max_ext_allowed_pct":4.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":0.0674,"volatility":"medium"},"price":5.9463,"volume":{"bars":302,"last_bar_volume":131184.0,"baseline_avg":109986.6,"bar_rvol":1.192727,"raw_accel":-0.267235,"smooth_accel":0.631834,"accel_momentum":0.24808,"rvol_3bar":[0.538382,1.74271,1.192727],"trend_3bar":"MIXED","projected_rvol":1.007523},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":35833.0,"sell_vol":19574.0,"unclassified_vol":0.0,"imbalance":0.293447,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.964541},"context":{"vwap":5.935588,"price_vs_vwap_pct":0.180463,"ema9":5.92604,"ema20":5.91373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.037891,"dist_to_hod_atr":5.26655,"atr":0.023488,"spread_atr":0.425752,"own_change_pct":0.548223,"rel_strength_pct":{"SPY":0.573306,"IWM":0.597245}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.350002},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"cf4895e9adc6","ts":"2026-09-15T18:32:30+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.29 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0732,"target":11.415,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":23.2,"room_to_5d_high_atr":1.26},"price":11.29,"vwap":11.29,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.797,"trend":"flat","recent_slope_pct":0.0324,"volatility":"high"},"price":11.29,"volume":{"bars":302,"last_bar_volume":120248.0,"baseline_avg":90512.95,"bar_rvol":1.328517,"raw_accel":-0.134209,"smooth_accel":0.407925,"accel_momentum":0.076386,"rvol_3bar":[1.447974,1.512288,1.328517],"trend_3bar":"MIXED","projected_rvol":0.429021},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":11933.0,"sell_vol":7483.0,"unclassified_vol":0.0,"imbalance":0.229192,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.229551},"context":{"vwap":11.290032,"price_vs_vwap_pct":-0.000285,"ema9":11.275735,"ema20":11.270644,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.655052,"dist_to_hod_atr":4.911461,"atr":0.038685,"spread_atr":0.258498,"own_change_pct":0.458667,"rel_strength_pct":{"SPY":0.483749,"IWM":0.507688}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.304486},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"409d92eec8de","ts":"2026-09-15T18:32:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.7318,"target":14.19,"target_label":"range_20d_high","reward_risk":22.33,"pos_in_5d_range_pct":52.0,"room_to_5d_high_atr":1.04},"price":10.88,"vwap":10.5942,"ext_from_open_pct":4.51,"max_ext_allowed_pct":3.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":0.005,"volatility":"medium"},"price":10.88,"volume":{"bars":302,"last_bar_volume":11544.0,"baseline_avg":15721.15,"bar_rvol":0.734297,"raw_accel":-0.696123,"smooth_accel":1.572186,"accel_momentum":0.232025,"rvol_3bar":[3.140811,2.571664,0.734297],"trend_3bar":"DECELERATING","projected_rvol":0.542381},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":1970.0,"sell_vol":2967.0,"unclassified_vol":0.0,"imbalance":-0.201945,"bid":10.85,"ask":10.86,"spread_pct":0.092123,"quote_size_imbalance":null,"quote_age_s":0.208883},"context":{"vwap":10.594019,"price_vs_vwap_pct":2.699459,"ema9":10.869691,"ema20":10.857359,"ema_stack":true,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.548446,"dist_to_hod_atr":2.081614,"atr":0.028824,"spread_atr":0.346936,"own_change_pct":0.046019,"rel_strength_pct":{"SPY":0.071102,"IWM":0.095041}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.148287},"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":"e354f96aebcd","ts":"2026-09-15T18:32:40+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8467,"target":5.969,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":100.0,"room_to_5d_high_atr":0.0},"price":5.9298,"vwap":5.9356,"ext_from_open_pct":0.34,"max_ext_allowed_pct":4.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":0.0118,"volatility":"medium"},"price":5.9298,"volume":{"bars":302,"last_bar_volume":131184.0,"baseline_avg":109986.6,"bar_rvol":1.192727,"raw_accel":-0.267235,"smooth_accel":0.631834,"accel_momentum":0.24808,"rvol_3bar":[0.538382,1.74271,1.192727],"trend_3bar":"MIXED","projected_rvol":1.03904},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":38854.0,"sell_vol":20353.0,"unclassified_vol":0.0,"imbalance":0.31248,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":0.085005},"context":{"vwap":5.935588,"price_vs_vwap_pct":-0.097522,"ema9":5.92604,"ema20":5.91373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.30972,"dist_to_hod_atr":5.96904,"atr":0.023488,"spread_atr":0.425752,"own_change_pct":0.548223,"rel_strength_pct":{"SPY":0.573306,"IWM":0.597245}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.372703},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"887abc2214f7","ts":"2026-09-15T18:32:40+00:00","symbol":"MARA","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.0756,"target":11.415,"target_label":"ceiling","reward_risk":0.57,"pos_in_5d_range_pct":23.3,"room_to_5d_high_atr":1.26},"price":11.2924,"vwap":11.29,"ext_from_open_pct":0.29,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":0.0367,"volatility":"high"},"price":11.2924,"volume":{"bars":302,"last_bar_volume":120248.0,"baseline_avg":90512.95,"bar_rvol":1.328517,"raw_accel":-0.134209,"smooth_accel":0.407925,"accel_momentum":0.076386,"rvol_3bar":[1.447974,1.512288,1.328517],"trend_3bar":"MIXED","projected_rvol":0.350171},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":1555.0,"sell_vol":2379.0,"unclassified_vol":0.0,"imbalance":-0.209456,"bid":11.29,"ask":11.3,"spread_pct":0.088535,"quote_size_imbalance":null,"quote_age_s":0.461266},"context":{"vwap":11.290032,"price_vs_vwap_pct":0.020973,"ema9":11.275735,"ema20":11.270644,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.634146,"dist_to_hod_atr":4.849422,"atr":0.038685,"spread_atr":0.258498,"own_change_pct":0.458667,"rel_strength_pct":{"SPY":0.483749,"IWM":0.507688}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.278266},"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":"edf679d30201","ts":"2026-09-15T18:32:45+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8668,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.9499,"vwap":5.9356,"ext_from_open_pct":0.68,"max_ext_allowed_pct":4.0,"volume_pace":1.178,"trend":"flat","recent_slope_pct":0.0795,"volatility":"medium"},"price":5.9499,"volume":{"bars":302,"last_bar_volume":131184.0,"baseline_avg":109986.6,"bar_rvol":1.192727,"raw_accel":-0.267235,"smooth_accel":0.631834,"accel_momentum":0.24808,"rvol_3bar":[0.538382,1.74271,1.192727],"trend_3bar":"MIXED","projected_rvol":0.924743},"flow":{"window_s":30,"trades":54,"trade_rate":1.8,"buy_vol":29304.0,"sell_vol":20286.0,"unclassified_vol":0.0,"imbalance":0.181851,"bid":5.94,"ask":5.95,"spread_pct":0.168209,"quote_size_imbalance":null,"quote_age_s":1.86576},"context":{"vwap":5.935588,"price_vs_vwap_pct":0.241114,"ema9":5.92604,"ema20":5.91373,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.978583,"dist_to_hod_atr":5.113279,"atr":0.023488,"spread_atr":0.425752,"own_change_pct":0.548223,"rel_strength_pct":{"SPY":0.573306,"IWM":0.597245}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.216899},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e295f7898586","ts":"2026-09-15T18:32:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"WATCH","setup":"","stop":10.6968,"target":10.935,"target_label":"prev_day_high","reward_risk":0.61,"pos_in_5d_range_pct":49.3,"room_to_5d_high_atr":1.1},"price":10.845,"vwap":10.5944,"ext_from_open_pct":4.18,"max_ext_allowed_pct":3.0,"volume_pace":0.891,"trend":"flat","recent_slope_pct":-0.0594,"volatility":"medium"},"price":10.845,"volume":{"bars":302,"last_bar_volume":11544.0,"baseline_avg":15721.15,"bar_rvol":0.734297,"raw_accel":-0.696123,"smooth_accel":1.572186,"accel_momentum":0.232025,"rvol_3bar":[3.140811,2.571664,0.734297],"trend_3bar":"DECELERATING","projected_rvol":0.75338},"flow":{"window_s":30,"trades":71,"trade_rate":2.366667,"buy_vol":2352.0,"sell_vol":5687.0,"unclassified_vol":0.0,"imbalance":-0.414853,"bid":10.84,"ask":10.85,"spread_pct":0.092208,"quote_size_imbalance":null,"quote_age_s":0.283762},"context":{"vwap":10.594019,"price_vs_vwap_pct":2.369084,"ema9":10.869691,"ema20":10.857359,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.868373,"dist_to_hod_atr":3.295889,"atr":0.028824,"spread_atr":0.346936,"own_change_pct":0.046019,"rel_strength_pct":{"SPY":0.071102,"IWM":0.095041}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.304625},"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":"512555fac493","ts":"2026-09-15T18:32:55+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"price $11.27 below VWAP $11.29","plan":{"state":"PASS","setup":"","stop":11.0532,"target":11.415,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":21.8,"room_to_5d_high_atr":1.29},"price":11.27,"vwap":11.29,"ext_from_open_pct":0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.796,"trend":"flat","recent_slope_pct":-0.003,"volatility":"high"},"price":11.27,"volume":{"bars":302,"last_bar_volume":120248.0,"baseline_avg":90512.95,"bar_rvol":1.328517,"raw_accel":-0.134209,"smooth_accel":0.407925,"accel_momentum":0.076386,"rvol_3bar":[1.447974,1.512288,1.328517],"trend_3bar":"MIXED","projected_rvol":0.528503},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":6671.0,"sell_vol":18785.0,"unclassified_vol":0.0,"imbalance":-0.47588,"bid":11.27,"ask":11.28,"spread_pct":0.088692,"quote_size_imbalance":null,"quote_age_s":0.041659},"context":{"vwap":11.290032,"price_vs_vwap_pct":-0.177432,"ema9":11.275735,"ema20":11.270644,"ema_stack":false,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.829268,"dist_to_hod_atr":5.428457,"atr":0.038685,"spread_atr":0.258498,"own_change_pct":0.458667,"rel_strength_pct":{"SPY":0.483749,"IWM":0.507688}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.632215},"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":"090f0768a81b","ts":"2026-09-15T18:33:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7609,"target":8.0,"target_label":"premarket_high","reward_risk":1.02,"pos_in_5d_range_pct":20.6,"room_to_5d_high_atr":2.69},"price":7.8792,"vwap":7.8513,"ext_from_open_pct":-0.26,"max_ext_allowed_pct":3.0,"volume_pace":1.083,"trend":"flat","recent_slope_pct":-0.0499,"volatility":"high"},"price":7.8792,"volume":{"bars":303,"last_bar_volume":7194.0,"baseline_avg":11319.85,"bar_rvol":0.635521,"raw_accel":-0.911458,"smooth_accel":0.764434,"accel_momentum":-4.578656,"rvol_3bar":[1.350922,10.888064,0.635521],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":145.0,"sell_vol":410.0,"unclassified_vol":0.0,"imbalance":-0.477477,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":2.922683},"context":{"vwap":7.85128,"price_vs_vwap_pct":0.355612,"ema9":7.882841,"ema20":7.888823,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.640605,"dist_to_hod_atr":3.448646,"atr":0.01473,"spread_atr":0.678867,"own_change_pct":-0.499937,"rel_strength_pct":{"SPY":-0.47221,"IWM":-0.4404}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.303447},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3f63d1af61e8","ts":"2026-09-15T18:33:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.686,"target":5.83,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":91.8,"room_to_5d_high_atr":0.11},"price":5.7856,"vwap":5.7549,"ext_from_open_pct":1.5,"max_ext_allowed_pct":4.0,"volume_pace":0.534,"trend":"flat","recent_slope_pct":-0.0568,"volatility":"high"},"price":5.7856,"volume":{"bars":303,"last_bar_volume":1271.0,"baseline_avg":4231.8,"bar_rvol":0.300345,"raw_accel":-0.542147,"smooth_accel":7.721116,"accel_momentum":0.681522,"rvol_3bar":[6.250819,0.667781,0.300345],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":147.0,"sell_vol":419.0,"unclassified_vol":0.0,"imbalance":-0.480565,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":4.991641},"context":{"vwap":5.754913,"price_vs_vwap_pct":0.533234,"ema9":5.792192,"ema20":5.791775,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.100855,"dist_to_hod_atr":5.752838,"atr":0.011194,"spread_atr":0.893298,"own_change_pct":-0.227633,"rel_strength_pct":{"SPY":-0.199907,"IWM":-0.168097}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.144335},"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":"95fd207630af","ts":"2026-09-15T18:33:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7911,"target":7.91,"target_label":"prev_day_high","reward_risk":0.35,"pos_in_5d_range_pct":76.9,"room_to_5d_high_atr":0.36},"price":7.879,"vwap":7.7716,"ext_from_open_pct":2.32,"max_ext_allowed_pct":3.0,"volume_pace":0.521,"trend":"flat","recent_slope_pct":-0.0155,"volatility":"medium"},"price":7.879,"volume":{"bars":303,"last_bar_volume":6369.0,"baseline_avg":8931.3,"bar_rvol":0.71311,"raw_accel":-0.391749,"smooth_accel":-0.293532,"accel_momentum":-0.60334,"rvol_3bar":[0.30587,1.155013,0.71311],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":225.0,"sell_vol":2032.0,"unclassified_vol":0.0,"imbalance":-0.80062,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":1.259517},"context":{"vwap":7.771558,"price_vs_vwap_pct":1.382505,"ema9":7.87715,"ema20":7.871855,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.139417,"dist_to_hod_atr":0.719309,"atr":0.015292,"spread_atr":0.653917,"own_change_pct":-0.119286,"rel_strength_pct":{"SPY":-0.09156,"IWM":-0.05975}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.57093},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"793c9e72fb45","ts":"2026-09-15T18:33:05+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":4.516,"target":5.26,"target_label":"ceiling","reward_risk":0.2,"pos_in_5d_range_pct":2.5,"room_to_5d_high_atr":2.84},"price":5.136,"vwap":5.1175,"ext_from_open_pct":-2.54,"max_ext_allowed_pct":4.0,"volume_pace":0.611,"trend":"flat","recent_slope_pct":1.2488,"volatility":"high"},"price":5.136,"volume":{"bars":242,"last_bar_volume":510.0,"baseline_avg":795.5,"bar_rvol":0.641106,"raw_accel":-0.360902,"smooth_accel":1.287834,"accel_momentum":-1.481397,"rvol_3bar":[1.419592,1.052632,0.641106],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":500.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":4.95,"ask":5.26,"spread_pct":6.072478,"quote_size_imbalance":null,"quote_age_s":9.306258},"context":{"vwap":5.117503,"price_vs_vwap_pct":0.361442,"ema9":5.078809,"ema20":5.100076,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.257095,"dist_to_hod_atr":9.0048,"atr":0.094838,"spread_atr":3.268721,"own_change_pct":3.036239,"rel_strength_pct":{"SPY":3.063965,"IWM":3.095775}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.641106},"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":"12965e8ab127","ts":"2026-09-15T18:33:10+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.42 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":12.0,"room_to_5d_high_atr":1.91},"price":5.415,"vwap":5.4182,"ext_from_open_pct":-0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.724,"trend":"flat","recent_slope_pct":-0.0919,"volatility":"medium"},"price":5.415,"volume":{"bars":303,"last_bar_volume":65947.0,"baseline_avg":44016.75,"bar_rvol":1.498225,"raw_accel":3.163321,"smooth_accel":-0.452344,"accel_momentum":0.293828,"rvol_3bar":[0.474455,0.359982,1.498225],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":229,"trade_rate":7.633333,"buy_vol":17412.0,"sell_vol":24822.0,"unclassified_vol":0.0,"imbalance":-0.175451,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":0.453957},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.058902,"ema9":5.434317,"ema20":5.438326,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.432432,"dist_to_hod_atr":8.0001,"atr":0.016875,"spread_atr":0.5926,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027726,"IWM":0.059536}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.262865},"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":"08b386d66c5c","ts":"2026-09-15T18:33:15+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.89 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7092,"target":13.2,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.19},"price":12.89,"vwap":12.9031,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.707,"trend":"flat","recent_slope_pct":-0.0877,"volatility":"medium"},"price":12.89,"volume":{"bars":302,"last_bar_volume":64.0,"baseline_avg":516.45,"bar_rvol":0.123923,"raw_accel":-0.960125,"smooth_accel":-0.656543,"accel_momentum":-0.555524,"rvol_3bar":[0.287081,3.572223,0.123923],"trend_3bar":"MIXED","projected_rvol":12.554942},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":427.0,"sell_vol":1247.0,"unclassified_vol":0.0,"imbalance":-0.489845,"bid":12.87,"ask":12.92,"spread_pct":0.387747,"quote_size_imbalance":null,"quote_age_s":0.912005},"context":{"vwap":12.903056,"price_vs_vwap_pct":-0.101189,"ema9":12.938169,"ema20":12.937214,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.155522,"dist_to_hod_atr":15.308214,"atr":0.027436,"spread_atr":1.822406,"own_change_pct":-0.103475,"rel_strength_pct":{"SPY":-0.075748,"IWM":-0.043939}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.060703},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"fede5de20221","ts":"2026-09-15T18:33:15+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.3683,"target":5.52,"target_label":"ceiling","reward_risk":1.44,"pos_in_5d_range_pct":14.9,"room_to_5d_high_atr":1.85},"price":5.4305,"vwap":5.4182,"ext_from_open_pct":-0.54,"max_ext_allowed_pct":3.0,"volume_pace":0.724,"trend":"flat","recent_slope_pct":-0.0348,"volatility":"medium"},"price":5.4305,"volume":{"bars":303,"last_bar_volume":65947.0,"baseline_avg":44016.75,"bar_rvol":1.498225,"raw_accel":3.163321,"smooth_accel":-0.452344,"accel_momentum":0.293828,"rvol_3bar":[0.474455,0.359982,1.498225],"trend_3bar":"MIXED","projected_rvol":1.893552},"flow":{"window_s":30,"trades":233,"trade_rate":7.766667,"buy_vol":17727.0,"sell_vol":27454.0,"unclassified_vol":0.0,"imbalance":-0.21529,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":0.484066},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.227172,"ema9":5.434317,"ema20":5.438326,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.153153,"dist_to_hod_atr":7.08157,"atr":0.016875,"spread_atr":0.5926,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027726,"IWM":0.059536}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.322552},"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":"298fb7a6fa25","ts":"2026-09-15T18:33:20+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.07 below VWAP $10.08","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":0.85,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":4.3},"price":10.075,"vwap":10.0777,"ext_from_open_pct":-0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.682,"trend":"flat","recent_slope_pct":-0.0215,"volatility":"low"},"price":10.075,"volume":{"bars":303,"last_bar_volume":193577.0,"baseline_avg":43598.4,"bar_rvol":4.440002,"raw_accel":10.392243,"smooth_accel":2.102829,"accel_momentum":2.193447,"rvol_3bar":[0.294563,0.365708,4.440002],"trend_3bar":"ACCELERATING","projected_rvol":10.431988},"flow":{"window_s":30,"trades":338,"trade_rate":11.266667,"buy_vol":188171.0,"sell_vol":139437.0,"unclassified_vol":0.0,"imbalance":0.148757,"bid":10.07,"ask":10.08,"spread_pct":0.099256,"quote_size_imbalance":null,"quote_age_s":0.868574},"context":{"vwap":10.0777,"price_vs_vwap_pct":-0.026792,"ema9":10.088065,"ema20":10.088607,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.592008,"dist_to_hod_atr":5.283119,"atr":0.011357,"spread_atr":0.88052,"own_change_pct":-0.049554,"rel_strength_pct":{"SPY":-0.021828,"IWM":0.009982}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.660482},"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":"e3602d49720c","ts":"2026-09-15T18:33:25+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":4.64,"target":5.3208,"target_label":"premarket_high","reward_risk":0.1,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":2.74},"price":5.26,"vwap":5.1178,"ext_from_open_pct":-0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.612,"trend":"flat","recent_slope_pct":1.7305,"volatility":"high"},"price":5.26,"volume":{"bars":242,"last_bar_volume":510.0,"baseline_avg":795.5,"bar_rvol":0.641106,"raw_accel":-0.360902,"smooth_accel":1.287834,"accel_momentum":-1.481397,"rvol_3bar":[1.419592,1.052632,0.641106],"trend_3bar":"DECELERATING","projected_rvol":3.535889},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":500.0,"sell_vol":672.0,"unclassified_vol":0.0,"imbalance":-0.146758,"bid":4.95,"ask":5.26,"spread_pct":6.072478,"quote_size_imbalance":null,"quote_age_s":10.253326},"context":{"vwap":5.117503,"price_vs_vwap_pct":2.784499,"ema9":5.078809,"ema20":5.100076,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-12.186978,"dist_to_hod_atr":7.697312,"atr":0.094838,"spread_atr":3.268721,"own_change_pct":3.036239,"rel_strength_pct":{"SPY":3.063965,"IWM":3.095775}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.094087},"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":"6f6b12d04ce0","ts":"2026-09-15T18:33:25+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.41 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.93},"price":5.41,"vwap":5.4182,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.724,"trend":"flat","recent_slope_pct":-0.1103,"volatility":"medium"},"price":5.41,"volume":{"bars":303,"last_bar_volume":65947.0,"baseline_avg":44016.75,"bar_rvol":1.498225,"raw_accel":3.163321,"smooth_accel":-0.452344,"accel_momentum":0.293828,"rvol_3bar":[0.474455,0.359982,1.498225],"trend_3bar":"MIXED","projected_rvol":1.246326},"flow":{"window_s":30,"trades":164,"trade_rate":5.466667,"buy_vol":5326.0,"sell_vol":18376.0,"unclassified_vol":0.0,"imbalance":-0.550586,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":2.098855},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.151183,"ema9":5.434317,"ema20":5.438326,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.522523,"dist_to_hod_atr":8.2964,"atr":0.016875,"spread_atr":0.5926,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027726,"IWM":0.059536}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.824902},"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":"cb84eebb17e2","ts":"2026-09-15T18:33:30+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.3607,"target":5.52,"target_label":"ceiling","reward_risk":1.56,"pos_in_5d_range_pct":13.5,"room_to_5d_high_atr":1.88},"price":5.4229,"vwap":5.4182,"ext_from_open_pct":-0.68,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0628,"volatility":"medium"},"price":5.4229,"volume":{"bars":303,"last_bar_volume":65947.0,"baseline_avg":44016.75,"bar_rvol":1.498225,"raw_accel":3.163321,"smooth_accel":-0.452344,"accel_momentum":0.293828,"rvol_3bar":[0.474455,0.359982,1.498225],"trend_3bar":"MIXED","projected_rvol":1.043466},"flow":{"window_s":30,"trades":154,"trade_rate":5.133333,"buy_vol":5292.0,"sell_vol":17673.0,"unclassified_vol":0.0,"imbalance":-0.539125,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":3.180332},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.086903,"ema9":5.434317,"ema20":5.438326,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.29009,"dist_to_hod_atr":7.531946,"atr":0.016875,"spread_atr":0.5926,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027726,"IWM":0.059536}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.80773},"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":"11dbfb44d874","ts":"2026-09-15T18:33:35+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.41 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.93},"price":5.41,"vwap":5.4182,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.1103,"volatility":"medium"},"price":5.41,"volume":{"bars":303,"last_bar_volume":65947.0,"baseline_avg":44016.75,"bar_rvol":1.498225,"raw_accel":3.163321,"smooth_accel":-0.452344,"accel_momentum":0.293828,"rvol_3bar":[0.474455,0.359982,1.498225],"trend_3bar":"MIXED","projected_rvol":0.956947},"flow":{"window_s":30,"trades":131,"trade_rate":4.366667,"buy_vol":6256.0,"sell_vol":16761.0,"unclassified_vol":0.0,"imbalance":-0.456402,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":4.992127},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.151183,"ema9":5.434317,"ema20":5.438326,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.522523,"dist_to_hod_atr":8.2964,"atr":0.016875,"spread_atr":0.5926,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027726,"IWM":0.059536}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.683793},"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":"b1dc73478428","ts":"2026-09-15T18:33:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2371,"target":9.46,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":7.0,"room_to_5d_high_atr":3.24},"price":9.39,"vwap":9.3588,"ext_from_open_pct":0.43,"max_ext_allowed_pct":4.0,"volume_pace":0.482,"trend":"flat","recent_slope_pct":-0.0426,"volatility":"high"},"price":9.39,"volume":{"bars":303,"last_bar_volume":6194.0,"baseline_avg":4434.65,"bar_rvol":1.396728,"raw_accel":1.894393,"smooth_accel":-0.071483,"accel_momentum":0.11031,"rvol_3bar":[0.325543,0.470474,1.396728],"trend_3bar":"ACCELERATING","projected_rvol":0.162959},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":98.0,"sell_vol":283.0,"unclassified_vol":0.0,"imbalance":-0.485564,"bid":9.39,"ask":9.4,"spread_pct":0.10644,"quote_size_imbalance":null,"quote_age_s":3.033137},"context":{"vwap":9.358827,"price_vs_vwap_pct":0.333083,"ema9":9.404248,"ema20":9.404416,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.469045,"dist_to_hod_atr":8.997306,"atr":0.01556,"spread_atr":0.642665,"own_change_pct":-0.159405,"rel_strength_pct":{"SPY":-0.131678,"IWM":-0.099869}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.678201},"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":"f7d301cee2fc","ts":"2026-09-15T18:33:50+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":13.0,"room_to_5d_high_atr":1.89},"price":5.42,"vwap":5.4182,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":4.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0735,"volatility":"medium"},"price":5.42,"volume":{"bars":303,"last_bar_volume":65947.0,"baseline_avg":44016.75,"bar_rvol":1.498225,"raw_accel":3.163321,"smooth_accel":-0.452344,"accel_momentum":0.293828,"rvol_3bar":[0.474455,0.359982,1.498225],"trend_3bar":"MIXED","projected_rvol":0.743199},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":3406.0,"sell_vol":1180.0,"unclassified_vol":0.0,"imbalance":0.48539,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":0.0442},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.03338,"ema9":5.434317,"ema20":5.438326,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.342342,"dist_to_hod_atr":7.7038,"atr":0.016875,"spread_atr":0.5926,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027726,"IWM":0.059536}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.727224},"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":"33fa03f1d4d1","ts":"2026-09-15T18:33:55+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.42 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":12.0,"room_to_5d_high_atr":1.91},"price":5.415,"vwap":5.4182,"ext_from_open_pct":-0.82,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0919,"volatility":"medium"},"price":5.415,"volume":{"bars":303,"last_bar_volume":65947.0,"baseline_avg":44016.75,"bar_rvol":1.498225,"raw_accel":3.163321,"smooth_accel":-0.452344,"accel_momentum":0.293828,"rvol_3bar":[0.474455,0.359982,1.498225],"trend_3bar":"MIXED","projected_rvol":0.721312},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3994.0,"sell_vol":2252.0,"unclassified_vol":0.0,"imbalance":0.278898,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":0.166824},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.058902,"ema9":5.434317,"ema20":5.438326,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.432432,"dist_to_hod_atr":8.0001,"atr":0.016875,"spread_atr":0.5926,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.027726,"IWM":0.059536}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.417853},"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":"aa4269fc563c","ts":"2026-09-15T18:34:00+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2155,"target":7.43,"target_label":"ceiling","reward_risk":1.05,"pos_in_5d_range_pct":37.1,"room_to_5d_high_atr":1.34},"price":7.3199,"vwap":7.2837,"ext_from_open_pct":2.38,"max_ext_allowed_pct":3.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":-0.0845,"volatility":"medium"},"price":7.3199,"volume":{"bars":303,"last_bar_volume":271718.0,"baseline_avg":127195.05,"bar_rvol":2.136231,"raw_accel":0.022411,"smooth_accel":2.686278,"accel_momentum":2.20442,"rvol_3bar":[1.289852,2.103009,2.136231],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":6262.0,"sell_vol":6652.0,"unclassified_vol":0.0,"imbalance":-0.0302,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":1.949879},"context":{"vwap":7.283686,"price_vs_vwap_pct":0.497187,"ema9":7.338506,"ema20":7.338966,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.48183,"dist_to_hod_atr":6.180072,"atr":0.017815,"spread_atr":0.561314,"own_change_pct":-0.340136,"rel_strength_pct":{"SPY":-0.282721,"IWM":-0.259598}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.064514},"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":"e07d5ca61ba9","ts":"2026-09-15T18:34:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7242,"target":13.2,"target_label":"ceiling","reward_risk":1.63,"pos_in_5d_range_pct":43.7,"room_to_5d_high_atr":1.17},"price":12.905,"vwap":12.9031,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":3.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":-0.0766,"volatility":"medium"},"price":12.905,"volume":{"bars":303,"last_bar_volume":1654.0,"baseline_avg":513.85,"bar_rvol":3.218838,"raw_accel":11.875353,"smooth_accel":-0.246314,"accel_momentum":0.410228,"rvol_3bar":[3.572223,0.123923,3.218838],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":11.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":-0.266667,"bid":12.87,"ask":12.94,"spread_pct":0.542425,"quote_size_imbalance":null,"quote_age_s":20.060688},"context":{"vwap":12.903085,"price_vs_vwap_pct":0.014839,"ema9":12.930735,"ema20":12.933765,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.042825,"dist_to_hod_atr":14.060015,"atr":0.028805,"spread_atr":2.430126,"own_change_pct":-0.295227,"rel_strength_pct":{"SPY":-0.237812,"IWM":-0.214689}},"vas":{"raw":2,"score":5.6,"components":{"rvol":3,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.858357},"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":"0e99a5c6151d","ts":"2026-09-15T18:34:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3649,"target":8.5586,"target_label":"premarket_high","reward_risk":1.15,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.87},"price":8.455,"vwap":8.3783,"ext_from_open_pct":1.5,"max_ext_allowed_pct":4.0,"volume_pace":0.759,"trend":"flat","recent_slope_pct":-0.0945,"volatility":"medium"},"price":8.455,"volume":{"bars":304,"last_bar_volume":443.0,"baseline_avg":1185.15,"bar_rvol":0.373792,"raw_accel":-0.923356,"smooth_accel":0.516117,"accel_momentum":-2.826259,"rvol_3bar":[2.094576,6.036869,0.373792],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":24.0,"sell_vol":15.0,"unclassified_vol":0.0,"imbalance":0.230769,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":3.894864},"context":{"vwap":8.378298,"price_vs_vwap_pct":0.915479,"ema9":8.474544,"ema20":8.478142,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":3.708652,"atr":0.012134,"spread_atr":0.824145,"own_change_pct":-0.290094,"rel_strength_pct":{"SPY":-0.232679,"IWM":-0.209556}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.08626},"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":"5b6932c2288c","ts":"2026-09-15T18:34:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.349,"target":8.6,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":130.1,"room_to_5d_high_atr":-1.1},"price":8.54,"vwap":8.2063,"ext_from_open_pct":11.49,"max_ext_allowed_pct":4.0,"volume_pace":0.269,"trend":"flat","recent_slope_pct":-0.0468,"volatility":"high"},"price":8.54,"volume":{"bars":303,"last_bar_volume":21.0,"baseline_avg":1057.45,"bar_rvol":0.019859,"raw_accel":-0.932258,"smooth_accel":0.12887,"accel_momentum":-0.529312,"rvol_3bar":[0.874833,0.295477,0.019859],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":8.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":-0.2,"bid":8.52,"ask":8.56,"spread_pct":0.468384,"quote_size_imbalance":null,"quote_age_s":68.392613},"context":{"vwap":8.206321,"price_vs_vwap_pct":4.066125,"ema9":8.543148,"ema20":8.526169,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.697674,"dist_to_hod_atr":1.590254,"atr":0.03773,"spread_atr":1.060169,"own_change_pct":-0.350058,"rel_strength_pct":{"SPY":-0.292643,"IWM":-0.26952}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.003972},"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":"150f620f3a1b","ts":"2026-09-15T18:34:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3062,"target":8.59,"target_label":"premarket_high","reward_risk":0.48,"pos_in_5d_range_pct":8.4,"room_to_5d_high_atr":3.76},"price":8.4974,"vwap":8.4345,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.73,"trend":"flat","recent_slope_pct":-0.0476,"volatility":"high"},"price":8.4974,"volume":{"bars":304,"last_bar_volume":40828.0,"baseline_avg":40243.05,"bar_rvol":1.014535,"raw_accel":-0.251371,"smooth_accel":0.80882,"accel_momentum":0.345658,"rvol_3bar":[1.218332,1.359115,1.014535],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":5038.0,"sell_vol":1539.0,"unclassified_vol":0.0,"imbalance":0.532005,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":2.425622},"context":{"vwap":8.434522,"price_vs_vwap_pct":0.74549,"ema9":8.513036,"ema20":8.51789,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.047262,"dist_to_hod_atr":6.764456,"atr":0.026255,"spread_atr":0.380882,"own_change_pct":-0.118614,"rel_strength_pct":{"SPY":-0.061199,"IWM":-0.038076}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.539738},"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":"5a32442a696a","ts":"2026-09-15T18:34:15+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6903,"target":5.83,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":92.6,"room_to_5d_high_atr":0.1},"price":5.7899,"vwap":5.7549,"ext_from_open_pct":1.58,"max_ext_allowed_pct":4.0,"volume_pace":0.533,"trend":"flat","recent_slope_pct":-0.0102,"volatility":"high"},"price":5.7899,"volume":{"bars":304,"last_bar_volume":1138.0,"baseline_avg":4241.4,"bar_rvol":0.268308,"raw_accel":-0.104642,"smooth_accel":-0.760641,"accel_momentum":-8.481756,"rvol_3bar":[0.667781,0.300345,0.268308],"trend_3bar":"DECELERATING","projected_rvol":0.170698},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":267.0,"sell_vol":178.0,"unclassified_vol":0.0,"imbalance":0.2,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":0.477565},"context":{"vwap":5.754944,"price_vs_vwap_pct":0.607408,"ema9":5.790753,"ema20":5.79113,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.02735,"dist_to_hod_atr":5.331114,"atr":0.011273,"spread_atr":0.887041,"own_change_pct":-0.158779,"rel_strength_pct":{"SPY":-0.101364,"IWM":-0.078242}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.053662},"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":"671be866cc65","ts":"2026-09-15T18:34:35+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0354,"target":10.13,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":7.3,"room_to_5d_high_atr":4.27},"price":10.0813,"vwap":10.0776,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.684,"trend":"flat","recent_slope_pct":-0.0306,"volatility":"low"},"price":10.0813,"volume":{"bars":304,"last_bar_volume":227119.0,"baseline_avg":51712.05,"bar_rvol":4.391994,"raw_accel":0.173275,"smooth_accel":5.213629,"accel_momentum":3.110799,"rvol_3bar":[0.365708,4.440002,4.391994],"trend_3bar":"MIXED","projected_rvol":0.333528},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":3921.0,"sell_vol":5840.0,"unclassified_vol":0.0,"imbalance":-0.196599,"bid":10.06,"ask":10.07,"spread_pct":0.099354,"quote_size_imbalance":null,"quote_age_s":0.868915},"context":{"vwap":10.077631,"price_vs_vwap_pct":0.036407,"ema9":10.084432,"ema20":10.086825,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.529847,"dist_to_hod_atr":4.232153,"atr":0.012689,"spread_atr":0.78811,"own_change_pct":-0.199207,"rel_strength_pct":{"SPY":-0.141792,"IWM":-0.118669}},"vas":{"raw":6,"score":8.1,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.86346},"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":"a118ac8e7b4f","ts":"2026-09-15T18:34:40+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3649,"target":8.5586,"target_label":"premarket_high","reward_risk":1.15,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.87},"price":8.455,"vwap":8.3783,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0945,"volatility":"medium"},"price":8.455,"volume":{"bars":304,"last_bar_volume":443.0,"baseline_avg":1185.15,"bar_rvol":0.373792,"raw_accel":-0.923356,"smooth_accel":0.516117,"accel_momentum":-2.826259,"rvol_3bar":[2.094576,6.036869,0.373792],"trend_3bar":"MIXED","projected_rvol":0.110113},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":29.0,"sell_vol":4.0,"unclassified_vol":0.0,"imbalance":0.757576,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":3.238013},"context":{"vwap":8.378298,"price_vs_vwap_pct":0.915479,"ema9":8.474544,"ema20":8.478142,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":3.708652,"atr":0.012134,"spread_atr":0.824145,"own_change_pct":-0.290094,"rel_strength_pct":{"SPY":-0.232679,"IWM":-0.209556}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.283176},"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":"eb4eadfaae1e","ts":"2026-09-15T18:34:40+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.06 below VWAP $10.08","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":4.36},"price":10.065,"vwap":10.0776,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":3.0,"volume_pace":0.684,"trend":"flat","recent_slope_pct":-0.063,"volatility":"low"},"price":10.065,"volume":{"bars":304,"last_bar_volume":227119.0,"baseline_avg":51712.05,"bar_rvol":4.391994,"raw_accel":0.173275,"smooth_accel":5.213629,"accel_momentum":3.110799,"rvol_3bar":[0.365708,4.440002,4.391994],"trend_3bar":"MIXED","projected_rvol":0.305818},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":4236.0,"sell_vol":4311.0,"unclassified_vol":0.0,"imbalance":-0.008775,"bid":10.06,"ask":10.07,"spread_pct":0.099354,"quote_size_imbalance":null,"quote_age_s":0.319178},"context":{"vwap":10.077631,"price_vs_vwap_pct":-0.125337,"ema9":10.084432,"ema20":10.086825,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.690676,"dist_to_hod_atr":5.516773,"atr":0.012689,"spread_atr":0.78811,"own_change_pct":-0.199207,"rel_strength_pct":{"SPY":-0.141792,"IWM":-0.118669}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.03854},"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":"048064b34ed6","ts":"2026-09-15T18:34:50+00:00","symbol":"AGNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.0353,"target":10.13,"target_label":"premarket_high","reward_risk":1.06,"pos_in_5d_range_pct":7.2,"room_to_5d_high_atr":4.27},"price":10.0812,"vwap":10.0776,"ext_from_open_pct":-0.09,"max_ext_allowed_pct":3.0,"volume_pace":0.683,"trend":"flat","recent_slope_pct":-0.0308,"volatility":"low"},"price":10.0812,"volume":{"bars":304,"last_bar_volume":227119.0,"baseline_avg":51712.05,"bar_rvol":4.391994,"raw_accel":0.173275,"smooth_accel":5.213629,"accel_momentum":3.110799,"rvol_3bar":[0.365708,4.440002,4.391994],"trend_3bar":"MIXED","projected_rvol":0.253102},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":4473.0,"sell_vol":3443.0,"unclassified_vol":0.0,"imbalance":0.130116,"bid":10.06,"ask":10.07,"spread_pct":0.099354,"quote_size_imbalance":null,"quote_age_s":0.164577},"context":{"vwap":10.077631,"price_vs_vwap_pct":0.035415,"ema9":10.084432,"ema20":10.086825,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.530834,"dist_to_hod_atr":4.240034,"atr":0.012689,"spread_atr":0.78811,"own_change_pct":-0.199207,"rel_strength_pct":{"SPY":-0.141792,"IWM":-0.118669}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.57147},"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":"43f1832fff70","ts":"2026-09-15T18:34:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.369,"target":8.7306,"target_label":"clear air (typical 60-min move)","reward_risk":0.89,"pos_in_5d_range_pct":130.8,"room_to_5d_high_atr":-1.13},"price":8.56,"vwap":8.2063,"ext_from_open_pct":11.75,"max_ext_allowed_pct":4.0,"volume_pace":0.268,"trend":"flat","recent_slope_pct":-0.0,"volatility":"high"},"price":8.56,"volume":{"bars":303,"last_bar_volume":21.0,"baseline_avg":1057.45,"bar_rvol":0.019859,"raw_accel":-0.932258,"smooth_accel":0.12887,"accel_momentum":-0.529312,"rvol_3bar":[0.874833,0.295477,0.019859],"trend_3bar":"DECELERATING","projected_rvol":0.033013},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":13.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.52,"ask":8.56,"spread_pct":0.468384,"quote_size_imbalance":null,"quote_age_s":118.392613},"context":{"vwap":8.206321,"price_vs_vwap_pct":4.309839,"ema9":8.543148,"ema20":8.526169,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.465116,"dist_to_hod_atr":1.060169,"atr":0.03773,"spread_atr":1.060169,"own_change_pct":-0.350058,"rel_strength_pct":{"SPY":-0.292643,"IWM":-0.26952}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.019859},"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":"58c869cb4bac","ts":"2026-09-15T18:34:55+00:00","symbol":"AGNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $10.06 below VWAP $10.08","plan":{"state":"PASS","setup":"","stop":10.01,"target":10.13,"target_label":"premarket_high","reward_risk":1.18,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":4.36},"price":10.065,"vwap":10.0776,"ext_from_open_pct":-0.25,"max_ext_allowed_pct":4.0,"volume_pace":0.683,"trend":"flat","recent_slope_pct":-0.063,"volatility":"low"},"price":10.065,"volume":{"bars":304,"last_bar_volume":227119.0,"baseline_avg":51712.05,"bar_rvol":4.391994,"raw_accel":0.173275,"smooth_accel":5.213629,"accel_momentum":3.110799,"rvol_3bar":[0.365708,4.440002,4.391994],"trend_3bar":"MIXED","projected_rvol":0.235176},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2298.0,"sell_vol":2249.0,"unclassified_vol":0.0,"imbalance":0.010776,"bid":10.06,"ask":10.07,"spread_pct":0.099354,"quote_size_imbalance":null,"quote_age_s":0.432905},"context":{"vwap":10.077631,"price_vs_vwap_pct":-0.125337,"ema9":10.084432,"ema20":10.086825,"ema_stack":false,"ema_warm":true,"hod":10.135,"dist_to_hod_pct":-0.690676,"dist_to_hod_atr":5.516773,"atr":0.012689,"spread_atr":0.78811,"own_change_pct":-0.199207,"rel_strength_pct":{"SPY":-0.141792,"IWM":-0.118669}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.04733},"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":"9de7192f8d42","ts":"2026-09-15T18:35:00+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.349,"target":8.6,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":130.1,"room_to_5d_high_atr":-1.1},"price":8.54,"vwap":8.2064,"ext_from_open_pct":11.49,"max_ext_allowed_pct":4.0,"volume_pace":0.268,"trend":"flat","recent_slope_pct":-0.0468,"volatility":"high"},"price":8.54,"volume":{"bars":303,"last_bar_volume":21.0,"baseline_avg":1057.45,"bar_rvol":0.019859,"raw_accel":-0.932258,"smooth_accel":0.12887,"accel_momentum":-0.529312,"rvol_3bar":[0.874833,0.295477,0.019859],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":13.0,"sell_vol":50.0,"unclassified_vol":0.0,"imbalance":-0.587302,"bid":8.52,"ask":8.56,"spread_pct":0.468384,"quote_size_imbalance":null,"quote_age_s":123.392613},"context":{"vwap":8.206321,"price_vs_vwap_pct":4.066125,"ema9":8.543148,"ema20":8.526169,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.697674,"dist_to_hod_atr":1.590254,"atr":0.03773,"spread_atr":1.060169,"own_change_pct":-0.350058,"rel_strength_pct":{"SPY":-0.290666,"IWM":-0.269519}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.011663},"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":"58bf50182353","ts":"2026-09-15T18:35:05+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +5.6% above open $9.45 (max 5%: volume pace strong, buying strong)","plan":{"state":"PASS","setup":"","stop":9.9158,"target":10.0899,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":518.9,"room_to_5d_high_atr":-6.04},"price":9.98,"vwap":9.7207,"ext_from_open_pct":5.61,"max_ext_allowed_pct":5.0,"volume_pace":3.417,"trend":"flat","recent_slope_pct":0.0169,"volatility":"low"},"price":9.98,"volume":{"bars":305,"last_bar_volume":5335.0,"baseline_avg":2375.3,"bar_rvol":2.246032,"raw_accel":0.895878,"smooth_accel":3.909642,"accel_momentum":-0.360569,"rvol_3bar":[0.284095,1.167078,2.246032],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":251.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":9.96,"ask":9.98,"spread_pct":0.200602,"quote_size_imbalance":null,"quote_age_s":1.323321},"context":{"vwap":9.720682,"price_vs_vwap_pct":2.667693,"ema9":9.967379,"ema20":9.959973,"ema_stack":true,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.156863,"dist_to_hod_atr":7.050639,"atr":0.031203,"spread_atr":0.640967,"own_change_pct":-0.008024,"rel_strength_pct":{"SPY":0.051369,"IWM":0.072515}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.246032},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"771fa55b49b2","ts":"2026-09-15T18:35:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3744,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.4645,"vwap":8.3783,"ext_from_open_pct":1.61,"max_ext_allowed_pct":4.0,"volume_pace":0.756,"trend":"flat","recent_slope_pct":-0.0398,"volatility":"medium"},"price":8.4645,"volume":{"bars":305,"last_bar_volume":112.0,"baseline_avg":1174.65,"bar_rvol":0.095348,"raw_accel":-0.747178,"smooth_accel":0.245086,"accel_momentum":-0.27103,"rvol_3bar":[6.036869,0.373792,0.095348],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":31.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.24,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":10.564883},"context":{"vwap":8.378324,"price_vs_vwap_pct":1.02856,"ema9":8.471636,"ema20":8.476414,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.417647,"dist_to_hod_atr":2.810462,"atr":0.012631,"spread_atr":0.791679,"own_change_pct":-0.294638,"rel_strength_pct":{"SPY":-0.235245,"IWM":-0.214098}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.022883},"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":"b113e0d82b37","ts":"2026-09-15T18:35:05+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6855,"target":5.83,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":91.7,"room_to_5d_high_atr":0.11},"price":5.7851,"vwap":5.755,"ext_from_open_pct":1.49,"max_ext_allowed_pct":3.0,"volume_pace":0.532,"trend":"flat","recent_slope_pct":-0.0181,"volatility":"high"},"price":5.7851,"volume":{"bars":305,"last_bar_volume":605.0,"baseline_avg":4241.8,"bar_rvol":0.142628,"raw_accel":-0.468366,"smooth_accel":-0.873132,"accel_momentum":-0.112491,"rvol_3bar":[0.300345,0.268308,0.142628],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":112.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":-0.148289,"bid":5.78,"ask":5.79,"spread_pct":0.172861,"quote_size_imbalance":null,"quote_age_s":4.762545},"context":{"vwap":5.75496,"price_vs_vwap_pct":0.523719,"ema9":5.789623,"ema20":5.790556,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.109402,"dist_to_hod_atr":5.803721,"atr":0.011182,"spread_atr":0.894256,"own_change_pct":-0.251737,"rel_strength_pct":{"SPY":-0.192345,"IWM":-0.171198}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.02115},"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":"75ce3575988a","ts":"2026-09-15T18:35:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.25,"target":9.46,"target_label":"ceiling","reward_risk":0.37,"pos_in_5d_range_pct":7.6,"room_to_5d_high_atr":3.22},"price":9.4029,"vwap":9.3589,"ext_from_open_pct":0.57,"max_ext_allowed_pct":4.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":-0.0151,"volatility":"high"},"price":9.4029,"volume":{"bars":305,"last_bar_volume":3674.0,"baseline_avg":4490.7,"bar_rvol":0.818135,"raw_accel":2.272541,"smooth_accel":0.236615,"accel_momentum":0.257615,"rvol_3bar":[1.396728,0.163647,0.818135],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":22,"trade_rate":0.733333,"buy_vol":307.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.883436,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":0.742856},"context":{"vwap":9.358893,"price_vs_vwap_pct":0.470211,"ema9":9.400375,"ema20":9.40254,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.333683,"dist_to_hod_atr":7.855635,"atr":0.016179,"spread_atr":0.618067,"own_change_pct":-0.212653,"rel_strength_pct":{"SPY":-0.15326,"IWM":-0.132114}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.72277},"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":"8f13aa9278a7","ts":"2026-09-15T18:35:05+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.2623,"target":8.59,"target_label":"premarket_high","reward_risk":0.71,"pos_in_5d_range_pct":7.0,"room_to_5d_high_atr":3.81},"price":8.4535,"vwap":8.4345,"ext_from_open_pct":1.0,"max_ext_allowed_pct":3.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":-0.1946,"volatility":"high"},"price":8.4535,"volume":{"bars":305,"last_bar_volume":13442.0,"baseline_avg":40661.15,"bar_rvol":0.330586,"raw_accel":-0.670765,"smooth_accel":0.126623,"accel_momentum":-0.682197,"rvol_3bar":[1.359115,1.014535,0.330586],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":3618.0,"sell_vol":4476.0,"unclassified_vol":0.0,"imbalance":-0.106004,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":0.274046},"context":{"vwap":8.434545,"price_vs_vwap_pct":0.224731,"ema9":8.502409,"ema20":8.512367,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.553314,"dist_to_hod_atr":7.826589,"atr":0.028301,"spread_atr":0.353345,"own_change_pct":-0.679753,"rel_strength_pct":{"SPY":-0.62036,"IWM":-0.599214}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.035044},"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":"ff51ccb3cf7d","ts":"2026-09-15T18:35:10+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7467,"target":7.91,"target_label":"ceiling","reward_risk":0.38,"pos_in_5d_range_pct":19.7,"room_to_5d_high_atr":2.72},"price":7.865,"vwap":7.8514,"ext_from_open_pct":-0.44,"max_ext_allowed_pct":3.0,"volume_pace":1.086,"trend":"flat","recent_slope_pct":-0.0083,"volatility":"high"},"price":7.865,"volume":{"bars":305,"last_bar_volume":22317.0,"baseline_avg":11579.5,"bar_rvol":1.927285,"raw_accel":6.709141,"smooth_accel":-0.776757,"accel_momentum":-1.161824,"rvol_3bar":[0.635521,0.05429,1.927285],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":16608.0,"sell_vol":13753.0,"unclassified_vol":0.0,"imbalance":0.094035,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.138632},"context":{"vwap":7.851358,"price_vs_vwap_pct":0.173757,"ema9":7.875218,"ema20":7.88398,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.819672,"dist_to_hod_atr":4.146811,"atr":0.015675,"spread_atr":0.637971,"own_change_pct":-0.501609,"rel_strength_pct":{"SPY":-0.442216,"IWM":-0.421069}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.181232},"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":"382508a961e9","ts":"2026-09-15T18:35:10+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2449,"target":9.46,"target_label":"ceiling","reward_risk":0.41,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":3.22},"price":9.3978,"vwap":9.3589,"ext_from_open_pct":0.51,"max_ext_allowed_pct":4.0,"volume_pace":0.481,"trend":"flat","recent_slope_pct":-0.026,"volatility":"high"},"price":9.3978,"volume":{"bars":305,"last_bar_volume":3674.0,"baseline_avg":4490.7,"bar_rvol":0.818135,"raw_accel":2.272541,"smooth_accel":0.236615,"accel_momentum":0.257615,"rvol_3bar":[1.396728,0.163647,0.818135],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":201.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.827273,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":0.179425},"context":{"vwap":9.358893,"price_vs_vwap_pct":0.415717,"ema9":9.400375,"ema20":9.40254,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.387198,"dist_to_hod_atr":8.170849,"atr":0.016179,"spread_atr":0.618067,"own_change_pct":-0.212653,"rel_strength_pct":{"SPY":-0.15326,"IWM":-0.132114}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-1,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.676821},"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":"1861911961c8","ts":"2026-09-15T18:35:10+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.3666,"target":5.52,"target_label":"ceiling","reward_risk":1.47,"pos_in_5d_range_pct":14.6,"room_to_5d_high_atr":1.85},"price":5.4288,"vwap":5.4182,"ext_from_open_pct":-0.57,"max_ext_allowed_pct":4.0,"volume_pace":0.72,"trend":"flat","recent_slope_pct":-0.0065,"volatility":"medium"},"price":5.4288,"volume":{"bars":305,"last_bar_volume":5902.0,"baseline_avg":45120.2,"bar_rvol":0.130806,"raw_accel":-0.800649,"smooth_accel":0.803741,"accel_momentum":1.048227,"rvol_3bar":[1.498225,0.64002,0.130806],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":728.0,"sell_vol":2611.0,"unclassified_vol":0.0,"imbalance":-0.563941,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":1.742474},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.195799,"ema9":5.429343,"ema20":5.434987,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.183784,"dist_to_hod_atr":6.983867,"atr":0.017354,"spread_atr":0.576227,"own_change_pct":-0.112236,"rel_strength_pct":{"SPY":-0.052843,"IWM":-0.031696}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.073767},"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":"cf7d9bf31b27","ts":"2026-09-15T18:35:15+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.42 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":12.0,"room_to_5d_high_atr":1.91},"price":5.415,"vwap":5.4182,"ext_from_open_pct":-0.82,"max_ext_allowed_pct":4.0,"volume_pace":0.72,"trend":"flat","recent_slope_pct":-0.0574,"volatility":"medium"},"price":5.415,"volume":{"bars":305,"last_bar_volume":5902.0,"baseline_avg":45120.2,"bar_rvol":0.130806,"raw_accel":-0.800649,"smooth_accel":0.803741,"accel_momentum":1.048227,"rvol_3bar":[1.498225,0.64002,0.130806],"trend_3bar":"DECELERATING","projected_rvol":0.312055},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":2290.0,"sell_vol":2139.0,"unclassified_vol":0.0,"imbalance":0.034093,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":1.032291},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.058899,"ema9":5.429343,"ema20":5.434987,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.432432,"dist_to_hod_atr":7.77906,"atr":0.017354,"spread_atr":0.576227,"own_change_pct":-0.112236,"rel_strength_pct":{"SPY":-0.052843,"IWM":-0.031696}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.00446},"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":"999918250bb5","ts":"2026-09-15T18:35:25+00:00","symbol":"SWVL","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.10 below VWAP $5.12","plan":{"state":"PASS","setup":"","stop":4.48,"target":5.26,"target_label":"ceiling","reward_risk":0.26,"pos_in_5d_range_pct":1.5,"room_to_5d_high_atr":2.87},"price":5.1,"vwap":5.1177,"ext_from_open_pct":-3.23,"max_ext_allowed_pct":3.0,"volume_pace":0.608,"trend":"flat","recent_slope_pct":0.9973,"volatility":"high"},"price":5.1,"volume":{"bars":243,"last_bar_volume":1172.0,"baseline_avg":773.55,"bar_rvol":1.515093,"raw_accel":1.298039,"smooth_accel":0.236908,"accel_momentum":-1.050926,"rvol_3bar":[1.052632,0.641106,1.515093],"trend_3bar":"MIXED","projected_rvol":0.310258},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":100.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":4.95,"ask":5.26,"spread_pct":6.072478,"quote_size_imbalance":null,"quote_age_s":130.253326},"context":{"vwap":5.117751,"price_vs_vwap_pct":-0.346852,"ema9":5.115047,"ema20":5.115307,"ema_stack":false,"ema_warm":true,"hod":5.99,"dist_to_hod_pct":-14.858097,"dist_to_hod_atr":8.346183,"atr":0.106636,"spread_atr":2.907097,"own_change_pct":5.296873,"rel_strength_pct":{"SPY":5.356266,"IWM":5.377412}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.515093},"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":"cabdd65baf59","ts":"2026-09-15T18:35:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":13.0,"room_to_5d_high_atr":1.89},"price":5.42,"vwap":5.4182,"ext_from_open_pct":-0.73,"max_ext_allowed_pct":4.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":-0.0389,"volatility":"medium"},"price":5.42,"volume":{"bars":305,"last_bar_volume":5902.0,"baseline_avg":45120.2,"bar_rvol":0.130806,"raw_accel":-0.800649,"smooth_accel":0.803741,"accel_momentum":1.048227,"rvol_3bar":[1.498225,0.64002,0.130806],"trend_3bar":"DECELERATING","projected_rvol":0.275649},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":2113.0,"sell_vol":3695.0,"unclassified_vol":0.0,"imbalance":-0.272383,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":0.774245},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.033383,"ema9":5.429343,"ema20":5.434987,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.342342,"dist_to_hod_atr":7.490946,"atr":0.017354,"spread_atr":0.576227,"own_change_pct":-0.112236,"rel_strength_pct":{"SPY":-0.052843,"IWM":-0.031696}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.035629},"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":"8cda99da707d","ts":"2026-09-15T18:35:55+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.41 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.58,"pos_in_5d_range_pct":11.1,"room_to_5d_high_atr":1.93},"price":5.41,"vwap":5.4182,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":3.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":-0.0758,"volatility":"medium"},"price":5.41,"volume":{"bars":305,"last_bar_volume":5902.0,"baseline_avg":45120.2,"bar_rvol":0.130806,"raw_accel":-0.800649,"smooth_accel":0.803741,"accel_momentum":1.048227,"rvol_3bar":[1.498225,0.64002,0.130806],"trend_3bar":"DECELERATING","projected_rvol":0.319873},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":3167.0,"sell_vol":6061.0,"unclassified_vol":0.0,"imbalance":-0.313611,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":1.767469},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.15118,"ema9":5.429343,"ema20":5.434987,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.522523,"dist_to_hod_atr":8.067173,"atr":0.017354,"spread_atr":0.576227,"own_change_pct":-0.112236,"rel_strength_pct":{"SPY":-0.052843,"IWM":-0.031696}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.041022},"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":"02532dd6c3b0","ts":"2026-09-15T18:36:00+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.89 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7092,"target":13.2,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.19},"price":12.89,"vwap":12.9031,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.701,"trend":"flat","recent_slope_pct":-0.067,"volatility":"medium"},"price":12.89,"volume":{"bars":304,"last_bar_volume":48.0,"baseline_avg":576.25,"bar_rvol":0.083297,"raw_accel":-0.970979,"smooth_accel":-0.473621,"accel_momentum":-0.227307,"rvol_3bar":[0.123923,3.218838,0.083297],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":0.0,"sell_vol":86.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":12.85,"ask":12.93,"spread_pct":0.620636,"quote_size_imbalance":null,"quote_age_s":1.268994},"context":{"vwap":12.903088,"price_vs_vwap_pct":-0.101433,"ema9":12.930588,"ema20":12.933406,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.155522,"dist_to_hod_atr":14.573712,"atr":0.028819,"spread_atr":2.775945,"own_change_pct":-0.115875,"rel_strength_pct":{"SPY":-0.096071,"IWM":-0.058117}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.083297},"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":"b236b71ccfb9","ts":"2026-09-15T18:36:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $10.41 (max 4%: volume pace normal, buying strong)","plan":{"state":"PASS","setup":"","stop":10.6885,"target":10.935,"target_label":"prev_day_high","reward_risk":0.66,"pos_in_5d_range_pct":48.6,"room_to_5d_high_atr":1.12},"price":10.8367,"vwap":10.5957,"ext_from_open_pct":4.1,"max_ext_allowed_pct":4.0,"volume_pace":0.886,"trend":"flat","recent_slope_pct":0.043,"volatility":"medium"},"price":10.8367,"volume":{"bars":306,"last_bar_volume":4151.0,"baseline_avg":13708.9,"bar_rvol":0.302796,"raw_accel":-0.675196,"smooth_accel":-0.500953,"accel_momentum":0.07589,"rvol_3bar":[0.997941,0.92654,0.302796],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1609.0,"sell_vol":884.0,"unclassified_vol":0.0,"imbalance":0.290814,"bid":10.83,"ask":10.84,"spread_pct":0.092293,"quote_size_imbalance":null,"quote_age_s":2.630884},"context":{"vwap":10.595633,"price_vs_vwap_pct":2.275156,"ema9":10.860041,"ema20":10.855312,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-0.944241,"dist_to_hod_atr":3.015594,"atr":0.034255,"spread_atr":0.291926,"own_change_pct":-0.10111,"rel_strength_pct":{"SPY":-0.081307,"IWM":-0.043352}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.088057},"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":"ad47eb8bcf28","ts":"2026-09-15T18:36:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2271,"target":9.46,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.25},"price":9.38,"vwap":9.3589,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":-0.0395,"volatility":"high"},"price":9.38,"volume":{"bars":306,"last_bar_volume":805.0,"baseline_avg":4323.7,"bar_rvol":0.186183,"raw_accel":-0.780893,"smooth_accel":-0.466096,"accel_momentum":-0.702711,"rvol_3bar":[0.163647,0.818135,0.186183],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":206.0,"sell_vol":557.0,"unclassified_vol":0.0,"imbalance":-0.460026,"bid":9.38,"ask":9.39,"spread_pct":0.106553,"quote_size_imbalance":null,"quote_age_s":1.155651},"context":{"vwap":9.358906,"price_vs_vwap_pct":0.225387,"ema9":9.3997,"ema20":9.402012,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.573977,"dist_to_hod_atr":9.003868,"atr":0.01666,"spread_atr":0.600258,"own_change_pct":-0.085061,"rel_strength_pct":{"SPY":-0.065257,"IWM":-0.027303}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.085649},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"474d8fe4854d","ts":"2026-09-15T18:36:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.2146,"target":7.43,"target_label":"ceiling","reward_risk":1.06,"pos_in_5d_range_pct":37.0,"room_to_5d_high_atr":1.34},"price":7.319,"vwap":7.284,"ext_from_open_pct":2.36,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0094,"volatility":"medium"},"price":7.319,"volume":{"bars":306,"last_bar_volume":148318.0,"baseline_avg":127307.1,"bar_rvol":1.165041,"raw_accel":0.000432,"smooth_accel":-0.524605,"accel_momentum":-0.451973,"rvol_3bar":[0.307358,1.100237,1.165041],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":108,"trade_rate":3.6,"buy_vol":7855.0,"sell_vol":10618.0,"unclassified_vol":0.0,"imbalance":-0.14957,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":1.261742},"context":{"vwap":7.283942,"price_vs_vwap_pct":0.4813,"ema9":7.330462,"ema20":7.334516,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.493943,"dist_to_hod_atr":5.686094,"atr":0.019521,"spread_atr":0.512261,"own_change_pct":-0.136333,"rel_strength_pct":{"SPY":-0.116529,"IWM":-0.078574}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.174255},"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":"b980e753148e","ts":"2026-09-15T18:36:10+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7517,"target":8.0,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":20.0,"room_to_5d_high_atr":2.71},"price":7.87,"vwap":7.8515,"ext_from_open_pct":-0.38,"max_ext_allowed_pct":4.0,"volume_pace":1.088,"trend":"flat","recent_slope_pct":0.0153,"volatility":"high"},"price":7.87,"volume":{"bars":306,"last_bar_volume":15636.0,"baseline_avg":12233.95,"bar_rvol":1.278083,"raw_accel":-0.299368,"smooth_accel":-0.606322,"accel_momentum":0.170435,"rvol_3bar":[0.05429,1.927285,1.278083],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":15457.0,"sell_vol":564.0,"unclassified_vol":0.0,"imbalance":0.929592,"bid":7.87,"ask":7.88,"spread_pct":0.126984,"quote_size_imbalance":null,"quote_age_s":1.182073},"context":{"vwap":7.851412,"price_vs_vwap_pct":0.236752,"ema9":7.873175,"ema20":7.882172,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.75662,"dist_to_hod_atr":3.666985,"atr":0.016362,"spread_atr":0.611164,"own_change_pct":-0.063532,"rel_strength_pct":{"SPY":-0.043729,"IWM":-0.005774}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.188096},"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":"40dfb3f1b705","ts":"2026-09-15T18:36:10+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2156,"target":7.43,"target_label":"ceiling","reward_risk":1.05,"pos_in_5d_range_pct":37.1,"room_to_5d_high_atr":1.34},"price":7.32,"vwap":7.284,"ext_from_open_pct":2.38,"max_ext_allowed_pct":4.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0067,"volatility":"medium"},"price":7.32,"volume":{"bars":306,"last_bar_volume":148318.0,"baseline_avg":127307.1,"bar_rvol":1.165041,"raw_accel":0.000432,"smooth_accel":-0.524605,"accel_momentum":-0.451973,"rvol_3bar":[0.307358,1.100237,1.165041],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":47538.0,"sell_vol":27677.0,"unclassified_vol":0.0,"imbalance":0.264056,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":1.111493},"context":{"vwap":7.283942,"price_vs_vwap_pct":0.495029,"ema9":7.330462,"ema20":7.334516,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.480485,"dist_to_hod_atr":5.634868,"atr":0.019521,"spread_atr":0.512261,"own_change_pct":-0.136333,"rel_strength_pct":{"SPY":-0.116529,"IWM":-0.078574}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.307637},"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":"4d6223c3c8fa","ts":"2026-09-15T18:36:10+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.3617,"target":5.52,"target_label":"ceiling","reward_risk":1.54,"pos_in_5d_range_pct":13.7,"room_to_5d_high_atr":1.87},"price":5.4239,"vwap":5.4182,"ext_from_open_pct":-0.66,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":-0.0133,"volatility":"medium"},"price":5.4239,"volume":{"bars":306,"last_bar_volume":13359.0,"baseline_avg":44007.25,"bar_rvol":0.303564,"raw_accel":0.214254,"smooth_accel":-0.524376,"accel_momentum":-1.328117,"rvol_3bar":[0.64002,0.130806,0.303564],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":5735.0,"sell_vol":3579.0,"unclassified_vol":0.0,"imbalance":0.231479,"bid":5.41,"ask":5.42,"spread_pct":0.184672,"quote_size_imbalance":null,"quote_age_s":0.115343},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.105367,"ema9":5.426474,"ema20":5.433084,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.272072,"dist_to_hod_atr":7.220282,"atr":0.017465,"spread_atr":0.572584,"own_change_pct":-0.457729,"rel_strength_pct":{"SPY":-0.437925,"IWM":-0.399971}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.070269},"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":"60f549d80bba","ts":"2026-09-15T18:36:15+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3549,"target":8.5,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":62.6,"room_to_5d_high_atr":0.9},"price":8.445,"vwap":8.3787,"ext_from_open_pct":1.38,"max_ext_allowed_pct":3.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0349,"volatility":"medium"},"price":8.445,"volume":{"bars":306,"last_bar_volume":436.0,"baseline_avg":1155.5,"bar_rvol":0.377326,"raw_accel":0.509303,"smooth_accel":-0.9062,"accel_momentum":-1.151286,"rvol_3bar":[0.373792,0.095348,0.377326],"trend_3bar":"MIXED","projected_rvol":4.801385},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":551.0,"sell_vol":837.0,"unclassified_vol":0.0,"imbalance":-0.206052,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.563071},"context":{"vwap":8.378422,"price_vs_vwap_pct":0.794635,"ema9":8.468608,"ema20":8.474517,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.647059,"dist_to_hod_atr":4.364884,"atr":0.012601,"spread_atr":0.793615,"own_change_pct":-0.301812,"rel_strength_pct":{"SPY":-0.282008,"IWM":-0.244054}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.077749},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"ebf8ec0c2fb2","ts":"2026-09-15T18:36:15+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7721,"target":7.91,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":73.4,"room_to_5d_high_atr":0.41},"price":7.86,"vwap":7.7725,"ext_from_open_pct":2.08,"max_ext_allowed_pct":3.0,"volume_pace":0.521,"trend":"flat","recent_slope_pct":-0.0402,"volatility":"medium"},"price":7.86,"volume":{"bars":306,"last_bar_volume":15864.0,"baseline_avg":8676.25,"bar_rvol":1.82844,"raw_accel":0.70544,"smooth_accel":0.530874,"accel_momentum":0.718512,"rvol_3bar":[0.561712,1.103113,1.82844],"trend_3bar":"ACCELERATING","projected_rvol":3.682697},"flow":{"window_s":30,"trades":41,"trade_rate":1.366667,"buy_vol":1353.0,"sell_vol":7004.0,"unclassified_vol":0.0,"imbalance":-0.6762,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.206692},"context":{"vwap":7.772339,"price_vs_vwap_pct":1.127865,"ema9":7.874085,"ema20":7.87171,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.380228,"dist_to_hod_atr":2.059414,"atr":0.014567,"spread_atr":0.686471,"own_change_pct":-0.180221,"rel_strength_pct":{"SPY":-0.160418,"IWM":-0.122463}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.23639},"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":"ca5aa06c5bd1","ts":"2026-09-15T18:36:20+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":10.6718,"target":10.935,"target_label":"prev_day_high","reward_risk":0.78,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":1.15},"price":10.82,"vwap":10.5958,"ext_from_open_pct":3.94,"max_ext_allowed_pct":4.0,"volume_pace":0.886,"trend":"flat","recent_slope_pct":0.0122,"volatility":"medium"},"price":10.82,"volume":{"bars":306,"last_bar_volume":4151.0,"baseline_avg":13708.9,"bar_rvol":0.302796,"raw_accel":-0.675196,"smooth_accel":-0.500953,"accel_momentum":0.07589,"rvol_3bar":[0.997941,0.92654,0.302796],"trend_3bar":"DECELERATING","projected_rvol":0.771616},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":2490.0,"sell_vol":1466.0,"unclassified_vol":0.0,"imbalance":0.258847,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.206424},"context":{"vwap":10.595633,"price_vs_vwap_pct":2.117544,"ema9":10.860041,"ema20":10.855312,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.096892,"dist_to_hod_atr":3.50311,"atr":0.034255,"spread_atr":0.291926,"own_change_pct":-0.10111,"rel_strength_pct":{"SPY":-0.081307,"IWM":-0.043352}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.078378},"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":"7e74d0222331","ts":"2026-09-15T18:36:20+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2221,"target":9.46,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.26},"price":9.375,"vwap":9.359,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":-0.0502,"volatility":"high"},"price":9.375,"volume":{"bars":306,"last_bar_volume":805.0,"baseline_avg":4323.7,"bar_rvol":0.186183,"raw_accel":-0.780893,"smooth_accel":-0.466096,"accel_momentum":-0.702711,"rvol_3bar":[0.163647,0.818135,0.186183],"trend_3bar":"MIXED","projected_rvol":3.388764},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":1811.0,"sell_vol":3134.0,"unclassified_vol":0.0,"imbalance":-0.267543,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.182035},"context":{"vwap":9.358906,"price_vs_vwap_pct":0.171962,"ema9":9.3997,"ema20":9.402012,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.626443,"dist_to_hod_atr":9.303997,"atr":0.01666,"spread_atr":0.600258,"own_change_pct":-0.085061,"rel_strength_pct":{"SPY":-0.065257,"IWM":-0.027303}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.049812},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"84372fca3657","ts":"2026-09-15T18:36:20+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.41 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":1.95},"price":5.405,"vwap":5.4182,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.719,"trend":"flat","recent_slope_pct":-0.0831,"volatility":"medium"},"price":5.405,"volume":{"bars":306,"last_bar_volume":13359.0,"baseline_avg":44007.25,"bar_rvol":0.303564,"raw_accel":0.214254,"smooth_accel":-0.524376,"accel_momentum":-1.328117,"rvol_3bar":[0.64002,0.130806,0.303564],"trend_3bar":"MIXED","projected_rvol":1.787842},"flow":{"window_s":30,"trades":130,"trade_rate":4.333333,"buy_vol":11521.0,"sell_vol":18194.0,"unclassified_vol":0.0,"imbalance":-0.224567,"bid":5.4,"ask":5.41,"spread_pct":0.185014,"quote_size_imbalance":null,"quote_age_s":0.145179},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.243458,"ema9":5.426474,"ema20":5.433084,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.612613,"dist_to_hod_atr":8.302466,"atr":0.017465,"spread_atr":0.572584,"own_change_pct":-0.457729,"rel_strength_pct":{"SPY":-0.437925,"IWM":-0.399971}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.06817},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b806f504571a","ts":"2026-09-15T18:36:25+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7822,"target":7.91,"target_label":"prev_day_high","reward_risk":0.45,"pos_in_5d_range_pct":75.2,"room_to_5d_high_atr":0.38},"price":7.8701,"vwap":7.7725,"ext_from_open_pct":2.21,"max_ext_allowed_pct":3.0,"volume_pace":0.521,"trend":"flat","recent_slope_pct":-0.0145,"volatility":"medium"},"price":7.8701,"volume":{"bars":306,"last_bar_volume":15864.0,"baseline_avg":8676.25,"bar_rvol":1.82844,"raw_accel":0.70544,"smooth_accel":0.530874,"accel_momentum":0.718512,"rvol_3bar":[0.561712,1.103113,1.82844],"trend_3bar":"ACCELERATING","projected_rvol":2.249174},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":1336.0,"sell_vol":6812.0,"unclassified_vol":0.0,"imbalance":-0.672067,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.024219},"context":{"vwap":7.772339,"price_vs_vwap_pct":1.257813,"ema9":7.874085,"ema20":7.87171,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.252218,"dist_to_hod_atr":1.366078,"atr":0.014567,"spread_atr":0.686471,"own_change_pct":-0.180221,"rel_strength_pct":{"SPY":-0.160418,"IWM":-0.122463}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.228834},"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":"799bb6a480b4","ts":"2026-09-15T18:36:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6721,"target":10.935,"target_label":"prev_day_high","reward_risk":0.77,"pos_in_5d_range_pct":47.3,"room_to_5d_high_atr":1.14},"price":10.8203,"vwap":10.5958,"ext_from_open_pct":3.94,"max_ext_allowed_pct":3.0,"volume_pace":0.885,"trend":"flat","recent_slope_pct":0.0127,"volatility":"medium"},"price":10.8203,"volume":{"bars":306,"last_bar_volume":4151.0,"baseline_avg":13708.9,"bar_rvol":0.302796,"raw_accel":-0.675196,"smooth_accel":-0.500953,"accel_momentum":0.07589,"rvol_3bar":[0.997941,0.92654,0.302796],"trend_3bar":"DECELERATING","projected_rvol":0.807592},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":3185.0,"sell_vol":1623.0,"unclassified_vol":0.0,"imbalance":0.324875,"bid":10.82,"ask":10.83,"spread_pct":0.092379,"quote_size_imbalance":null,"quote_age_s":0.171944},"context":{"vwap":10.595633,"price_vs_vwap_pct":2.120375,"ema9":10.860041,"ema20":10.855312,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.09415,"dist_to_hod_atr":3.494352,"atr":0.034255,"spread_atr":0.291926,"own_change_pct":-0.10111,"rel_strength_pct":{"SPY":-0.081307,"IWM":-0.043352}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.098371},"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":"175e6c4751bd","ts":"2026-09-15T18:36:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.369,"target":8.73,"target_label":"clear air (typical 60-min move)","reward_risk":0.89,"pos_in_5d_range_pct":130.8,"room_to_5d_high_atr":-1.13},"price":8.56,"vwap":8.2071,"ext_from_open_pct":11.75,"max_ext_allowed_pct":4.0,"volume_pace":0.268,"trend":"flat","recent_slope_pct":0.0937,"volatility":"high"},"price":8.56,"volume":{"bars":305,"last_bar_volume":291.0,"baseline_avg":961.1,"bar_rvol":0.302778,"raw_accel":0.211112,"smooth_accel":-0.783991,"accel_momentum":-0.006993,"rvol_3bar":[0.019859,0.081669,0.302778],"trend_3bar":"ACCELERATING","projected_rvol":2.971595},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":1266.0,"sell_vol":162.0,"unclassified_vol":0.0,"imbalance":0.773109,"bid":8.55,"ask":8.59,"spread_pct":0.466744,"quote_size_imbalance":null,"quote_age_s":0.389192},"context":{"vwap":8.206478,"price_vs_vwap_pct":4.307834,"ema9":8.542015,"ema20":8.528678,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.465116,"dist_to_hod_atr":1.124459,"atr":0.035573,"spread_atr":1.124459,"own_change_pct":-0.116959,"rel_strength_pct":{"SPY":-0.097155,"IWM":-0.059201}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.234081},"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":"c98c3cb1b96d","ts":"2026-09-15T18:36:30+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7796,"target":7.91,"target_label":"prev_day_high","reward_risk":0.48,"pos_in_5d_range_pct":74.8,"room_to_5d_high_atr":0.39},"price":7.8675,"vwap":7.7725,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":0.52,"trend":"flat","recent_slope_pct":-0.0211,"volatility":"medium"},"price":7.8675,"volume":{"bars":306,"last_bar_volume":15864.0,"baseline_avg":8676.25,"bar_rvol":1.82844,"raw_accel":0.70544,"smooth_accel":0.530874,"accel_momentum":0.718512,"rvol_3bar":[0.561712,1.103113,1.82844],"trend_3bar":"ACCELERATING","projected_rvol":1.92272},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":1461.0,"sell_vol":6880.0,"unclassified_vol":0.0,"imbalance":-0.649682,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.051481},"context":{"vwap":7.772339,"price_vs_vwap_pct":1.224361,"ema9":7.874085,"ema20":7.87171,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.285171,"dist_to_hod_atr":1.544561,"atr":0.014567,"spread_atr":0.686471,"own_change_pct":-0.180221,"rel_strength_pct":{"SPY":-0.160418,"IWM":-0.122463}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.187905},"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":"9bf0d5814e78","ts":"2026-09-15T18:36:45+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.365,"target":5.52,"target_label":"ceiling","reward_risk":1.49,"pos_in_5d_range_pct":14.3,"room_to_5d_high_atr":1.86},"price":5.4272,"vwap":5.4182,"ext_from_open_pct":-0.6,"max_ext_allowed_pct":4.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":-0.0011,"volatility":"medium"},"price":5.4272,"volume":{"bars":306,"last_bar_volume":13359.0,"baseline_avg":44007.25,"bar_rvol":0.303564,"raw_accel":0.214254,"smooth_accel":-0.524376,"accel_momentum":-1.328117,"rvol_3bar":[0.64002,0.130806,0.303564],"trend_3bar":"MIXED","projected_rvol":0.850496},"flow":{"window_s":30,"trades":111,"trade_rate":3.7,"buy_vol":9455.0,"sell_vol":14491.0,"unclassified_vol":0.0,"imbalance":-0.210307,"bid":5.4,"ask":5.41,"spread_pct":0.185014,"quote_size_imbalance":null,"quote_age_s":6.182562},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.166272,"ema9":5.426474,"ema20":5.433084,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.212613,"dist_to_hod_atr":7.03133,"atr":0.017465,"spread_atr":0.572584,"own_change_pct":-0.457729,"rel_strength_pct":{"SPY":-0.437925,"IWM":-0.399971}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.063841},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d78ec071019e","ts":"2026-09-15T18:36:50+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":12.7244,"target":13.2,"target_label":"ceiling","reward_risk":1.63,"pos_in_5d_range_pct":43.7,"room_to_5d_high_atr":1.17},"price":12.9052,"vwap":12.9031,"ext_from_open_pct":-1.11,"max_ext_allowed_pct":4.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.0572,"volatility":"medium"},"price":12.9052,"volume":{"bars":305,"last_bar_volume":117.0,"baseline_avg":574.5,"bar_rvol":0.203655,"raw_accel":-0.185379,"smooth_accel":0.01168,"accel_momentum":0.485301,"rvol_3bar":[3.218838,0.083297,0.203655],"trend_3bar":"MIXED","projected_rvol":0.350914},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":118.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":12.85,"ask":12.93,"spread_pct":0.620636,"quote_size_imbalance":null,"quote_age_s":51.268994},"context":{"vwap":12.903088,"price_vs_vwap_pct":0.016367,"ema9":12.92247,"ema20":12.929272,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.041322,"dist_to_hod_atr":13.654352,"atr":0.029646,"spread_atr":2.698489,"own_change_pct":-0.386399,"rel_strength_pct":{"SPY":-0.366595,"IWM":-0.32864}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.203655},"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":"fe590fb2ba1b","ts":"2026-09-15T18:36:50+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.41 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":1.95},"price":5.405,"vwap":5.4182,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":4.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":-0.0831,"volatility":"medium"},"price":5.405,"volume":{"bars":306,"last_bar_volume":13359.0,"baseline_avg":44007.25,"bar_rvol":0.303564,"raw_accel":0.214254,"smooth_accel":-0.524376,"accel_momentum":-1.328117,"rvol_3bar":[0.64002,0.130806,0.303564],"trend_3bar":"MIXED","projected_rvol":0.797378},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":1834.0,"sell_vol":1182.0,"unclassified_vol":0.0,"imbalance":0.21618,"bid":5.4,"ask":5.41,"spread_pct":0.185014,"quote_size_imbalance":null,"quote_age_s":2.582164},"context":{"vwap":5.418191,"price_vs_vwap_pct":-0.243458,"ema9":5.426474,"ema20":5.433084,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.612613,"dist_to_hod_atr":8.302466,"atr":0.017465,"spread_atr":0.572584,"own_change_pct":-0.457729,"rel_strength_pct":{"SPY":-0.437925,"IWM":-0.399971}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.065624},"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":"786e4531974f","ts":"2026-09-15T18:37:00+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.89 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7092,"target":13.2,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.19},"price":12.89,"vwap":12.9031,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":4.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.0807,"volatility":"medium"},"price":12.89,"volume":{"bars":305,"last_bar_volume":117.0,"baseline_avg":574.5,"bar_rvol":0.203655,"raw_accel":-0.185379,"smooth_accel":0.01168,"accel_momentum":0.485301,"rvol_3bar":[3.218838,0.083297,0.203655],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":118.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.966667,"bid":12.85,"ask":12.93,"spread_pct":0.620636,"quote_size_imbalance":null,"quote_age_s":61.268994},"context":{"vwap":12.903088,"price_vs_vwap_pct":-0.101434,"ema9":12.92247,"ema20":12.929272,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.155522,"dist_to_hod_atr":14.167065,"atr":0.029646,"spread_atr":2.698489,"own_change_pct":-0.386399,"rel_strength_pct":{"SPY":-0.379797,"IWM":-0.342608}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.196867},"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":"c97c6c19cc8d","ts":"2026-09-15T18:37:00+00:00","symbol":"ACHR","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.3649,"target":5.52,"target_label":"ceiling","reward_risk":1.49,"pos_in_5d_range_pct":14.3,"room_to_5d_high_atr":1.86},"price":5.4271,"vwap":5.4182,"ext_from_open_pct":-0.6,"max_ext_allowed_pct":3.0,"volume_pace":0.718,"trend":"flat","recent_slope_pct":-0.0015,"volatility":"medium"},"price":5.4271,"volume":{"bars":306,"last_bar_volume":13359.0,"baseline_avg":44007.25,"bar_rvol":0.303564,"raw_accel":0.214254,"smooth_accel":-0.524376,"accel_momentum":-1.328117,"rvol_3bar":[0.64002,0.130806,0.303564],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":963.0,"sell_vol":5084.0,"unclassified_vol":0.0,"imbalance":-0.681495,"bid":5.4,"ask":5.41,"spread_pct":0.185014,"quote_size_imbalance":null,"quote_age_s":0.479833},"context":{"vwap":5.418191,"price_vs_vwap_pct":0.164427,"ema9":5.426474,"ema20":5.433084,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.214414,"dist_to_hod_atr":7.037055,"atr":0.017465,"spread_atr":0.572584,"own_change_pct":-0.457729,"rel_strength_pct":{"SPY":-0.451127,"IWM":-0.413938}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.206877},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"84b047e5e646","ts":"2026-09-15T18:37:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3649,"target":8.5586,"target_label":"premarket_high","reward_risk":1.15,"pos_in_5d_range_pct":63.8,"room_to_5d_high_atr":0.87},"price":8.455,"vwap":8.3792,"ext_from_open_pct":1.5,"max_ext_allowed_pct":3.0,"volume_pace":0.76,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"medium"},"price":8.455,"volume":{"bars":307,"last_bar_volume":3845.0,"baseline_avg":1172.25,"bar_rvol":3.280017,"raw_accel":7.818807,"smooth_accel":-0.456984,"accel_momentum":0.449216,"rvol_3bar":[0.095348,0.377326,3.280017],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":2337.0,"sell_vol":98.0,"unclassified_vol":0.0,"imbalance":0.919507,"bid":8.45,"ask":8.46,"spread_pct":0.118273,"quote_size_imbalance":null,"quote_age_s":10.967902},"context":{"vwap":8.379212,"price_vs_vwap_pct":0.904481,"ema9":8.465507,"ema20":8.472478,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.529412,"dist_to_hod_atr":3.523346,"atr":0.012772,"spread_atr":0.782966,"own_change_pct":-0.331321,"rel_strength_pct":{"SPY":-0.324719,"IWM":-0.287531}},"vas":{"raw":4,"score":6.9,"components":{"rvol":3,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.015999},"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":"d5af13e4546f","ts":"2026-09-15T18:37:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2171,"target":9.46,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.37,"vwap":9.359,"ext_from_open_pct":0.21,"max_ext_allowed_pct":3.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":-0.0833,"volatility":"high"},"price":9.37,"volume":{"bars":307,"last_bar_volume":5185.0,"baseline_avg":3485.85,"bar_rvol":1.487442,"raw_accel":4.949768,"smooth_accel":0.063029,"accel_momentum":0.529125,"rvol_3bar":[0.818135,0.186183,1.487442],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":408.0,"sell_vol":2175.0,"unclassified_vol":0.0,"imbalance":-0.684088,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":1.021062},"context":{"vwap":9.358962,"price_vs_vwap_pct":0.117936,"ema9":9.39476,"ema20":9.39944,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.678909,"dist_to_hod_atr":9.000553,"atr":0.017777,"spread_atr":0.562535,"own_change_pct":-0.318979,"rel_strength_pct":{"SPY":-0.312377,"IWM":-0.275189}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.017542},"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":"5167e0013322","ts":"2026-09-15T18:37:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.2017,"target":7.43,"target_label":"ceiling","reward_risk":1.19,"pos_in_5d_range_pct":35.5,"room_to_5d_high_atr":1.37},"price":7.3061,"vwap":7.284,"ext_from_open_pct":2.18,"max_ext_allowed_pct":3.0,"volume_pace":0.808,"trend":"flat","recent_slope_pct":-0.0651,"volatility":"medium"},"price":7.3061,"volume":{"bars":307,"last_bar_volume":191423.0,"baseline_avg":131454.8,"bar_rvol":1.456189,"raw_accel":0.290626,"smooth_accel":-0.158059,"accel_momentum":0.366546,"rvol_3bar":[1.100237,1.165041,1.456189],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":211,"trade_rate":7.033333,"buy_vol":16897.0,"sell_vol":68628.0,"unclassified_vol":0.0,"imbalance":-0.604864,"bid":7.3,"ask":7.31,"spread_pct":0.136893,"quote_size_imbalance":null,"quote_age_s":3.64849},"context":{"vwap":7.284041,"price_vs_vwap_pct":0.302846,"ema9":7.32437,"ema20":7.331228,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.667564,"dist_to_hod_atr":6.021306,"atr":0.020577,"spread_atr":0.485981,"own_change_pct":-0.543604,"rel_strength_pct":{"SPY":-0.537002,"IWM":-0.499814}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.880796},"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":"c4adee83b56c","ts":"2026-09-15T18:37:05+00:00","symbol":"ACHR","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.41 below VWAP $5.42","plan":{"state":"PASS","setup":"","stop":5.22,"target":5.52,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":10.2,"room_to_5d_high_atr":1.95},"price":5.405,"vwap":5.4182,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":3.0,"volume_pace":0.717,"trend":"flat","recent_slope_pct":-0.0218,"volatility":"medium"},"price":5.405,"volume":{"bars":307,"last_bar_volume":33742.0,"baseline_avg":41661.6,"bar_rvol":0.809906,"raw_accel":1.525788,"smooth_accel":-0.52418,"accel_momentum":0.000196,"rvol_3bar":[0.130806,0.303564,0.809906],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1069.0,"sell_vol":5135.0,"unclassified_vol":0.0,"imbalance":-0.655384,"bid":5.4,"ask":5.41,"spread_pct":0.185014,"quote_size_imbalance":null,"quote_age_s":0.533654},"context":{"vwap":5.418192,"price_vs_vwap_pct":-0.24347,"ema9":5.426599,"ema20":5.432514,"ema_stack":false,"ema_warm":true,"hod":5.55,"dist_to_hod_pct":-2.612613,"dist_to_hod_atr":7.947041,"atr":0.018246,"spread_atr":0.548072,"own_change_pct":-0.053407,"rel_strength_pct":{"SPY":-0.046805,"IWM":-0.009616}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.530799},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"55f3df41a3f5","ts":"2026-09-15T18:37:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"WATCH","setup":"","stop":7.7865,"target":7.91,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":76.0,"room_to_5d_high_atr":0.37},"price":7.8744,"vwap":7.7726,"ext_from_open_pct":2.26,"max_ext_allowed_pct":3.0,"volume_pace":0.519,"trend":"flat","recent_slope_pct":-0.0135,"volatility":"medium"},"price":7.8744,"volume":{"bars":307,"last_bar_volume":9659.0,"baseline_avg":8602.0,"bar_rvol":1.122878,"raw_accel":-0.391137,"smooth_accel":0.606838,"accel_momentum":0.075964,"rvol_3bar":[1.103113,1.82844,1.122878],"trend_3bar":"MIXED","projected_rvol":0.276215},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":303.0,"sell_vol":1399.0,"unclassified_vol":0.0,"imbalance":-0.643948,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":1.76529},"context":{"vwap":7.772574,"price_vs_vwap_pct":1.310072,"ema9":7.872368,"ema20":7.871119,"ema_stack":true,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.197719,"dist_to_hod_atr":1.069675,"atr":0.014584,"spread_atr":0.685689,"own_change_pct":-0.119367,"rel_strength_pct":{"SPY":-0.112764,"IWM":-0.075576}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.723076},"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":"b1b9fa104af2","ts":"2026-09-15T18:37:15+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2121,"target":9.46,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.359,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.48,"trend":"flat","recent_slope_pct":-0.094,"volatility":"high"},"price":9.365,"volume":{"bars":307,"last_bar_volume":5185.0,"baseline_avg":3485.85,"bar_rvol":1.487442,"raw_accel":4.949768,"smooth_accel":0.063029,"accel_momentum":0.529125,"rvol_3bar":[0.818135,0.186183,1.487442],"trend_3bar":"MIXED","projected_rvol":5.497655},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":849.0,"sell_vol":3989.0,"unclassified_vol":0.0,"imbalance":-0.649029,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.002775},"context":{"vwap":9.358962,"price_vs_vwap_pct":0.064511,"ema9":9.39476,"ema20":9.39944,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":9.28182,"atr":0.017777,"spread_atr":0.562535,"own_change_pct":-0.318979,"rel_strength_pct":{"SPY":-0.312377,"IWM":-0.275189}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.965392},"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":"74c7592a8e7f","ts":"2026-09-15T18:37:15+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.2495,"target":8.59,"target_label":"premarket_high","reward_risk":0.78,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.83},"price":8.4407,"vwap":8.4347,"ext_from_open_pct":0.84,"max_ext_allowed_pct":3.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":-0.1694,"volatility":"high"},"price":8.4407,"volume":{"bars":307,"last_bar_volume":95125.0,"baseline_avg":35785.5,"bar_rvol":2.6582,"raw_accel":1.340962,"smooth_accel":0.030493,"accel_momentum":0.212488,"rvol_3bar":[0.330586,1.051745,2.6582],"trend_3bar":"ACCELERATING","projected_rvol":1.002082},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":3242.0,"sell_vol":9300.0,"unclassified_vol":0.0,"imbalance":-0.483017,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.339926},"context":{"vwap":8.43471,"price_vs_vwap_pct":0.071015,"ema9":8.483342,"ema20":8.501008,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.700865,"dist_to_hod_atr":7.397045,"atr":0.031675,"spread_atr":0.315708,"own_change_pct":-0.766139,"rel_strength_pct":{"SPY":-0.759537,"IWM":-0.722349}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.283956},"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":"5a94810a5ca0","ts":"2026-09-15T18:37:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1857,"target":7.43,"target_label":"ceiling","reward_risk":1.34,"pos_in_5d_range_pct":33.7,"room_to_5d_high_atr":1.41},"price":7.2901,"vwap":7.2841,"ext_from_open_pct":1.96,"max_ext_allowed_pct":3.0,"volume_pace":0.809,"trend":"flat","recent_slope_pct":-0.1089,"volatility":"medium"},"price":7.2901,"volume":{"bars":307,"last_bar_volume":191423.0,"baseline_avg":131454.8,"bar_rvol":1.456189,"raw_accel":0.290626,"smooth_accel":-0.158059,"accel_momentum":0.366546,"rvol_3bar":[1.100237,1.165041,1.456189],"trend_3bar":"ACCELERATING","projected_rvol":3.062345},"flow":{"window_s":30,"trades":183,"trade_rate":6.1,"buy_vol":66153.0,"sell_vol":63272.0,"unclassified_vol":0.0,"imbalance":0.02226,"bid":7.29,"ask":7.3,"spread_pct":0.13708,"quote_size_imbalance":null,"quote_age_s":0.815019},"context":{"vwap":7.284041,"price_vs_vwap_pct":0.083188,"ema9":7.32437,"ema20":7.331228,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.882907,"dist_to_hod_atr":6.798876,"atr":0.020577,"spread_atr":0.485981,"own_change_pct":-0.543604,"rel_strength_pct":{"SPY":-0.537002,"IWM":-0.499814}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.032415},"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":"bc1db1508848","ts":"2026-09-15T18:37:20+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7721,"target":7.91,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":73.4,"room_to_5d_high_atr":0.41},"price":7.86,"vwap":7.7726,"ext_from_open_pct":2.08,"max_ext_allowed_pct":3.0,"volume_pace":0.519,"trend":"flat","recent_slope_pct":-0.0501,"volatility":"medium"},"price":7.86,"volume":{"bars":307,"last_bar_volume":9659.0,"baseline_avg":8602.0,"bar_rvol":1.122878,"raw_accel":-0.391137,"smooth_accel":0.606838,"accel_momentum":0.075964,"rvol_3bar":[1.103113,1.82844,1.122878],"trend_3bar":"MIXED","projected_rvol":0.214136},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":208.0,"sell_vol":414.0,"unclassified_vol":0.0,"imbalance":-0.33119,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.558565},"context":{"vwap":7.772574,"price_vs_vwap_pct":1.124805,"ema9":7.872368,"ema20":7.871119,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.380228,"dist_to_hod_atr":2.057066,"atr":0.014584,"spread_atr":0.685689,"own_change_pct":-0.119367,"rel_strength_pct":{"SPY":-0.112764,"IWM":-0.075576}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.371886},"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":"2aa5c16249b2","ts":"2026-09-15T18:38:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8519,"target":6.03,"target_label":"premarket_high","reward_risk":1.14,"pos_in_5d_range_pct":100.7,"room_to_5d_high_atr":-0.02},"price":5.935,"vwap":5.9362,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":1.205,"trend":"flat","recent_slope_pct":-0.0585,"volatility":"medium"},"price":5.935,"volume":{"bars":308,"last_bar_volume":37120.0,"baseline_avg":151544.55,"bar_rvol":0.244944,"raw_accel":-0.758039,"smooth_accel":-0.118068,"accel_momentum":0.157491,"rvol_3bar":[2.485086,1.040168,0.244944],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":89,"trade_rate":2.966667,"buy_vol":18379.0,"sell_vol":31952.0,"unclassified_vol":0.0,"imbalance":-0.269675,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":1.063372},"context":{"vwap":5.936222,"price_vs_vwap_pct":-0.020582,"ema9":5.943396,"ema20":5.93031,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.224053,"dist_to_hod_atr":5.779457,"atr":0.023359,"spread_atr":0.428108,"own_change_pct":-0.253351,"rel_strength_pct":{"SPY":-0.258634,"IWM":-0.232326}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.066055},"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":"9070bba6c30f","ts":"2026-09-15T18:38:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7771,"target":7.91,"target_label":"prev_day_high","reward_risk":0.51,"pos_in_5d_range_pct":74.3,"room_to_5d_high_atr":0.4},"price":7.865,"vwap":7.7726,"ext_from_open_pct":2.14,"max_ext_allowed_pct":3.0,"volume_pace":0.518,"trend":"flat","recent_slope_pct":-0.0276,"volatility":"medium"},"price":7.865,"volume":{"bars":308,"last_bar_volume":2463.0,"baseline_avg":8879.6,"bar_rvol":0.277377,"raw_accel":-0.745005,"smooth_accel":0.364904,"accel_momentum":-0.241934,"rvol_3bar":[1.82844,1.122878,0.277377],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":314.0,"sell_vol":1019.0,"unclassified_vol":0.0,"imbalance":-0.528882,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":4.8864},"context":{"vwap":7.772633,"price_vs_vwap_pct":1.188363,"ema9":7.870514,"ema20":7.870355,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.316857,"dist_to_hod_atr":1.714927,"atr":0.014578,"spread_atr":0.685971,"own_change_pct":-0.09783,"rel_strength_pct":{"SPY":-0.103113,"IWM":-0.076805}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.1467},"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":"77b6e226362f","ts":"2026-09-15T18:39:05+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":11.9134,"target":12.59,"target_label":"prev_day_high","reward_risk":2.2,"pos_in_5d_range_pct":10.9,"room_to_5d_high_atr":2.09},"price":12.125,"vwap":12.0879,"ext_from_open_pct":-2.92,"max_ext_allowed_pct":3.0,"volume_pace":0.586,"trend":"flat","recent_slope_pct":0.1171,"volatility":"high"},"price":12.125,"volume":{"bars":309,"last_bar_volume":1547.0,"baseline_avg":1698.8,"bar_rvol":0.910643,"raw_accel":-0.741434,"smooth_accel":2.017857,"accel_momentum":-4.386582,"rvol_3bar":[2.680164,4.186112,0.910643],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":2401.0,"sell_vol":2364.0,"unclassified_vol":0.0,"imbalance":0.007765,"bid":12.12,"ask":12.13,"spread_pct":0.082474,"quote_size_imbalance":null,"quote_age_s":2.70096},"context":{"vwap":12.087655,"price_vs_vwap_pct":0.308954,"ema9":12.084416,"ema20":12.081877,"ema_stack":true,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-3.998416,"dist_to_hod_atr":16.505012,"atr":0.030597,"spread_atr":0.326832,"own_change_pct":0.151449,"rel_strength_pct":{"SPY":0.142851,"IWM":0.156705}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.007071},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"39a9e50e9edd","ts":"2026-09-15T18:39:05+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8553,"target":6.03,"target_label":"premarket_high","reward_risk":1.1,"pos_in_5d_range_pct":101.1,"room_to_5d_high_atr":-0.03},"price":5.9384,"vwap":5.9362,"ext_from_open_pct":0.48,"max_ext_allowed_pct":4.0,"volume_pace":1.204,"trend":"flat","recent_slope_pct":-0.0404,"volatility":"medium"},"price":5.9384,"volume":{"bars":309,"last_bar_volume":99294.0,"baseline_avg":150374.2,"bar_rvol":0.660313,"raw_accel":1.641251,"smooth_accel":-0.49056,"accel_momentum":-0.372492,"rvol_3bar":[1.040168,0.244944,0.660313],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":8708.0,"sell_vol":369.0,"unclassified_vol":0.0,"imbalance":0.918696,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":2.173994},"context":{"vwap":5.93624,"price_vs_vwap_pct":0.036395,"ema9":5.942557,"ema20":5.931157,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.16804,"dist_to_hod_atr":5.612594,"atr":0.023447,"spread_atr":0.426489,"own_change_pct":-0.265323,"rel_strength_pct":{"SPY":-0.273921,"IWM":-0.260067}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.606626},"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":"dd7e51afb6b2","ts":"2026-09-15T18:39:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.222,"target":9.46,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.26},"price":9.3749,"vwap":9.359,"ext_from_open_pct":0.27,"max_ext_allowed_pct":4.0,"volume_pace":0.479,"trend":"flat","recent_slope_pct":-0.0466,"volatility":"high"},"price":9.3749,"volume":{"bars":309,"last_bar_volume":3934.0,"baseline_avg":3428.6,"bar_rvol":1.147407,"raw_accel":-0.427532,"smooth_accel":2.054049,"accel_momentum":1.843508,"rvol_3bar":[1.487442,1.966266,1.147407],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":580.0,"sell_vol":2421.0,"unclassified_vol":0.0,"imbalance":-0.613462,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":1.055271},"context":{"vwap":9.359035,"price_vs_vwap_pct":0.169513,"ema9":9.385346,"ema20":9.393761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.627492,"dist_to_hod_atr":7.808264,"atr":0.019864,"spread_atr":0.503434,"own_change_pct":-0.304123,"rel_strength_pct":{"SPY":-0.31272,"IWM":-0.298866}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.703891},"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":"469225859dd7","ts":"2026-09-15T18:39:05+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.2567,"target":8.59,"target_label":"premarket_high","reward_risk":0.74,"pos_in_5d_range_pct":6.8,"room_to_5d_high_atr":3.82},"price":8.4479,"vwap":8.4347,"ext_from_open_pct":0.93,"max_ext_allowed_pct":4.0,"volume_pace":0.725,"trend":"flat","recent_slope_pct":-0.0227,"volatility":"high"},"price":8.4479,"volume":{"bars":309,"last_bar_volume":23508.0,"baseline_avg":38720.45,"bar_rvol":0.607121,"raw_accel":-0.052097,"smooth_accel":0.511332,"accel_momentum":0.035692,"rvol_3bar":[2.6582,0.618942,0.607121],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":66,"trade_rate":2.2,"buy_vol":6026.0,"sell_vol":568.0,"unclassified_vol":0.0,"imbalance":0.827722,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":1.088604},"context":{"vwap":8.434744,"price_vs_vwap_pct":0.155979,"ema9":8.467739,"ema20":8.489941,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.617867,"dist_to_hod_atr":6.687899,"atr":0.033957,"spread_atr":0.294491,"own_change_pct":-0.76309,"rel_strength_pct":{"SPY":-0.771687,"IWM":-0.757833}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.502528},"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":"d28b754c62bf","ts":"2026-09-15T18:39:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.2028,"target":7.43,"target_label":"ceiling","reward_risk":1.18,"pos_in_5d_range_pct":35.6,"room_to_5d_high_atr":1.37},"price":7.3072,"vwap":7.2842,"ext_from_open_pct":2.2,"max_ext_allowed_pct":4.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.0505,"volatility":"medium"},"price":7.3072,"volume":{"bars":309,"last_bar_volume":45571.0,"baseline_avg":142740.6,"bar_rvol":0.319257,"raw_accel":-0.796151,"smooth_accel":0.359753,"accel_momentum":0.140763,"rvol_3bar":[1.456189,1.627542,0.319257],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":5938.0,"sell_vol":4008.0,"unclassified_vol":0.0,"imbalance":0.194048,"bid":7.3,"ask":7.31,"spread_pct":0.136893,"quote_size_imbalance":null,"quote_age_s":1.02367},"context":{"vwap":7.284166,"price_vs_vwap_pct":0.316218,"ema9":7.316937,"ema20":7.326301,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.652759,"dist_to_hod_atr":5.520745,"atr":0.022243,"spread_atr":0.449572,"own_change_pct":-0.289621,"rel_strength_pct":{"SPY":-0.298219,"IWM":-0.284365}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.061951},"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":"920908de3613","ts":"2026-09-15T18:39:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.359,"target":8.6,"target_label":"ceiling","reward_risk":0.26,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-1.11},"price":8.55,"vwap":8.209,"ext_from_open_pct":11.62,"max_ext_allowed_pct":3.0,"volume_pace":0.267,"trend":"flat","recent_slope_pct":0.0175,"volatility":"high"},"price":8.55,"volume":{"bars":308,"last_bar_volume":1100.0,"baseline_avg":1131.5,"bar_rvol":0.972161,"raw_accel":0.006404,"smooth_accel":12.725888,"accel_momentum":2.590295,"rvol_3bar":[3.36614,0.987755,0.972161],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":0.0,"sell_vol":1171.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.52,"ask":8.59,"spread_pct":0.818235,"quote_size_imbalance":null,"quote_age_s":16.567159},"context":{"vwap":8.208986,"price_vs_vwap_pct":4.154158,"ema9":8.553791,"ema20":8.53848,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.581395,"dist_to_hod_atr":1.314263,"atr":0.038044,"spread_atr":1.839968,"own_change_pct":0.175644,"rel_strength_pct":{"SPY":0.167047,"IWM":0.180901}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.972161},"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":"9ee664802958","ts":"2026-09-15T18:39:15+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2217,"target":9.46,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.26},"price":9.3746,"vwap":9.359,"ext_from_open_pct":0.26,"max_ext_allowed_pct":4.0,"volume_pace":0.478,"trend":"flat","recent_slope_pct":-0.0472,"volatility":"high"},"price":9.3746,"volume":{"bars":309,"last_bar_volume":3934.0,"baseline_avg":3428.6,"bar_rvol":1.147407,"raw_accel":-0.427532,"smooth_accel":2.054049,"accel_momentum":1.843508,"rvol_3bar":[1.487442,1.966266,1.147407],"trend_3bar":"MIXED","projected_rvol":0.787493},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":844.0,"sell_vol":102.0,"unclassified_vol":0.0,"imbalance":0.784355,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":1.239588},"context":{"vwap":9.359035,"price_vs_vwap_pct":0.166308,"ema9":9.385346,"ema20":9.393761,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.63064,"dist_to_hod_atr":7.823367,"atr":0.019864,"spread_atr":0.503434,"own_change_pct":-0.304123,"rel_strength_pct":{"SPY":-0.31272,"IWM":-0.298866}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.899975},"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":"df77a229662a","ts":"2026-09-15T18:39:15+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1955,"target":7.43,"target_label":"ceiling","reward_risk":1.25,"pos_in_5d_range_pct":34.8,"room_to_5d_high_atr":1.39},"price":7.2999,"vwap":7.2842,"ext_from_open_pct":2.1,"max_ext_allowed_pct":3.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":-0.0705,"volatility":"medium"},"price":7.2999,"volume":{"bars":309,"last_bar_volume":45571.0,"baseline_avg":142740.6,"bar_rvol":0.319257,"raw_accel":-0.796151,"smooth_accel":0.359753,"accel_momentum":0.140763,"rvol_3bar":[1.456189,1.627542,0.319257],"trend_3bar":"MIXED","projected_rvol":0.795009},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":8365.0,"sell_vol":22221.0,"unclassified_vol":0.0,"imbalance":-0.453018,"bid":7.29,"ask":7.3,"spread_pct":0.13708,"quote_size_imbalance":null,"quote_age_s":0.524761},"context":{"vwap":7.284166,"price_vs_vwap_pct":0.216,"ema9":7.316937,"ema20":7.326301,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.751009,"dist_to_hod_atr":5.848933,"atr":0.022243,"spread_atr":0.449572,"own_change_pct":-0.289621,"rel_strength_pct":{"SPY":-0.298219,"IWM":-0.284365}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.144629},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"0a16b8106f2c","ts":"2026-09-15T18:39:20+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8519,"target":6.03,"target_label":"premarket_high","reward_risk":1.14,"pos_in_5d_range_pct":100.7,"room_to_5d_high_atr":-0.02},"price":5.935,"vwap":5.9363,"ext_from_open_pct":0.42,"max_ext_allowed_pct":3.0,"volume_pace":1.207,"trend":"flat","recent_slope_pct":-0.0518,"volatility":"medium"},"price":5.935,"volume":{"bars":309,"last_bar_volume":99294.0,"baseline_avg":150374.2,"bar_rvol":0.660313,"raw_accel":1.641251,"smooth_accel":-0.49056,"accel_momentum":-0.372492,"rvol_3bar":[1.040168,0.244944,0.660313],"trend_3bar":"MIXED","projected_rvol":1.808628},"flow":{"window_s":30,"trades":121,"trade_rate":4.033333,"buy_vol":54827.0,"sell_vol":36250.0,"unclassified_vol":0.0,"imbalance":0.20397,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":0.084239},"context":{"vwap":5.93624,"price_vs_vwap_pct":-0.020881,"ema9":5.942557,"ema20":5.931157,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.224053,"dist_to_hod_atr":5.7576,"atr":0.023447,"spread_atr":0.426489,"own_change_pct":-0.265323,"rel_strength_pct":{"SPY":-0.273921,"IWM":-0.260067}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.134684},"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":"47f0f3fdae76","ts":"2026-09-15T18:39:20+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3736,"target":8.7296,"target_label":"clear air (typical 60-min move)","reward_risk":0.86,"pos_in_5d_range_pct":131.0,"room_to_5d_high_atr":-1.13},"price":8.5646,"vwap":8.209,"ext_from_open_pct":11.81,"max_ext_allowed_pct":3.0,"volume_pace":0.267,"trend":"flat","recent_slope_pct":0.0516,"volatility":"high"},"price":8.5646,"volume":{"bars":308,"last_bar_volume":1100.0,"baseline_avg":1131.5,"bar_rvol":0.972161,"raw_accel":0.006404,"smooth_accel":12.725888,"accel_momentum":2.590295,"rvol_3bar":[3.36614,0.987755,0.972161],"trend_3bar":"DECELERATING","projected_rvol":0.328767},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1.0,"sell_vol":1174.0,"unclassified_vol":0.0,"imbalance":-0.998298,"bid":8.52,"ask":8.59,"spread_pct":0.818235,"quote_size_imbalance":null,"quote_age_s":26.567159},"context":{"vwap":8.208986,"price_vs_vwap_pct":4.332012,"ema9":8.553791,"ema20":8.53848,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.411628,"dist_to_hod_atr":0.930498,"atr":0.038044,"spread_atr":1.839968,"own_change_pct":0.175644,"rel_strength_pct":{"SPY":0.167047,"IWM":0.180901}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.970506},"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":"38da2384ac75","ts":"2026-09-15T18:39:35+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8668,"target":6.03,"target_label":"premarket_high","reward_risk":0.96,"pos_in_5d_range_pct":102.7,"room_to_5d_high_atr":-0.06},"price":5.9499,"vwap":5.9363,"ext_from_open_pct":0.68,"max_ext_allowed_pct":3.0,"volume_pace":1.208,"trend":"flat","recent_slope_pct":-0.0017,"volatility":"medium"},"price":5.9499,"volume":{"bars":309,"last_bar_volume":99294.0,"baseline_avg":150374.2,"bar_rvol":0.660313,"raw_accel":1.641251,"smooth_accel":-0.49056,"accel_momentum":-0.372492,"rvol_3bar":[1.040168,0.244944,0.660313],"trend_3bar":"MIXED","projected_rvol":1.621167},"flow":{"window_s":30,"trades":137,"trade_rate":4.566667,"buy_vol":56558.0,"sell_vol":77394.0,"unclassified_vol":0.0,"imbalance":-0.155548,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":0.027546},"context":{"vwap":5.93624,"price_vs_vwap_pct":0.23012,"ema9":5.942557,"ema20":5.931157,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-1.978583,"dist_to_hod_atr":5.122132,"atr":0.023447,"spread_atr":0.426489,"own_change_pct":-0.265323,"rel_strength_pct":{"SPY":-0.273921,"IWM":-0.260067}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.10271},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"906107c0d841","ts":"2026-09-15T18:39:50+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8483,"target":6.03,"target_label":"premarket_high","reward_risk":1.19,"pos_in_5d_range_pct":100.2,"room_to_5d_high_atr":-0.0},"price":5.9314,"vwap":5.9362,"ext_from_open_pct":0.36,"max_ext_allowed_pct":3.0,"volume_pace":1.207,"trend":"flat","recent_slope_pct":-0.064,"volatility":"medium"},"price":5.9314,"volume":{"bars":309,"last_bar_volume":99294.0,"baseline_avg":150374.2,"bar_rvol":0.660313,"raw_accel":1.641251,"smooth_accel":-0.49056,"accel_momentum":-0.372492,"rvol_3bar":[1.040168,0.244944,0.660313],"trend_3bar":"MIXED","projected_rvol":1.152397},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":10588.0,"sell_vol":43164.0,"unclassified_vol":0.0,"imbalance":-0.606043,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":2.014515},"context":{"vwap":5.93624,"price_vs_vwap_pct":-0.081525,"ema9":5.942557,"ema20":5.931157,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.283361,"dist_to_hod_atr":5.911136,"atr":0.023447,"spread_atr":0.426489,"own_change_pct":-0.265323,"rel_strength_pct":{"SPY":-0.273921,"IWM":-0.260067}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.400178},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d094f13cb321","ts":"2026-09-15T18:40:00+00:00","symbol":"SNAP","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":5.8636,"target":6.03,"target_label":"premarket_high","reward_risk":1.0,"pos_in_5d_range_pct":102.3,"room_to_5d_high_atr":-0.05},"price":5.9467,"vwap":5.9363,"ext_from_open_pct":0.62,"max_ext_allowed_pct":3.0,"volume_pace":1.208,"trend":"flat","recent_slope_pct":-0.0124,"volatility":"medium"},"price":5.9467,"volume":{"bars":309,"last_bar_volume":99294.0,"baseline_avg":150374.2,"bar_rvol":0.660313,"raw_accel":1.641251,"smooth_accel":-0.49056,"accel_momentum":-0.372492,"rvol_3bar":[1.040168,0.244944,0.660313],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":24454.0,"sell_vol":3307.0,"unclassified_vol":0.0,"imbalance":0.761752,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":12.014515},"context":{"vwap":5.93624,"price_vs_vwap_pct":0.176214,"ema9":5.942557,"ema20":5.931157,"ema_stack":true,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.031301,"dist_to_hod_atr":5.258608,"atr":0.023447,"spread_atr":0.426489,"own_change_pct":-0.265323,"rel_strength_pct":{"SPY":-0.270606,"IWM":-0.265323}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.502995},"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":"33a7e5328f9c","ts":"2026-09-15T18:40:05+00:00","symbol":"SNAP","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.93 below VWAP $5.94","plan":{"state":"PASS","setup":"","stop":5.8469,"target":5.97,"target_label":"ceiling","reward_risk":0.48,"pos_in_5d_range_pct":100.0,"room_to_5d_high_atr":0.0},"price":5.93,"vwap":5.9363,"ext_from_open_pct":0.34,"max_ext_allowed_pct":3.0,"volume_pace":1.208,"trend":"flat","recent_slope_pct":-0.0645,"volatility":"medium"},"price":5.93,"volume":{"bars":310,"last_bar_volume":169817.0,"baseline_avg":152033.05,"bar_rvol":1.116974,"raw_accel":0.710244,"smooth_accel":-0.413301,"accel_momentum":0.077259,"rvol_3bar":[0.244944,0.660313,1.116974],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":25060.0,"sell_vol":22940.0,"unclassified_vol":0.0,"imbalance":0.044167,"bid":5.93,"ask":5.94,"spread_pct":0.168492,"quote_size_imbalance":null,"quote_age_s":3.094047},"context":{"vwap":5.936277,"price_vs_vwap_pct":-0.105736,"ema9":5.943386,"ema20":5.932637,"ema_stack":false,"ema_warm":true,"hod":6.07,"dist_to_hod_pct":-2.306425,"dist_to_hod_atr":6.021237,"atr":0.023251,"spread_atr":0.430088,"own_change_pct":-0.09576,"rel_strength_pct":{"SPY":-0.101042,"IWM":-0.09576}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.049333},"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":"6c95fca0c470","ts":"2026-09-15T18:40:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6418,"target":10.935,"target_label":"prev_day_high","reward_risk":0.98,"pos_in_5d_range_pct":45.0,"room_to_5d_high_atr":1.2},"price":10.79,"vwap":10.5978,"ext_from_open_pct":3.65,"max_ext_allowed_pct":4.0,"volume_pace":0.883,"trend":"flat","recent_slope_pct":-0.0461,"volatility":"medium"},"price":10.79,"volume":{"bars":310,"last_bar_volume":17247.0,"baseline_avg":14449.05,"bar_rvol":1.193642,"raw_accel":1.337309,"smooth_accel":0.741251,"accel_momentum":0.228901,"rvol_3bar":[2.010765,0.518904,1.193642],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":34,"trade_rate":1.133333,"buy_vol":493.0,"sell_vol":908.0,"unclassified_vol":0.0,"imbalance":-0.296217,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":4.912634},"context":{"vwap":10.597834,"price_vs_vwap_pct":1.813254,"ema9":10.840796,"ema20":10.845832,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.371115,"dist_to_hod_atr":3.750623,"atr":0.039993,"spread_atr":0.250042,"own_change_pct":-0.232768,"rel_strength_pct":{"SPY":-0.23805,"IWM":-0.232768}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.353577},"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":"8b97aa18d054","ts":"2026-09-15T18:40:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.231,"target":9.46,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":6.8,"room_to_5d_high_atr":3.25},"price":9.3839,"vwap":9.359,"ext_from_open_pct":0.36,"max_ext_allowed_pct":4.0,"volume_pace":0.477,"trend":"flat","recent_slope_pct":0.0243,"volatility":"high"},"price":9.3839,"volume":{"bars":310,"last_bar_volume":1368.0,"baseline_avg":3500.4,"bar_rvol":0.390812,"raw_accel":-0.652262,"smooth_accel":0.259727,"accel_momentum":-1.794322,"rvol_3bar":[1.966266,1.147407,0.390812],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":415.0,"sell_vol":374.0,"unclassified_vol":0.0,"imbalance":0.051965,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.727066},"context":{"vwap":9.359042,"price_vs_vwap_pct":0.265603,"ema9":9.381277,"ema20":9.391022,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.533054,"dist_to_hod_atr":7.214143,"atr":0.020252,"spread_atr":0.493781,"own_change_pct":-0.213106,"rel_strength_pct":{"SPY":-0.218389,"IWM":-0.213106}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.020308},"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":"bc89c53e1907","ts":"2026-09-15T18:40:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.1957,"target":7.43,"target_label":"ceiling","reward_risk":1.24,"pos_in_5d_range_pct":34.8,"room_to_5d_high_atr":1.39},"price":7.3001,"vwap":7.2842,"ext_from_open_pct":2.1,"max_ext_allowed_pct":4.0,"volume_pace":0.807,"trend":"flat","recent_slope_pct":0.0003,"volatility":"medium"},"price":7.3001,"volume":{"bars":310,"last_bar_volume":103389.0,"baseline_avg":140193.2,"bar_rvol":0.737475,"raw_accel":1.268745,"smooth_accel":-0.236646,"accel_momentum":-0.596399,"rvol_3bar":[1.627542,0.319257,0.737475],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":103,"trade_rate":3.433333,"buy_vol":66791.0,"sell_vol":35141.0,"unclassified_vol":0.0,"imbalance":0.310501,"bid":7.3,"ask":7.31,"spread_pct":0.136893,"quote_size_imbalance":null,"quote_age_s":8.182202},"context":{"vwap":7.28421,"price_vs_vwap_pct":0.218141,"ema9":7.315549,"ema20":7.324749,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.748318,"dist_to_hod_atr":5.673129,"atr":0.022897,"spread_atr":0.43673,"own_change_pct":-0.136612,"rel_strength_pct":{"SPY":-0.141895,"IWM":-0.136612}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.228987},"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":"04fb24af6033","ts":"2026-09-15T18:40:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.9% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6685,"target":10.935,"target_label":"prev_day_high","reward_risk":0.8,"pos_in_5d_range_pct":47.1,"room_to_5d_high_atr":1.15},"price":10.8167,"vwap":10.5979,"ext_from_open_pct":3.91,"max_ext_allowed_pct":3.0,"volume_pace":0.882,"trend":"flat","recent_slope_pct":0.0032,"volatility":"medium"},"price":10.8167,"volume":{"bars":310,"last_bar_volume":17247.0,"baseline_avg":14449.05,"bar_rvol":1.193642,"raw_accel":1.337309,"smooth_accel":0.741251,"accel_momentum":0.228901,"rvol_3bar":[2.010765,0.518904,1.193642],"trend_3bar":"MIXED","projected_rvol":0.535675},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":1676.0,"sell_vol":1158.0,"unclassified_vol":0.0,"imbalance":0.182781,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":1.381743},"context":{"vwap":10.597834,"price_vs_vwap_pct":2.065193,"ema9":10.840796,"ema20":10.845832,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.127057,"dist_to_hod_atr":3.083012,"atr":0.039993,"spread_atr":0.250042,"own_change_pct":-0.232768,"rel_strength_pct":{"SPY":-0.23805,"IWM":-0.232768}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.218175},"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":"9725276ca4f3","ts":"2026-09-15T18:40:20+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6495,"target":10.935,"target_label":"prev_day_high","reward_risk":0.93,"pos_in_5d_range_pct":45.6,"room_to_5d_high_atr":1.18},"price":10.7977,"vwap":10.5979,"ext_from_open_pct":3.72,"max_ext_allowed_pct":4.0,"volume_pace":0.882,"trend":"flat","recent_slope_pct":-0.0319,"volatility":"medium"},"price":10.7977,"volume":{"bars":310,"last_bar_volume":17247.0,"baseline_avg":14449.05,"bar_rvol":1.193642,"raw_accel":1.337309,"smooth_accel":0.741251,"accel_momentum":0.228901,"rvol_3bar":[2.010765,0.518904,1.193642],"trend_3bar":"MIXED","projected_rvol":0.46529},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":1851.0,"sell_vol":1061.0,"unclassified_vol":0.0,"imbalance":0.271291,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":2.535577},"context":{"vwap":10.597834,"price_vs_vwap_pct":1.885911,"ema9":10.840796,"ema20":10.845832,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.300731,"dist_to_hod_atr":3.558091,"atr":0.039993,"spread_atr":0.250042,"own_change_pct":-0.232768,"rel_strength_pct":{"SPY":-0.23805,"IWM":-0.232768}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.323825},"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":"fee962959487","ts":"2026-09-15T18:40:40+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.43 below VWAP $8.43","plan":{"state":"PASS","setup":"","stop":8.2388,"target":8.59,"target_label":"premarket_high","reward_risk":0.84,"pos_in_5d_range_pct":6.2,"room_to_5d_high_atr":3.84},"price":8.43,"vwap":8.4348,"ext_from_open_pct":0.72,"max_ext_allowed_pct":4.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0415,"volatility":"high"},"price":8.43,"volume":{"bars":310,"last_bar_volume":16973.0,"baseline_avg":37659.6,"bar_rvol":0.450695,"raw_accel":-0.27799,"smooth_accel":-0.562466,"accel_momentum":-1.073798,"rvol_3bar":[0.618942,0.607121,0.450695],"trend_3bar":"DECELERATING","projected_rvol":0.393445},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":4346.0,"sell_vol":1615.0,"unclassified_vol":0.0,"imbalance":0.458145,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.44156},"context":{"vwap":8.434752,"price_vs_vwap_pct":-0.056333,"ema9":8.461191,"ema20":8.484708,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.824207,"dist_to_hod_atr":7.134848,"atr":0.034339,"spread_atr":0.291218,"own_change_pct":-0.29433,"rel_strength_pct":{"SPY":-0.299612,"IWM":-0.29433}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.206484},"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":"08520da94339","ts":"2026-09-15T18:40:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6468,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.795,"vwap":10.598,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":-0.0369,"volatility":"medium"},"price":10.795,"volume":{"bars":310,"last_bar_volume":17247.0,"baseline_avg":14449.05,"bar_rvol":1.193642,"raw_accel":1.337309,"smooth_accel":0.741251,"accel_momentum":0.228901,"rvol_3bar":[2.010765,0.518904,1.193642],"trend_3bar":"MIXED","projected_rvol":0.470158},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2032.0,"sell_vol":1128.0,"unclassified_vol":0.0,"imbalance":0.286076,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.549563},"context":{"vwap":10.597834,"price_vs_vwap_pct":1.860434,"ema9":10.840796,"ema20":10.845832,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.325411,"dist_to_hod_atr":3.625602,"atr":0.039993,"spread_atr":0.250042,"own_change_pct":-0.232768,"rel_strength_pct":{"SPY":-0.23805,"IWM":-0.232768}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.341472},"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":"31e1441877f6","ts":"2026-09-15T18:40:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2121,"target":9.46,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3591,"ext_from_open_pct":0.16,"max_ext_allowed_pct":3.0,"volume_pace":0.478,"trend":"flat","recent_slope_pct":-0.016,"volatility":"high"},"price":9.365,"volume":{"bars":310,"last_bar_volume":1368.0,"baseline_avg":3500.4,"bar_rvol":0.390812,"raw_accel":-0.652262,"smooth_accel":0.259727,"accel_momentum":-1.794322,"rvol_3bar":[1.966266,1.147407,0.390812],"trend_3bar":"DECELERATING","projected_rvol":2.490763},"flow":{"window_s":30,"trades":94,"trade_rate":3.133333,"buy_vol":3664.0,"sell_vol":2602.0,"unclassified_vol":0.0,"imbalance":0.169486,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.195768},"context":{"vwap":9.359042,"price_vs_vwap_pct":0.063659,"ema9":9.381277,"ema20":9.391022,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":8.147389,"atr":0.020252,"spread_atr":0.493781,"own_change_pct":-0.213106,"rel_strength_pct":{"SPY":-0.218389,"IWM":-0.213106}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.066237},"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":"70c57202eca0","ts":"2026-09-15T18:41:00+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.3518,"target":8.6,"target_label":"ceiling","reward_risk":0.3,"pos_in_5d_range_pct":130.2,"room_to_5d_high_atr":-1.1},"price":8.5428,"vwap":8.2091,"ext_from_open_pct":11.52,"max_ext_allowed_pct":3.0,"volume_pace":0.265,"trend":"flat","recent_slope_pct":-0.0752,"volatility":"high"},"price":8.5428,"volume":{"bars":309,"last_bar_volume":158.0,"baseline_avg":1163.85,"bar_rvol":0.135756,"raw_accel":-0.856364,"smooth_accel":-0.34476,"accel_momentum":-13.070649,"rvol_3bar":[0.987755,0.972161,0.135756],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":0.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.52,"ask":8.59,"spread_pct":0.818235,"quote_size_imbalance":null,"quote_age_s":126.567159},"context":{"vwap":8.209056,"price_vs_vwap_pct":4.065564,"ema9":8.554033,"ema20":8.540053,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.665116,"dist_to_hod_atr":1.569353,"atr":0.036448,"spread_atr":1.920537,"own_change_pct":0.175644,"rel_strength_pct":{"SPY":0.188849,"IWM":0.166882}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.135756},"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":"b0274f551aee","ts":"2026-09-15T18:41:00+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.2438,"target":8.59,"target_label":"premarket_high","reward_risk":0.81,"pos_in_5d_range_pct":6.4,"room_to_5d_high_atr":3.84},"price":8.435,"vwap":8.4348,"ext_from_open_pct":0.78,"max_ext_allowed_pct":3.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0296,"volatility":"high"},"price":8.435,"volume":{"bars":310,"last_bar_volume":16973.0,"baseline_avg":37659.6,"bar_rvol":0.450695,"raw_accel":-0.27799,"smooth_accel":-0.562466,"accel_momentum":-1.073798,"rvol_3bar":[0.618942,0.607121,0.450695],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":207,"trade_rate":6.9,"buy_vol":19609.0,"sell_vol":14584.0,"unclassified_vol":0.0,"imbalance":0.14696,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":3.718121},"context":{"vwap":8.434752,"price_vs_vwap_pct":0.002946,"ema9":8.461191,"ema20":8.484708,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.766571,"dist_to_hod_atr":6.989239,"atr":0.034339,"spread_atr":0.291218,"own_change_pct":-0.29433,"rel_strength_pct":{"SPY":-0.281125,"IWM":-0.303091}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.066234},"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":"31b64c14f59d","ts":"2026-09-15T18:41:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2121,"target":9.46,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3591,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":0.477,"trend":"flat","recent_slope_pct":-0.0012,"volatility":"high"},"price":9.365,"volume":{"bars":311,"last_bar_volume":6744.0,"baseline_avg":3265.4,"bar_rvol":2.065291,"raw_accel":3.929825,"smooth_accel":-0.063443,"accel_momentum":-0.32317,"rvol_3bar":[1.147407,0.390812,2.065291],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":98,"trade_rate":3.266667,"buy_vol":3908.0,"sell_vol":2710.0,"unclassified_vol":0.0,"imbalance":0.181021,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":1.55962},"context":{"vwap":9.359069,"price_vs_vwap_pct":0.063372,"ema9":9.377902,"ema20":9.388487,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.906233,"atr":0.02087,"spread_atr":0.479166,"own_change_pct":-0.346919,"rel_strength_pct":{"SPY":-0.333714,"IWM":-0.355681}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.373862},"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":"04795a46e7dd","ts":"2026-09-15T18:41:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.27x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3734,"target":8.7244,"target_label":"clear air (typical 60-min move)","reward_risk":0.84,"pos_in_5d_range_pct":131.0,"room_to_5d_high_atr":-1.13},"price":8.5644,"vwap":8.2091,"ext_from_open_pct":11.81,"max_ext_allowed_pct":3.0,"volume_pace":0.265,"trend":"flat","recent_slope_pct":-0.0624,"volatility":"high"},"price":8.5644,"volume":{"bars":310,"last_bar_volume":30.0,"baseline_avg":1165.75,"bar_rvol":0.025735,"raw_accel":-0.897062,"smooth_accel":-0.719939,"accel_momentum":-0.375179,"rvol_3bar":[0.972161,0.135756,0.025735],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":1.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":-0.333333,"bid":8.52,"ask":8.59,"spread_pct":0.818235,"quote_size_imbalance":null,"quote_age_s":136.567159},"context":{"vwap":8.209069,"price_vs_vwap_pct":4.32852,"ema9":8.551787,"ema20":8.540315,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.413953,"dist_to_hod_atr":0.972629,"atr":0.036602,"spread_atr":1.912472,"own_change_pct":0.032787,"rel_strength_pct":{"SPY":0.045992,"IWM":0.024025}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.008578},"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":"f96a5f4c417e","ts":"2026-09-15T18:41:10+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2257,"target":9.46,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.26},"price":9.3786,"vwap":9.3591,"ext_from_open_pct":0.31,"max_ext_allowed_pct":4.0,"volume_pace":0.477,"trend":"flat","recent_slope_pct":0.0279,"volatility":"high"},"price":9.3786,"volume":{"bars":311,"last_bar_volume":6744.0,"baseline_avg":3265.4,"bar_rvol":2.065291,"raw_accel":3.929825,"smooth_accel":-0.063443,"accel_momentum":-0.32317,"rvol_3bar":[1.147407,0.390812,2.065291],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":96,"trade_rate":3.2,"buy_vol":3919.0,"sell_vol":2714.0,"unclassified_vol":0.0,"imbalance":0.181667,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.238221},"context":{"vwap":9.359069,"price_vs_vwap_pct":0.208686,"ema9":9.377902,"ema20":9.388487,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.588667,"dist_to_hod_atr":7.254568,"atr":0.02087,"spread_atr":0.479166,"own_change_pct":-0.346919,"rel_strength_pct":{"SPY":-0.333714,"IWM":-0.355681}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":0,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.375196},"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":"9d0681bb9ba4","ts":"2026-09-15T18:41:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3511,"target":8.6,"target_label":"ceiling","reward_risk":0.3,"pos_in_5d_range_pct":130.2,"room_to_5d_high_atr":-1.1},"price":8.5421,"vwap":8.2091,"ext_from_open_pct":11.52,"max_ext_allowed_pct":3.0,"volume_pace":0.265,"trend":"flat","recent_slope_pct":-0.1145,"volatility":"high"},"price":8.5421,"volume":{"bars":310,"last_bar_volume":30.0,"baseline_avg":1165.75,"bar_rvol":0.025735,"raw_accel":-0.897062,"smooth_accel":-0.719939,"accel_momentum":-0.375179,"rvol_3bar":[0.972161,0.135756,0.025735],"trend_3bar":"DECELERATING","projected_rvol":0.137937},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":1.0,"sell_vol":68.0,"unclassified_vol":0.0,"imbalance":-0.971014,"bid":8.52,"ask":8.59,"spread_pct":0.818235,"quote_size_imbalance":null,"quote_age_s":151.567159},"context":{"vwap":8.209069,"price_vs_vwap_pct":4.056869,"ema9":8.551787,"ema20":8.540315,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.673256,"dist_to_hod_atr":1.581888,"atr":0.036602,"spread_atr":1.912472,"own_change_pct":0.032787,"rel_strength_pct":{"SPY":0.045992,"IWM":0.024025}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.024989},"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":"ea05144de4a6","ts":"2026-09-15T18:41:30+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.43 below VWAP $8.43","plan":{"state":"PASS","setup":"","stop":8.2425,"target":8.59,"target_label":"premarket_high","reward_risk":0.82,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.84},"price":8.4337,"vwap":8.4348,"ext_from_open_pct":0.76,"max_ext_allowed_pct":4.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0209,"volatility":"high"},"price":8.4337,"volume":{"bars":311,"last_bar_volume":40534.0,"baseline_avg":34905.25,"bar_rvol":1.161258,"raw_accel":1.388146,"smooth_accel":-0.495422,"accel_momentum":0.067043,"rvol_3bar":[0.607121,0.450695,1.161258],"trend_3bar":"MIXED","projected_rvol":1.894156},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":29499.0,"sell_vol":3559.0,"unclassified_vol":0.0,"imbalance":0.784681,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.211796},"context":{"vwap":8.434761,"price_vs_vwap_pct":-0.012582,"ema9":8.455953,"ema20":8.479974,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.781556,"dist_to_hod_atr":6.880237,"atr":0.035071,"spread_atr":0.285132,"own_change_pct":-0.236546,"rel_strength_pct":{"SPY":-0.223341,"IWM":-0.245308}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.911218},"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":"33a10df406b1","ts":"2026-09-15T18:41:45+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.3714,"target":8.7224,"target_label":"clear air (typical 60-min move)","reward_risk":0.84,"pos_in_5d_range_pct":130.9,"room_to_5d_high_atr":-1.13},"price":8.5624,"vwap":8.2092,"ext_from_open_pct":11.78,"max_ext_allowed_pct":3.0,"volume_pace":0.265,"trend":"flat","recent_slope_pct":-0.0671,"volatility":"high"},"price":8.5624,"volume":{"bars":310,"last_bar_volume":30.0,"baseline_avg":1165.75,"bar_rvol":0.025735,"raw_accel":-0.897062,"smooth_accel":-0.719939,"accel_momentum":-0.375179,"rvol_3bar":[0.972161,0.135756,0.025735],"trend_3bar":"DECELERATING","projected_rvol":0.372864},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":69.0,"sell_vol":256.0,"unclassified_vol":0.0,"imbalance":-0.575385,"bid":8.52,"ask":8.59,"spread_pct":0.818235,"quote_size_imbalance":null,"quote_age_s":171.567159},"context":{"vwap":8.209069,"price_vs_vwap_pct":4.304156,"ema9":8.551787,"ema20":8.540315,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.437209,"dist_to_hod_atr":1.027271,"atr":0.036602,"spread_atr":1.912472,"own_change_pct":0.032787,"rel_strength_pct":{"SPY":0.045992,"IWM":0.024025}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.014807},"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":"dea1ce4e250d","ts":"2026-09-15T18:41:45+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.2442,"target":8.59,"target_label":"premarket_high","reward_risk":0.81,"pos_in_5d_range_pct":6.4,"room_to_5d_high_atr":3.84},"price":8.4354,"vwap":8.4348,"ext_from_open_pct":0.78,"max_ext_allowed_pct":4.0,"volume_pace":0.722,"trend":"flat","recent_slope_pct":-0.0168,"volatility":"high"},"price":8.4354,"volume":{"bars":311,"last_bar_volume":40534.0,"baseline_avg":34905.25,"bar_rvol":1.161258,"raw_accel":1.388146,"smooth_accel":-0.495422,"accel_momentum":0.067043,"rvol_3bar":[0.607121,0.450695,1.161258],"trend_3bar":"MIXED","projected_rvol":1.304789},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":10920.0,"sell_vol":411.0,"unclassified_vol":0.0,"imbalance":0.927456,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.221075},"context":{"vwap":8.434761,"price_vs_vwap_pct":0.007573,"ema9":8.455953,"ema20":8.479974,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.76196,"dist_to_hod_atr":6.831764,"atr":0.035071,"spread_atr":0.285132,"own_change_pct":-0.236546,"rel_strength_pct":{"SPY":-0.223341,"IWM":-0.245308}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.077015},"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":"e9197dea7dae","ts":"2026-09-15T18:41:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.359,"target":8.6,"target_label":"ceiling","reward_risk":0.26,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-1.11},"price":8.55,"vwap":8.2092,"ext_from_open_pct":11.62,"max_ext_allowed_pct":4.0,"volume_pace":0.265,"trend":"flat","recent_slope_pct":-0.0961,"volatility":"high"},"price":8.55,"volume":{"bars":310,"last_bar_volume":30.0,"baseline_avg":1165.75,"bar_rvol":0.025735,"raw_accel":-0.897062,"smooth_accel":-0.719939,"accel_momentum":-0.375179,"rvol_3bar":[0.972161,0.135756,0.025735],"trend_3bar":"DECELERATING","projected_rvol":0.330337},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":69.0,"sell_vol":217.0,"unclassified_vol":0.0,"imbalance":-0.517483,"bid":8.52,"ask":8.58,"spread_pct":0.701754,"quote_size_imbalance":null,"quote_age_s":4.011181},"context":{"vwap":8.209069,"price_vs_vwap_pct":4.153104,"ema9":8.551787,"ema20":8.540315,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.581395,"dist_to_hod_atr":1.366052,"atr":0.036602,"spread_atr":1.639262,"own_change_pct":0.032787,"rel_strength_pct":{"SPY":0.045992,"IWM":0.024025}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.013317},"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":"3d8c3da6c6be","ts":"2026-09-15T18:42:05+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3661,"target":8.5586,"target_label":"premarket_high","reward_risk":1.14,"pos_in_5d_range_pct":63.9,"room_to_5d_high_atr":0.87},"price":8.4562,"vwap":8.3799,"ext_from_open_pct":1.52,"max_ext_allowed_pct":3.0,"volume_pace":0.754,"trend":"flat","recent_slope_pct":0.0044,"volatility":"medium"},"price":8.4562,"volume":{"bars":312,"last_bar_volume":171.0,"baseline_avg":1058.2,"bar_rvol":0.161595,"raw_accel":-0.353619,"smooth_accel":-0.392201,"accel_momentum":0.060257,"rvol_3bar":[1.619652,0.084335,0.161595],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":155.0,"sell_vol":211.0,"unclassified_vol":0.0,"imbalance":-0.153005,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":4.351143},"context":{"vwap":8.37983,"price_vs_vwap_pct":0.911353,"ema9":8.463367,"ema20":8.468273,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.515294,"dist_to_hod_atr":3.786288,"atr":0.011568,"spread_atr":0.864449,"own_change_pct":0.140777,"rel_strength_pct":{"SPY":0.111725,"IWM":0.070681}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.024725},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"496d294405e6","ts":"2026-09-15T18:42:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6532,"target":10.935,"target_label":"prev_day_high","reward_risk":0.9,"pos_in_5d_range_pct":45.9,"room_to_5d_high_atr":1.18},"price":10.8014,"vwap":10.5995,"ext_from_open_pct":3.76,"max_ext_allowed_pct":4.0,"volume_pace":0.884,"trend":"flat","recent_slope_pct":-0.0611,"volatility":"medium"},"price":10.8014,"volume":{"bars":312,"last_bar_volume":37188.0,"baseline_avg":15173.95,"bar_rvol":2.450779,"raw_accel":0.99957,"smooth_accel":0.575719,"accel_momentum":0.57333,"rvol_3bar":[1.193642,1.268886,2.450779],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":106,"trade_rate":3.533333,"buy_vol":17731.0,"sell_vol":5249.0,"unclassified_vol":0.0,"imbalance":0.543168,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.225935},"context":{"vwap":10.59952,"price_vs_vwap_pct":1.904615,"ema9":10.825461,"ema20":10.837107,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.26691,"dist_to_hod_atr":3.410374,"atr":0.040641,"spread_atr":0.246059,"own_change_pct":-0.219784,"rel_strength_pct":{"SPY":-0.248836,"IWM":-0.28988}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.331185},"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":"ff6d4dc46b4e","ts":"2026-09-15T18:42:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2171,"target":9.46,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.37,"vwap":9.3591,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.477,"trend":"flat","recent_slope_pct":-0.0096,"volatility":"high"},"price":9.37,"volume":{"bars":312,"last_bar_volume":5599.0,"baseline_avg":3263.5,"bar_rvol":1.715643,"raw_accel":-0.169781,"smooth_accel":-0.14258,"accel_momentum":-0.079138,"rvol_3bar":[0.390812,2.065291,1.715643],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":64,"trade_rate":2.133333,"buy_vol":3133.0,"sell_vol":1225.0,"unclassified_vol":0.0,"imbalance":0.437816,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":1.040457},"context":{"vwap":9.359094,"price_vs_vwap_pct":0.116525,"ema9":9.375721,"ema20":9.38644,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.678909,"dist_to_hod_atr":7.689537,"atr":0.020807,"spread_atr":0.480596,"own_change_pct":-0.085333,"rel_strength_pct":{"SPY":-0.114385,"IWM":-0.155429}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.751135},"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":"f2223aa17e68","ts":"2026-09-15T18:42:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6568,"target":10.935,"target_label":"prev_day_high","reward_risk":0.88,"pos_in_5d_range_pct":46.2,"room_to_5d_high_atr":1.17},"price":10.805,"vwap":10.5995,"ext_from_open_pct":3.79,"max_ext_allowed_pct":3.0,"volume_pace":0.884,"trend":"flat","recent_slope_pct":-0.0545,"volatility":"medium"},"price":10.805,"volume":{"bars":312,"last_bar_volume":37188.0,"baseline_avg":15173.95,"bar_rvol":2.450779,"raw_accel":0.99957,"smooth_accel":0.575719,"accel_momentum":0.57333,"rvol_3bar":[1.193642,1.268886,2.450779],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":17932.0,"sell_vol":5051.0,"unclassified_vol":0.0,"imbalance":0.560458,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.710314},"context":{"vwap":10.59952,"price_vs_vwap_pct":1.938579,"ema9":10.825461,"ema20":10.837107,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.234004,"dist_to_hod_atr":3.321793,"atr":0.040641,"spread_atr":0.246059,"own_change_pct":-0.219784,"rel_strength_pct":{"SPY":-0.248836,"IWM":-0.28988}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.373558},"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":"8e75121d8e94","ts":"2026-09-15T18:42:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6468,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.795,"vwap":10.5998,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.883,"trend":"flat","recent_slope_pct":-0.073,"volatility":"medium"},"price":10.795,"volume":{"bars":312,"last_bar_volume":37188.0,"baseline_avg":15173.95,"bar_rvol":2.450779,"raw_accel":0.99957,"smooth_accel":0.575719,"accel_momentum":0.57333,"rvol_3bar":[1.193642,1.268886,2.450779],"trend_3bar":"ACCELERATING","projected_rvol":0.812181},"flow":{"window_s":30,"trades":67,"trade_rate":2.233333,"buy_vol":6234.0,"sell_vol":1558.0,"unclassified_vol":0.0,"imbalance":0.600103,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.555281},"context":{"vwap":10.59952,"price_vs_vwap_pct":1.844235,"ema9":10.825461,"ema20":10.837107,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.325411,"dist_to_hod_atr":3.567852,"atr":0.040641,"spread_atr":0.246059,"own_change_pct":-0.219784,"rel_strength_pct":{"SPY":-0.248836,"IWM":-0.28988}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.470719},"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":"26c3483e871b","ts":"2026-09-15T18:42:55+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6528,"target":10.935,"target_label":"prev_day_high","reward_risk":0.9,"pos_in_5d_range_pct":45.8,"room_to_5d_high_atr":1.18},"price":10.801,"vwap":10.5998,"ext_from_open_pct":3.76,"max_ext_allowed_pct":3.0,"volume_pace":0.883,"trend":"flat","recent_slope_pct":-0.0619,"volatility":"medium"},"price":10.801,"volume":{"bars":312,"last_bar_volume":37188.0,"baseline_avg":15173.95,"bar_rvol":2.450779,"raw_accel":0.99957,"smooth_accel":0.575719,"accel_momentum":0.57333,"rvol_3bar":[1.193642,1.268886,2.450779],"trend_3bar":"ACCELERATING","projected_rvol":0.719079},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":5928.0,"sell_vol":1191.0,"unclassified_vol":0.0,"imbalance":0.665402,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.403665},"context":{"vwap":10.59952,"price_vs_vwap_pct":1.900842,"ema9":10.825461,"ema20":10.837107,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.270567,"dist_to_hod_atr":3.420217,"atr":0.040641,"spread_atr":0.246059,"own_change_pct":-0.219784,"rel_strength_pct":{"SPY":-0.248836,"IWM":-0.28988}},"vas":{"raw":7,"score":8.8,"components":{"rvol":2,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.630754},"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":"d772fb31f04a","ts":"2026-09-15T18:43:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3747,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.4648,"vwap":8.3802,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":0.0054,"volatility":"medium"},"price":8.4648,"volume":{"bars":313,"last_bar_volume":1680.0,"baseline_avg":1061.6,"bar_rvol":1.582517,"raw_accel":5.330068,"smooth_accel":-0.156611,"accel_momentum":0.23559,"rvol_3bar":[0.084335,0.161595,1.582517],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":849.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.997647,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":5.285446},"context":{"vwap":8.380214,"price_vs_vwap_pct":1.009359,"ema9":8.463694,"ema20":8.467962,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.414118,"dist_to_hod_atr":3.010666,"atr":0.011692,"spread_atr":0.855303,"own_change_pct":0.07448,"rel_strength_pct":{"SPY":0.070518,"IWM":0.056955}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.578793},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d315a029f85a","ts":"2026-09-15T18:43:10+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3816,"target":8.7326,"target_label":"clear air (typical 60-min move)","reward_risk":0.84,"pos_in_5d_range_pct":131.3,"room_to_5d_high_atr":-1.14},"price":8.5726,"vwap":8.2093,"ext_from_open_pct":11.91,"max_ext_allowed_pct":4.0,"volume_pace":0.264,"trend":"flat","recent_slope_pct":0.0496,"volatility":"high"},"price":8.5726,"volume":{"bars":312,"last_bar_volume":104.0,"baseline_avg":1178.15,"bar_rvol":0.088274,"raw_accel":-0.705382,"smooth_accel":-0.792854,"accel_momentum":0.107109,"rvol_3bar":[0.025735,0.303004,0.088274],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":1.0,"sell_vol":89.0,"unclassified_vol":0.0,"imbalance":-0.977778,"bid":8.52,"ask":8.58,"spread_pct":0.701754,"quote_size_imbalance":null,"quote_age_s":72.281525},"context":{"vwap":8.209266,"price_vs_vwap_pct":4.425897,"ema9":8.551143,"ema20":8.542072,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.318605,"dist_to_hod_atr":0.80966,"atr":0.033841,"spread_atr":1.772977,"own_change_pct":-0.407688,"rel_strength_pct":{"SPY":-0.41165,"IWM":-0.425213}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.086312},"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":"aabd8a0440c5","ts":"2026-09-15T18:43:15+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3684,"target":8.5586,"target_label":"premarket_high","reward_risk":1.11,"pos_in_5d_range_pct":64.2,"room_to_5d_high_atr":0.86},"price":8.4585,"vwap":8.3804,"ext_from_open_pct":1.54,"max_ext_allowed_pct":3.0,"volume_pace":0.756,"trend":"flat","recent_slope_pct":-0.0095,"volatility":"medium"},"price":8.4585,"volume":{"bars":313,"last_bar_volume":1680.0,"baseline_avg":1061.6,"bar_rvol":1.582517,"raw_accel":5.330068,"smooth_accel":-0.156611,"accel_momentum":0.23559,"rvol_3bar":[0.084335,0.161595,1.582517],"trend_3bar":"ACCELERATING","projected_rvol":2.358704},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":849.0,"sell_vol":626.0,"unclassified_vol":0.0,"imbalance":0.151186,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.868286},"context":{"vwap":8.380214,"price_vs_vwap_pct":0.934182,"ema9":8.463694,"ema20":8.467962,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.488235,"dist_to_hod_atr":3.549506,"atr":0.011692,"spread_atr":0.855303,"own_change_pct":0.07448,"rel_strength_pct":{"SPY":0.070518,"IWM":0.056955}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.239255},"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":"ad7b88ae65fb","ts":"2026-09-15T18:43:15+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.359,"target":8.6,"target_label":"ceiling","reward_risk":0.26,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-1.11},"price":8.55,"vwap":8.2095,"ext_from_open_pct":11.62,"max_ext_allowed_pct":3.0,"volume_pace":0.264,"trend":"flat","recent_slope_pct":-0.0033,"volatility":"high"},"price":8.55,"volume":{"bars":312,"last_bar_volume":104.0,"baseline_avg":1178.15,"bar_rvol":0.088274,"raw_accel":-0.705382,"smooth_accel":-0.792854,"accel_momentum":0.107109,"rvol_3bar":[0.025735,0.303004,0.088274],"trend_3bar":"MIXED","projected_rvol":2.043882},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":201.0,"sell_vol":434.0,"unclassified_vol":0.0,"imbalance":-0.366929,"bid":8.52,"ask":8.58,"spread_pct":0.701754,"quote_size_imbalance":null,"quote_age_s":77.281525},"context":{"vwap":8.209266,"price_vs_vwap_pct":4.150598,"ema9":8.551143,"ema20":8.542072,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.581395,"dist_to_hod_atr":1.477481,"atr":0.033841,"spread_atr":1.772977,"own_change_pct":-0.407688,"rel_strength_pct":{"SPY":-0.41165,"IWM":-0.425213}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.03239},"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":"c87ff063c16c","ts":"2026-09-15T18:43:20+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.662,"target":10.935,"target_label":"prev_day_high","reward_risk":0.84,"pos_in_5d_range_pct":46.6,"room_to_5d_high_atr":1.16},"price":10.8102,"vwap":10.5999,"ext_from_open_pct":3.84,"max_ext_allowed_pct":4.0,"volume_pace":0.882,"trend":"flat","recent_slope_pct":-0.061,"volatility":"medium"},"price":10.8102,"volume":{"bars":313,"last_bar_volume":10502.0,"baseline_avg":16468.45,"bar_rvol":0.637704,"raw_accel":-0.717597,"smooth_accel":0.295928,"accel_momentum":-0.279791,"rvol_3bar":[1.268886,2.450779,0.637704],"trend_3bar":"MIXED","projected_rvol":0.453412},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":2218.0,"sell_vol":1496.0,"unclassified_vol":0.0,"imbalance":0.1944,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.071988},"context":{"vwap":10.599826,"price_vs_vwap_pct":1.984696,"ema9":10.818609,"ema20":10.832735,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.186472,"dist_to_hod_atr":3.285309,"atr":0.039509,"spread_atr":0.253105,"own_change_pct":-0.231135,"rel_strength_pct":{"SPY":-0.235097,"IWM":-0.24866}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.123969},"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":"620d49f7a537","ts":"2026-09-15T18:43:30+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3749,"target":8.5586,"target_label":"premarket_high","reward_risk":1.04,"pos_in_5d_range_pct":64.9,"room_to_5d_high_atr":0.85},"price":8.465,"vwap":8.3804,"ext_from_open_pct":1.62,"max_ext_allowed_pct":3.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":0.0059,"volatility":"medium"},"price":8.465,"volume":{"bars":313,"last_bar_volume":1680.0,"baseline_avg":1061.6,"bar_rvol":1.582517,"raw_accel":5.330068,"smooth_accel":-0.156611,"accel_momentum":0.23559,"rvol_3bar":[0.084335,0.161595,1.582517],"trend_3bar":"ACCELERATING","projected_rvol":1.627732},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":200.0,"sell_vol":664.0,"unclassified_vol":0.0,"imbalance":-0.537037,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":2.856852},"context":{"vwap":8.380214,"price_vs_vwap_pct":1.011745,"ema9":8.463694,"ema20":8.467962,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.411765,"dist_to_hod_atr":2.993559,"atr":0.011692,"spread_atr":0.855303,"own_change_pct":0.07448,"rel_strength_pct":{"SPY":0.070518,"IWM":0.056955}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.84987},"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":"1fe356d82ab5","ts":"2026-09-15T18:43:35+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.8% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6593,"target":10.935,"target_label":"prev_day_high","reward_risk":0.86,"pos_in_5d_range_pct":46.3,"room_to_5d_high_atr":1.17},"price":10.8075,"vwap":10.6,"ext_from_open_pct":3.82,"max_ext_allowed_pct":3.0,"volume_pace":0.882,"trend":"flat","recent_slope_pct":-0.066,"volatility":"medium"},"price":10.8075,"volume":{"bars":313,"last_bar_volume":10502.0,"baseline_avg":16468.45,"bar_rvol":0.637704,"raw_accel":-0.717597,"smooth_accel":0.295928,"accel_momentum":-0.279791,"rvol_3bar":[1.268886,2.450779,0.637704],"trend_3bar":"MIXED","projected_rvol":0.533696},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3848.0,"sell_vol":878.0,"unclassified_vol":0.0,"imbalance":0.628438,"bid":10.8,"ask":10.81,"spread_pct":0.09255,"quote_size_imbalance":null,"quote_age_s":0.878983},"context":{"vwap":10.599826,"price_vs_vwap_pct":1.959224,"ema9":10.818609,"ema20":10.832735,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.211152,"dist_to_hod_atr":3.353648,"atr":0.039509,"spread_atr":0.253105,"own_change_pct":-0.231135,"rel_strength_pct":{"SPY":-0.235097,"IWM":-0.24866}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.400758},"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":"d04ae5ed62fe","ts":"2026-09-15T18:43:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8387,"target":10.07,"target_label":"ceiling","reward_risk":2.6,"pos_in_5d_range_pct":498.1,"room_to_5d_high_atr":-5.74},"price":9.9029,"vwap":9.7237,"ext_from_open_pct":4.79,"max_ext_allowed_pct":5.0,"volume_pace":3.373,"trend":"flat","recent_slope_pct":-0.0341,"volatility":"low"},"price":9.9029,"volume":{"bars":313,"last_bar_volume":11366.0,"baseline_avg":2834.2,"bar_rvol":4.010303,"raw_accel":0.659028,"smooth_accel":4.78635,"accel_momentum":3.78382,"rvol_3bar":[3.116344,2.700114,4.010303],"trend_3bar":"MIXED","projected_rvol":1.114483},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":542.0,"sell_vol":1649.0,"unclassified_vol":0.0,"imbalance":-0.505249,"bid":9.89,"ask":9.9,"spread_pct":0.101061,"quote_size_imbalance":null,"quote_age_s":12.12786},"context":{"vwap":9.723476,"price_vs_vwap_pct":1.845265,"ema9":9.925416,"ema20":9.938494,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.912745,"dist_to_hod_atr":7.968561,"atr":0.037284,"spread_atr":0.268211,"own_change_pct":-0.498492,"rel_strength_pct":{"SPY":-0.502454,"IWM":-0.516017}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-2.0262},"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":"107ccad4828b","ts":"2026-09-15T18:43:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.389,"target":8.74,"target_label":"clear air (typical 60-min move)","reward_risk":0.84,"pos_in_5d_range_pct":131.5,"room_to_5d_high_atr":-1.15},"price":8.58,"vwap":8.2096,"ext_from_open_pct":12.01,"max_ext_allowed_pct":4.0,"volume_pace":0.263,"trend":"flat","recent_slope_pct":0.0669,"volatility":"high"},"price":8.58,"volume":{"bars":312,"last_bar_volume":104.0,"baseline_avg":1178.15,"bar_rvol":0.088274,"raw_accel":-0.705382,"smooth_accel":-0.792854,"accel_momentum":0.107109,"rvol_3bar":[0.025735,0.303004,0.088274],"trend_3bar":"MIXED","projected_rvol":0.716038},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":101.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.55,"ask":8.58,"spread_pct":0.350263,"quote_size_imbalance":null,"quote_age_s":0.129427},"context":{"vwap":8.209266,"price_vs_vwap_pct":4.516039,"ema9":8.551143,"ema20":8.542072,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.232558,"dist_to_hod_atr":0.590992,"atr":0.033841,"spread_atr":0.886489,"own_change_pct":-0.407688,"rel_strength_pct":{"SPY":-0.41165,"IWM":-0.425213}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.088274},"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":"0aaa573083ea","ts":"2026-09-15T18:43:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":2.0,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.87,"vwap":9.7237,"ext_from_open_pct":4.44,"max_ext_allowed_pct":4.0,"volume_pace":3.374,"trend":"flat","recent_slope_pct":-0.1006,"volatility":"low"},"price":9.87,"volume":{"bars":313,"last_bar_volume":11366.0,"baseline_avg":2834.2,"bar_rvol":4.010303,"raw_accel":0.659028,"smooth_accel":4.78635,"accel_momentum":3.78382,"rvol_3bar":[3.116344,2.700114,4.010303],"trend_3bar":"MIXED","projected_rvol":1.464579},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":948.0,"sell_vol":1044.0,"unclassified_vol":0.0,"imbalance":-0.048193,"bid":9.86,"ask":9.88,"spread_pct":0.202634,"quote_size_imbalance":null,"quote_age_s":2.713514},"context":{"vwap":9.723476,"price_vs_vwap_pct":1.506908,"ema9":9.925416,"ema20":9.938494,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.235294,"dist_to_hod_atr":8.850977,"atr":0.037284,"spread_atr":0.536423,"own_change_pct":-0.498492,"rel_strength_pct":{"SPY":-0.502454,"IWM":-0.516017}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.193268},"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":"8d3c9ec2988d","ts":"2026-09-15T18:44:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6603,"target":10.935,"target_label":"prev_day_high","reward_risk":0.85,"pos_in_5d_range_pct":46.4,"room_to_5d_high_atr":1.16},"price":10.8085,"vwap":10.6001,"ext_from_open_pct":3.83,"max_ext_allowed_pct":4.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":0.0381,"volatility":"medium"},"price":10.8085,"volume":{"bars":314,"last_bar_volume":10463.0,"baseline_avg":16364.3,"bar_rvol":0.63938,"raw_accel":-0.003714,"smooth_accel":0.345387,"accel_momentum":0.049459,"rvol_3bar":[2.450779,0.637704,0.63938],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":49,"trade_rate":1.633333,"buy_vol":3129.0,"sell_vol":2346.0,"unclassified_vol":0.0,"imbalance":0.143014,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.832451},"context":{"vwap":10.600136,"price_vs_vwap_pct":1.965675,"ema9":10.816587,"ema20":10.830427,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.202011,"dist_to_hod_atr":3.448729,"atr":0.03813,"spread_atr":0.262261,"own_change_pct":-0.060102,"rel_strength_pct":{"SPY":-0.054806,"IWM":-0.056597}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.09144},"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":"db6c3b3c9345","ts":"2026-09-15T18:44:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6468,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.795,"vwap":10.6002,"ext_from_open_pct":3.7,"max_ext_allowed_pct":3.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":0.0131,"volatility":"medium"},"price":10.795,"volume":{"bars":314,"last_bar_volume":10463.0,"baseline_avg":16364.3,"bar_rvol":0.63938,"raw_accel":-0.003714,"smooth_accel":0.345387,"accel_momentum":0.049459,"rvol_3bar":[2.450779,0.637704,0.63938],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":3064.0,"sell_vol":2797.0,"unclassified_vol":0.0,"imbalance":0.045555,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.149445},"context":{"vwap":10.600136,"price_vs_vwap_pct":1.838318,"ema9":10.816587,"ema20":10.830427,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.325411,"dist_to_hod_atr":3.802781,"atr":0.03813,"spread_atr":0.262261,"own_change_pct":-0.060102,"rel_strength_pct":{"SPY":-0.054806,"IWM":-0.056597}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.029127},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"a199057efd35","ts":"2026-09-15T18:44:20+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.6468,"target":10.935,"target_label":"prev_day_high","reward_risk":0.94,"pos_in_5d_range_pct":45.4,"room_to_5d_high_atr":1.19},"price":10.795,"vwap":10.6002,"ext_from_open_pct":3.7,"max_ext_allowed_pct":4.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":0.0131,"volatility":"medium"},"price":10.795,"volume":{"bars":314,"last_bar_volume":10463.0,"baseline_avg":16364.3,"bar_rvol":0.63938,"raw_accel":-0.003714,"smooth_accel":0.345387,"accel_momentum":0.049459,"rvol_3bar":[2.450779,0.637704,0.63938],"trend_3bar":"MIXED","projected_rvol":0.573443},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":5442.0,"sell_vol":1880.0,"unclassified_vol":0.0,"imbalance":0.486479,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.190888},"context":{"vwap":10.600136,"price_vs_vwap_pct":1.838318,"ema9":10.816587,"ema20":10.830427,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.325411,"dist_to_hod_atr":3.802781,"atr":0.03813,"spread_atr":0.262261,"own_change_pct":-0.060102,"rel_strength_pct":{"SPY":-0.054806,"IWM":-0.056597}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.311045},"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":"152f3729c62c","ts":"2026-09-15T18:44:25+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.3592,"target":8.6,"target_label":"ceiling","reward_risk":0.26,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-1.11},"price":8.5502,"vwap":8.2096,"ext_from_open_pct":11.62,"max_ext_allowed_pct":3.0,"volume_pace":0.263,"trend":"flat","recent_slope_pct":0.0475,"volatility":"high"},"price":8.5502,"volume":{"bars":313,"last_bar_volume":704.0,"baseline_avg":1182.2,"bar_rvol":0.5955,"raw_accel":1.382,"smooth_accel":-0.098602,"accel_momentum":0.694252,"rvol_3bar":[0.303004,0.088274,0.5955],"trend_3bar":"MIXED","projected_rvol":0.052783},"flow":{"window_s":30,"trades":1,"trade_rate":0.033333,"buy_vol":0.0,"sell_vol":26.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":8.55,"ask":8.58,"spread_pct":0.350263,"quote_size_imbalance":null,"quote_age_s":30.681981},"context":{"vwap":8.209587,"price_vs_vwap_pct":4.148967,"ema9":8.556075,"ema20":8.545284,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.57907,"dist_to_hod_atr":1.4717,"atr":0.033838,"spread_atr":0.886566,"own_change_pct":0.243133,"rel_strength_pct":{"SPY":0.248428,"IWM":0.246637}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":0,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.5955},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"f39dac41d36d","ts":"2026-09-15T18:44:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.7% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6419,"target":10.935,"target_label":"prev_day_high","reward_risk":0.98,"pos_in_5d_range_pct":45.0,"room_to_5d_high_atr":1.2},"price":10.7901,"vwap":10.6002,"ext_from_open_pct":3.65,"max_ext_allowed_pct":3.0,"volume_pace":0.881,"trend":"flat","recent_slope_pct":0.004,"volatility":"medium"},"price":10.7901,"volume":{"bars":314,"last_bar_volume":10463.0,"baseline_avg":16364.3,"bar_rvol":0.63938,"raw_accel":-0.003714,"smooth_accel":0.345387,"accel_momentum":0.049459,"rvol_3bar":[2.450779,0.637704,0.63938],"trend_3bar":"MIXED","projected_rvol":0.558484},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":2688.0,"sell_vol":1440.0,"unclassified_vol":0.0,"imbalance":0.302326,"bid":10.79,"ask":10.8,"spread_pct":0.092635,"quote_size_imbalance":null,"quote_age_s":0.167936},"context":{"vwap":10.600136,"price_vs_vwap_pct":1.792093,"ema9":10.816587,"ema20":10.830427,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.370201,"dist_to_hod_atr":3.931289,"atr":0.03813,"spread_atr":0.262261,"own_change_pct":-0.060102,"rel_strength_pct":{"SPY":-0.054806,"IWM":-0.056597}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.193301},"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":"b72c12bfc00d","ts":"2026-09-15T18:45:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3666,"target":8.7176,"target_label":"clear air (typical 60-min move)","reward_risk":0.84,"pos_in_5d_range_pct":130.7,"room_to_5d_high_atr":-1.12},"price":8.5576,"vwap":8.2112,"ext_from_open_pct":11.72,"max_ext_allowed_pct":4.0,"volume_pace":0.263,"trend":"flat","recent_slope_pct":0.0178,"volatility":"high"},"price":8.5576,"volume":{"bars":314,"last_bar_volume":3719.0,"baseline_avg":952.8,"bar_rvol":3.903233,"raw_accel":4.28267,"smooth_accel":7.367837,"accel_momentum":7.46644,"rvol_3bar":[0.088274,0.5955,3.903233],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":74.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":13.683004},"context":{"vwap":8.21119,"price_vs_vwap_pct":4.218761,"ema9":8.55486,"ema20":8.545733,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.493023,"dist_to_hod_atr":1.247847,"atr":0.033979,"spread_atr":1.471517,"own_change_pct":-0.058445,"rel_strength_pct":{"SPY":-0.049202,"IWM":-0.037418}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.903233},"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":"9261c7a02256","ts":"2026-09-15T18:45:15+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.359,"target":8.6,"target_label":"ceiling","reward_risk":0.26,"pos_in_5d_range_pct":130.5,"room_to_5d_high_atr":-1.11},"price":8.55,"vwap":8.2113,"ext_from_open_pct":11.62,"max_ext_allowed_pct":3.0,"volume_pace":0.263,"trend":"flat","recent_slope_pct":0.0,"volatility":"high"},"price":8.55,"volume":{"bars":314,"last_bar_volume":3719.0,"baseline_avg":952.8,"bar_rvol":3.903233,"raw_accel":4.28267,"smooth_accel":7.367837,"accel_momentum":7.46644,"rvol_3bar":[0.088274,0.5955,3.903233],"trend_3bar":"ACCELERATING","projected_rvol":0.680101},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":79.0,"sell_vol":156.0,"unclassified_vol":0.0,"imbalance":-0.32766,"bid":8.51,"ask":8.56,"spread_pct":0.585823,"quote_size_imbalance":null,"quote_age_s":0.404099},"context":{"vwap":8.21119,"price_vs_vwap_pct":4.126205,"ema9":8.55486,"ema20":8.545733,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.581395,"dist_to_hod_atr":1.471517,"atr":0.033979,"spread_atr":1.471517,"own_change_pct":-0.058445,"rel_strength_pct":{"SPY":-0.049202,"IWM":-0.037418}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.278932},"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":"3f20e049bb76","ts":"2026-09-15T18:45:40+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7721,"target":7.91,"target_label":"prev_day_high","reward_risk":0.57,"pos_in_5d_range_pct":73.4,"room_to_5d_high_atr":0.41},"price":7.86,"vwap":7.7783,"ext_from_open_pct":2.08,"max_ext_allowed_pct":3.0,"volume_pace":0.536,"trend":"flat","recent_slope_pct":-0.0291,"volatility":"medium"},"price":7.86,"volume":{"bars":315,"last_bar_volume":3850.0,"baseline_avg":13174.0,"bar_rvol":0.292242,"raw_accel":-0.726873,"smooth_accel":-0.414349,"accel_momentum":-0.141393,"rvol_3bar":[3.161864,1.012833,0.292242],"trend_3bar":"DECELERATING","projected_rvol":7.336838},"flow":{"window_s":30,"trades":125,"trade_rate":4.166667,"buy_vol":16185.0,"sell_vol":48154.0,"unclassified_vol":0.0,"imbalance":-0.496884,"bid":7.86,"ask":7.87,"spread_pct":0.127146,"quote_size_imbalance":null,"quote_age_s":0.415811},"context":{"vwap":7.776848,"price_vs_vwap_pct":1.069227,"ema9":7.874624,"ema20":7.872639,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.380228,"dist_to_hod_atr":2.046949,"atr":0.014656,"spread_atr":0.682316,"own_change_pct":0.180528,"rel_strength_pct":{"SPY":0.189772,"IWM":0.201556}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.14521},"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":"7c73e17222dc","ts":"2026-09-15T18:46:05+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2021,"target":9.46,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.29},"price":9.355,"vwap":9.3592,"ext_from_open_pct":0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0327,"volatility":"high"},"price":9.355,"volume":{"bars":316,"last_bar_volume":8253.0,"baseline_avg":3432.3,"bar_rvol":2.40451,"raw_accel":1.58229,"smooth_accel":-0.240329,"accel_momentum":0.218135,"rvol_3bar":[0.186087,0.959169,2.40451],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":1766.0,"sell_vol":1592.0,"unclassified_vol":0.0,"imbalance":0.051817,"bid":9.35,"ask":9.36,"spread_pct":0.106895,"quote_size_imbalance":null,"quote_age_s":1.724315},"context":{"vwap":9.359152,"price_vs_vwap_pct":-0.044366,"ema9":9.368566,"ema20":9.379021,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.836306,"dist_to_hod_atr":9.002305,"atr":0.019439,"spread_atr":0.514417,"own_change_pct":-0.046986,"rel_strength_pct":{"SPY":-0.037742,"IWM":-0.011943}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.124593},"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":"db6f9902f441","ts":"2026-09-15T18:46:05+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.2538,"target":8.59,"target_label":"premarket_high","reward_risk":0.76,"pos_in_5d_range_pct":6.7,"room_to_5d_high_atr":3.83},"price":8.445,"vwap":8.4349,"ext_from_open_pct":0.9,"max_ext_allowed_pct":3.0,"volume_pace":0.723,"trend":"flat","recent_slope_pct":-0.0158,"volatility":"high"},"price":8.445,"volume":{"bars":316,"last_bar_volume":50014.0,"baseline_avg":44556.2,"bar_rvol":1.122492,"raw_accel":-0.435744,"smooth_accel":-0.134469,"accel_momentum":-0.637944,"rvol_3bar":[1.44044,2.09757,1.122492],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":16129.0,"sell_vol":8481.0,"unclassified_vol":0.0,"imbalance":0.310768,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.007019},"context":{"vwap":8.434949,"price_vs_vwap_pct":0.119164,"ema9":8.446851,"ema20":8.465423,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.651297,"dist_to_hod_atr":7.349027,"atr":0.031297,"spread_atr":0.319523,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.009245,"IWM":0.035043}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.348835},"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":"5d3e600116c2","ts":"2026-09-15T18:46:05+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.1806,"target":7.2991,"target_label":"premarket_high","reward_risk":0.14,"pos_in_5d_range_pct":33.1,"room_to_5d_high_atr":1.43},"price":7.285,"vwap":7.2849,"ext_from_open_pct":1.89,"max_ext_allowed_pct":3.0,"volume_pace":0.806,"trend":"flat","recent_slope_pct":-0.1664,"volatility":"medium"},"price":7.285,"volume":{"bars":316,"last_bar_volume":164887.0,"baseline_avg":148969.25,"bar_rvol":1.106853,"raw_accel":1.318499,"smooth_accel":-0.335711,"accel_momentum":-0.899984,"rvol_3bar":[1.284933,0.455799,1.106853],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":155,"trade_rate":5.166667,"buy_vol":45561.0,"sell_vol":16703.0,"unclassified_vol":0.0,"imbalance":0.463478,"bid":7.28,"ask":7.29,"spread_pct":0.137268,"quote_size_imbalance":null,"quote_age_s":1.438229},"context":{"vwap":7.284854,"price_vs_vwap_pct":0.002004,"ema9":7.313808,"ema20":7.31969,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.951548,"dist_to_hod_atr":5.868166,"atr":0.02471,"spread_atr":0.404701,"own_change_pct":-0.068493,"rel_strength_pct":{"SPY":-0.059248,"IWM":-0.03345}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.513002},"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":"69cee4e082ce","ts":"2026-09-15T18:46:15+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2145,"target":9.46,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.27},"price":9.3674,"vwap":9.3592,"ext_from_open_pct":0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0062,"volatility":"high"},"price":9.3674,"volume":{"bars":316,"last_bar_volume":8253.0,"baseline_avg":3432.3,"bar_rvol":2.40451,"raw_accel":1.58229,"smooth_accel":-0.240329,"accel_momentum":0.218135,"rvol_3bar":[0.186087,0.959169,2.40451],"trend_3bar":"ACCELERATING","projected_rvol":0.456837},"flow":{"window_s":30,"trades":53,"trade_rate":1.766667,"buy_vol":1836.0,"sell_vol":1775.0,"unclassified_vol":0.0,"imbalance":0.016893,"bid":9.35,"ask":9.36,"spread_pct":0.106895,"quote_size_imbalance":null,"quote_age_s":1.335575},"context":{"vwap":9.359152,"price_vs_vwap_pct":0.088124,"ema9":9.368566,"ema20":9.379021,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.706191,"dist_to_hod_atr":8.364427,"atr":0.019439,"spread_atr":0.514417,"own_change_pct":-0.046986,"rel_strength_pct":{"SPY":-0.037742,"IWM":-0.011943}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.040619},"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":"e80a26448bd7","ts":"2026-09-15T18:46:20+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.765,"target":7.91,"target_label":"prev_day_high","reward_risk":0.65,"pos_in_5d_range_pct":72.1,"room_to_5d_high_atr":0.43},"price":7.8529,"vwap":7.7787,"ext_from_open_pct":1.99,"max_ext_allowed_pct":3.0,"volume_pace":0.537,"trend":"flat","recent_slope_pct":-0.0624,"volatility":"medium"},"price":7.8529,"volume":{"bars":316,"last_bar_volume":69182.0,"baseline_avg":13153.6,"bar_rvol":5.259549,"raw_accel":16.969351,"smooth_accel":-0.390061,"accel_momentum":0.024288,"rvol_3bar":[1.012833,0.292242,5.259549],"trend_3bar":"MIXED","projected_rvol":2.588189},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":4020.0,"sell_vol":7336.0,"unclassified_vol":0.0,"imbalance":-0.292004,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.189583},"context":{"vwap":7.778481,"price_vs_vwap_pct":0.956734,"ema9":7.875039,"ema20":7.873026,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.470215,"dist_to_hod_atr":2.408784,"atr":0.015402,"spread_atr":0.649268,"own_change_pct":-0.041878,"rel_strength_pct":{"SPY":-0.032633,"IWM":-0.006835}},"vas":{"raw":0,"score":4.4,"components":{"rvol":3,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-1.53581},"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":"b7cc173cc62f","ts":"2026-09-15T18:46:25+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3499,"target":8.5,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":62.1,"room_to_5d_high_atr":0.92},"price":8.44,"vwap":8.3813,"ext_from_open_pct":1.32,"max_ext_allowed_pct":4.0,"volume_pace":0.757,"trend":"flat","recent_slope_pct":-0.0709,"volatility":"medium"},"price":8.44,"volume":{"bars":316,"last_bar_volume":862.0,"baseline_avg":1216.35,"bar_rvol":0.708678,"raw_accel":1.355191,"smooth_accel":0.491629,"accel_momentum":-0.044129,"rvol_3bar":[1.507374,0.304505,0.708678],"trend_3bar":"MIXED","projected_rvol":4.553952},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1892.0,"sell_vol":416.0,"unclassified_vol":0.0,"imbalance":0.639515,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.128488},"context":{"vwap":8.380867,"price_vs_vwap_pct":0.705577,"ema9":8.462331,"ema20":8.466241,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.705882,"dist_to_hod_atr":5.257525,"atr":0.011412,"spread_atr":0.876254,"own_change_pct":-0.118133,"rel_strength_pct":{"SPY":-0.108889,"IWM":-0.08309}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.45321},"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":"4b08f0821e72","ts":"2026-09-15T18:46:25+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.787,"target":7.91,"target_label":"prev_day_high","reward_risk":0.4,"pos_in_5d_range_pct":76.1,"room_to_5d_high_atr":0.37},"price":7.8749,"vwap":7.7787,"ext_from_open_pct":2.27,"max_ext_allowed_pct":3.0,"volume_pace":0.536,"trend":"flat","recent_slope_pct":-0.0065,"volatility":"medium"},"price":7.8749,"volume":{"bars":316,"last_bar_volume":69182.0,"baseline_avg":13153.6,"bar_rvol":5.259549,"raw_accel":16.969351,"smooth_accel":-0.390061,"accel_momentum":0.024288,"rvol_3bar":[1.012833,0.292242,5.259549],"trend_3bar":"MIXED","projected_rvol":2.071098},"flow":{"window_s":30,"trades":60,"trade_rate":2.0,"buy_vol":4016.0,"sell_vol":7336.0,"unclassified_vol":0.0,"imbalance":-0.292459,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":1.981176},"context":{"vwap":7.778481,"price_vs_vwap_pct":1.239566,"ema9":7.875039,"ema20":7.873026,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.191381,"dist_to_hod_atr":0.980394,"atr":0.015402,"spread_atr":0.649268,"own_change_pct":-0.041878,"rel_strength_pct":{"SPY":-0.032633,"IWM":-0.006835}},"vas":{"raw":0,"score":4.4,"components":{"rvol":3,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-1.538205},"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":"9f15b5a7c857","ts":"2026-09-15T18:46:25+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2021,"target":9.46,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.29},"price":9.355,"vwap":9.3592,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0327,"volatility":"high"},"price":9.355,"volume":{"bars":316,"last_bar_volume":8253.0,"baseline_avg":3432.3,"bar_rvol":2.40451,"raw_accel":1.58229,"smooth_accel":-0.240329,"accel_momentum":0.218135,"rvol_3bar":[0.186087,0.959169,2.40451],"trend_3bar":"ACCELERATING","projected_rvol":0.437724},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":622.0,"sell_vol":1900.0,"unclassified_vol":0.0,"imbalance":-0.506741,"bid":9.35,"ask":9.36,"spread_pct":0.106895,"quote_size_imbalance":null,"quote_age_s":0.481054},"context":{"vwap":9.359152,"price_vs_vwap_pct":-0.044366,"ema9":9.368566,"ema20":9.379021,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.836306,"dist_to_hod_atr":9.002305,"atr":0.019439,"spread_atr":0.514417,"own_change_pct":-0.046986,"rel_strength_pct":{"SPY":-0.037742,"IWM":-0.011943}},"vas":{"raw":0,"score":4.4,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.218463},"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":"09329122516f","ts":"2026-09-15T18:46:30+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2157,"target":9.46,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.27},"price":9.3686,"vwap":9.3592,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0036,"volatility":"high"},"price":9.3686,"volume":{"bars":316,"last_bar_volume":8253.0,"baseline_avg":3432.3,"bar_rvol":2.40451,"raw_accel":1.58229,"smooth_accel":-0.240329,"accel_momentum":0.218135,"rvol_3bar":[0.186087,0.959169,2.40451],"trend_3bar":"ACCELERATING","projected_rvol":0.368266},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":244.0,"sell_vol":388.0,"unclassified_vol":0.0,"imbalance":-0.227848,"bid":9.35,"ask":9.36,"spread_pct":0.106895,"quote_size_imbalance":null,"quote_age_s":5.481054},"context":{"vwap":9.359152,"price_vs_vwap_pct":0.100946,"ema9":9.368566,"ema20":9.379021,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.693599,"dist_to_hod_atr":8.302697,"atr":0.019439,"spread_atr":0.514417,"own_change_pct":-0.046986,"rel_strength_pct":{"SPY":-0.037742,"IWM":-0.011943}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.547863},"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":"1d012552db42","ts":"2026-09-15T18:46:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":2.53,"pos_in_5d_range_pct":485.1,"room_to_5d_high_atr":-5.55},"price":9.855,"vwap":9.7243,"ext_from_open_pct":4.29,"max_ext_allowed_pct":5.0,"volume_pace":3.36,"trend":"flat","recent_slope_pct":-0.1016,"volatility":"low"},"price":9.855,"volume":{"bars":316,"last_bar_volume":8512.0,"baseline_avg":3250.45,"bar_rvol":2.618714,"raw_accel":5.245048,"smooth_accel":-0.460355,"accel_momentum":-0.620962,"rvol_3bar":[1.150155,0.417285,2.618714],"trend_3bar":"MIXED","projected_rvol":0.527927},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":656.0,"sell_vol":185.0,"unclassified_vol":0.0,"imbalance":0.560048,"bid":9.84,"ask":9.87,"spread_pct":0.304414,"quote_size_imbalance":null,"quote_age_s":4.986262},"context":{"vwap":9.724266,"price_vs_vwap_pct":1.344411,"ema9":9.892493,"ema20":9.917679,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.382353,"dist_to_hod_atr":8.997748,"atr":0.038343,"spread_atr":0.782413,"own_change_pct":-0.39798,"rel_strength_pct":{"SPY":-0.388735,"IWM":-0.362936}},"vas":{"raw":1,"score":5.0,"components":{"rvol":2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.466605},"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":"206efe6e9f03","ts":"2026-09-15T18:46:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7799,"ext_from_open_pct":1.88,"max_ext_allowed_pct":3.0,"volume_pace":0.545,"trend":"flat","recent_slope_pct":-0.0825,"volatility":"medium"},"price":7.845,"volume":{"bars":316,"last_bar_volume":69182.0,"baseline_avg":13153.6,"bar_rvol":5.259549,"raw_accel":16.969351,"smooth_accel":-0.390061,"accel_momentum":0.024288,"rvol_3bar":[1.012833,0.292242,5.259549],"trend_3bar":"MIXED","projected_rvol":10.622535},"flow":{"window_s":30,"trades":158,"trade_rate":5.266667,"buy_vol":20485.0,"sell_vol":59160.0,"unclassified_vol":0.0,"imbalance":-0.485592,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":2.77005},"context":{"vwap":7.778481,"price_vs_vwap_pct":0.855172,"ema9":7.875039,"ema20":7.873026,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.570342,"dist_to_hod_atr":2.921705,"atr":0.015402,"spread_atr":0.649268,"own_change_pct":-0.041878,"rel_strength_pct":{"SPY":-0.032633,"IWM":-0.006835}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":3,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-2.553996},"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":"f73a2d2ebca2","ts":"2026-09-15T18:46:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":3.29,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.7244,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":3.361,"trend":"flat","recent_slope_pct":-0.132,"volatility":"low"},"price":9.84,"volume":{"bars":316,"last_bar_volume":8512.0,"baseline_avg":3250.45,"bar_rvol":2.618714,"raw_accel":5.245048,"smooth_accel":-0.460355,"accel_momentum":-0.620962,"rvol_3bar":[1.150155,0.417285,2.618714],"trend_3bar":"MIXED","projected_rvol":1.224036},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":474.0,"sell_vol":1638.0,"unclassified_vol":0.0,"imbalance":-0.551136,"bid":9.81,"ask":9.84,"spread_pct":0.305344,"quote_size_imbalance":null,"quote_age_s":0.495875},"context":{"vwap":9.724266,"price_vs_vwap_pct":1.190158,"ema9":9.892493,"ema20":9.917679,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":9.388955,"atr":0.038343,"spread_atr":0.782413,"own_change_pct":-0.39798,"rel_strength_pct":{"SPY":-0.388735,"IWM":-0.362936}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.443269},"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":"5b6181cdc20a","ts":"2026-09-15T18:46:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7608,"target":10.07,"target_label":"ceiling","reward_risk":3.82,"pos_in_5d_range_pct":477.0,"room_to_5d_high_atr":-5.43},"price":9.825,"vwap":9.7245,"ext_from_open_pct":3.97,"max_ext_allowed_pct":4.0,"volume_pace":3.36,"trend":"flat","recent_slope_pct":-0.1625,"volatility":"low"},"price":9.825,"volume":{"bars":316,"last_bar_volume":8512.0,"baseline_avg":3250.45,"bar_rvol":2.618714,"raw_accel":5.245048,"smooth_accel":-0.460355,"accel_momentum":-0.620962,"rvol_3bar":[1.150155,0.417285,2.618714],"trend_3bar":"MIXED","projected_rvol":1.274341},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":475.0,"sell_vol":2350.0,"unclassified_vol":0.0,"imbalance":-0.663717,"bid":9.81,"ask":9.84,"spread_pct":0.305344,"quote_size_imbalance":null,"quote_age_s":10.495875},"context":{"vwap":9.724266,"price_vs_vwap_pct":1.035905,"ema9":9.892493,"ema20":9.917679,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.676471,"dist_to_hod_atr":9.780161,"atr":0.038343,"spread_atr":0.782413,"own_change_pct":-0.39798,"rel_strength_pct":{"SPY":-0.388735,"IWM":-0.362936}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.738085},"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":"24707f200d6b","ts":"2026-09-15T18:46:55+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.35 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.1971,"target":9.46,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":5.2,"room_to_5d_high_atr":3.3},"price":9.35,"vwap":9.3591,"ext_from_open_pct":0.0,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0434,"volatility":"high"},"price":9.35,"volume":{"bars":316,"last_bar_volume":8253.0,"baseline_avg":3432.3,"bar_rvol":2.40451,"raw_accel":1.58229,"smooth_accel":-0.240329,"accel_momentum":0.218135,"rvol_3bar":[0.186087,0.959169,2.40451],"trend_3bar":"ACCELERATING","projected_rvol":2.139355},"flow":{"window_s":30,"trades":75,"trade_rate":2.5,"buy_vol":3655.0,"sell_vol":2450.0,"unclassified_vol":0.0,"imbalance":0.197379,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":0.137702},"context":{"vwap":9.359152,"price_vs_vwap_pct":-0.09779,"ema9":9.368566,"ema20":9.379021,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.888772,"dist_to_hod_atr":9.259513,"atr":0.019439,"spread_atr":0.514417,"own_change_pct":-0.046986,"rel_strength_pct":{"SPY":-0.037742,"IWM":-0.011943}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.4746},"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":"6bd3481a7995","ts":"2026-09-15T18:47:00+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":7.7763,"target":7.91,"target_label":"prev_day_high","reward_risk":0.52,"pos_in_5d_range_pct":74.2,"room_to_5d_high_atr":0.4},"price":7.8642,"vwap":7.7802,"ext_from_open_pct":2.13,"max_ext_allowed_pct":4.0,"volume_pace":0.546,"trend":"flat","recent_slope_pct":-0.0337,"volatility":"medium"},"price":7.8642,"volume":{"bars":316,"last_bar_volume":69182.0,"baseline_avg":13153.6,"bar_rvol":5.259549,"raw_accel":16.969351,"smooth_accel":-0.390061,"accel_momentum":0.024288,"rvol_3bar":[1.012833,0.292242,5.259549],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":6787.0,"sell_vol":2031.0,"unclassified_vol":0.0,"imbalance":0.539351,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.557584},"context":{"vwap":7.778481,"price_vs_vwap_pct":1.102007,"ema9":7.875039,"ema20":7.873026,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.326996,"dist_to_hod_atr":1.675111,"atr":0.015402,"spread_atr":0.649268,"own_change_pct":-0.041878,"rel_strength_pct":{"SPY":0.018849,"IWM":0.068445}},"vas":{"raw":3,"score":6.2,"components":{"rvol":3,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":2.836745},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"159340e4a1d7","ts":"2026-09-15T18:47:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.7802,"ext_from_open_pct":1.95,"max_ext_allowed_pct":4.0,"volume_pace":0.545,"trend":"flat","recent_slope_pct":-0.0836,"volatility":"medium"},"price":7.85,"volume":{"bars":317,"last_bar_volume":88963.0,"baseline_avg":16314.65,"bar_rvol":5.452952,"raw_accel":0.285927,"smooth_accel":1.401135,"accel_momentum":1.791196,"rvol_3bar":[0.292242,5.259549,5.452952],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":6861.0,"sell_vol":670.0,"unclassified_vol":0.0,"imbalance":0.822069,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":0.110092},"context":{"vwap":7.780206,"price_vs_vwap_pct":0.897077,"ema9":7.872871,"ema20":7.872185,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.506971,"dist_to_hod_atr":2.363612,"atr":0.016923,"spread_atr":0.590903,"own_change_pct":-0.102892,"rel_strength_pct":{"SPY":-0.042166,"IWM":0.007431}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.482701},"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":"9e2b26e0b307","ts":"2026-09-15T18:47:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2113,"target":9.46,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":5.8,"room_to_5d_high_atr":3.28},"price":9.3642,"vwap":9.3591,"ext_from_open_pct":0.15,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0089,"volatility":"high"},"price":9.3642,"volume":{"bars":317,"last_bar_volume":6731.0,"baseline_avg":3795.15,"bar_rvol":1.773579,"raw_accel":-0.184418,"smooth_accel":0.849817,"accel_momentum":1.090146,"rvol_3bar":[0.959169,2.40451,1.773579],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":77,"trade_rate":2.566667,"buy_vol":3674.0,"sell_vol":2434.0,"unclassified_vol":0.0,"imbalance":0.203012,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":1.366004},"context":{"vwap":9.359133,"price_vs_vwap_pct":0.054135,"ema9":9.364853,"ema20":9.376257,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.739769,"dist_to_hod_atr":8.245443,"atr":0.020108,"spread_atr":0.497313,"own_change_pct":-0.181488,"rel_strength_pct":{"SPY":-0.120761,"IWM":-0.071165}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.360059},"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":"d2acacddf050","ts":"2026-09-15T18:47:10+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.35 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.1921,"target":9.46,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":4.9,"room_to_5d_high_atr":3.31},"price":9.345,"vwap":9.3591,"ext_from_open_pct":-0.05,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0499,"volatility":"high"},"price":9.345,"volume":{"bars":317,"last_bar_volume":6731.0,"baseline_avg":3795.15,"bar_rvol":1.773579,"raw_accel":-0.184418,"smooth_accel":0.849817,"accel_momentum":1.090146,"rvol_3bar":[0.959169,2.40451,1.773579],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":78,"trade_rate":2.6,"buy_vol":3844.0,"sell_vol":2434.0,"unclassified_vol":0.0,"imbalance":0.224594,"bid":9.34,"ask":9.35,"spread_pct":0.107009,"quote_size_imbalance":null,"quote_age_s":1.134375},"context":{"vwap":9.359133,"price_vs_vwap_pct":-0.151012,"ema9":9.364853,"ema20":9.376257,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.941238,"dist_to_hod_atr":9.200284,"atr":0.020108,"spread_atr":0.497313,"own_change_pct":-0.181488,"rel_strength_pct":{"SPY":-0.120761,"IWM":-0.071165}},"vas":{"raw":6,"score":8.1,"components":{"rvol":1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.398335},"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":"c9147661a5a4","ts":"2026-09-15T18:47:30+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3789,"target":8.724,"target_label":"clear air (typical 60-min move)","reward_risk":0.81,"pos_in_5d_range_pct":131.2,"room_to_5d_high_atr":-1.14},"price":8.5699,"vwap":8.2125,"ext_from_open_pct":11.88,"max_ext_allowed_pct":4.0,"volume_pace":0.262,"trend":"flat","recent_slope_pct":-0.0546,"volatility":"high"},"price":8.5699,"volume":{"bars":316,"last_bar_volume":1931.0,"baseline_avg":802.45,"bar_rvol":2.40638,"raw_accel":0.503894,"smooth_accel":4.972438,"accel_momentum":-5.746248,"rvol_3bar":[3.903233,1.213955,2.40638],"trend_3bar":"MIXED","projected_rvol":0.122126},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":49.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":53.710708},"context":{"vwap":8.212467,"price_vs_vwap_pct":4.352316,"ema9":8.54453,"ema20":8.542322,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.35,"dist_to_hod_atr":0.845279,"atr":0.03561,"spread_atr":1.404118,"own_change_pct":-0.408187,"rel_strength_pct":{"SPY":-0.34746,"IWM":-0.297864}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.40638},"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":"b50f95e7b97a","ts":"2026-09-15T18:47:35+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.3453,"target":8.6,"target_label":"ceiling","reward_risk":0.33,"pos_in_5d_range_pct":130.0,"room_to_5d_high_atr":-1.09},"price":8.5363,"vwap":8.2126,"ext_from_open_pct":11.44,"max_ext_allowed_pct":3.0,"volume_pace":0.262,"trend":"flat","recent_slope_pct":-0.1333,"volatility":"high"},"price":8.5363,"volume":{"bars":316,"last_bar_volume":1931.0,"baseline_avg":802.45,"bar_rvol":2.40638,"raw_accel":0.503894,"smooth_accel":4.972438,"accel_momentum":-5.746248,"rvol_3bar":[3.903233,1.213955,2.40638],"trend_3bar":"MIXED","projected_rvol":0.465717},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":49.0,"sell_vol":169.0,"unclassified_vol":0.0,"imbalance":-0.550459,"bid":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":58.710708},"context":{"vwap":8.212467,"price_vs_vwap_pct":3.943182,"ema9":8.54453,"ema20":8.542322,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.740698,"dist_to_hod_atr":1.788846,"atr":0.03561,"spread_atr":1.404118,"own_change_pct":-0.408187,"rel_strength_pct":{"SPY":-0.34746,"IWM":-0.297864}},"vas":{"raw":2,"score":5.6,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-1.324613},"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":"b800112df9fd","ts":"2026-09-15T18:47:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.735,"target":10.07,"target_label":"ceiling","reward_risk":2.35,"pos_in_5d_range_pct":479.7,"room_to_5d_high_atr":-5.47},"price":9.835,"vwap":9.7246,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":3.355,"trend":"flat","recent_slope_pct":-0.0914,"volatility":"low"},"price":9.835,"volume":{"bars":317,"last_bar_volume":3797.0,"baseline_avg":3398.0,"bar_rvol":1.117422,"raw_accel":-0.553924,"smooth_accel":-0.379166,"accel_momentum":0.081189,"rvol_3bar":[0.417285,2.618714,1.117422],"trend_3bar":"MIXED","projected_rvol":0.856975},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":1439.0,"sell_vol":410.0,"unclassified_vol":0.0,"imbalance":0.556517,"bid":9.81,"ask":9.86,"spread_pct":0.508388,"quote_size_imbalance":null,"quote_age_s":12.052074},"context":{"vwap":9.724459,"price_vs_vwap_pct":1.136732,"ema9":9.878994,"ema20":9.908853,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.578431,"dist_to_hod_atr":8.954575,"atr":0.040761,"spread_atr":1.226654,"own_change_pct":-0.957661,"rel_strength_pct":{"SPY":-0.896934,"IWM":-0.847338}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.621864},"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":"15b837ed00e9","ts":"2026-09-15T18:47:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7165,"target":10.07,"target_label":"ceiling","reward_risk":2.54,"pos_in_5d_range_pct":474.7,"room_to_5d_high_atr":-5.4},"price":9.8165,"vwap":9.7246,"ext_from_open_pct":3.88,"max_ext_allowed_pct":4.0,"volume_pace":3.353,"trend":"flat","recent_slope_pct":-0.129,"volatility":"low"},"price":9.8165,"volume":{"bars":317,"last_bar_volume":3797.0,"baseline_avg":3398.0,"bar_rvol":1.117422,"raw_accel":-0.553924,"smooth_accel":-0.379166,"accel_momentum":0.081189,"rvol_3bar":[0.417285,2.618714,1.117422],"trend_3bar":"MIXED","projected_rvol":0.701482},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":539.0,"sell_vol":211.0,"unclassified_vol":0.0,"imbalance":0.437333,"bid":9.81,"ask":9.86,"spread_pct":0.508388,"quote_size_imbalance":null,"quote_age_s":7.642193},"context":{"vwap":9.724459,"price_vs_vwap_pct":0.94649,"ema9":9.878994,"ema20":9.908853,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.759804,"dist_to_hod_atr":9.408437,"atr":0.040761,"spread_atr":1.226654,"own_change_pct":-0.957661,"rel_strength_pct":{"SPY":-0.896934,"IWM":-0.847338}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.488686},"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":"d57c426b335a","ts":"2026-09-15T18:48:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7343,"target":10.07,"target_label":"ceiling","reward_risk":2.36,"pos_in_5d_range_pct":479.5,"room_to_5d_high_atr":-5.47},"price":9.8343,"vwap":9.7246,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":3.352,"trend":"flat","recent_slope_pct":-0.0928,"volatility":"low"},"price":9.8343,"volume":{"bars":317,"last_bar_volume":3797.0,"baseline_avg":3398.0,"bar_rvol":1.117422,"raw_accel":-0.553924,"smooth_accel":-0.379166,"accel_momentum":0.081189,"rvol_3bar":[0.417285,2.618714,1.117422],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":541.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":0.458221,"bid":9.81,"ask":9.86,"spread_pct":0.508388,"quote_size_imbalance":null,"quote_age_s":12.642193},"context":{"vwap":9.724459,"price_vs_vwap_pct":1.129534,"ema9":9.878994,"ema20":9.908853,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.585294,"dist_to_hod_atr":8.971748,"atr":0.040761,"spread_atr":1.226654,"own_change_pct":-0.957661,"rel_strength_pct":{"SPY":-0.912763,"IWM":-0.891079}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.512026},"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":"10616351b563","ts":"2026-09-15T18:48:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.76,"target":10.07,"target_label":"ceiling","reward_risk":2.1,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.7246,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":3.351,"trend":"flat","recent_slope_pct":0.0038,"volatility":"low"},"price":9.86,"volume":{"bars":318,"last_bar_volume":2187.0,"baseline_avg":3396.5,"bar_rvol":0.643898,"raw_accel":-0.424019,"smooth_accel":-0.123261,"accel_momentum":0.255905,"rvol_3bar":[2.618714,1.117422,0.643898],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":32.0,"sell_vol":201.0,"unclassified_vol":0.0,"imbalance":-0.725322,"bid":9.81,"ask":9.86,"spread_pct":0.508388,"quote_size_imbalance":null,"quote_age_s":4.986197},"context":{"vwap":9.724556,"price_vs_vwap_pct":1.392804,"ema9":9.870056,"ema20":9.901752,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":8.26537,"atr":0.041135,"spread_atr":1.215496,"own_change_pct":-0.66765,"rel_strength_pct":{"SPY":-0.622751,"IWM":-0.601067}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.467033},"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":"d7cd77ca0f52","ts":"2026-09-15T18:48:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7692,"target":7.91,"target_label":"prev_day_high","reward_risk":0.6,"pos_in_5d_range_pct":72.9,"room_to_5d_high_atr":0.42},"price":7.8571,"vwap":7.7804,"ext_from_open_pct":2.04,"max_ext_allowed_pct":3.0,"volume_pace":0.546,"trend":"flat","recent_slope_pct":-0.1007,"volatility":"medium"},"price":7.8571,"volume":{"bars":318,"last_bar_volume":14533.0,"baseline_avg":20585.55,"bar_rvol":0.705981,"raw_accel":-0.83664,"smooth_accel":1.860186,"accel_momentum":0.45905,"rvol_3bar":[5.259549,5.452952,0.705981],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":58,"trade_rate":1.933333,"buy_vol":1348.0,"sell_vol":4093.0,"unclassified_vol":0.0,"imbalance":-0.504503,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":1.25278},"context":{"vwap":7.780447,"price_vs_vwap_pct":0.985205,"ema9":7.866957,"ema20":7.869434,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.416984,"dist_to_hod_atr":1.863251,"atr":0.017657,"spread_atr":0.566338,"own_change_pct":-0.444258,"rel_strength_pct":{"SPY":-0.39936,"IWM":-0.377676}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.356169},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c4ea157d7cea","ts":"2026-09-15T18:48:10+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4136,"target":9.87,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.558,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.691,"trend":"flat","recent_slope_pct":0.0628,"volatility":"high"},"price":9.565,"volume":{"bars":318,"last_bar_volume":2240.0,"baseline_avg":7481.45,"bar_rvol":0.299407,"raw_accel":-0.836758,"smooth_accel":3.566158,"accel_momentum":3.358686,"rvol_3bar":[4.056561,1.70764,0.299407],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":61.0,"sell_vol":439.0,"unclassified_vol":0.0,"imbalance":-0.756,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":2.285828},"context":{"vwap":9.558031,"price_vs_vwap_pct":0.072915,"ema9":9.554622,"ema20":9.553106,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":12.825572,"atr":0.020662,"spread_atr":0.483984,"own_change_pct":0.053348,"rel_strength_pct":{"SPY":0.098247,"IWM":0.11993}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.226352},"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":"fa5a3a05c19b","ts":"2026-09-15T18:48:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7345,"target":10.07,"target_label":"ceiling","reward_risk":2.36,"pos_in_5d_range_pct":479.6,"room_to_5d_high_atr":-5.47},"price":9.8345,"vwap":9.7246,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":3.349,"trend":"flat","recent_slope_pct":-0.0481,"volatility":"low"},"price":9.8345,"volume":{"bars":318,"last_bar_volume":2187.0,"baseline_avg":3396.5,"bar_rvol":0.643898,"raw_accel":-0.424019,"smooth_accel":-0.123261,"accel_momentum":0.255905,"rvol_3bar":[2.618714,1.117422,0.643898],"trend_3bar":"DECELERATING","projected_rvol":0.023554},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":17.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.478261,"bid":9.81,"ask":9.86,"spread_pct":0.508388,"quote_size_imbalance":null,"quote_age_s":1.915844},"context":{"vwap":9.724556,"price_vs_vwap_pct":1.130582,"ema9":9.870056,"ema20":9.901752,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.583333,"dist_to_hod_atr":8.885273,"atr":0.041135,"spread_atr":1.215496,"own_change_pct":-0.66765,"rel_strength_pct":{"SPY":-0.622751,"IWM":-0.601067}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.307951},"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":"5e7a29db424f","ts":"2026-09-15T18:48:35+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7471,"target":7.89,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.48},"price":7.835,"vwap":7.781,"ext_from_open_pct":1.75,"max_ext_allowed_pct":3.0,"volume_pace":0.55,"trend":"flat","recent_slope_pct":-0.157,"volatility":"medium"},"price":7.835,"volume":{"bars":318,"last_bar_volume":14533.0,"baseline_avg":20585.55,"bar_rvol":0.705981,"raw_accel":-0.83664,"smooth_accel":1.860186,"accel_momentum":0.45905,"rvol_3bar":[5.259549,5.452952,0.705981],"trend_3bar":"MIXED","projected_rvol":3.109615},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":14925.0,"sell_vol":22415.0,"unclassified_vol":0.0,"imbalance":-0.200589,"bid":7.83,"ask":7.84,"spread_pct":0.127632,"quote_size_imbalance":null,"quote_age_s":0.117106},"context":{"vwap":7.780447,"price_vs_vwap_pct":0.70116,"ema9":7.866957,"ema20":7.869434,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.697085,"dist_to_hod_atr":3.114858,"atr":0.017657,"spread_atr":0.566338,"own_change_pct":-0.444258,"rel_strength_pct":{"SPY":-0.39936,"IWM":-0.377676}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.141612},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"12bbbb4cf7fd","ts":"2026-09-15T18:48:45+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3729,"target":8.7159,"target_label":"clear air (typical 60-min move)","reward_risk":0.8,"pos_in_5d_range_pct":131.0,"room_to_5d_high_atr":-1.13},"price":8.5639,"vwap":8.2126,"ext_from_open_pct":11.8,"max_ext_allowed_pct":4.0,"volume_pace":0.262,"trend":"flat","recent_slope_pct":0.0325,"volatility":"high"},"price":8.5639,"volume":{"bars":317,"last_bar_volume":220.0,"baseline_avg":850.45,"bar_rvol":0.258687,"raw_accel":-0.886069,"smooth_accel":-0.241219,"accel_momentum":-5.213657,"rvol_3bar":[1.213955,2.40638,0.258687],"trend_3bar":"MIXED","projected_rvol":0.003136},"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":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":50.218857},"context":{"vwap":8.212561,"price_vs_vwap_pct":4.278072,"ema9":8.543624,"ema20":8.542101,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.419767,"dist_to_hod_atr":0.976195,"atr":0.03698,"spread_atr":1.352071,"own_change_pct":-0.116959,"rel_strength_pct":{"SPY":-0.07206,"IWM":-0.050377}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.0},"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":"257cda74d07f","ts":"2026-09-15T18:49:00+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.55 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.3989,"target":9.87,"target_label":"premarket_high","reward_risk":2.11,"pos_in_5d_range_pct":4.8,"room_to_5d_high_atr":3.25},"price":9.5503,"vwap":9.558,"ext_from_open_pct":-2.05,"max_ext_allowed_pct":3.0,"volume_pace":0.69,"trend":"flat","recent_slope_pct":0.032,"volatility":"high"},"price":9.5503,"volume":{"bars":318,"last_bar_volume":2240.0,"baseline_avg":7481.45,"bar_rvol":0.299407,"raw_accel":-0.836758,"smooth_accel":3.566158,"accel_momentum":3.358686,"rvol_3bar":[4.056561,1.70764,0.299407],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":0.0,"sell_vol":477.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":0.63942},"context":{"vwap":9.558031,"price_vs_vwap_pct":-0.080882,"ema9":9.554622,"ema20":9.553106,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.845371,"dist_to_hod_atr":13.537028,"atr":0.020662,"spread_atr":0.483984,"own_change_pct":0.053348,"rel_strength_pct":{"SPY":0.099569,"IWM":0.139215}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.299407},"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":"54b2b05cf6a9","ts":"2026-09-15T18:49:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3449,"target":8.5,"target_label":"ceiling","reward_risk":0.72,"pos_in_5d_range_pct":61.5,"room_to_5d_high_atr":0.93},"price":8.435,"vwap":8.3817,"ext_from_open_pct":1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.756,"trend":"flat","recent_slope_pct":-0.0596,"volatility":"medium"},"price":8.435,"volume":{"bars":319,"last_bar_volume":510.0,"baseline_avg":1465.7,"bar_rvol":0.347957,"raw_accel":-0.646079,"smooth_accel":0.618027,"accel_momentum":0.258527,"rvol_3bar":[2.230879,1.033419,0.347957],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":106.0,"sell_vol":54.0,"unclassified_vol":0.0,"imbalance":0.325,"bid":8.43,"ask":8.44,"spread_pct":0.118554,"quote_size_imbalance":null,"quote_age_s":0.274934},"context":{"vwap":8.381668,"price_vs_vwap_pct":0.636296,"ema9":8.449436,"ema20":8.458475,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.764706,"dist_to_hod_atr":4.379648,"atr":0.014841,"spread_atr":0.673792,"own_change_pct":-0.37212,"rel_strength_pct":{"SPY":-0.325899,"IWM":-0.286254}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.113086},"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":"55bad35e3f95","ts":"2026-09-15T18:49:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.354,"target":8.6,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-1.11},"price":8.545,"vwap":8.2126,"ext_from_open_pct":11.55,"max_ext_allowed_pct":4.0,"volume_pace":0.261,"trend":"flat","recent_slope_pct":0.0688,"volatility":"high"},"price":8.545,"volume":{"bars":318,"last_bar_volume":2.0,"baseline_avg":841.4,"bar_rvol":0.002377,"raw_accel":-0.990909,"smooth_accel":-0.622744,"accel_momentum":-0.381525,"rvol_3bar":[2.40638,0.258687,0.002377],"trend_3bar":"DECELERATING","projected_rvol":null},"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":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":70.218857},"context":{"vwap":8.212562,"price_vs_vwap_pct":4.047926,"ema9":8.547679,"ema20":8.544177,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.639535,"dist_to_hod_atr":1.471027,"atr":0.037389,"spread_atr":1.337297,"own_change_pct":-0.138763,"rel_strength_pct":{"SPY":-0.092541,"IWM":-0.052896}},"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","rel_strength","not_decelerating"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":false,"rel_strength":false,"not_decelerating":false}}}
{"type":"snapshot","id":"f9528e2f7728","ts":"2026-09-15T18:49:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7471,"target":7.89,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":68.8,"room_to_5d_high_atr":0.48},"price":7.835,"vwap":7.7813,"ext_from_open_pct":1.75,"max_ext_allowed_pct":4.0,"volume_pace":0.552,"trend":"flat","recent_slope_pct":-0.1434,"volatility":"medium"},"price":7.835,"volume":{"bars":319,"last_bar_volume":61818.0,"baseline_avg":21074.1,"bar_rvol":2.933364,"raw_accel":3.25363,"smooth_accel":0.897369,"accel_momentum":-0.962816,"rvol_3bar":[5.452952,0.705981,2.933364],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":21068.0,"sell_vol":3502.0,"unclassified_vol":0.0,"imbalance":0.714937,"bid":7.83,"ask":7.84,"spread_pct":0.127632,"quote_size_imbalance":null,"quote_age_s":0.242538},"context":{"vwap":7.781317,"price_vs_vwap_pct":0.689894,"ema9":7.860566,"ema20":7.866155,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.697085,"dist_to_hod_atr":3.000253,"atr":0.018332,"spread_atr":0.545501,"own_change_pct":-0.507937,"rel_strength_pct":{"SPY":-0.461715,"IWM":-0.42207}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.09717},"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":"ac5831af4b41","ts":"2026-09-15T18:49:15+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4136,"target":9.87,"target_label":"premarket_high","reward_risk":2.02,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.23},"price":9.565,"vwap":9.558,"ext_from_open_pct":-1.9,"max_ext_allowed_pct":3.0,"volume_pace":0.689,"trend":"flat","recent_slope_pct":0.0264,"volatility":"high"},"price":9.565,"volume":{"bars":319,"last_bar_volume":555.0,"baseline_avg":7503.75,"bar_rvol":0.073963,"raw_accel":-0.752232,"smooth_accel":-0.525278,"accel_momentum":-4.091436,"rvol_3bar":[1.70764,0.299407,0.073963],"trend_3bar":"DECELERATING","projected_rvol":0.053307},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":100.0,"sell_vol":72.0,"unclassified_vol":0.0,"imbalance":0.162791,"bid":9.56,"ask":9.57,"spread_pct":0.104548,"quote_size_imbalance":null,"quote_age_s":1.972785},"context":{"vwap":9.55803,"price_vs_vwap_pct":0.072918,"ema9":9.553758,"ema20":9.552839,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.695829,"dist_to_hod_atr":12.788517,"atr":0.020722,"spread_atr":0.482586,"own_change_pct":-0.002094,"rel_strength_pct":{"SPY":0.044127,"IWM":0.083773}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.01204},"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":"4df5939a1ad2","ts":"2026-09-15T18:49:15+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"WATCH","setup":"","stop":7.7741,"target":7.91,"target_label":"prev_day_high","reward_risk":0.55,"pos_in_5d_range_pct":73.8,"room_to_5d_high_atr":0.41},"price":7.862,"vwap":7.7813,"ext_from_open_pct":2.1,"max_ext_allowed_pct":4.0,"volume_pace":0.552,"trend":"flat","recent_slope_pct":-0.0746,"volatility":"medium"},"price":7.862,"volume":{"bars":319,"last_bar_volume":61818.0,"baseline_avg":21074.1,"bar_rvol":2.933364,"raw_accel":3.25363,"smooth_accel":0.897369,"accel_momentum":-0.962816,"rvol_3bar":[5.452952,0.705981,2.933364],"trend_3bar":"MIXED","projected_rvol":0.043466},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":21087.0,"sell_vol":3487.0,"unclassified_vol":0.0,"imbalance":0.716204,"bid":7.83,"ask":7.84,"spread_pct":0.127632,"quote_size_imbalance":null,"quote_age_s":3.453232},"context":{"vwap":7.781317,"price_vs_vwap_pct":1.036879,"ema9":7.860566,"ema20":7.866155,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.35488,"dist_to_hod_atr":1.527402,"atr":0.018332,"spread_atr":0.545501,"own_change_pct":-0.507937,"rel_strength_pct":{"SPY":-0.461715,"IWM":-0.42207}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.100887},"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":"8d3224989dcc","ts":"2026-09-15T18:49:20+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.763,"target":7.91,"target_label":"prev_day_high","reward_risk":0.67,"pos_in_5d_range_pct":71.7,"room_to_5d_high_atr":0.44},"price":7.8509,"vwap":7.7813,"ext_from_open_pct":1.96,"max_ext_allowed_pct":4.0,"volume_pace":0.551,"trend":"flat","recent_slope_pct":-0.1029,"volatility":"medium"},"price":7.8509,"volume":{"bars":319,"last_bar_volume":61818.0,"baseline_avg":21074.1,"bar_rvol":2.933364,"raw_accel":3.25363,"smooth_accel":0.897369,"accel_momentum":-0.962816,"rvol_3bar":[5.452952,0.705981,2.933364],"trend_3bar":"MIXED","projected_rvol":0.046835},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":15292.0,"sell_vol":606.0,"unclassified_vol":0.0,"imbalance":0.923764,"bid":7.83,"ask":7.84,"spread_pct":0.127632,"quote_size_imbalance":null,"quote_age_s":0.070899},"context":{"vwap":7.781317,"price_vs_vwap_pct":0.89423,"ema9":7.860566,"ema20":7.866155,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.495564,"dist_to_hod_atr":2.132907,"atr":0.018332,"spread_atr":0.545501,"own_change_pct":-0.507937,"rel_strength_pct":{"SPY":-0.461715,"IWM":-0.42207}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":2.709736},"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":"ec08ba6a561f","ts":"2026-09-15T18:49:30+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":2.0,"pos_in_5d_range_pct":489.2,"room_to_5d_high_atr":-5.61},"price":9.87,"vwap":9.7248,"ext_from_open_pct":4.44,"max_ext_allowed_pct":5.0,"volume_pace":3.343,"trend":"flat","recent_slope_pct":0.0445,"volatility":"low"},"price":9.87,"volume":{"bars":319,"last_bar_volume":100.0,"baseline_avg":3244.15,"bar_rvol":0.030825,"raw_accel":-0.954275,"smooth_accel":-0.555263,"accel_momentum":-0.432002,"rvol_3bar":[1.117422,0.643898,0.030825],"trend_3bar":"DECELERATING","projected_rvol":3.034385},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":3102.0,"sell_vol":1820.0,"unclassified_vol":0.0,"imbalance":0.260463,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":0.587252},"context":{"vwap":9.724561,"price_vs_vwap_pct":1.495584,"ema9":9.866044,"ema20":9.896824,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.235294,"dist_to_hod_atr":8.24321,"atr":0.040033,"spread_atr":0.999177,"own_change_pct":-0.202634,"rel_strength_pct":{"SPY":-0.156413,"IWM":-0.116767}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.008029},"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":"259fec15112e","ts":"2026-09-15T18:49:35+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.76,"target":10.07,"target_label":"ceiling","reward_risk":2.88,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.7249,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":3.343,"trend":"flat","recent_slope_pct":-0.0165,"volatility":"low"},"price":9.84,"volume":{"bars":319,"last_bar_volume":100.0,"baseline_avg":3244.15,"bar_rvol":0.030825,"raw_accel":-0.954275,"smooth_accel":-0.555263,"accel_momentum":-0.432002,"rvol_3bar":[1.117422,0.643898,0.030825],"trend_3bar":"DECELERATING","projected_rvol":3.02364},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3102.0,"sell_vol":2620.0,"unclassified_vol":0.0,"imbalance":0.084236,"bid":9.83,"ask":9.87,"spread_pct":0.406091,"quote_size_imbalance":null,"quote_age_s":4.986132},"context":{"vwap":9.724561,"price_vs_vwap_pct":1.187087,"ema9":9.866044,"ema20":9.896824,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":8.992593,"atr":0.040033,"spread_atr":0.999177,"own_change_pct":-0.202634,"rel_strength_pct":{"SPY":-0.156413,"IWM":-0.116767}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.002597},"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":"60691e0cafbc","ts":"2026-09-15T18:49:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.5,"pos_in_5d_range_pct":494.6,"room_to_5d_high_atr":-5.69},"price":9.89,"vwap":9.7254,"ext_from_open_pct":4.66,"max_ext_allowed_pct":5.0,"volume_pace":3.352,"trend":"flat","recent_slope_pct":0.0851,"volatility":"low"},"price":9.89,"volume":{"bars":319,"last_bar_volume":100.0,"baseline_avg":3244.15,"bar_rvol":0.030825,"raw_accel":-0.954275,"smooth_accel":-0.555263,"accel_momentum":-0.432002,"rvol_3bar":[1.117422,0.643898,0.030825],"trend_3bar":"DECELERATING","projected_rvol":5.657363},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":7868.0,"sell_vol":1075.0,"unclassified_vol":0.0,"imbalance":0.759589,"bid":9.88,"ask":9.9,"spread_pct":0.202224,"quote_size_imbalance":null,"quote_age_s":0.048776},"context":{"vwap":9.724561,"price_vs_vwap_pct":1.701249,"ema9":9.866044,"ema20":9.896824,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.039216,"dist_to_hod_atr":7.743622,"atr":0.040033,"spread_atr":0.499588,"own_change_pct":-0.202634,"rel_strength_pct":{"SPY":-0.156413,"IWM":-0.116767}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.023414},"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":"adadba169250","ts":"2026-09-15T18:49:45+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.55 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.4036,"target":9.87,"target_label":"premarket_high","reward_risk":2.08,"pos_in_5d_range_pct":5.1,"room_to_5d_high_atr":3.25},"price":9.555,"vwap":9.5581,"ext_from_open_pct":-2.0,"max_ext_allowed_pct":4.0,"volume_pace":0.691,"trend":"flat","recent_slope_pct":0.0054,"volatility":"high"},"price":9.555,"volume":{"bars":319,"last_bar_volume":555.0,"baseline_avg":7503.75,"bar_rvol":0.073963,"raw_accel":-0.752232,"smooth_accel":-0.525278,"accel_momentum":-4.091436,"rvol_3bar":[1.70764,0.299407,0.073963],"trend_3bar":"DECELERATING","projected_rvol":3.052874},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":16878.0,"sell_vol":203.0,"unclassified_vol":0.0,"imbalance":0.976231,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":0.920798},"context":{"vwap":9.55803,"price_vs_vwap_pct":-0.031706,"ema9":9.553758,"ema20":9.552839,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.797558,"dist_to_hod_atr":13.271102,"atr":0.020722,"spread_atr":0.482586,"own_change_pct":-0.002094,"rel_strength_pct":{"SPY":0.044127,"IWM":0.083773}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.072205},"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":"2961dcd28b0d","ts":"2026-09-15T18:49:50+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4336,"target":9.87,"target_label":"premarket_high","reward_risk":1.88,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.2},"price":9.585,"vwap":9.5581,"ext_from_open_pct":-1.69,"max_ext_allowed_pct":4.0,"volume_pace":0.691,"trend":"flat","recent_slope_pct":0.0682,"volatility":"high"},"price":9.585,"volume":{"bars":319,"last_bar_volume":555.0,"baseline_avg":7503.75,"bar_rvol":0.073963,"raw_accel":-0.752232,"smooth_accel":-0.525278,"accel_momentum":-4.091436,"rvol_3bar":[1.70764,0.299407,0.073963],"trend_3bar":"DECELERATING","projected_rvol":2.782129},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":15980.0,"sell_vol":95.0,"unclassified_vol":0.0,"imbalance":0.98818,"bid":9.58,"ask":9.59,"spread_pct":0.10433,"quote_size_imbalance":null,"quote_age_s":1.102392},"context":{"vwap":9.55803,"price_vs_vwap_pct":0.282166,"ema9":9.553758,"ema20":9.552839,"ema_stack":true,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.49237,"dist_to_hod_atr":11.823346,"atr":0.020722,"spread_atr":0.482586,"own_change_pct":-0.002094,"rel_strength_pct":{"SPY":0.044127,"IWM":0.083773}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.073089},"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":"6672b2411503","ts":"2026-09-15T18:49:50+00:00","symbol":"CGNT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":8.3349,"target":8.5,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.96},"price":8.425,"vwap":8.3817,"ext_from_open_pct":1.14,"max_ext_allowed_pct":4.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":-0.0833,"volatility":"medium"},"price":8.425,"volume":{"bars":319,"last_bar_volume":510.0,"baseline_avg":1465.7,"bar_rvol":0.347957,"raw_accel":-0.646079,"smooth_accel":0.618027,"accel_momentum":0.258527,"rvol_3bar":[2.230879,1.033419,0.347957],"trend_3bar":"DECELERATING","projected_rvol":0.474858},"flow":{"window_s":30,"trades":11,"trade_rate":0.366667,"buy_vol":515.0,"sell_vol":53.0,"unclassified_vol":0.0,"imbalance":0.81338,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":7.408199},"context":{"vwap":8.381668,"price_vs_vwap_pct":0.516988,"ema9":8.449436,"ema20":8.458475,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.882353,"dist_to_hod_atr":5.05344,"atr":0.014841,"spread_atr":0.673792,"own_change_pct":-0.37212,"rel_strength_pct":{"SPY":-0.325899,"IWM":-0.286254}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.283021},"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":"091e6a5e8d64","ts":"2026-09-15T18:50:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.77,"target":10.07,"target_label":"ceiling","reward_risk":1.73,"pos_in_5d_range_pct":491.9,"room_to_5d_high_atr":-5.65},"price":9.88,"vwap":9.7265,"ext_from_open_pct":4.55,"max_ext_allowed_pct":4.0,"volume_pace":3.373,"trend":"flat","recent_slope_pct":0.0648,"volatility":"low"},"price":9.88,"volume":{"bars":319,"last_bar_volume":100.0,"baseline_avg":3244.15,"bar_rvol":0.030825,"raw_accel":-0.954275,"smooth_accel":-0.555263,"accel_momentum":-0.432002,"rvol_3bar":[1.117422,0.643898,0.030825],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":158,"trade_rate":5.266667,"buy_vol":14404.0,"sell_vol":11905.0,"unclassified_vol":0.0,"imbalance":0.094987,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":0.479676},"context":{"vwap":9.724561,"price_vs_vwap_pct":1.598417,"ema9":9.866044,"ema20":9.896824,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.137255,"dist_to_hod_atr":7.993416,"atr":0.040033,"spread_atr":0.999177,"own_change_pct":-0.202634,"rel_strength_pct":{"SPY":-0.157071,"IWM":-0.122013}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.002928},"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":"7ef4c796d765","ts":"2026-09-15T18:50:05+00:00","symbol":"CGNT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":8.3349,"target":8.5,"target_label":"ceiling","reward_risk":0.83,"pos_in_5d_range_pct":60.3,"room_to_5d_high_atr":0.96},"price":8.425,"vwap":8.3817,"ext_from_open_pct":1.14,"max_ext_allowed_pct":4.0,"volume_pace":0.755,"trend":"flat","recent_slope_pct":-0.0536,"volatility":"medium"},"price":8.425,"volume":{"bars":320,"last_bar_volume":580.0,"baseline_avg":1385.45,"bar_rvol":0.418637,"raw_accel":0.137255,"smooth_accel":-0.372583,"accel_momentum":-0.99061,"rvol_3bar":[1.033419,0.347957,0.418637],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":42.0,"sell_vol":9.0,"unclassified_vol":0.0,"imbalance":0.647059,"bid":8.42,"ask":8.43,"spread_pct":0.118694,"quote_size_imbalance":null,"quote_age_s":13.90102},"context":{"vwap":8.381749,"price_vs_vwap_pct":0.516009,"ema9":8.444549,"ema20":8.455287,"ema_stack":false,"ema_warm":true,"hod":8.5,"dist_to_hod_pct":-0.882353,"dist_to_hod_atr":4.752467,"atr":0.015781,"spread_atr":0.633662,"own_change_pct":-0.472534,"rel_strength_pct":{"SPY":-0.426971,"IWM":-0.391913}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.270882},"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":"d6b5f0277aab","ts":"2026-09-15T18:50:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8,"target":10.07,"target_label":"ceiling","reward_risk":1.25,"pos_in_5d_range_pct":502.7,"room_to_5d_high_atr":-5.8},"price":9.92,"vwap":9.7267,"ext_from_open_pct":4.97,"max_ext_allowed_pct":5.0,"volume_pace":3.373,"trend":"flat","recent_slope_pct":0.239,"volatility":"low"},"price":9.92,"volume":{"bars":320,"last_bar_volume":31231.0,"baseline_avg":3235.6,"bar_rvol":9.652306,"raw_accel":37.609222,"smooth_accel":1.45158,"accel_momentum":2.006843,"rvol_3bar":[0.643898,0.030825,9.652306],"trend_3bar":"MIXED","projected_rvol":2.016071},"flow":{"window_s":30,"trades":141,"trade_rate":4.7,"buy_vol":9047.0,"sell_vol":10936.0,"unclassified_vol":0.0,"imbalance":-0.09453,"bid":9.88,"ask":9.92,"spread_pct":0.40404,"quote_size_imbalance":null,"quote_age_s":8.040631},"context":{"vwap":9.72647,"price_vs_vwap_pct":1.989722,"ema9":9.868836,"ema20":9.895221,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.745098,"dist_to_hod_atr":6.639248,"atr":0.042173,"spread_atr":0.948464,"own_change_pct":0.35551,"rel_strength_pct":{"SPY":0.401074,"IWM":0.436132}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.912436},"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":"7d6c1e4d0b08","ts":"2026-09-15T18:50:35+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.2588,"target":8.59,"target_label":"premarket_high","reward_risk":0.73,"pos_in_5d_range_pct":6.9,"room_to_5d_high_atr":3.82},"price":8.45,"vwap":8.4349,"ext_from_open_pct":0.96,"max_ext_allowed_pct":4.0,"volume_pace":0.728,"trend":"flat","recent_slope_pct":0.0486,"volatility":"high"},"price":8.45,"volume":{"bars":320,"last_bar_volume":90838.0,"baseline_avg":54616.0,"bar_rvol":1.663212,"raw_accel":-0.361402,"smooth_accel":0.173973,"accel_momentum":-0.167218,"rvol_3bar":[0.684782,2.894229,1.663212],"trend_3bar":"MIXED","projected_rvol":2.709504},"flow":{"window_s":30,"trades":120,"trade_rate":4.0,"buy_vol":59428.0,"sell_vol":7237.0,"unclassified_vol":0.0,"imbalance":0.782885,"bid":8.44,"ask":8.45,"spread_pct":0.118413,"quote_size_imbalance":null,"quote_age_s":0.391783},"context":{"vwap":8.4349,"price_vs_vwap_pct":0.17902,"ema9":8.437829,"ema20":8.454213,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.59366,"dist_to_hod_atr":7.664447,"atr":0.029356,"spread_atr":0.340642,"own_change_pct":-0.106585,"rel_strength_pct":{"SPY":-0.061021,"IWM":-0.025963}},"vas":{"raw":3,"score":6.2,"components":{"rvol":1,"accel":1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.302103},"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":"3fb2c88e3422","ts":"2026-09-15T18:50:45+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.9% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8,"target":10.07,"target_label":"ceiling","reward_risk":1.45,"pos_in_5d_range_pct":500.0,"room_to_5d_high_atr":-5.76},"price":9.91,"vwap":9.7276,"ext_from_open_pct":4.87,"max_ext_allowed_pct":4.0,"volume_pace":3.388,"trend":"flat","recent_slope_pct":0.2188,"volatility":"low"},"price":9.91,"volume":{"bars":320,"last_bar_volume":31231.0,"baseline_avg":3235.6,"bar_rvol":9.652306,"raw_accel":37.609222,"smooth_accel":1.45158,"accel_momentum":2.006843,"rvol_3bar":[0.643898,0.030825,9.652306],"trend_3bar":"MIXED","projected_rvol":6.78205},"flow":{"window_s":30,"trades":147,"trade_rate":4.9,"buy_vol":5540.0,"sell_vol":10711.0,"unclassified_vol":0.0,"imbalance":-0.318196,"bid":9.9,"ask":9.92,"spread_pct":0.201816,"quote_size_imbalance":null,"quote_age_s":1.219847},"context":{"vwap":9.72647,"price_vs_vwap_pct":1.88691,"ema9":9.868836,"ema20":9.895221,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-2.843137,"dist_to_hod_atr":6.876364,"atr":0.042173,"spread_atr":0.474232,"own_change_pct":0.35551,"rel_strength_pct":{"SPY":0.401074,"IWM":0.436132}},"vas":{"raw":5,"score":7.5,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-3.071323},"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":"ca20c13a3dd2","ts":"2026-09-15T18:50:55+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.53 below VWAP $9.56","plan":{"state":"PASS","setup":"","stop":9.3786,"target":9.6,"target_label":"ceiling","reward_risk":0.46,"pos_in_5d_range_pct":3.9,"room_to_5d_high_atr":3.29},"price":9.53,"vwap":9.558,"ext_from_open_pct":-2.26,"max_ext_allowed_pct":3.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":-0.0474,"volatility":"high"},"price":9.53,"volume":{"bars":320,"last_bar_volume":17707.0,"baseline_avg":7461.4,"bar_rvol":2.373147,"raw_accel":8.492589,"smooth_accel":-0.532547,"accel_momentum":-0.007269,"rvol_3bar":[0.299407,0.073963,2.373147],"trend_3bar":"MIXED","projected_rvol":13.700329},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":1426.0,"sell_vol":78289.0,"unclassified_vol":0.0,"imbalance":-0.964223,"bid":9.59,"ask":9.6,"spread_pct":0.104221,"quote_size_imbalance":null,"quote_age_s":0.298848},"context":{"vwap":9.558122,"price_vs_vwap_pct":-0.29422,"ema9":9.560986,"ema20":9.556369,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-3.051882,"dist_to_hod_atr":13.588614,"atr":0.022077,"spread_atr":0.452954,"own_change_pct":0.470403,"rel_strength_pct":{"SPY":0.515967,"IWM":0.551024}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-2.288242},"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":"4daeca9b6dd8","ts":"2026-09-15T18:50:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3729,"target":8.7159,"target_label":"clear air (typical 60-min move)","reward_risk":0.8,"pos_in_5d_range_pct":131.0,"room_to_5d_high_atr":-1.13},"price":8.5639,"vwap":8.213,"ext_from_open_pct":11.8,"max_ext_allowed_pct":4.0,"volume_pace":0.26,"trend":"flat","recent_slope_pct":0.1201,"volatility":"high"},"price":8.5639,"volume":{"bars":319,"last_bar_volume":1019.0,"baseline_avg":823.45,"bar_rvol":1.237476,"raw_accel":3.949906,"smooth_accel":-0.821027,"accel_momentum":-0.198283,"rvol_3bar":[0.258687,0.002377,1.237476],"trend_3bar":"MIXED","projected_rvol":0.007949},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":6.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":41.07026},"context":{"vwap":8.212994,"price_vs_vwap_pct":4.272568,"ema9":8.547143,"ema20":8.544255,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.419767,"dist_to_hod_atr":0.989709,"atr":0.036475,"spread_atr":1.370788,"own_change_pct":-0.05848,"rel_strength_pct":{"SPY":-0.012916,"IWM":0.022142}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.237476},"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":"420e0f48a06f","ts":"2026-09-15T18:51:00+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4085,"target":9.87,"target_label":"premarket_high","reward_risk":2.05,"pos_in_5d_range_pct":5.3,"room_to_5d_high_atr":3.24},"price":9.5599,"vwap":9.5582,"ext_from_open_pct":-1.95,"max_ext_allowed_pct":3.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":0.0152,"volatility":"high"},"price":9.5599,"volume":{"bars":320,"last_bar_volume":17707.0,"baseline_avg":7461.4,"bar_rvol":2.373147,"raw_accel":8.492589,"smooth_accel":-0.532547,"accel_momentum":-0.007269,"rvol_3bar":[0.299407,0.073963,2.373147],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1426.0,"sell_vol":78274.0,"unclassified_vol":0.0,"imbalance":-0.964216,"bid":9.59,"ask":9.6,"spread_pct":0.104221,"quote_size_imbalance":null,"quote_age_s":2.507145},"context":{"vwap":9.558122,"price_vs_vwap_pct":0.018603,"ema9":9.560986,"ema20":9.556369,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.747711,"dist_to_hod_atr":12.234282,"atr":0.022077,"spread_atr":0.452954,"own_change_pct":0.470403,"rel_strength_pct":{"SPY":0.488895,"IWM":0.545773}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-2.288226},"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":"d2e1e47f4282","ts":"2026-09-15T18:51:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5495,"target":10.935,"target_label":"prev_day_high","reward_risk":1.6,"pos_in_5d_range_pct":37.8,"room_to_5d_high_atr":1.35},"price":10.6977,"vwap":10.6028,"ext_from_open_pct":2.76,"max_ext_allowed_pct":4.0,"volume_pace":0.88,"trend":"flat","recent_slope_pct":-0.0139,"volatility":"medium"},"price":10.6977,"volume":{"bars":321,"last_bar_volume":24371.0,"baseline_avg":17302.0,"bar_rvol":1.408565,"raw_accel":-0.383543,"smooth_accel":0.625475,"accel_momentum":0.138606,"rvol_3bar":[0.953429,2.274304,1.408565],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":104,"trade_rate":3.466667,"buy_vol":9449.0,"sell_vol":807.0,"unclassified_vol":0.0,"imbalance":0.842629,"bid":10.69,"ask":10.7,"spread_pct":0.093502,"quote_size_imbalance":null,"quote_age_s":0.928137},"context":{"vwap":10.60278,"price_vs_vwap_pct":0.895239,"ema9":10.746755,"ema20":10.782502,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.214808,"dist_to_hod_atr":4.406073,"atr":0.054992,"spread_atr":0.181844,"own_change_pct":-0.723413,"rel_strength_pct":{"SPY":-0.704922,"IWM":-0.648043}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.186898},"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":"22f1ae1e1cb5","ts":"2026-09-15T18:51:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8,"target":10.07,"target_label":"ceiling","reward_risk":2.0,"pos_in_5d_range_pct":494.6,"room_to_5d_high_atr":-5.69},"price":9.89,"vwap":9.728,"ext_from_open_pct":4.66,"max_ext_allowed_pct":5.0,"volume_pace":3.388,"trend":"flat","recent_slope_pct":0.1837,"volatility":"low"},"price":9.89,"volume":{"bars":321,"last_bar_volume":16469.0,"baseline_avg":4784.6,"bar_rvol":3.442085,"raw_accel":-0.472671,"smooth_accel":2.297461,"accel_momentum":0.845881,"rvol_3bar":[0.030825,9.652306,3.442085],"trend_3bar":"MIXED","projected_rvol":2.581783},"flow":{"window_s":30,"trades":51,"trade_rate":1.7,"buy_vol":3340.0,"sell_vol":1807.0,"unclassified_vol":0.0,"imbalance":0.297843,"bid":9.86,"ask":9.9,"spread_pct":0.404858,"quote_size_imbalance":null,"quote_age_s":1.315876},"context":{"vwap":9.727651,"price_vs_vwap_pct":1.668938,"ema9":9.879068,"ema20":9.897581,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.039216,"dist_to_hod_atr":7.356495,"atr":0.04214,"spread_atr":0.949225,"own_change_pct":0.602397,"rel_strength_pct":{"SPY":0.620889,"IWM":0.677767}},"vas":{"raw":8,"score":9.4,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":1.025202},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"22e8101d3e9b","ts":"2026-09-15T18:51:40+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.57,"target":10.935,"target_label":"prev_day_high","reward_risk":1.36,"pos_in_5d_range_pct":39.9,"room_to_5d_high_atr":1.31},"price":10.7245,"vwap":10.6031,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":0.88,"trend":"flat","recent_slope_pct":0.0361,"volatility":"medium"},"price":10.7245,"volume":{"bars":321,"last_bar_volume":24371.0,"baseline_avg":17302.0,"bar_rvol":1.408565,"raw_accel":-0.383543,"smooth_accel":0.625475,"accel_momentum":0.138606,"rvol_3bar":[0.953429,2.274304,1.408565],"trend_3bar":"MIXED","projected_rvol":1.554965},"flow":{"window_s":30,"trades":73,"trade_rate":2.433333,"buy_vol":5767.0,"sell_vol":4670.0,"unclassified_vol":0.0,"imbalance":0.105107,"bid":10.69,"ask":10.7,"spread_pct":0.093502,"quote_size_imbalance":null,"quote_age_s":0.360975},"context":{"vwap":10.60278,"price_vs_vwap_pct":1.148003,"ema9":10.746755,"ema20":10.782502,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.969835,"dist_to_hod_atr":3.918732,"atr":0.054992,"spread_atr":0.181844,"own_change_pct":-0.723413,"rel_strength_pct":{"SPY":-0.704922,"IWM":-0.648043}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.14805},"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":"751ca8755faa","ts":"2026-09-15T18:51:45+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5468,"target":10.935,"target_label":"prev_day_high","reward_risk":1.62,"pos_in_5d_range_pct":37.6,"room_to_5d_high_atr":1.36},"price":10.695,"vwap":10.603,"ext_from_open_pct":2.74,"max_ext_allowed_pct":3.0,"volume_pace":0.88,"trend":"flat","recent_slope_pct":-0.019,"volatility":"medium"},"price":10.695,"volume":{"bars":321,"last_bar_volume":24371.0,"baseline_avg":17302.0,"bar_rvol":1.408565,"raw_accel":-0.383543,"smooth_accel":0.625475,"accel_momentum":0.138606,"rvol_3bar":[0.953429,2.274304,1.408565],"trend_3bar":"MIXED","projected_rvol":1.386815},"flow":{"window_s":30,"trades":44,"trade_rate":1.466667,"buy_vol":2514.0,"sell_vol":4140.0,"unclassified_vol":0.0,"imbalance":-0.244364,"bid":10.69,"ask":10.7,"spread_pct":0.093502,"quote_size_imbalance":null,"quote_age_s":3.431229},"context":{"vwap":10.60278,"price_vs_vwap_pct":0.869774,"ema9":10.746755,"ema20":10.782502,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.239488,"dist_to_hod_atr":4.455171,"atr":0.054992,"spread_atr":0.181844,"own_change_pct":-0.723413,"rel_strength_pct":{"SPY":-0.704922,"IWM":-0.648043}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.344203},"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":"21460ee0702c","ts":"2026-09-15T18:51:50+00:00","symbol":"SMR","event":"REJECT","bot":{"state":"REJECT","reason":"price $8.43 below VWAP $8.44","plan":{"state":"PASS","setup":"","stop":8.2435,"target":8.59,"target_label":"premarket_high","reward_risk":0.81,"pos_in_5d_range_pct":6.4,"room_to_5d_high_atr":3.84},"price":8.4347,"vwap":8.435,"ext_from_open_pct":0.77,"max_ext_allowed_pct":3.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.0338,"volatility":"high"},"price":8.4347,"volume":{"bars":321,"last_bar_volume":141821.0,"baseline_avg":57403.15,"bar_rvol":2.470614,"raw_accel":0.561252,"smooth_accel":1.194223,"accel_momentum":1.02025,"rvol_3bar":[2.894229,1.663212,2.470614],"trend_3bar":"MIXED","projected_rvol":0.591166},"flow":{"window_s":30,"trades":109,"trade_rate":3.633333,"buy_vol":9098.0,"sell_vol":9370.0,"unclassified_vol":0.0,"imbalance":-0.014728,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.339208},"context":{"vwap":8.434991,"price_vs_vwap_pct":-0.003453,"ema9":8.441804,"ema20":8.454545,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.770029,"dist_to_hod_atr":8.172829,"atr":0.029402,"spread_atr":0.340109,"own_change_pct":0.269117,"rel_strength_pct":{"SPY":0.287608,"IWM":0.344487}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.036388},"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":"9d2979d5488c","ts":"2026-09-15T18:51:55+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.2771,"target":8.59,"target_label":"premarket_high","reward_risk":0.64,"pos_in_5d_range_pct":7.4,"room_to_5d_high_atr":3.79},"price":8.4683,"vwap":8.435,"ext_from_open_pct":1.17,"max_ext_allowed_pct":3.0,"volume_pace":0.727,"trend":"flat","recent_slope_pct":0.1133,"volatility":"high"},"price":8.4683,"volume":{"bars":321,"last_bar_volume":141821.0,"baseline_avg":57403.15,"bar_rvol":2.470614,"raw_accel":0.561252,"smooth_accel":1.194223,"accel_momentum":1.02025,"rvol_3bar":[2.894229,1.663212,2.470614],"trend_3bar":"MIXED","projected_rvol":0.545691},"flow":{"window_s":30,"trades":100,"trade_rate":3.333333,"buy_vol":7741.0,"sell_vol":8464.0,"unclassified_vol":0.0,"imbalance":-0.044616,"bid":8.46,"ask":8.47,"spread_pct":0.118133,"quote_size_imbalance":null,"quote_age_s":0.372083},"context":{"vwap":8.434991,"price_vs_vwap_pct":0.394888,"ema9":8.441804,"ema20":8.454545,"ema_stack":false,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-2.382709,"dist_to_hod_atr":7.030061,"atr":0.029402,"spread_atr":0.340109,"own_change_pct":0.269117,"rel_strength_pct":{"SPY":0.287608,"IWM":0.344487}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.110229},"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":"0bcf1e753adf","ts":"2026-09-15T18:52:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.1906,"target":7.41,"target_label":"ceiling","reward_risk":1.1,"pos_in_5d_range_pct":34.3,"room_to_5d_high_atr":1.4},"price":7.295,"vwap":7.2849,"ext_from_open_pct":2.03,"max_ext_allowed_pct":3.0,"volume_pace":0.804,"trend":"flat","recent_slope_pct":0.0755,"volatility":"medium"},"price":7.295,"volume":{"bars":322,"last_bar_volume":78999.0,"baseline_avg":166097.0,"bar_rvol":0.47562,"raw_accel":-0.38241,"smooth_accel":0.384601,"accel_momentum":-1.779511,"rvol_3bar":[1.957461,0.759364,0.47562],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":4304.0,"sell_vol":5137.0,"unclassified_vol":0.0,"imbalance":-0.088232,"bid":7.29,"ask":7.3,"spread_pct":0.13708,"quote_size_imbalance":null,"quote_age_s":3.824181},"context":{"vwap":7.28485,"price_vs_vwap_pct":0.13933,"ema9":7.289412,"ema20":7.301761,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.816958,"dist_to_hod_atr":4.466132,"atr":0.030227,"spread_atr":0.330825,"own_change_pct":0.113984,"rel_strength_pct":{"SPY":0.117947,"IWM":0.143787}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.041965},"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":"9ff336c7d5e7","ts":"2026-09-15T18:52:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8,"target":10.07,"target_label":"ceiling","reward_risk":2.37,"pos_in_5d_range_pct":491.9,"room_to_5d_high_atr":-5.65},"price":9.88,"vwap":9.7283,"ext_from_open_pct":4.55,"max_ext_allowed_pct":4.0,"volume_pace":3.386,"trend":"flat","recent_slope_pct":0.0607,"volatility":"low"},"price":9.88,"volume":{"bars":322,"last_bar_volume":5547.0,"baseline_avg":5589.0,"bar_rvol":0.992485,"raw_accel":-0.663185,"smooth_accel":7.751972,"accel_momentum":5.454511,"rvol_3bar":[9.652306,3.442085,0.992485],"trend_3bar":"DECELERATING","projected_rvol":3.624978},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":139.0,"sell_vol":5026.0,"unclassified_vol":0.0,"imbalance":-0.946176,"bid":9.87,"ask":9.9,"spread_pct":0.30349,"quote_size_imbalance":null,"quote_age_s":0.00272},"context":{"vwap":9.727996,"price_vs_vwap_pct":1.562547,"ema9":9.879255,"ema20":9.895907,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.137255,"dist_to_hod_atr":7.370661,"atr":0.043415,"spread_atr":0.690999,"own_change_pct":0.559796,"rel_strength_pct":{"SPY":0.563759,"IWM":0.589599}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.939066},"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":"49319699383d","ts":"2026-09-15T18:52:15+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.354,"target":8.6,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-1.11},"price":8.545,"vwap":8.213,"ext_from_open_pct":11.55,"max_ext_allowed_pct":3.0,"volume_pace":0.259,"trend":"flat","recent_slope_pct":0.0117,"volatility":"high"},"price":8.545,"volume":{"bars":320,"last_bar_volume":6.0,"baseline_avg":857.5,"bar_rvol":0.006997,"raw_accel":-0.994112,"smooth_accel":-0.701019,"accel_momentum":0.120008,"rvol_3bar":[0.002377,1.237476,0.006997],"trend_3bar":"MIXED","projected_rvol":0.009329},"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":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":58.833285},"context":{"vwap":8.212997,"price_vs_vwap_pct":4.042412,"ema9":8.550495,"ema20":8.546126,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.639535,"dist_to_hod_atr":1.561614,"atr":0.03522,"spread_atr":1.419649,"own_change_pct":0.279859,"rel_strength_pct":{"SPY":0.283822,"IWM":0.309662}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.006997},"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":"7edc4b9d9784","ts":"2026-09-15T18:52:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.8,"target":10.07,"target_label":"ceiling","reward_risk":2.37,"pos_in_5d_range_pct":491.9,"room_to_5d_high_atr":-5.65},"price":9.88,"vwap":9.7285,"ext_from_open_pct":4.55,"max_ext_allowed_pct":5.0,"volume_pace":3.386,"trend":"flat","recent_slope_pct":0.0607,"volatility":"low"},"price":9.88,"volume":{"bars":322,"last_bar_volume":5547.0,"baseline_avg":5589.0,"bar_rvol":0.992485,"raw_accel":-0.663185,"smooth_accel":7.751972,"accel_momentum":5.454511,"rvol_3bar":[9.652306,3.442085,0.992485],"trend_3bar":"DECELERATING","projected_rvol":2.081947},"flow":{"window_s":30,"trades":28,"trade_rate":0.933333,"buy_vol":2706.0,"sell_vol":956.0,"unclassified_vol":0.0,"imbalance":0.477881,"bid":9.86,"ask":9.9,"spread_pct":0.404858,"quote_size_imbalance":null,"quote_age_s":6.527509},"context":{"vwap":9.727996,"price_vs_vwap_pct":1.562547,"ema9":9.879255,"ema20":9.895907,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.137255,"dist_to_hod_atr":7.370661,"atr":0.043415,"spread_atr":0.921333,"own_change_pct":0.559796,"rel_strength_pct":{"SPY":0.563759,"IWM":0.589599}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.47429},"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":"2c9f3de560a6","ts":"2026-09-15T18:53:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.74,"target":10.07,"target_label":"ceiling","reward_risk":2.3,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.7287,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":3.388,"trend":"flat","recent_slope_pct":-0.1215,"volatility":"low"},"price":9.84,"volume":{"bars":323,"last_bar_volume":9059.0,"baseline_avg":5807.2,"bar_rvol":1.55996,"raw_accel":0.633135,"smooth_accel":-0.072886,"accel_momentum":-7.824859,"rvol_3bar":[3.442085,0.992485,1.55996],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":72,"trade_rate":2.4,"buy_vol":981.0,"sell_vol":3414.0,"unclassified_vol":0.0,"imbalance":-0.553584,"bid":9.82,"ask":9.87,"spread_pct":0.507872,"quote_size_imbalance":null,"quote_age_s":0.637331},"context":{"vwap":9.728543,"price_vs_vwap_pct":1.145666,"ema9":9.879404,"ema20":9.894392,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":8.6095,"atr":0.041814,"spread_atr":1.195764,"own_change_pct":0.4647,"rel_strength_pct":{"SPY":0.446204,"IWM":0.462947}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":1,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.863568},"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":"3335c0d74125","ts":"2026-09-15T18:53:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"WATCH","setup":"","stop":8.369,"target":8.7145,"target_label":"clear air (typical 60-min move)","reward_risk":0.81,"pos_in_5d_range_pct":130.8,"room_to_5d_high_atr":-1.13},"price":8.56,"vwap":8.2133,"ext_from_open_pct":11.75,"max_ext_allowed_pct":4.0,"volume_pace":0.258,"trend":"flat","recent_slope_pct":-0.0091,"volatility":"high"},"price":8.56,"volume":{"bars":321,"last_bar_volume":408.0,"baseline_avg":833.0,"bar_rvol":0.489796,"raw_accel":0.959184,"smooth_accel":-0.334417,"accel_momentum":0.366602,"rvol_3bar":[1.237476,0.006997,0.489796],"trend_3bar":"MIXED","projected_rvol":0.327404},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":150.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.52,"ask":8.57,"spread_pct":0.585138,"quote_size_imbalance":null,"quote_age_s":0.57685},"context":{"vwap":8.213164,"price_vs_vwap_pct":4.222927,"ema9":8.549396,"ema20":8.546019,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.465116,"dist_to_hod_atr":1.129807,"atr":0.035404,"spread_atr":1.412259,"own_change_pct":0.351141,"rel_strength_pct":{"SPY":0.332645,"IWM":0.349388}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.489796},"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":"143f0b61d8a7","ts":"2026-09-15T18:55:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7958,"target":10.07,"target_label":"ceiling","reward_risk":3.27,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.7295,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":3.39,"trend":"flat","recent_slope_pct":-0.162,"volatility":"low"},"price":9.86,"volume":{"bars":324,"last_bar_volume":7590.0,"baseline_avg":6222.05,"bar_rvol":1.219855,"raw_accel":-0.162159,"smooth_accel":-0.535649,"accel_momentum":-0.462762,"rvol_3bar":[0.992485,1.55996,1.219855],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":9474.0,"sell_vol":1771.0,"unclassified_vol":0.0,"imbalance":0.685016,"bid":9.85,"ask":9.87,"spread_pct":0.20284,"quote_size_imbalance":null,"quote_age_s":0.343366},"context":{"vwap":9.728898,"price_vs_vwap_pct":1.34755,"ema9":9.871523,"ema20":9.889212,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.886205,"atr":0.043113,"spread_atr":0.463894,"own_change_pct":-0.101523,"rel_strength_pct":{"SPY":-0.133894,"IWM":-0.15239}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.83562},"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":"0bfde3621af0","ts":"2026-09-15T18:55:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2104,"target":9.46,"target_label":"ceiling","reward_risk":0.63,"pos_in_5d_range_pct":5.8,"room_to_5d_high_atr":3.28},"price":9.3633,"vwap":9.359,"ext_from_open_pct":0.14,"max_ext_allowed_pct":3.0,"volume_pace":0.475,"trend":"flat","recent_slope_pct":0.0327,"volatility":"high"},"price":9.3633,"volume":{"bars":325,"last_bar_volume":2806.0,"baseline_avg":5631.75,"bar_rvol":0.498247,"raw_accel":0.533333,"smooth_accel":2.317804,"accel_momentum":-0.09546,"rvol_3bar":[7.893359,0.328069,0.498247],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":16,"trade_rate":0.533333,"buy_vol":371.0,"sell_vol":353.0,"unclassified_vol":0.0,"imbalance":0.024862,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.977001},"context":{"vwap":9.358987,"price_vs_vwap_pct":0.046084,"ema9":9.359639,"ema20":9.366057,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.749213,"dist_to_hod_atr":8.608299,"atr":0.019365,"spread_atr":0.516395,"own_change_pct":0.110046,"rel_strength_pct":{"SPY":0.077675,"IWM":0.059179}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.012387},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"4fb169313d90","ts":"2026-09-15T18:55:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7858,"target":10.07,"target_label":"ceiling","reward_risk":3.43,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.7296,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":3.39,"trend":"flat","recent_slope_pct":-0.0811,"volatility":"low"},"price":9.85,"volume":{"bars":325,"last_bar_volume":12345.0,"baseline_avg":6460.85,"bar_rvol":1.910739,"raw_accel":0.626482,"smooth_accel":-0.455481,"accel_momentum":0.080167,"rvol_3bar":[1.55996,1.219855,1.910739],"trend_3bar":"MIXED","projected_rvol":1.173468},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":10493.0,"sell_vol":3208.0,"unclassified_vol":0.0,"imbalance":0.531713,"bid":9.83,"ask":9.85,"spread_pct":0.203252,"quote_size_imbalance":null,"quote_age_s":0.114646},"context":{"vwap":9.729498,"price_vs_vwap_pct":1.238519,"ema9":9.869218,"ema20":9.88643,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":7.935578,"atr":0.044105,"spread_atr":0.453462,"own_change_pct":-0.202429,"rel_strength_pct":{"SPY":-0.2348,"IWM":-0.253297}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":1.015965},"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":"b3cde5f5704b","ts":"2026-09-15T18:55:35+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.3534,"target":8.6,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-1.11},"price":8.5444,"vwap":8.2155,"ext_from_open_pct":11.55,"max_ext_allowed_pct":4.0,"volume_pace":0.258,"trend":"flat","recent_slope_pct":-0.0339,"volatility":"high"},"price":8.5444,"volume":{"bars":323,"last_bar_volume":102.0,"baseline_avg":821.05,"bar_rvol":0.124231,"raw_accel":-0.85022,"smooth_accel":0.159688,"accel_momentum":0.277335,"rvol_3bar":[0.489796,0.848598,0.124231],"trend_3bar":"MIXED","projected_rvol":9.717174},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":4200.0,"sell_vol":454.0,"unclassified_vol":0.0,"imbalance":0.804899,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":24.247463},"context":{"vwap":8.213501,"price_vs_vwap_pct":4.028716,"ema9":8.553813,"ema20":8.548941,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.646512,"dist_to_hod_atr":1.609138,"atr":0.034553,"spread_atr":0.86824,"own_change_pct":-0.103925,"rel_strength_pct":{"SPY":-0.136296,"IWM":-0.154792}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.099994},"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":"5c5ecdf877db","ts":"2026-09-15T18:55:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.3671,"target":8.7156,"target_label":"clear air (typical 60-min move)","reward_risk":0.82,"pos_in_5d_range_pct":130.8,"room_to_5d_high_atr":-1.12},"price":8.5581,"vwap":8.2156,"ext_from_open_pct":11.72,"max_ext_allowed_pct":4.0,"volume_pace":0.258,"trend":"flat","recent_slope_pct":-0.0019,"volatility":"high"},"price":8.5581,"volume":{"bars":323,"last_bar_volume":102.0,"baseline_avg":821.05,"bar_rvol":0.124231,"raw_accel":-0.85022,"smooth_accel":0.159688,"accel_momentum":0.277335,"rvol_3bar":[0.489796,0.848598,0.124231],"trend_3bar":"MIXED","projected_rvol":8.867913},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":4200.0,"sell_vol":454.0,"unclassified_vol":0.0,"imbalance":0.804899,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":29.247463},"context":{"vwap":8.213501,"price_vs_vwap_pct":4.195515,"ema9":8.553813,"ema20":8.548941,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.487209,"dist_to_hod_atr":1.212642,"atr":0.034553,"spread_atr":0.86824,"own_change_pct":-0.103925,"rel_strength_pct":{"SPY":-0.136296,"IWM":-0.154792}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.099994},"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":"ec36f19f2aaa","ts":"2026-09-15T18:55:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.35 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2017,"target":9.46,"target_label":"ceiling","reward_risk":0.69,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.3},"price":9.3546,"vwap":9.359,"ext_from_open_pct":0.05,"max_ext_allowed_pct":4.0,"volume_pace":0.475,"trend":"flat","recent_slope_pct":0.0141,"volatility":"high"},"price":9.3546,"volume":{"bars":325,"last_bar_volume":2806.0,"baseline_avg":5631.75,"bar_rvol":0.498247,"raw_accel":0.533333,"smooth_accel":2.317804,"accel_momentum":-0.09546,"rvol_3bar":[7.893359,0.328069,0.498247],"trend_3bar":"MIXED","projected_rvol":0.940383},"flow":{"window_s":30,"trades":65,"trade_rate":2.166667,"buy_vol":2518.0,"sell_vol":888.0,"unclassified_vol":0.0,"imbalance":0.478567,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.48468},"context":{"vwap":9.358987,"price_vs_vwap_pct":-0.046874,"ema9":9.359639,"ema20":9.366057,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.840504,"dist_to_hod_atr":9.057562,"atr":0.019365,"spread_atr":0.516395,"own_change_pct":0.110046,"rel_strength_pct":{"SPY":0.077675,"IWM":0.059179}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.238444},"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":"4a307522143f","ts":"2026-09-15T18:55:55+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2147,"target":9.46,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.27},"price":9.3676,"vwap":9.359,"ext_from_open_pct":0.19,"max_ext_allowed_pct":3.0,"volume_pace":0.475,"trend":"flat","recent_slope_pct":0.0419,"volatility":"high"},"price":9.3676,"volume":{"bars":325,"last_bar_volume":2806.0,"baseline_avg":5631.75,"bar_rvol":0.498247,"raw_accel":0.533333,"smooth_accel":2.317804,"accel_momentum":-0.09546,"rvol_3bar":[7.893359,0.328069,0.498247],"trend_3bar":"MIXED","projected_rvol":0.837008},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":2392.0,"sell_vol":1106.0,"unclassified_vol":0.0,"imbalance":0.367639,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":3.424877},"context":{"vwap":9.358987,"price_vs_vwap_pct":0.09203,"ema9":9.359639,"ema20":9.366057,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.704092,"dist_to_hod_atr":8.386249,"atr":0.019365,"spread_atr":0.516395,"own_change_pct":0.110046,"rel_strength_pct":{"SPY":0.077675,"IWM":0.059179}},"vas":{"raw":3,"score":6.2,"components":{"rvol":-2,"accel":3,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.183175},"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":"5b863af6a05d","ts":"2026-09-15T18:56:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7858,"target":10.07,"target_label":"ceiling","reward_risk":3.43,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.7297,"ext_from_open_pct":4.23,"max_ext_allowed_pct":5.0,"volume_pace":3.386,"trend":"flat","recent_slope_pct":-0.0811,"volatility":"low"},"price":9.85,"volume":{"bars":325,"last_bar_volume":12345.0,"baseline_avg":6460.85,"bar_rvol":1.910739,"raw_accel":0.626482,"smooth_accel":-0.455481,"accel_momentum":0.080167,"rvol_3bar":[1.55996,1.219855,1.910739],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":15,"trade_rate":0.5,"buy_vol":372.0,"sell_vol":1559.0,"unclassified_vol":0.0,"imbalance":-0.614707,"bid":9.85,"ask":9.87,"spread_pct":0.20284,"quote_size_imbalance":null,"quote_age_s":1.422935},"context":{"vwap":9.729498,"price_vs_vwap_pct":1.238519,"ema9":9.869218,"ema20":9.88643,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":7.935578,"atr":0.044105,"spread_atr":0.453462,"own_change_pct":-0.202429,"rel_strength_pct":{"SPY":-0.222245,"IWM":-0.270839}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":1,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.174546},"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":"0207f5520e8f","ts":"2026-09-15T18:56:05+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2043,"target":9.46,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3572,"vwap":9.359,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0305,"volatility":"high"},"price":9.3572,"volume":{"bars":326,"last_bar_volume":4594.0,"baseline_avg":5588.35,"bar_rvol":0.822067,"raw_accel":0.637206,"smooth_accel":-0.77082,"accel_momentum":-3.088624,"rvol_3bar":[0.328069,0.498247,0.822067],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":786.0,"sell_vol":914.0,"unclassified_vol":0.0,"imbalance":-0.075294,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":4.721727},"context":{"vwap":9.359009,"price_vs_vwap_pct":-0.019326,"ema9":9.362711,"ema20":9.366909,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.813221,"dist_to_hod_atr":8.722696,"atr":0.01981,"spread_atr":0.504786,"own_change_pct":0.26738,"rel_strength_pct":{"SPY":0.247564,"IWM":0.198969}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.061897},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"bda829ae4721","ts":"2026-09-15T18:56:10+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7798,"target":10.07,"target_label":"ceiling","reward_risk":3.52,"pos_in_5d_range_pct":482.2,"room_to_5d_high_atr":-5.51},"price":9.844,"vwap":9.7298,"ext_from_open_pct":4.17,"max_ext_allowed_pct":4.0,"volume_pace":3.386,"trend":"flat","recent_slope_pct":-0.0629,"volatility":"low"},"price":9.844,"volume":{"bars":326,"last_bar_volume":5210.0,"baseline_avg":6811.35,"bar_rvol":0.7649,"raw_accel":-0.577967,"smooth_accel":-0.190829,"accel_momentum":0.264652,"rvol_3bar":[1.219855,1.910739,0.7649],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":193.0,"sell_vol":1543.0,"unclassified_vol":0.0,"imbalance":-0.77765,"bid":9.83,"ask":9.85,"spread_pct":0.203252,"quote_size_imbalance":null,"quote_age_s":0.125743},"context":{"vwap":9.729738,"price_vs_vwap_pct":1.174355,"ema9":9.865375,"ema20":9.88296,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.490196,"dist_to_hod_atr":8.26168,"atr":0.043091,"spread_atr":0.464139,"own_change_pct":-0.705645,"rel_strength_pct":{"SPY":-0.725461,"IWM":-0.774055}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.594824},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"59decd4c096d","ts":"2026-09-15T18:56:10+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.738,"target":13.2,"target_label":"ceiling","reward_risk":1.56,"pos_in_5d_range_pct":44.6,"room_to_5d_high_atr":1.15},"price":12.9188,"vwap":12.8988,"ext_from_open_pct":-1.01,"max_ext_allowed_pct":4.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":0.252,"volatility":"medium"},"price":12.9188,"volume":{"bars":325,"last_bar_volume":4440.0,"baseline_avg":970.0,"bar_rvol":4.57732,"raw_accel":10.044776,"smooth_accel":2.511288,"accel_momentum":0.901958,"rvol_3bar":[8.553693,0.422136,4.57732],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":2086.0,"sell_vol":300.0,"unclassified_vol":0.0,"imbalance":0.748533,"bid":12.92,"ask":12.97,"spread_pct":0.38625,"quote_size_imbalance":null,"quote_age_s":10.043128},"context":{"vwap":12.898804,"price_vs_vwap_pct":0.155025,"ema9":12.850212,"ema20":12.850895,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.939144,"dist_to_hod_atr":8.603424,"atr":0.04547,"spread_atr":1.09962,"own_change_pct":1.132812,"rel_strength_pct":{"SPY":1.112997,"IWM":1.064402}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.426275},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a61de9cf8745","ts":"2026-09-15T18:56:15+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7558,"target":10.07,"target_label":"ceiling","reward_risk":3.89,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.82,"vwap":9.7298,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":3.386,"trend":"flat","recent_slope_pct":-0.1117,"volatility":"low"},"price":9.82,"volume":{"bars":326,"last_bar_volume":5210.0,"baseline_avg":6811.35,"bar_rvol":0.7649,"raw_accel":-0.577967,"smooth_accel":-0.190829,"accel_momentum":0.264652,"rvol_3bar":[1.219855,1.910739,0.7649],"trend_3bar":"MIXED","projected_rvol":1.088184},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":427.0,"sell_vol":2222.0,"unclassified_vol":0.0,"imbalance":-0.677614,"bid":9.81,"ask":9.84,"spread_pct":0.305344,"quote_size_imbalance":null,"quote_age_s":0.37695},"context":{"vwap":9.729738,"price_vs_vwap_pct":0.927688,"ema9":9.865375,"ema20":9.88296,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72549,"dist_to_hod_atr":8.818647,"atr":0.043091,"spread_atr":0.696209,"own_change_pct":-0.705645,"rel_strength_pct":{"SPY":-0.725461,"IWM":-0.774055}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.518307},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c38005542a0d","ts":"2026-09-15T18:56:15+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.84 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.6621,"target":12.875,"target_label":"prev_day_high","reward_risk":0.18,"pos_in_5d_range_pct":39.5,"room_to_5d_high_atr":1.25},"price":12.8429,"vwap":12.8988,"ext_from_open_pct":-1.59,"max_ext_allowed_pct":4.0,"volume_pace":0.705,"trend":"flat","recent_slope_pct":0.1343,"volatility":"medium"},"price":12.8429,"volume":{"bars":325,"last_bar_volume":4440.0,"baseline_avg":970.0,"bar_rvol":4.57732,"raw_accel":10.044776,"smooth_accel":2.511288,"accel_momentum":0.901958,"rvol_3bar":[8.553693,0.422136,4.57732],"trend_3bar":"MIXED","projected_rvol":0.028866},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":2086.0,"sell_vol":301.0,"unclassified_vol":0.0,"imbalance":0.747801,"bid":12.92,"ask":12.97,"spread_pct":0.38625,"quote_size_imbalance":null,"quote_age_s":1.459053},"context":{"vwap":12.898804,"price_vs_vwap_pct":-0.433402,"ema9":12.850212,"ema20":12.850895,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.509391,"dist_to_hod_atr":10.272646,"atr":0.04547,"spread_atr":1.09962,"own_change_pct":1.132812,"rel_strength_pct":{"SPY":1.112997,"IWM":1.064402}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":3.422922},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a2a269a8bf5f","ts":"2026-09-15T18:56:20+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7642,"target":13.2,"target_label":"ceiling","reward_risk":1.41,"pos_in_5d_range_pct":46.3,"room_to_5d_high_atr":1.11},"price":12.945,"vwap":12.8988,"ext_from_open_pct":-0.8,"max_ext_allowed_pct":3.0,"volume_pace":0.706,"trend":"flat","recent_slope_pct":0.2926,"volatility":"medium"},"price":12.945,"volume":{"bars":325,"last_bar_volume":4440.0,"baseline_avg":970.0,"bar_rvol":4.57732,"raw_accel":10.044776,"smooth_accel":2.511288,"accel_momentum":0.901958,"rvol_3bar":[8.553693,0.422136,4.57732],"trend_3bar":"MIXED","projected_rvol":2.186598},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":2389.0,"sell_vol":109.0,"unclassified_vol":0.0,"imbalance":0.91273,"bid":12.92,"ask":12.97,"spread_pct":0.38625,"quote_size_imbalance":null,"quote_age_s":0.297532},"context":{"vwap":12.898804,"price_vs_vwap_pct":0.358145,"ema9":12.850212,"ema20":12.850895,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.742299,"dist_to_hod_atr":8.027223,"atr":0.04547,"spread_atr":1.09962,"own_change_pct":1.132812,"rel_strength_pct":{"SPY":1.112997,"IWM":1.064402}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":4.177858},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fc665f1d1cfc","ts":"2026-09-15T18:56:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.75,"target":10.07,"target_label":"ceiling","reward_risk":3.0,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.7299,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":3.387,"trend":"flat","recent_slope_pct":-0.0914,"volatility":"low"},"price":9.83,"volume":{"bars":326,"last_bar_volume":5210.0,"baseline_avg":6811.35,"bar_rvol":0.7649,"raw_accel":-0.577967,"smooth_accel":-0.190829,"accel_momentum":0.264652,"rvol_3bar":[1.219855,1.910739,0.7649],"trend_3bar":"MIXED","projected_rvol":1.262833},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1951.0,"sell_vol":1722.0,"unclassified_vol":0.0,"imbalance":0.062347,"bid":9.81,"ask":9.85,"spread_pct":0.406918,"quote_size_imbalance":null,"quote_age_s":6.43784},"context":{"vwap":9.729738,"price_vs_vwap_pct":1.030466,"ema9":9.865375,"ema20":9.88296,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":8.586577,"atr":0.043091,"spread_atr":0.928279,"own_change_pct":-0.705645,"rel_strength_pct":{"SPY":-0.725461,"IWM":-0.774055}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.047689},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"490819445fd6","ts":"2026-09-15T18:56:25+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2266,"target":9.46,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.25},"price":9.3795,"vwap":9.359,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0782,"volatility":"high"},"price":9.3795,"volume":{"bars":326,"last_bar_volume":4594.0,"baseline_avg":5588.35,"bar_rvol":0.822067,"raw_accel":0.637206,"smooth_accel":-0.77082,"accel_momentum":-3.088624,"rvol_3bar":[0.328069,0.498247,0.822067],"trend_3bar":"ACCELERATING","projected_rvol":0.554439},"flow":{"window_s":30,"trades":36,"trade_rate":1.2,"buy_vol":1072.0,"sell_vol":492.0,"unclassified_vol":0.0,"imbalance":0.370844,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":5.993945},"context":{"vwap":9.359009,"price_vs_vwap_pct":0.218947,"ema9":9.362711,"ema20":9.366909,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.579224,"dist_to_hod_atr":7.597024,"atr":0.01981,"spread_atr":0.504786,"own_change_pct":0.26738,"rel_strength_pct":{"SPY":0.247564,"IWM":0.198969}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.304859},"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":"9ce4550ead37","ts":"2026-09-15T18:56:35+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7313,"target":10.07,"target_label":"ceiling","reward_risk":3.23,"pos_in_5d_range_pct":473.3,"room_to_5d_high_atr":-5.38},"price":9.8113,"vwap":9.7299,"ext_from_open_pct":3.82,"max_ext_allowed_pct":4.0,"volume_pace":3.385,"trend":"flat","recent_slope_pct":-0.1294,"volatility":"low"},"price":9.8113,"volume":{"bars":326,"last_bar_volume":5210.0,"baseline_avg":6811.35,"bar_rvol":0.7649,"raw_accel":-0.577967,"smooth_accel":-0.190829,"accel_momentum":0.264652,"rvol_3bar":[1.219855,1.910739,0.7649],"trend_3bar":"MIXED","projected_rvol":1.002696},"flow":{"window_s":30,"trades":43,"trade_rate":1.433333,"buy_vol":2258.0,"sell_vol":1666.0,"unclassified_vol":0.0,"imbalance":0.150866,"bid":9.81,"ask":9.85,"spread_pct":0.406918,"quote_size_imbalance":null,"quote_age_s":4.985814},"context":{"vwap":9.729738,"price_vs_vwap_pct":0.838272,"ema9":9.865375,"ema20":9.88296,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.810784,"dist_to_hod_atr":9.020547,"atr":0.043091,"spread_atr":0.928279,"own_change_pct":-0.705645,"rel_strength_pct":{"SPY":-0.725461,"IWM":-0.774055}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.115398},"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":"e1f5c8f37dc4","ts":"2026-09-15T18:56:35+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.89 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7092,"target":13.2,"target_label":"ceiling","reward_risk":1.71,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.19},"price":12.89,"vwap":12.8988,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.707,"trend":"flat","recent_slope_pct":0.2074,"volatility":"medium"},"price":12.89,"volume":{"bars":325,"last_bar_volume":4440.0,"baseline_avg":970.0,"bar_rvol":4.57732,"raw_accel":10.044776,"smooth_accel":2.511288,"accel_momentum":0.901958,"rvol_3bar":[8.553693,0.422136,4.57732],"trend_3bar":"MIXED","projected_rvol":2.297496},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":700.0,"sell_vol":600.0,"unclassified_vol":0.0,"imbalance":0.076923,"bid":12.88,"ask":12.95,"spread_pct":0.542005,"quote_size_imbalance":null,"quote_age_s":2.062448},"context":{"vwap":12.898804,"price_vs_vwap_pct":-0.068251,"ema9":12.850212,"ema20":12.850895,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.155522,"dist_to_hod_atr":9.236804,"atr":0.04547,"spread_atr":1.539467,"own_change_pct":1.132812,"rel_strength_pct":{"SPY":1.112997,"IWM":1.064402}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.352102},"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":"0e38df721a66","ts":"2026-09-15T18:56:40+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.76,"target":10.07,"target_label":"ceiling","reward_risk":2.88,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.7299,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":3.385,"trend":"flat","recent_slope_pct":-0.071,"volatility":"low"},"price":9.84,"volume":{"bars":326,"last_bar_volume":5210.0,"baseline_avg":6811.35,"bar_rvol":0.7649,"raw_accel":-0.577967,"smooth_accel":-0.190829,"accel_momentum":0.264652,"rvol_3bar":[1.219855,1.910739,0.7649],"trend_3bar":"MIXED","projected_rvol":0.895197},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":2334.0,"sell_vol":942.0,"unclassified_vol":0.0,"imbalance":0.424908,"bid":9.81,"ask":9.85,"spread_pct":0.406918,"quote_size_imbalance":null,"quote_age_s":0.410951},"context":{"vwap":9.729738,"price_vs_vwap_pct":1.133244,"ema9":9.865375,"ema20":9.88296,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":8.354507,"atr":0.043091,"spread_atr":0.928279,"own_change_pct":-0.705645,"rel_strength_pct":{"SPY":-0.725461,"IWM":-0.774055}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.325012},"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":"2536467c00ec","ts":"2026-09-15T18:56:45+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2046,"target":9.46,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3575,"vwap":9.359,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0312,"volatility":"high"},"price":9.3575,"volume":{"bars":326,"last_bar_volume":4594.0,"baseline_avg":5588.35,"bar_rvol":0.822067,"raw_accel":0.637206,"smooth_accel":-0.77082,"accel_momentum":-3.088624,"rvol_3bar":[0.328069,0.498247,0.822067],"trend_3bar":"ACCELERATING","projected_rvol":0.392722},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":314.0,"sell_vol":310.0,"unclassified_vol":0.0,"imbalance":0.00641,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.430729},"context":{"vwap":9.359009,"price_vs_vwap_pct":-0.016121,"ema9":9.362711,"ema20":9.366909,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.810073,"dist_to_hod_atr":8.707552,"atr":0.01981,"spread_atr":0.504786,"own_change_pct":0.26738,"rel_strength_pct":{"SPY":0.247564,"IWM":0.198969}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.00527},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"76cb009c3c2b","ts":"2026-09-15T18:56:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2271,"target":9.46,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":6.6,"room_to_5d_high_atr":3.25},"price":9.38,"vwap":9.359,"ext_from_open_pct":0.32,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0792,"volatility":"high"},"price":9.38,"volume":{"bars":326,"last_bar_volume":4594.0,"baseline_avg":5588.35,"bar_rvol":0.822067,"raw_accel":0.637206,"smooth_accel":-0.77082,"accel_momentum":-3.088624,"rvol_3bar":[0.328069,0.498247,0.822067],"trend_3bar":"ACCELERATING","projected_rvol":0.433974},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":577.0,"sell_vol":353.0,"unclassified_vol":0.0,"imbalance":0.24086,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.108966},"context":{"vwap":9.359009,"price_vs_vwap_pct":0.22429,"ema9":9.362711,"ema20":9.366909,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.573977,"dist_to_hod_atr":7.571785,"atr":0.01981,"spread_atr":0.504786,"own_change_pct":0.26738,"rel_strength_pct":{"SPY":0.247564,"IWM":0.198969}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.198003},"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":"2c30849c2395","ts":"2026-09-15T18:56:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.349,"target":8.6,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":130.1,"room_to_5d_high_atr":-1.1},"price":8.54,"vwap":8.2166,"ext_from_open_pct":11.49,"max_ext_allowed_pct":3.0,"volume_pace":0.258,"trend":"flat","recent_slope_pct":-0.0256,"volatility":"high"},"price":8.54,"volume":{"bars":324,"last_bar_volume":4854.0,"baseline_avg":825.1,"bar_rvol":5.882923,"raw_accel":22.531693,"smooth_accel":2.933706,"accel_momentum":2.774017,"rvol_3bar":[0.848598,0.124231,5.882923],"trend_3bar":"MIXED","projected_rvol":3.219444},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":948.0,"sell_vol":494.0,"unclassified_vol":0.0,"imbalance":0.31484,"bid":8.54,"ask":8.56,"spread_pct":0.233918,"quote_size_imbalance":null,"quote_age_s":3.588575},"context":{"vwap":8.215587,"price_vs_vwap_pct":3.948746,"ema9":8.554671,"ema20":8.549813,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.697674,"dist_to_hod_atr":1.769224,"atr":0.033913,"spread_atr":0.589741,"own_change_pct":0.153306,"rel_strength_pct":{"SPY":0.13349,"IWM":0.084896}},"vas":{"raw":9,"score":10.0,"components":{"rvol":3,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.852183},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"86e8a67ca3aa","ts":"2026-09-15T18:56:55+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2048,"target":9.46,"target_label":"ceiling","reward_risk":0.67,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3577,"vwap":9.359,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":0.0316,"volatility":"high"},"price":9.3577,"volume":{"bars":326,"last_bar_volume":4594.0,"baseline_avg":5588.35,"bar_rvol":0.822067,"raw_accel":0.637206,"smooth_accel":-0.77082,"accel_momentum":-3.088624,"rvol_3bar":[0.328069,0.498247,0.822067],"trend_3bar":"ACCELERATING","projected_rvol":0.426146},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":506.0,"sell_vol":386.0,"unclassified_vol":0.0,"imbalance":0.134529,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":3.072464},"context":{"vwap":9.359009,"price_vs_vwap_pct":-0.013984,"ema9":9.362711,"ema20":9.366909,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.807975,"dist_to_hod_atr":8.697457,"atr":0.01981,"spread_atr":0.504786,"own_change_pct":0.26738,"rel_strength_pct":{"SPY":0.247564,"IWM":0.198969}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.110592},"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":"fc3d68673a72","ts":"2026-09-15T18:57:00+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2221,"target":9.46,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":6.3,"room_to_5d_high_atr":3.26},"price":9.375,"vwap":9.359,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":0.0685,"volatility":"high"},"price":9.375,"volume":{"bars":326,"last_bar_volume":4594.0,"baseline_avg":5588.35,"bar_rvol":0.822067,"raw_accel":0.637206,"smooth_accel":-0.77082,"accel_momentum":-3.088624,"rvol_3bar":[0.328069,0.498247,0.822067],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":513.0,"sell_vol":475.0,"unclassified_vol":0.0,"imbalance":0.038462,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":8.072464},"context":{"vwap":9.359009,"price_vs_vwap_pct":0.170865,"ema9":9.362711,"ema20":9.366909,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.626443,"dist_to_hod_atr":7.824177,"atr":0.01981,"spread_atr":0.504786,"own_change_pct":0.26738,"rel_strength_pct":{"SPY":0.239757,"IWM":0.20951}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-1,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.031618},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"6e2c488fd692","ts":"2026-09-15T18:57:05+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.205,"target":9.45,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3579,"vwap":9.359,"ext_from_open_pct":0.08,"max_ext_allowed_pct":3.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":0.0111,"volatility":"high"},"price":9.3579,"volume":{"bars":327,"last_bar_volume":2403.0,"baseline_avg":5777.8,"bar_rvol":0.415902,"raw_accel":-0.476926,"smooth_accel":-0.752624,"accel_momentum":0.018195,"rvol_3bar":[0.498247,0.822067,0.415902],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":413.0,"sell_vol":446.0,"unclassified_vol":0.0,"imbalance":-0.038417,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.756129},"context":{"vwap":9.35902,"price_vs_vwap_pct":-0.011968,"ema9":9.365169,"ema20":9.367679,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.805876,"dist_to_hod_atr":8.50972,"atr":0.020224,"spread_atr":0.494464,"own_change_pct":0.196653,"rel_strength_pct":{"SPY":0.16903,"IWM":0.138783}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.015978},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d6511f406262","ts":"2026-09-15T18:57:10+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2158,"target":9.45,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.27},"price":9.3687,"vwap":9.359,"ext_from_open_pct":0.2,"max_ext_allowed_pct":4.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":0.0342,"volatility":"high"},"price":9.3687,"volume":{"bars":327,"last_bar_volume":2403.0,"baseline_avg":5777.8,"bar_rvol":0.415902,"raw_accel":-0.476926,"smooth_accel":-0.752624,"accel_momentum":0.018195,"rvol_3bar":[0.498247,0.822067,0.415902],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":33,"trade_rate":1.1,"buy_vol":573.0,"sell_vol":470.0,"unclassified_vol":0.0,"imbalance":0.098754,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.264927},"context":{"vwap":9.35902,"price_vs_vwap_pct":0.103429,"ema9":9.365169,"ema20":9.367679,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.69255,"dist_to_hod_atr":7.975699,"atr":0.020224,"spread_atr":0.494464,"own_change_pct":0.196653,"rel_strength_pct":{"SPY":0.16903,"IWM":0.138783}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.041072},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a39818faeb76","ts":"2026-09-15T18:57:15+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.364,"target":8.7096,"target_label":"clear air (typical 60-min move)","reward_risk":0.81,"pos_in_5d_range_pct":130.6,"room_to_5d_high_atr":-1.12},"price":8.555,"vwap":8.2166,"ext_from_open_pct":11.68,"max_ext_allowed_pct":3.0,"volume_pace":0.258,"trend":"flat","recent_slope_pct":-0.0526,"volatility":"high"},"price":8.555,"volume":{"bars":325,"last_bar_volume":2435.0,"baseline_avg":1063.7,"bar_rvol":2.289179,"raw_accel":-0.498352,"smooth_accel":5.749772,"accel_momentum":2.816066,"rvol_3bar":[0.124231,5.882923,2.289179],"trend_3bar":"MIXED","projected_rvol":0.071449},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":962.0,"sell_vol":496.0,"unclassified_vol":0.0,"imbalance":0.319616,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":2.930365},"context":{"vwap":8.216601,"price_vs_vwap_pct":4.118473,"ema9":8.551737,"ema20":8.548878,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.523256,"dist_to_hod_atr":1.337945,"atr":0.033634,"spread_atr":0.891963,"own_change_pct":-0.279078,"rel_strength_pct":{"SPY":-0.306701,"IWM":-0.336948}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.731658},"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":"abb4c7d403e4","ts":"2026-09-15T18:57:20+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.349,"target":8.6,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":130.1,"room_to_5d_high_atr":-1.1},"price":8.54,"vwap":8.2167,"ext_from_open_pct":11.49,"max_ext_allowed_pct":3.0,"volume_pace":0.258,"trend":"flat","recent_slope_pct":-0.0877,"volatility":"high"},"price":8.54,"volume":{"bars":325,"last_bar_volume":2435.0,"baseline_avg":1063.7,"bar_rvol":2.289179,"raw_accel":-0.498352,"smooth_accel":5.749772,"accel_momentum":2.816066,"rvol_3bar":[0.124231,5.882923,2.289179],"trend_3bar":"MIXED","projected_rvol":0.970198},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":962.0,"sell_vol":821.0,"unclassified_vol":0.0,"imbalance":0.07908,"bid":8.53,"ask":8.57,"spread_pct":0.467836,"quote_size_imbalance":null,"quote_age_s":0.98602},"context":{"vwap":8.216601,"price_vs_vwap_pct":3.935916,"ema9":8.551737,"ema20":8.548878,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.697674,"dist_to_hod_atr":1.783927,"atr":0.033634,"spread_atr":1.189284,"own_change_pct":-0.279078,"rel_strength_pct":{"SPY":-0.306701,"IWM":-0.336948}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.181029},"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":"f6f051cfac30","ts":"2026-09-15T18:57:35+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2025,"target":9.45,"target_label":"ceiling","reward_risk":0.62,"pos_in_5d_range_pct":5.4,"room_to_5d_high_atr":3.29},"price":9.3554,"vwap":9.359,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":0.0058,"volatility":"high"},"price":9.3554,"volume":{"bars":327,"last_bar_volume":2403.0,"baseline_avg":5777.8,"bar_rvol":0.415902,"raw_accel":-0.476926,"smooth_accel":-0.752624,"accel_momentum":0.018195,"rvol_3bar":[0.498247,0.822067,0.415902],"trend_3bar":"MIXED","projected_rvol":0.241516},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":470.0,"sell_vol":343.0,"unclassified_vol":0.0,"imbalance":0.156212,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":5.808732},"context":{"vwap":9.35902,"price_vs_vwap_pct":-0.03868,"ema9":9.365169,"ema20":9.367679,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.832109,"dist_to_hod_atr":8.633336,"atr":0.020224,"spread_atr":0.494464,"own_change_pct":0.196653,"rel_strength_pct":{"SPY":0.16903,"IWM":0.138783}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.064969},"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":"f3e02cf1b09f","ts":"2026-09-15T18:57:50+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2225,"target":9.45,"target_label":"ceiling","reward_risk":0.49,"pos_in_5d_range_pct":6.4,"room_to_5d_high_atr":3.26},"price":9.3754,"vwap":9.359,"ext_from_open_pct":0.27,"max_ext_allowed_pct":3.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":0.0485,"volatility":"high"},"price":9.3754,"volume":{"bars":327,"last_bar_volume":2403.0,"baseline_avg":5777.8,"bar_rvol":0.415902,"raw_accel":-0.476926,"smooth_accel":-0.752624,"accel_momentum":0.018195,"rvol_3bar":[0.498247,0.822067,0.415902],"trend_3bar":"MIXED","projected_rvol":0.351622},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":650.0,"sell_vol":563.0,"unclassified_vol":0.0,"imbalance":0.071723,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.342767},"context":{"vwap":9.35902,"price_vs_vwap_pct":0.175018,"ema9":9.365169,"ema20":9.367679,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.622246,"dist_to_hod_atr":7.644408,"atr":0.020224,"spread_atr":0.494464,"own_change_pct":0.196653,"rel_strength_pct":{"SPY":0.16903,"IWM":0.138783}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.02983},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"98a9115bcae1","ts":"2026-09-15T18:58:15+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"price $9.36 below VWAP $9.36","plan":{"state":"PASS","setup":"","stop":9.2037,"target":9.45,"target_label":"ceiling","reward_risk":0.61,"pos_in_5d_range_pct":5.5,"room_to_5d_high_atr":3.29},"price":9.3566,"vwap":9.359,"ext_from_open_pct":0.07,"max_ext_allowed_pct":3.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":-0.028,"volatility":"high"},"price":9.3566,"volume":{"bars":328,"last_bar_volume":2297.0,"baseline_avg":5638.7,"bar_rvol":0.407363,"raw_accel":-0.044112,"smooth_accel":-0.755157,"accel_momentum":-0.002532,"rvol_3bar":[0.822067,0.415902,0.407363],"trend_3bar":"DECELERATING","projected_rvol":1.190345},"flow":{"window_s":30,"trades":38,"trade_rate":1.266667,"buy_vol":1249.0,"sell_vol":1038.0,"unclassified_vol":0.0,"imbalance":0.092261,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":2.921437},"context":{"vwap":9.359031,"price_vs_vwap_pct":-0.025978,"ema9":9.367255,"ema20":9.368434,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.819517,"dist_to_hod_atr":8.428841,"atr":0.020572,"spread_atr":0.486092,"own_change_pct":0.243777,"rel_strength_pct":{"SPY":0.217359,"IWM":0.203451}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.037584},"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":"285a2a468b3b","ts":"2026-09-15T18:58:20+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2176,"target":9.45,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.3705,"vwap":9.359,"ext_from_open_pct":0.22,"max_ext_allowed_pct":3.0,"volume_pace":0.472,"trend":"flat","recent_slope_pct":0.0017,"volatility":"high"},"price":9.3705,"volume":{"bars":328,"last_bar_volume":2297.0,"baseline_avg":5638.7,"bar_rvol":0.407363,"raw_accel":-0.044112,"smooth_accel":-0.755157,"accel_momentum":-0.002532,"rvol_3bar":[0.822067,0.415902,0.407363],"trend_3bar":"DECELERATING","projected_rvol":0.91404},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1259.0,"sell_vol":1063.0,"unclassified_vol":0.0,"imbalance":0.08441,"bid":9.37,"ask":9.38,"spread_pct":0.106667,"quote_size_imbalance":null,"quote_age_s":0.771976},"context":{"vwap":9.359031,"price_vs_vwap_pct":0.122542,"ema9":9.367255,"ema20":9.368434,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.673662,"dist_to_hod_atr":7.753173,"atr":0.020572,"spread_atr":0.486092,"own_change_pct":0.243777,"rel_strength_pct":{"SPY":0.217359,"IWM":0.203451}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.034386},"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":"14e1072d75a7","ts":"2026-09-15T18:58:50+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.364,"target":8.7091,"target_label":"clear air (typical 60-min move)","reward_risk":0.81,"pos_in_5d_range_pct":130.6,"room_to_5d_high_atr":-1.12},"price":8.555,"vwap":8.2177,"ext_from_open_pct":11.68,"max_ext_allowed_pct":4.0,"volume_pace":0.257,"trend":"flat","recent_slope_pct":-0.0095,"volatility":"high"},"price":8.555,"volume":{"bars":326,"last_bar_volume":944.0,"baseline_avg":1170.9,"bar_rvol":0.806217,"raw_accel":-0.61232,"smooth_accel":5.912678,"accel_momentum":0.162907,"rvol_3bar":[5.882923,2.289179,0.806217],"trend_3bar":"DECELERATING","projected_rvol":1.708429},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":1582.0,"sell_vol":84.0,"unclassified_vol":0.0,"imbalance":0.89916,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":1.582146},"context":{"vwap":8.216994,"price_vs_vwap_pct":4.113502,"ema9":8.551389,"ema20":8.548985,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.523256,"dist_to_hod_atr":1.37154,"atr":0.03281,"spread_atr":0.91436,"own_change_pct":0.058514,"rel_strength_pct":{"SPY":0.032096,"IWM":0.018188}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.724918},"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":"ae52fbb9db42","ts":"2026-09-15T18:58:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.3502,"target":8.6,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":130.2,"room_to_5d_high_atr":-1.1},"price":8.5412,"vwap":8.2177,"ext_from_open_pct":11.5,"max_ext_allowed_pct":4.0,"volume_pace":0.257,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"high"},"price":8.5412,"volume":{"bars":326,"last_bar_volume":944.0,"baseline_avg":1170.9,"bar_rvol":0.806217,"raw_accel":-0.61232,"smooth_accel":5.912678,"accel_momentum":0.162907,"rvol_3bar":[5.882923,2.289179,0.806217],"trend_3bar":"DECELERATING","projected_rvol":1.554049},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":1582.0,"sell_vol":85.0,"unclassified_vol":0.0,"imbalance":0.89802,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":6.582146},"context":{"vwap":8.216994,"price_vs_vwap_pct":3.945557,"ema9":8.551389,"ema20":8.548985,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.683721,"dist_to_hod_atr":1.792146,"atr":0.03281,"spread_atr":0.91436,"own_change_pct":0.058514,"rel_strength_pct":{"SPY":0.032096,"IWM":0.018188}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.724},"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":"74411a7fad47","ts":"2026-09-15T18:59:05+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.364,"target":8.707,"target_label":"clear air (typical 60-min move)","reward_risk":0.8,"pos_in_5d_range_pct":130.6,"room_to_5d_high_atr":-1.12},"price":8.555,"vwap":8.2177,"ext_from_open_pct":11.68,"max_ext_allowed_pct":4.0,"volume_pace":0.257,"trend":"flat","recent_slope_pct":-0.0058,"volatility":"high"},"price":8.555,"volume":{"bars":327,"last_bar_volume":1668.0,"baseline_avg":1057.35,"bar_rvol":1.577529,"raw_accel":0.766949,"smooth_accel":-0.104666,"accel_momentum":-6.017344,"rvol_3bar":[2.289179,0.806217,1.577529],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":7,"trade_rate":0.233333,"buy_vol":435.0,"sell_vol":46.0,"unclassified_vol":0.0,"imbalance":0.808732,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":16.582146},"context":{"vwap":8.217677,"price_vs_vwap_pct":4.104843,"ema9":8.549351,"ema20":8.548244,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.523256,"dist_to_hod_atr":1.350402,"atr":0.033323,"spread_atr":0.900268,"own_change_pct":-0.336056,"rel_strength_pct":{"SPY":-0.371721,"IWM":-0.400932}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.275798},"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":"353fd9adbb55","ts":"2026-09-15T18:59:20+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.3532,"target":8.6,"target_label":"ceiling","reward_risk":0.29,"pos_in_5d_range_pct":130.3,"room_to_5d_high_atr":-1.11},"price":8.5442,"vwap":8.2182,"ext_from_open_pct":11.54,"max_ext_allowed_pct":4.0,"volume_pace":0.257,"trend":"flat","recent_slope_pct":-0.0311,"volatility":"high"},"price":8.5442,"volume":{"bars":327,"last_bar_volume":1668.0,"baseline_avg":1057.35,"bar_rvol":1.577529,"raw_accel":0.766949,"smooth_accel":-0.104666,"accel_momentum":-6.017344,"rvol_3bar":[2.289179,0.806217,1.577529],"trend_3bar":"MIXED","projected_rvol":3.481345},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":1226.0,"sell_vol":2.0,"unclassified_vol":0.0,"imbalance":0.996743,"bid":8.54,"ask":8.57,"spread_pct":0.350672,"quote_size_imbalance":null,"quote_age_s":7.406988},"context":{"vwap":8.217677,"price_vs_vwap_pct":3.973419,"ema9":8.549351,"ema20":8.548244,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.648837,"dist_to_hod_atr":1.674498,"atr":0.033323,"spread_atr":0.900268,"own_change_pct":-0.336056,"rel_strength_pct":{"SPY":-0.371721,"IWM":-0.400932}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.57239},"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":"612b7cbe3ec2","ts":"2026-09-15T18:59:25+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7559,"target":10.07,"target_label":"ceiling","reward_risk":3.89,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.8201,"vwap":9.7307,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":3.383,"trend":"flat","recent_slope_pct":-0.0651,"volatility":"low"},"price":9.8201,"volume":{"bars":329,"last_bar_volume":3158.0,"baseline_avg":7728.0,"bar_rvol":0.408644,"raw_accel":-0.814497,"smooth_accel":-0.035514,"accel_momentum":0.057264,"rvol_3bar":[0.581674,2.414478,0.408644],"trend_3bar":"MIXED","projected_rvol":0.03882},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":0.0,"sell_vol":125.0,"unclassified_vol":0.0,"imbalance":-1.0,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":22.19638},"context":{"vwap":9.730715,"price_vs_vwap_pct":0.918583,"ema9":9.853542,"ema20":9.872153,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72451,"dist_to_hod_atr":8.451082,"atr":0.044953,"spread_atr":0.667366,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.035665,"IWM":-0.064876}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.408644},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"635d86c2e3b9","ts":"2026-09-15T18:59:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.2% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7858,"target":10.07,"target_label":"ceiling","reward_risk":3.43,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.7307,"ext_from_open_pct":4.23,"max_ext_allowed_pct":4.0,"volume_pace":3.382,"trend":"flat","recent_slope_pct":-0.0044,"volatility":"low"},"price":9.85,"volume":{"bars":329,"last_bar_volume":3158.0,"baseline_avg":7728.0,"bar_rvol":0.408644,"raw_accel":-0.814497,"smooth_accel":-0.035514,"accel_momentum":0.057264,"rvol_3bar":[0.581674,2.414478,0.408644],"trend_3bar":"MIXED","projected_rvol":0.034938},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":10.0,"sell_vol":125.0,"unclassified_vol":0.0,"imbalance":-0.851852,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":27.19638},"context":{"vwap":9.730715,"price_vs_vwap_pct":1.225858,"ema9":9.853542,"ema20":9.872153,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":7.78594,"atr":0.044953,"spread_atr":0.667366,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.035665,"IWM":-0.064876}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.348104},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"186522097188","ts":"2026-09-15T18:59:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7858,"target":10.07,"target_label":"ceiling","reward_risk":3.43,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.7307,"ext_from_open_pct":4.23,"max_ext_allowed_pct":5.0,"volume_pace":3.379,"trend":"flat","recent_slope_pct":-0.0044,"volatility":"low"},"price":9.85,"volume":{"bars":329,"last_bar_volume":3158.0,"baseline_avg":7728.0,"bar_rvol":0.408644,"raw_accel":-0.814497,"smooth_accel":-0.035514,"accel_momentum":0.057264,"rvol_3bar":[0.581674,2.414478,0.408644],"trend_3bar":"MIXED","projected_rvol":0.02236},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":18.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.058824,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":19.985688},"context":{"vwap":9.730715,"price_vs_vwap_pct":1.225858,"ema9":9.853542,"ema20":9.872153,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":7.78594,"atr":0.044953,"spread_atr":0.667366,"own_change_pct":0.0,"rel_strength_pct":{"SPY":-0.035665,"IWM":-0.064876}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.024038},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"d4fb44f7bf39","ts":"2026-09-15T19:00:00+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.26x normal below floor 0.4x","plan":{"state":"WATCH","setup":"","stop":8.379,"target":8.722,"target_label":"clear air (typical 60-min move)","reward_risk":0.8,"pos_in_5d_range_pct":131.2,"room_to_5d_high_atr":-1.14},"price":8.57,"vwap":8.2183,"ext_from_open_pct":11.88,"max_ext_allowed_pct":4.0,"volume_pace":0.257,"trend":"flat","recent_slope_pct":0.0292,"volatility":"high"},"price":8.57,"volume":{"bars":327,"last_bar_volume":1668.0,"baseline_avg":1057.35,"bar_rvol":1.577529,"raw_accel":0.766949,"smooth_accel":-0.104666,"accel_momentum":-6.017344,"rvol_3bar":[2.289179,0.806217,1.577529],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":9,"trade_rate":0.3,"buy_vol":164.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":8.54,"ask":8.6,"spread_pct":0.700117,"quote_size_imbalance":null,"quote_age_s":1.126156},"context":{"vwap":8.217677,"price_vs_vwap_pct":4.287376,"ema9":8.549351,"ema20":8.548244,"ema_stack":true,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.348837,"dist_to_hod_atr":0.900268,"atr":0.033323,"spread_atr":1.800536,"own_change_pct":-0.336056,"rel_strength_pct":{"SPY":-0.38889,"IWM":-0.409689}},"vas":{"raw":1,"score":5.0,"components":{"rvol":1,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":1.577529},"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":"e063cb9fb838","ts":"2026-09-15T19:00:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7708,"target":10.07,"target_label":"ceiling","reward_risk":3.66,"pos_in_5d_range_pct":479.7,"room_to_5d_high_atr":-5.47},"price":9.835,"vwap":9.7311,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":3.387,"trend":"flat","recent_slope_pct":-0.0087,"volatility":"low"},"price":9.835,"volume":{"bars":330,"last_bar_volume":144.0,"baseline_avg":7853.95,"bar_rvol":0.018335,"raw_accel":-0.954402,"smooth_accel":-0.060069,"accel_momentum":-0.024555,"rvol_3bar":[2.414478,0.408644,0.018335],"trend_3bar":"DECELERATING","projected_rvol":4.80166},"flow":{"window_s":30,"trades":24,"trade_rate":0.8,"buy_vol":4735.0,"sell_vol":4702.0,"unclassified_vol":0.0,"imbalance":0.003497,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":0.033442},"context":{"vwap":9.730721,"price_vs_vwap_pct":1.071643,"ema9":9.852834,"ema20":9.870043,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.578431,"dist_to_hod_atr":8.318591,"atr":0.043878,"spread_atr":0.68372,"own_change_pct":-0.10142,"rel_strength_pct":{"SPY":-0.154254,"IWM":-0.175052}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":6.4e-05},"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":"49ec4c9570cd","ts":"2026-09-15T19:00:15+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7592,"target":13.17,"target_label":"ceiling","reward_risk":1.27,"pos_in_5d_range_pct":46.0,"room_to_5d_high_atr":1.12},"price":12.94,"vwap":12.8986,"ext_from_open_pct":-0.84,"max_ext_allowed_pct":4.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":0.1278,"volatility":"medium"},"price":12.94,"volume":{"bars":329,"last_bar_volume":46.0,"baseline_avg":1479.7,"bar_rvol":0.031087,"raw_accel":-0.903967,"smooth_accel":-0.915224,"accel_momentum":-0.505009,"rvol_3bar":[0.250505,0.326595,0.031087],"trend_3bar":"MIXED","projected_rvol":0.156789},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":51.0,"sell_vol":7.0,"unclassified_vol":0.0,"imbalance":0.758621,"bid":12.85,"ask":12.94,"spread_pct":0.697945,"quote_size_imbalance":null,"quote_age_s":29.779645},"context":{"vwap":12.898645,"price_vs_vwap_pct":0.320618,"ema9":12.881719,"ema20":12.867381,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.779865,"dist_to_hod_atr":7.095349,"atr":0.052147,"spread_atr":1.725896,"own_change_pct":0.585323,"rel_strength_pct":{"SPY":0.532489,"IWM":0.51169}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.023584},"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":"ec96df8fe487","ts":"2026-09-15T19:00:20+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7577,"target":10.07,"target_label":"ceiling","reward_risk":3.86,"pos_in_5d_range_pct":476.2,"room_to_5d_high_atr":-5.42},"price":9.8219,"vwap":9.7311,"ext_from_open_pct":3.94,"max_ext_allowed_pct":4.0,"volume_pace":3.387,"trend":"flat","recent_slope_pct":-0.0354,"volatility":"low"},"price":9.8219,"volume":{"bars":330,"last_bar_volume":144.0,"baseline_avg":7853.95,"bar_rvol":0.018335,"raw_accel":-0.954402,"smooth_accel":-0.060069,"accel_momentum":-0.024555,"rvol_3bar":[2.414478,0.408644,0.018335],"trend_3bar":"DECELERATING","projected_rvol":3.800253},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":5242.0,"sell_vol":4707.0,"unclassified_vol":0.0,"imbalance":0.053774,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":4.177775},"context":{"vwap":9.730721,"price_vs_vwap_pct":0.937018,"ema9":9.852834,"ema20":9.870043,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.706863,"dist_to_hod_atr":8.617148,"atr":0.043878,"spread_atr":0.68372,"own_change_pct":-0.10142,"rel_strength_pct":{"SPY":-0.154254,"IWM":-0.175052}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.000986},"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":"f94351a2e55e","ts":"2026-09-15T19:00:20+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.90 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7163,"target":13.17,"target_label":"ceiling","reward_risk":1.51,"pos_in_5d_range_pct":43.1,"room_to_5d_high_atr":1.18},"price":12.8971,"vwap":12.8986,"ext_from_open_pct":-1.17,"max_ext_allowed_pct":4.0,"volume_pace":0.71,"trend":"flat","recent_slope_pct":0.0614,"volatility":"medium"},"price":12.8971,"volume":{"bars":329,"last_bar_volume":46.0,"baseline_avg":1479.7,"bar_rvol":0.031087,"raw_accel":-0.903967,"smooth_accel":-0.915224,"accel_momentum":-0.505009,"rvol_3bar":[0.250505,0.326595,0.031087],"trend_3bar":"MIXED","projected_rvol":0.135838},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":51.0,"sell_vol":16.0,"unclassified_vol":0.0,"imbalance":0.522388,"bid":12.85,"ask":12.94,"spread_pct":0.697945,"quote_size_imbalance":null,"quote_age_s":34.779645},"context":{"vwap":12.898645,"price_vs_vwap_pct":-0.011975,"ema9":12.881719,"ema20":12.867381,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.102179,"dist_to_hod_atr":7.918026,"atr":0.052147,"spread_atr":1.725896,"own_change_pct":0.585323,"rel_strength_pct":{"SPY":0.532489,"IWM":0.51169}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.01624},"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":"2224a1887c10","ts":"2026-09-15T19:00:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7758,"target":10.07,"target_label":"ceiling","reward_risk":3.58,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.7312,"ext_from_open_pct":4.13,"max_ext_allowed_pct":4.0,"volume_pace":3.387,"trend":"flat","recent_slope_pct":0.0014,"volatility":"low"},"price":9.84,"volume":{"bars":330,"last_bar_volume":144.0,"baseline_avg":7853.95,"bar_rvol":0.018335,"raw_accel":-0.954402,"smooth_accel":-0.060069,"accel_momentum":-0.024555,"rvol_3bar":[2.414478,0.408644,0.018335],"trend_3bar":"DECELERATING","projected_rvol":3.319196},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":6148.0,"sell_vol":4714.0,"unclassified_vol":0.0,"imbalance":0.13202,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":4.032935},"context":{"vwap":9.730721,"price_vs_vwap_pct":1.123027,"ema9":9.852834,"ema20":9.870043,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":8.204637,"atr":0.043878,"spread_atr":0.68372,"own_change_pct":-0.10142,"rel_strength_pct":{"SPY":-0.154254,"IWM":-0.175052}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.002421},"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":"cec8eb095a5a","ts":"2026-09-15T19:00:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5968,"target":10.935,"target_label":"prev_day_high","reward_risk":1.28,"pos_in_5d_range_pct":41.5,"room_to_5d_high_atr":1.27},"price":10.745,"vwap":10.6049,"ext_from_open_pct":3.22,"max_ext_allowed_pct":3.0,"volume_pace":0.872,"trend":"flat","recent_slope_pct":0.1018,"volatility":"medium"},"price":10.745,"volume":{"bars":330,"last_bar_volume":12594.0,"baseline_avg":16845.85,"bar_rvol":0.747603,"raw_accel":0.064672,"smooth_accel":-0.27633,"accel_momentum":0.094264,"rvol_3bar":[0.408405,0.711589,0.747603],"trend_3bar":"ACCELERATING","projected_rvol":2.173283},"flow":{"window_s":30,"trades":206,"trade_rate":6.866667,"buy_vol":21918.0,"sell_vol":7347.0,"unclassified_vol":0.0,"imbalance":0.497899,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":1.447414},"context":{"vwap":10.604386,"price_vs_vwap_pct":1.325998,"ema9":10.707322,"ema20":10.73346,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.78245,"dist_to_hod_atr":4.735777,"atr":0.041176,"spread_atr":0.24286,"own_change_pct":0.046729,"rel_strength_pct":{"SPY":-0.006105,"IWM":-0.026904}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.37223},"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":"9acc5daa9534","ts":"2026-09-15T19:00:55+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7734,"target":10.07,"target_label":"ceiling","reward_risk":3.62,"pos_in_5d_range_pct":480.4,"room_to_5d_high_atr":-5.48},"price":9.8376,"vwap":9.7312,"ext_from_open_pct":4.1,"max_ext_allowed_pct":5.0,"volume_pace":3.383,"trend":"flat","recent_slope_pct":-0.0035,"volatility":"low"},"price":9.8376,"volume":{"bars":330,"last_bar_volume":144.0,"baseline_avg":7853.95,"bar_rvol":0.018335,"raw_accel":-0.954402,"smooth_accel":-0.060069,"accel_momentum":-0.024555,"rvol_3bar":[2.414478,0.408644,0.018335],"trend_3bar":"DECELERATING","projected_rvol":1.58637},"flow":{"window_s":30,"trades":6,"trade_rate":0.2,"buy_vol":259.0,"sell_vol":300.0,"unclassified_vol":0.0,"imbalance":-0.073345,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":2.993456},"context":{"vwap":9.730721,"price_vs_vwap_pct":1.098363,"ema9":9.852834,"ema20":9.870043,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.552941,"dist_to_hod_atr":8.259335,"atr":0.043878,"spread_atr":0.68372,"own_change_pct":-0.10142,"rel_strength_pct":{"SPY":-0.154254,"IWM":-0.175052}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":0,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.001345},"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":"1a676e4e6d5d","ts":"2026-09-15T19:01:20+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7708,"target":10.07,"target_label":"ceiling","reward_risk":3.66,"pos_in_5d_range_pct":479.7,"room_to_5d_high_atr":-5.47},"price":9.835,"vwap":9.7312,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":3.379,"trend":"flat","recent_slope_pct":-0.0126,"volatility":"low"},"price":9.835,"volume":{"bars":331,"last_bar_volume":11421.0,"baseline_avg":7848.05,"bar_rvol":1.455266,"raw_accel":4.821064,"smooth_accel":-0.440275,"accel_momentum":-0.380206,"rvol_3bar":[0.408644,0.018335,1.455266],"trend_3bar":"MIXED","projected_rvol":0.071865},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":337.0,"sell_vol":110.0,"unclassified_vol":0.0,"imbalance":0.50783,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":10.443011},"context":{"vwap":9.731187,"price_vs_vwap_pct":1.066809,"ema9":9.849787,"ema20":9.866953,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.578431,"dist_to_hod_atr":8.510863,"atr":0.042886,"spread_atr":0.699523,"own_change_pct":-0.125888,"rel_strength_pct":{"SPY":-0.189088,"IWM":-0.232816}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.739028},"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":"5c15f3947e7f","ts":"2026-09-15T19:01:25+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5682,"target":10.935,"target_label":"prev_day_high","reward_risk":1.47,"pos_in_5d_range_pct":39.3,"room_to_5d_high_atr":1.32},"price":10.7164,"vwap":10.605,"ext_from_open_pct":2.94,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.04,"volatility":"medium"},"price":10.7164,"volume":{"bars":331,"last_bar_volume":36379.0,"baseline_avg":16613.2,"bar_rvol":2.189765,"raw_accel":1.888598,"smooth_accel":0.856606,"accel_momentum":1.132937,"rvol_3bar":[0.711589,0.747603,2.189765],"trend_3bar":"ACCELERATING","projected_rvol":0.299184},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":3100.0,"sell_vol":1571.0,"unclassified_vol":0.0,"imbalance":0.327339,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.081248},"context":{"vwap":10.605006,"price_vs_vwap_pct":1.050389,"ema9":10.711857,"ema20":10.73313,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.043876,"dist_to_hod_atr":5.334814,"atr":0.041913,"spread_atr":0.238587,"own_change_pct":0.344144,"rel_strength_pct":{"SPY":0.280944,"IWM":0.237216}},"vas":{"raw":8,"score":9.4,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.716795},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"c0477609aee3","ts":"2026-09-15T19:01:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5876,"target":10.935,"target_label":"prev_day_high","reward_risk":1.34,"pos_in_5d_range_pct":40.8,"room_to_5d_high_atr":1.29},"price":10.7358,"vwap":10.6051,"ext_from_open_pct":3.13,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0761,"volatility":"medium"},"price":10.7358,"volume":{"bars":331,"last_bar_volume":36379.0,"baseline_avg":16613.2,"bar_rvol":2.189765,"raw_accel":1.888598,"smooth_accel":0.856606,"accel_momentum":1.132937,"rvol_3bar":[0.711589,0.747603,2.189765],"trend_3bar":"ACCELERATING","projected_rvol":0.6171},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":2557.0,"sell_vol":2569.0,"unclassified_vol":0.0,"imbalance":-0.002341,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":1.080485},"context":{"vwap":10.605006,"price_vs_vwap_pct":1.233321,"ema9":10.711857,"ema20":10.73313,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.866545,"dist_to_hod_atr":4.871955,"atr":0.041913,"spread_atr":0.238587,"own_change_pct":0.344144,"rel_strength_pct":{"SPY":0.280944,"IWM":0.237216}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.005126},"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":"a4130d37b507","ts":"2026-09-15T19:01:45+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7305,"target":13.17,"target_label":"ceiling","reward_risk":1.43,"pos_in_5d_range_pct":44.1,"room_to_5d_high_atr":1.16},"price":12.9113,"vwap":12.8987,"ext_from_open_pct":-1.06,"max_ext_allowed_pct":4.0,"volume_pace":0.707,"trend":"flat","recent_slope_pct":0.0369,"volatility":"medium"},"price":12.9113,"volume":{"bars":330,"last_bar_volume":339.0,"baseline_avg":1480.95,"bar_rvol":0.228907,"raw_accel":-0.084372,"smooth_accel":-0.91751,"accel_momentum":-0.002286,"rvol_3bar":[0.326595,0.031087,0.228907],"trend_3bar":"MIXED","projected_rvol":0.156656},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":107.0,"sell_vol":67.0,"unclassified_vol":0.0,"imbalance":0.229885,"bid":12.85,"ask":12.92,"spread_pct":0.543267,"quote_size_imbalance":null,"quote_age_s":15.230335},"context":{"vwap":12.898648,"price_vs_vwap_pct":0.098091,"ema9":12.884375,"ema20":12.870011,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.995492,"dist_to_hod_atr":7.463209,"atr":0.053422,"spread_atr":1.31032,"own_change_pct":-0.38625,"rel_strength_pct":{"SPY":-0.44945,"IWM":-0.493177}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.052622},"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":"b11123d2d51d","ts":"2026-09-15T19:01:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7708,"target":10.07,"target_label":"ceiling","reward_risk":3.66,"pos_in_5d_range_pct":479.7,"room_to_5d_high_atr":-5.47},"price":9.835,"vwap":9.7314,"ext_from_open_pct":4.07,"max_ext_allowed_pct":5.0,"volume_pace":3.382,"trend":"flat","recent_slope_pct":-0.0126,"volatility":"low"},"price":9.835,"volume":{"bars":331,"last_bar_volume":11421.0,"baseline_avg":7848.05,"bar_rvol":1.455266,"raw_accel":4.821064,"smooth_accel":-0.440275,"accel_momentum":-0.380206,"rvol_3bar":[0.408644,0.018335,1.455266],"trend_3bar":"MIXED","projected_rvol":0.949535},"flow":{"window_s":30,"trades":69,"trade_rate":2.3,"buy_vol":4087.0,"sell_vol":1935.0,"unclassified_vol":0.0,"imbalance":0.357356,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":1.456448},"context":{"vwap":9.731187,"price_vs_vwap_pct":1.066809,"ema9":9.849787,"ema20":9.866953,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.578431,"dist_to_hod_atr":8.510863,"atr":0.042886,"spread_atr":0.699523,"own_change_pct":-0.125888,"rel_strength_pct":{"SPY":-0.189088,"IWM":-0.232816}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.520049},"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":"f4f6f5f38d3e","ts":"2026-09-15T19:01:50+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5707,"target":10.935,"target_label":"prev_day_high","reward_risk":1.46,"pos_in_5d_range_pct":39.5,"room_to_5d_high_atr":1.32},"price":10.7189,"vwap":10.6052,"ext_from_open_pct":2.97,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0446,"volatility":"medium"},"price":10.7189,"volume":{"bars":331,"last_bar_volume":36379.0,"baseline_avg":16613.2,"bar_rvol":2.189765,"raw_accel":1.888598,"smooth_accel":0.856606,"accel_momentum":1.132937,"rvol_3bar":[0.711589,0.747603,2.189765],"trend_3bar":"ACCELERATING","projected_rvol":0.719067},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":4358.0,"sell_vol":3755.0,"unclassified_vol":0.0,"imbalance":0.074325,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.16957},"context":{"vwap":10.605006,"price_vs_vwap_pct":1.073962,"ema9":10.711857,"ema20":10.73313,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.021024,"dist_to_hod_atr":5.275167,"atr":0.041913,"spread_atr":0.238587,"own_change_pct":0.344144,"rel_strength_pct":{"SPY":0.280944,"IWM":0.237216}},"vas":{"raw":6,"score":8.1,"components":{"rvol":2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.162755},"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":"06cffde59066","ts":"2026-09-15T19:02:00+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7658,"target":10.07,"target_label":"ceiling","reward_risk":3.74,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.7315,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":3.381,"trend":"flat","recent_slope_pct":-0.0228,"volatility":"low"},"price":9.83,"volume":{"bars":331,"last_bar_volume":11421.0,"baseline_avg":7848.05,"bar_rvol":1.455266,"raw_accel":4.821064,"smooth_accel":-0.440275,"accel_momentum":-0.380206,"rvol_3bar":[0.408644,0.018335,1.455266],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":2732.0,"sell_vol":785.0,"unclassified_vol":0.0,"imbalance":0.553597,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":0.350646},"context":{"vwap":9.731187,"price_vs_vwap_pct":1.015428,"ema9":9.849787,"ema20":9.866953,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":8.627451,"atr":0.042886,"spread_atr":0.699523,"own_change_pct":-0.125888,"rel_strength_pct":{"SPY":-0.151099,"IWM":-0.190735}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.805631},"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":"e0980a51ab2d","ts":"2026-09-15T19:02:10+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7559,"target":10.07,"target_label":"ceiling","reward_risk":3.89,"pos_in_5d_range_pct":475.7,"room_to_5d_high_atr":-5.41},"price":9.8201,"vwap":9.7315,"ext_from_open_pct":3.92,"max_ext_allowed_pct":4.0,"volume_pace":3.38,"trend":"flat","recent_slope_pct":-0.0608,"volatility":"low"},"price":9.8201,"volume":{"bars":332,"last_bar_volume":7350.0,"baseline_avg":8062.45,"bar_rvol":0.911634,"raw_accel":-0.356449,"smooth_accel":-0.220064,"accel_momentum":0.220211,"rvol_3bar":[0.018335,1.455266,0.911634],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":758.0,"sell_vol":662.0,"unclassified_vol":0.0,"imbalance":0.067606,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":1.542337},"context":{"vwap":9.731468,"price_vs_vwap_pct":0.910782,"ema9":9.84583,"ema20":9.863434,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.72451,"dist_to_hod_atr":8.901084,"atr":0.04268,"spread_atr":0.702902,"own_change_pct":-0.145262,"rel_strength_pct":{"SPY":-0.170473,"IWM":-0.210108}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.061632},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"3c624a008f9e","ts":"2026-09-15T19:02:10+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.89 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7092,"target":13.17,"target_label":"ceiling","reward_risk":1.55,"pos_in_5d_range_pct":42.7,"room_to_5d_high_atr":1.19},"price":12.89,"vwap":12.8987,"ext_from_open_pct":-1.23,"max_ext_allowed_pct":3.0,"volume_pace":0.707,"trend":"flat","recent_slope_pct":-0.0067,"volatility":"medium"},"price":12.89,"volume":{"bars":331,"last_bar_volume":174.0,"baseline_avg":1494.8,"bar_rvol":0.116404,"raw_accel":-0.534386,"smooth_accel":-0.914172,"accel_momentum":0.003338,"rvol_3bar":[0.031087,0.228907,0.116404],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":2,"trade_rate":0.066667,"buy_vol":107.0,"sell_vol":5.0,"unclassified_vol":0.0,"imbalance":0.910714,"bid":12.86,"ask":12.91,"spread_pct":0.388048,"quote_size_imbalance":null,"quote_age_s":1.290775},"context":{"vwap":12.89865,"price_vs_vwap_pct":-0.067062,"ema9":12.88976,"ema20":12.873943,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.155522,"dist_to_hod_atr":8.206711,"atr":0.051178,"spread_atr":0.976989,"own_change_pct":0.243012,"rel_strength_pct":{"SPY":0.217801,"IWM":0.178166}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.10601},"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":"3fee8b5d1f7c","ts":"2026-09-15T19:02:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7708,"target":10.07,"target_label":"ceiling","reward_risk":3.66,"pos_in_5d_range_pct":479.7,"room_to_5d_high_atr":-5.47},"price":9.835,"vwap":9.7315,"ext_from_open_pct":4.07,"max_ext_allowed_pct":4.0,"volume_pace":3.379,"trend":"flat","recent_slope_pct":-0.0305,"volatility":"low"},"price":9.835,"volume":{"bars":332,"last_bar_volume":7350.0,"baseline_avg":8062.45,"bar_rvol":0.911634,"raw_accel":-0.356449,"smooth_accel":-0.220064,"accel_momentum":0.220211,"rvol_3bar":[0.018335,1.455266,0.911634],"trend_3bar":"MIXED","projected_rvol":0.05507},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":789.0,"sell_vol":662.0,"unclassified_vol":0.0,"imbalance":0.087526,"bid":9.82,"ask":9.85,"spread_pct":0.305033,"quote_size_imbalance":null,"quote_age_s":0.910784},"context":{"vwap":9.731468,"price_vs_vwap_pct":1.063894,"ema9":9.84583,"ema20":9.863434,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.578431,"dist_to_hod_atr":8.551976,"atr":0.04268,"spread_atr":0.702902,"own_change_pct":-0.145262,"rel_strength_pct":{"SPY":-0.170473,"IWM":-0.210108}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":0.079791},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"61f94a443fde","ts":"2026-09-15T19:02:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5768,"target":10.935,"target_label":"prev_day_high","reward_risk":1.42,"pos_in_5d_range_pct":39.9,"room_to_5d_high_atr":1.31},"price":10.725,"vwap":10.6054,"ext_from_open_pct":3.03,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0414,"volatility":"medium"},"price":10.725,"volume":{"bars":332,"last_bar_volume":11412.0,"baseline_avg":17502.25,"bar_rvol":0.65203,"raw_accel":-0.686303,"smooth_accel":1.006813,"accel_momentum":0.150207,"rvol_3bar":[0.747603,2.189765,0.65203],"trend_3bar":"MIXED","projected_rvol":2.73062},"flow":{"window_s":30,"trades":127,"trade_rate":4.233333,"buy_vol":7398.0,"sell_vol":8541.0,"unclassified_vol":0.0,"imbalance":-0.071711,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.482786},"context":{"vwap":10.605193,"price_vs_vwap_pct":1.129697,"ema9":10.713366,"ema20":10.731823,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.965265,"dist_to_hod_atr":5.215971,"atr":0.04122,"spread_atr":0.242603,"own_change_pct":0.270333,"rel_strength_pct":{"SPY":0.245122,"IWM":0.205487}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.046758},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"2f12b2de7b7f","ts":"2026-09-15T19:02:15+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2071,"target":9.45,"target_label":"ceiling","reward_risk":0.59,"pos_in_5d_range_pct":5.6,"room_to_5d_high_atr":3.29},"price":9.36,"vwap":9.3594,"ext_from_open_pct":0.11,"max_ext_allowed_pct":3.0,"volume_pace":0.475,"trend":"flat","recent_slope_pct":-0.0371,"volatility":"high"},"price":9.36,"volume":{"bars":332,"last_bar_volume":8121.0,"baseline_avg":6502.25,"bar_rvol":1.248952,"raw_accel":2.854295,"smooth_accel":0.528307,"accel_momentum":-2.118347,"rvol_3bar":[3.051313,0.312885,1.248952],"trend_3bar":"MIXED","projected_rvol":0.303895},"flow":{"window_s":30,"trades":70,"trade_rate":2.333333,"buy_vol":939.0,"sell_vol":4758.0,"unclassified_vol":0.0,"imbalance":-0.670353,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.38278},"context":{"vwap":9.359357,"price_vs_vwap_pct":0.006873,"ema9":9.37343,"ema20":9.371474,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.783841,"dist_to_hod_atr":7.991815,"atr":0.021272,"spread_atr":0.470107,"own_change_pct":0.0576,"rel_strength_pct":{"SPY":0.032389,"IWM":-0.007246}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.837239},"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":"9ab49f3263af","ts":"2026-09-15T19:02:20+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5718,"target":10.935,"target_label":"prev_day_high","reward_risk":1.45,"pos_in_5d_range_pct":39.6,"room_to_5d_high_atr":1.31},"price":10.72,"vwap":10.6054,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0321,"volatility":"medium"},"price":10.72,"volume":{"bars":332,"last_bar_volume":11412.0,"baseline_avg":17502.25,"bar_rvol":0.65203,"raw_accel":-0.686303,"smooth_accel":1.006813,"accel_momentum":0.150207,"rvol_3bar":[0.747603,2.189765,0.65203],"trend_3bar":"MIXED","projected_rvol":2.051908},"flow":{"window_s":30,"trades":116,"trade_rate":3.866667,"buy_vol":5084.0,"sell_vol":8344.0,"unclassified_vol":0.0,"imbalance":-0.242776,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.401174},"context":{"vwap":10.605193,"price_vs_vwap_pct":1.08255,"ema9":10.713366,"ema20":10.731823,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.010969,"dist_to_hod_atr":5.337273,"atr":0.04122,"spread_atr":0.242603,"own_change_pct":0.270333,"rel_strength_pct":{"SPY":0.245122,"IWM":0.205487}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.158298},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"a182779dee46","ts":"2026-09-15T19:02:25+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.575,"target":10.935,"target_label":"prev_day_high","reward_risk":1.43,"pos_in_5d_range_pct":39.8,"room_to_5d_high_atr":1.31},"price":10.7232,"vwap":10.6054,"ext_from_open_pct":3.01,"max_ext_allowed_pct":3.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0381,"volatility":"medium"},"price":10.7232,"volume":{"bars":332,"last_bar_volume":11412.0,"baseline_avg":17502.25,"bar_rvol":0.65203,"raw_accel":-0.686303,"smooth_accel":1.006813,"accel_momentum":0.150207,"rvol_3bar":[0.747603,2.189765,0.65203],"trend_3bar":"MIXED","projected_rvol":1.64276},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":5084.0,"sell_vol":7844.0,"unclassified_vol":0.0,"imbalance":-0.21349,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.172834},"context":{"vwap":10.605193,"price_vs_vwap_pct":1.112724,"ema9":10.713366,"ema20":10.731823,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.981718,"dist_to_hod_atr":5.25964,"atr":0.04122,"spread_atr":0.242603,"own_change_pct":0.270333,"rel_strength_pct":{"SPY":0.245122,"IWM":0.205487}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.139202},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fe143efd034e","ts":"2026-09-15T19:02:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5818,"target":10.935,"target_label":"prev_day_high","reward_risk":1.38,"pos_in_5d_range_pct":40.3,"room_to_5d_high_atr":1.3},"price":10.73,"vwap":10.6054,"ext_from_open_pct":3.07,"max_ext_allowed_pct":4.0,"volume_pace":0.871,"trend":"flat","recent_slope_pct":0.0508,"volatility":"medium"},"price":10.73,"volume":{"bars":332,"last_bar_volume":11412.0,"baseline_avg":17502.25,"bar_rvol":0.65203,"raw_accel":-0.686303,"smooth_accel":1.006813,"accel_momentum":0.150207,"rvol_3bar":[0.747603,2.189765,0.65203],"trend_3bar":"MIXED","projected_rvol":1.586425},"flow":{"window_s":30,"trades":128,"trade_rate":4.266667,"buy_vol":6822.0,"sell_vol":7061.0,"unclassified_vol":0.0,"imbalance":-0.017215,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.786008},"context":{"vwap":10.605193,"price_vs_vwap_pct":1.176843,"ema9":10.713366,"ema20":10.731823,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.919561,"dist_to_hod_atr":5.09467,"atr":0.04122,"spread_atr":0.242603,"own_change_pct":0.270333,"rel_strength_pct":{"SPY":0.245122,"IWM":0.205487}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.011225},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"55d0e8dd3a4e","ts":"2026-09-15T19:02:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.78,"target":10.07,"target_label":"ceiling","reward_risk":3.14,"pos_in_5d_range_pct":483.8,"room_to_5d_high_atr":-5.53},"price":9.85,"vwap":9.732,"ext_from_open_pct":4.23,"max_ext_allowed_pct":5.0,"volume_pace":3.387,"trend":"flat","recent_slope_pct":0.0,"volatility":"low"},"price":9.85,"volume":{"bars":332,"last_bar_volume":7350.0,"baseline_avg":8062.45,"bar_rvol":0.911634,"raw_accel":-0.356449,"smooth_accel":-0.220064,"accel_momentum":0.220211,"rvol_3bar":[0.018335,1.455266,0.911634],"trend_3bar":"MIXED","projected_rvol":1.623229},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":8932.0,"sell_vol":1863.0,"unclassified_vol":0.0,"imbalance":0.65484,"bid":9.85,"ask":9.87,"spread_pct":0.20284,"quote_size_imbalance":null,"quote_age_s":3.090061},"context":{"vwap":9.731468,"price_vs_vwap_pct":1.218033,"ema9":9.84583,"ema20":9.863434,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.431373,"dist_to_hod_atr":8.200525,"atr":0.04268,"spread_atr":0.468601,"own_change_pct":-0.145262,"rel_strength_pct":{"SPY":-0.170473,"IWM":-0.210108}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.596974},"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":"0f9825f4f5a0","ts":"2026-09-15T19:03:05+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5758,"target":10.935,"target_label":"prev_day_high","reward_risk":1.42,"pos_in_5d_range_pct":39.9,"room_to_5d_high_atr":1.31},"price":10.724,"vwap":10.6055,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":0.0276,"volatility":"medium"},"price":10.724,"volume":{"bars":333,"last_bar_volume":20760.0,"baseline_avg":16213.45,"bar_rvol":1.280418,"raw_accel":0.819138,"smooth_accel":1.168855,"accel_momentum":0.162042,"rvol_3bar":[2.189765,0.65203,1.280418],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":2198.0,"sell_vol":3596.0,"unclassified_vol":0.0,"imbalance":-0.241284,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.637055},"context":{"vwap":10.605542,"price_vs_vwap_pct":1.116948,"ema9":10.715013,"ema20":10.730849,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.974406,"dist_to_hod_atr":5.297325,"atr":0.040775,"spread_atr":0.245247,"own_change_pct":0.155068,"rel_strength_pct":{"SPY":0.13592,"IWM":0.088469}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.308945},"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":"198752b3f64f","ts":"2026-09-15T19:03:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.2251,"target":9.45,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.26},"price":9.378,"vwap":9.3594,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0043,"volatility":"high"},"price":9.378,"volume":{"bars":333,"last_bar_volume":1005.0,"baseline_avg":6628.35,"bar_rvol":0.151621,"raw_accel":-0.876247,"smooth_accel":-0.670413,"accel_momentum":-1.19872,"rvol_3bar":[0.312885,1.248952,0.151621],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":442.0,"sell_vol":28.0,"unclassified_vol":0.0,"imbalance":0.880851,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.123359},"context":{"vwap":9.359361,"price_vs_vwap_pct":0.199152,"ema9":9.371744,"ema20":9.370857,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.594963,"dist_to_hod_atr":7.166602,"atr":0.021209,"spread_atr":0.471487,"own_change_pct":-0.113059,"rel_strength_pct":{"SPY":-0.132207,"IWM":-0.179658}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.133556},"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":"bc9a50fc5a99","ts":"2026-09-15T19:03:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5654,"target":10.935,"target_label":"prev_day_high","reward_risk":1.49,"pos_in_5d_range_pct":39.1,"room_to_5d_high_atr":1.32},"price":10.7136,"vwap":10.6056,"ext_from_open_pct":2.92,"max_ext_allowed_pct":3.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":0.0082,"volatility":"medium"},"price":10.7136,"volume":{"bars":333,"last_bar_volume":20760.0,"baseline_avg":16213.45,"bar_rvol":1.280418,"raw_accel":0.819138,"smooth_accel":1.168855,"accel_momentum":0.162042,"rvol_3bar":[2.189765,0.65203,1.280418],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":2199.0,"sell_vol":3759.0,"unclassified_vol":0.0,"imbalance":-0.261833,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":1.438101},"context":{"vwap":10.605542,"price_vs_vwap_pct":1.018886,"ema9":10.715013,"ema20":10.730849,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.06947,"dist_to_hod_atr":5.552381,"atr":0.040775,"spread_atr":0.245247,"own_change_pct":0.155068,"rel_strength_pct":{"SPY":0.13592,"IWM":0.088469}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.335256},"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":"a6073488e0c1","ts":"2026-09-15T19:03:15+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7534,"target":10.07,"target_label":"ceiling","reward_risk":2.96,"pos_in_5d_range_pct":479.3,"room_to_5d_high_atr":-5.47},"price":9.8334,"vwap":9.732,"ext_from_open_pct":4.06,"max_ext_allowed_pct":4.0,"volume_pace":3.384,"trend":"flat","recent_slope_pct":-0.011,"volatility":"low"},"price":9.8334,"volume":{"bars":333,"last_bar_volume":11023.0,"baseline_avg":8087.4,"bar_rvol":1.362984,"raw_accel":0.499728,"smooth_accel":0.465807,"accel_momentum":0.685872,"rvol_3bar":[1.455266,0.911634,1.362984],"trend_3bar":"MIXED","projected_rvol":0.33138},"flow":{"window_s":30,"trades":47,"trade_rate":1.566667,"buy_vol":9323.0,"sell_vol":2024.0,"unclassified_vol":0.0,"imbalance":0.643254,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":1.444885},"context":{"vwap":9.731971,"price_vs_vwap_pct":1.04223,"ema9":9.848664,"ema20":9.863107,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.594118,"dist_to_hod_atr":8.486917,"atr":0.043196,"spread_atr":0.926014,"own_change_pct":0.203252,"rel_strength_pct":{"SPY":0.184104,"IWM":0.136653}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.876745},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"35a855706f3d","ts":"2026-09-15T19:03:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5762,"target":10.935,"target_label":"prev_day_high","reward_risk":1.42,"pos_in_5d_range_pct":39.9,"room_to_5d_high_atr":1.31},"price":10.7244,"vwap":10.6056,"ext_from_open_pct":3.02,"max_ext_allowed_pct":3.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":0.0284,"volatility":"medium"},"price":10.7244,"volume":{"bars":333,"last_bar_volume":20760.0,"baseline_avg":16213.45,"bar_rvol":1.280418,"raw_accel":0.819138,"smooth_accel":1.168855,"accel_momentum":0.162042,"rvol_3bar":[2.189765,0.65203,1.280418],"trend_3bar":"MIXED","projected_rvol":0.237581},"flow":{"window_s":30,"trades":59,"trade_rate":1.966667,"buy_vol":2233.0,"sell_vol":3684.0,"unclassified_vol":0.0,"imbalance":-0.245226,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.231286},"context":{"vwap":10.605542,"price_vs_vwap_pct":1.120719,"ema9":10.715013,"ema20":10.730849,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.97075,"dist_to_hod_atr":5.287515,"atr":0.040775,"spread_atr":0.245247,"own_change_pct":0.155068,"rel_strength_pct":{"SPY":0.13592,"IWM":0.088469}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-1},"missing":[],"volume_pressure":-0.313991},"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":"a0f73c1b1c4c","ts":"2026-09-15T19:03:25+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2254,"target":9.45,"target_label":"ceiling","reward_risk":0.47,"pos_in_5d_range_pct":6.5,"room_to_5d_high_atr":3.26},"price":9.3783,"vwap":9.3594,"ext_from_open_pct":0.3,"max_ext_allowed_pct":4.0,"volume_pace":0.474,"trend":"flat","recent_slope_pct":-0.0036,"volatility":"high"},"price":9.3783,"volume":{"bars":333,"last_bar_volume":1005.0,"baseline_avg":6628.35,"bar_rvol":0.151621,"raw_accel":-0.876247,"smooth_accel":-0.670413,"accel_momentum":-1.19872,"rvol_3bar":[0.312885,1.248952,0.151621],"trend_3bar":"MIXED","projected_rvol":0.077123},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":218.0,"sell_vol":24.0,"unclassified_vol":0.0,"imbalance":0.801653,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.302068},"context":{"vwap":9.359361,"price_vs_vwap_pct":0.202357,"ema9":9.371744,"ema20":9.370857,"ema_stack":true,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.591815,"dist_to_hod_atr":7.152457,"atr":0.021209,"spread_atr":0.471487,"own_change_pct":-0.113059,"rel_strength_pct":{"SPY":-0.132207,"IWM":-0.179658}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.121548},"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":"142c6ce00a58","ts":"2026-09-15T19:03:30+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7277,"target":13.17,"target_label":"ceiling","reward_risk":1.45,"pos_in_5d_range_pct":43.9,"room_to_5d_high_atr":1.16},"price":12.9085,"vwap":12.8986,"ext_from_open_pct":-1.08,"max_ext_allowed_pct":4.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":-0.0461,"volatility":"medium"},"price":12.9085,"volume":{"bars":332,"last_bar_volume":7.0,"baseline_avg":1403.1,"bar_rvol":0.004989,"raw_accel":-0.980044,"smooth_accel":-0.416386,"accel_momentum":0.497786,"rvol_3bar":[0.228907,0.116404,0.004989],"trend_3bar":"DECELERATING","projected_rvol":0.343525},"flow":{"window_s":30,"trades":5,"trade_rate":0.166667,"buy_vol":150.0,"sell_vol":91.0,"unclassified_vol":0.0,"imbalance":0.244813,"bid":12.86,"ask":12.91,"spread_pct":0.388048,"quote_size_imbalance":null,"quote_age_s":21.503913},"context":{"vwap":12.89865,"price_vs_vwap_pct":0.076365,"ema9":12.891508,"ema20":12.876282,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.016529,"dist_to_hod_atr":7.978605,"atr":0.050322,"spread_atr":0.9936,"own_change_pct":0.027142,"rel_strength_pct":{"SPY":0.007994,"IWM":-0.039457}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.001221},"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":"2dab2498b0ad","ts":"2026-09-15T19:03:30+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5787,"target":10.935,"target_label":"prev_day_high","reward_risk":1.4,"pos_in_5d_range_pct":40.1,"room_to_5d_high_atr":1.3},"price":10.7269,"vwap":10.6056,"ext_from_open_pct":3.04,"max_ext_allowed_pct":4.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":0.033,"volatility":"medium"},"price":10.7269,"volume":{"bars":333,"last_bar_volume":20760.0,"baseline_avg":16213.45,"bar_rvol":1.280418,"raw_accel":0.819138,"smooth_accel":1.168855,"accel_momentum":0.162042,"rvol_3bar":[2.189765,0.65203,1.280418],"trend_3bar":"MIXED","projected_rvol":0.596418},"flow":{"window_s":30,"trades":48,"trade_rate":1.6,"buy_vol":3930.0,"sell_vol":905.0,"unclassified_vol":0.0,"imbalance":0.625646,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.3226},"context":{"vwap":10.605542,"price_vs_vwap_pct":1.144292,"ema9":10.715013,"ema20":10.730849,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.947898,"dist_to_hod_atr":5.226203,"atr":0.040775,"spread_atr":0.245247,"own_change_pct":0.155068,"rel_strength_pct":{"SPY":0.13592,"IWM":0.088469}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.801089},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"7fd8d2449a19","ts":"2026-09-15T19:03:40+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.88 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.7042,"target":13.17,"target_label":"ceiling","reward_risk":1.58,"pos_in_5d_range_pct":42.3,"room_to_5d_high_atr":1.2},"price":12.885,"vwap":12.8986,"ext_from_open_pct":-1.26,"max_ext_allowed_pct":4.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":-0.0825,"volatility":"medium"},"price":12.885,"volume":{"bars":332,"last_bar_volume":7.0,"baseline_avg":1403.1,"bar_rvol":0.004989,"raw_accel":-0.980044,"smooth_accel":-0.416386,"accel_momentum":0.497786,"rvol_3bar":[0.228907,0.116404,0.004989],"trend_3bar":"DECELERATING","projected_rvol":0.262989},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":150.0,"sell_vol":6.0,"unclassified_vol":0.0,"imbalance":0.923077,"bid":12.86,"ask":12.91,"spread_pct":0.388048,"quote_size_imbalance":null,"quote_age_s":0.143206},"context":{"vwap":12.89865,"price_vs_vwap_pct":-0.105825,"ema9":12.891508,"ema20":12.876282,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.193088,"dist_to_hod_atr":8.445597,"atr":0.050322,"spread_atr":0.9936,"own_change_pct":0.027142,"rel_strength_pct":{"SPY":0.007994,"IWM":-0.039457}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.004605},"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":"fd9e3c8ca824","ts":"2026-09-15T19:03:50+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.8884,"target":12.59,"target_label":"prev_day_high","reward_risk":2.32,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":2.11},"price":12.1,"vwap":12.0907,"ext_from_open_pct":-3.12,"max_ext_allowed_pct":3.0,"volume_pace":0.596,"trend":"flat","recent_slope_pct":-0.0675,"volatility":"high"},"price":12.1,"volume":{"bars":333,"last_bar_volume":950.0,"baseline_avg":2113.85,"bar_rvol":0.449417,"raw_accel":-0.5158,"smooth_accel":-0.662882,"accel_momentum":-0.123157,"rvol_3bar":[0.783509,0.925974,0.449417],"trend_3bar":"MIXED","projected_rvol":0.862313},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":413.0,"sell_vol":746.0,"unclassified_vol":0.0,"imbalance":-0.287317,"bid":12.09,"ask":12.11,"spread_pct":0.165289,"quote_size_imbalance":null,"quote_age_s":0.642342},"context":{"vwap":12.09064,"price_vs_vwap_pct":0.077419,"ema9":12.12192,"ema20":12.116801,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.196358,"dist_to_hod_atr":21.119041,"atr":0.025096,"spread_atr":0.796945,"own_change_pct":-0.070112,"rel_strength_pct":{"SPY":-0.08926,"IWM":-0.136711}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.129125},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"2f92aa4e059f","ts":"2026-09-15T19:03:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.0% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5777,"target":10.935,"target_label":"prev_day_high","reward_risk":1.41,"pos_in_5d_range_pct":40.0,"room_to_5d_high_atr":1.3},"price":10.7259,"vwap":10.6057,"ext_from_open_pct":3.03,"max_ext_allowed_pct":3.0,"volume_pace":0.87,"trend":"flat","recent_slope_pct":0.0312,"volatility":"medium"},"price":10.7259,"volume":{"bars":333,"last_bar_volume":20760.0,"baseline_avg":16213.45,"bar_rvol":1.280418,"raw_accel":0.819138,"smooth_accel":1.168855,"accel_momentum":0.162042,"rvol_3bar":[2.189765,0.65203,1.280418],"trend_3bar":"MIXED","projected_rvol":0.747602},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":4745.0,"sell_vol":2663.0,"unclassified_vol":0.0,"imbalance":0.281048,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.205621},"context":{"vwap":10.605542,"price_vs_vwap_pct":1.134863,"ema9":10.715013,"ema20":10.730849,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.957038,"dist_to_hod_atr":5.250728,"atr":0.040775,"spread_atr":0.245247,"own_change_pct":0.155068,"rel_strength_pct":{"SPY":0.13592,"IWM":0.088469}},"vas":{"raw":5,"score":7.5,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.359858},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d299faef6bfa","ts":"2026-09-15T19:04:05+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7801,"target":10.07,"target_label":"ceiling","reward_risk":2.62,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.8601,"vwap":9.7324,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":3.386,"trend":"flat","recent_slope_pct":0.0761,"volatility":"low"},"price":9.8601,"volume":{"bars":334,"last_bar_volume":8428.0,"baseline_avg":8070.25,"bar_rvol":1.044329,"raw_accel":-0.235417,"smooth_accel":0.820349,"accel_momentum":0.354542,"rvol_3bar":[0.911634,1.362984,1.044329],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":21,"trade_rate":0.7,"buy_vol":2566.0,"sell_vol":12.0,"unclassified_vol":0.0,"imbalance":0.99069,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":4.985476},"context":{"vwap":9.732377,"price_vs_vwap_pct":1.312349,"ema9":9.850931,"ema20":9.862811,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.332353,"dist_to_hod_atr":7.823471,"atr":0.043446,"spread_atr":0.920679,"own_change_pct":0.203252,"rel_strength_pct":{"SPY":0.19599,"IWM":0.176968}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.034607},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"eaf670f6685a","ts":"2026-09-15T19:04:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5818,"target":10.935,"target_label":"prev_day_high","reward_risk":1.38,"pos_in_5d_range_pct":40.3,"room_to_5d_high_atr":1.3},"price":10.73,"vwap":10.6058,"ext_from_open_pct":3.07,"max_ext_allowed_pct":4.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":0.0062,"volatility":"medium"},"price":10.73,"volume":{"bars":334,"last_bar_volume":11510.0,"baseline_avg":16726.35,"bar_rvol":0.688136,"raw_accel":-0.445568,"smooth_accel":-0.28157,"accel_momentum":-1.450425,"rvol_3bar":[0.65203,1.280418,0.688136],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":30,"trade_rate":1.0,"buy_vol":4066.0,"sell_vol":4036.0,"unclassified_vol":0.0,"imbalance":0.003703,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.335587},"context":{"vwap":10.605741,"price_vs_vwap_pct":1.171623,"ema9":10.71723,"ema20":10.730397,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.919561,"dist_to_hod_atr":5.189039,"atr":0.04047,"spread_atr":0.247097,"own_change_pct":0.150327,"rel_strength_pct":{"SPY":0.143064,"IWM":0.124043}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.002548},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"adae6d918489","ts":"2026-09-15T19:04:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.2139,"target":9.45,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":6.0,"room_to_5d_high_atr":3.28},"price":9.3668,"vwap":9.3594,"ext_from_open_pct":0.18,"max_ext_allowed_pct":4.0,"volume_pace":0.473,"trend":"flat","recent_slope_pct":-0.0181,"volatility":"high"},"price":9.3668,"volume":{"bars":334,"last_bar_volume":1612.0,"baseline_avg":6499.55,"bar_rvol":0.248017,"raw_accel":-0.007931,"smooth_accel":-0.68317,"accel_momentum":-0.012758,"rvol_3bar":[1.248952,0.151621,0.248017],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":23,"trade_rate":0.766667,"buy_vol":527.0,"sell_vol":838.0,"unclassified_vol":0.0,"imbalance":-0.227839,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":1.932302},"context":{"vwap":9.359372,"price_vs_vwap_pct":0.079369,"ema9":9.373355,"ema20":9.371709,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.712487,"dist_to_hod_atr":7.84283,"atr":0.020809,"spread_atr":0.480566,"own_change_pct":-0.003198,"rel_strength_pct":{"SPY":-0.010461,"IWM":-0.029482}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.056508},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"625aed2669dc","ts":"2026-09-15T19:04:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5869,"target":10.935,"target_label":"prev_day_high","reward_risk":1.35,"pos_in_5d_range_pct":40.7,"room_to_5d_high_atr":1.29},"price":10.7351,"vwap":10.6058,"ext_from_open_pct":3.12,"max_ext_allowed_pct":3.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":0.0158,"volatility":"medium"},"price":10.7351,"volume":{"bars":334,"last_bar_volume":11510.0,"baseline_avg":16726.35,"bar_rvol":0.688136,"raw_accel":-0.445568,"smooth_accel":-0.28157,"accel_momentum":-1.450425,"rvol_3bar":[0.65203,1.280418,0.688136],"trend_3bar":"MIXED","projected_rvol":0.865401},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":2005.0,"sell_vol":4229.0,"unclassified_vol":0.0,"imbalance":-0.356753,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":1.459841},"context":{"vwap":10.605741,"price_vs_vwap_pct":1.21971,"ema9":10.71723,"ema20":10.730397,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.872943,"dist_to_hod_atr":5.06302,"atr":0.04047,"spread_atr":0.247097,"own_change_pct":0.150327,"rel_strength_pct":{"SPY":0.143064,"IWM":0.124043}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.245495},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"b7eb13525c15","ts":"2026-09-15T19:04:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.6% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.8,"target":10.07,"target_label":"ceiling","reward_risk":2.37,"pos_in_5d_range_pct":491.9,"room_to_5d_high_atr":-5.65},"price":9.88,"vwap":9.7324,"ext_from_open_pct":4.55,"max_ext_allowed_pct":4.0,"volume_pace":3.382,"trend":"flat","recent_slope_pct":0.1165,"volatility":"low"},"price":9.88,"volume":{"bars":334,"last_bar_volume":8428.0,"baseline_avg":8070.25,"bar_rvol":1.044329,"raw_accel":-0.235417,"smooth_accel":0.820349,"accel_momentum":0.354542,"rvol_3bar":[0.911634,1.362984,1.044329],"trend_3bar":"MIXED","projected_rvol":0.037917},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":134.0,"sell_vol":19.0,"unclassified_vol":0.0,"imbalance":0.751634,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":7.214817},"context":{"vwap":9.732377,"price_vs_vwap_pct":1.516821,"ema9":9.850931,"ema20":9.862811,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.137255,"dist_to_hod_atr":7.365433,"atr":0.043446,"spread_atr":0.920679,"own_change_pct":0.203252,"rel_strength_pct":{"SPY":0.19599,"IWM":0.176968}},"vas":{"raw":6,"score":8.1,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.784954},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"9fdd882716b9","ts":"2026-09-15T19:04:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5873,"target":10.935,"target_label":"prev_day_high","reward_risk":1.35,"pos_in_5d_range_pct":40.8,"room_to_5d_high_atr":1.29},"price":10.7355,"vwap":10.6058,"ext_from_open_pct":3.13,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.0165,"volatility":"medium"},"price":10.7355,"volume":{"bars":334,"last_bar_volume":11510.0,"baseline_avg":16726.35,"bar_rvol":0.688136,"raw_accel":-0.445568,"smooth_accel":-0.28157,"accel_momentum":-1.450425,"rvol_3bar":[0.65203,1.280418,0.688136],"trend_3bar":"MIXED","projected_rvol":0.510721},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":830.0,"sell_vol":3019.0,"unclassified_vol":0.0,"imbalance":-0.568719,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":2.503074},"context":{"vwap":10.605741,"price_vs_vwap_pct":1.223481,"ema9":10.71723,"ema20":10.730397,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.869287,"dist_to_hod_atr":5.053136,"atr":0.04047,"spread_atr":0.247097,"own_change_pct":0.150327,"rel_strength_pct":{"SPY":0.143064,"IWM":0.124043}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.391356},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0572c88aab52","ts":"2026-09-15T19:04:50+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.78,"target":10.07,"target_label":"ceiling","reward_risk":2.62,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.7324,"ext_from_open_pct":4.34,"max_ext_allowed_pct":5.0,"volume_pace":3.379,"trend":"flat","recent_slope_pct":0.0759,"volatility":"low"},"price":9.86,"volume":{"bars":334,"last_bar_volume":8428.0,"baseline_avg":8070.25,"bar_rvol":1.044329,"raw_accel":-0.235417,"smooth_accel":0.820349,"accel_momentum":0.354542,"rvol_3bar":[0.911634,1.362984,1.044329],"trend_3bar":"MIXED","projected_rvol":0.112264},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":14.0,"sell_vol":602.0,"unclassified_vol":0.0,"imbalance":-0.954545,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":16.260701},"context":{"vwap":9.732377,"price_vs_vwap_pct":1.311322,"ema9":9.850931,"ema20":9.862811,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.825773,"atr":0.043446,"spread_atr":0.920679,"own_change_pct":0.203252,"rel_strength_pct":{"SPY":0.19599,"IWM":0.176968}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.99686},"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":"7bc76ad095a3","ts":"2026-09-15T19:04:50+00:00","symbol":"FLNC","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.2171,"target":9.45,"target_label":"ceiling","reward_risk":0.52,"pos_in_5d_range_pct":6.1,"room_to_5d_high_atr":3.27},"price":9.37,"vwap":9.3594,"ext_from_open_pct":0.21,"max_ext_allowed_pct":4.0,"volume_pace":0.472,"trend":"flat","recent_slope_pct":-0.0113,"volatility":"high"},"price":9.37,"volume":{"bars":334,"last_bar_volume":1612.0,"baseline_avg":6499.55,"bar_rvol":0.248017,"raw_accel":-0.007931,"smooth_accel":-0.68317,"accel_momentum":-0.012758,"rvol_3bar":[1.248952,0.151621,0.248017],"trend_3bar":"MIXED","projected_rvol":0.140687},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":379.0,"sell_vol":156.0,"unclassified_vol":0.0,"imbalance":0.416822,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":2.707789},"context":{"vwap":9.359372,"price_vs_vwap_pct":0.113559,"ema9":9.373355,"ema20":9.371709,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.678909,"dist_to_hod_atr":7.689049,"atr":0.020809,"spread_atr":0.480566,"own_change_pct":-0.003198,"rel_strength_pct":{"SPY":-0.010461,"IWM":-0.029482}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.103379},"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":"43d7a4f4ab49","ts":"2026-09-15T19:04:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.3% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.78,"target":10.07,"target_label":"ceiling","reward_risk":2.62,"pos_in_5d_range_pct":486.5,"room_to_5d_high_atr":-5.57},"price":9.86,"vwap":9.7324,"ext_from_open_pct":4.34,"max_ext_allowed_pct":4.0,"volume_pace":3.378,"trend":"flat","recent_slope_pct":0.0759,"volatility":"low"},"price":9.86,"volume":{"bars":334,"last_bar_volume":8428.0,"baseline_avg":8070.25,"bar_rvol":1.044329,"raw_accel":-0.235417,"smooth_accel":0.820349,"accel_momentum":0.354542,"rvol_3bar":[0.911634,1.362984,1.044329],"trend_3bar":"MIXED","projected_rvol":0.115576},"flow":{"window_s":30,"trades":18,"trade_rate":0.6,"buy_vol":14.0,"sell_vol":702.0,"unclassified_vol":0.0,"imbalance":-0.960894,"bid":9.84,"ask":9.88,"spread_pct":0.40568,"quote_size_imbalance":null,"quote_age_s":21.260701},"context":{"vwap":9.732377,"price_vs_vwap_pct":1.311322,"ema9":9.850931,"ema20":9.862811,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.333333,"dist_to_hod_atr":7.825773,"atr":0.043446,"spread_atr":0.920679,"own_change_pct":0.203252,"rel_strength_pct":{"SPY":0.19599,"IWM":0.176968}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-1.00349},"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":"64906e1ada78","ts":"2026-09-15T19:05:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5907,"target":10.935,"target_label":"prev_day_high","reward_risk":1.32,"pos_in_5d_range_pct":41.0,"room_to_5d_high_atr":1.28},"price":10.7389,"vwap":10.606,"ext_from_open_pct":3.16,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.0228,"volatility":"medium"},"price":10.7389,"volume":{"bars":334,"last_bar_volume":11510.0,"baseline_avg":16726.35,"bar_rvol":0.688136,"raw_accel":-0.445568,"smooth_accel":-0.28157,"accel_momentum":-1.450425,"rvol_3bar":[0.65203,1.280418,0.688136],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":88,"trade_rate":2.933333,"buy_vol":3553.0,"sell_vol":4080.0,"unclassified_vol":0.0,"imbalance":-0.069042,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.292615},"context":{"vwap":10.605741,"price_vs_vwap_pct":1.255539,"ema9":10.71723,"ema20":10.730397,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.838208,"dist_to_hod_atr":4.969123,"atr":0.04047,"spread_atr":0.247097,"own_change_pct":0.150327,"rel_strength_pct":{"SPY":0.170169,"IWM":0.157334}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.04751},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e2a5d8268104","ts":"2026-09-15T19:05:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5722,"target":10.915,"target_label":"ceiling","reward_risk":1.31,"pos_in_5d_range_pct":39.6,"room_to_5d_high_atr":1.31},"price":10.7204,"vwap":10.606,"ext_from_open_pct":2.98,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.018,"volatility":"medium"},"price":10.7204,"volume":{"bars":335,"last_bar_volume":12832.0,"baseline_avg":16778.7,"bar_rvol":0.764779,"raw_accel":0.114857,"smooth_accel":-0.253093,"accel_momentum":0.028477,"rvol_3bar":[1.280418,0.688136,0.764779],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":110,"trade_rate":3.666667,"buy_vol":3827.0,"sell_vol":5010.0,"unclassified_vol":0.0,"imbalance":-0.133869,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.537229},"context":{"vwap":10.605972,"price_vs_vwap_pct":1.078905,"ema9":10.721564,"ema20":10.731207,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.007313,"dist_to_hod_atr":5.498749,"atr":0.039936,"spread_atr":0.250398,"own_change_pct":0.316674,"rel_strength_pct":{"SPY":0.336516,"IWM":0.323682}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.10238},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8bec941728e3","ts":"2026-09-15T19:05:05+00:00","symbol":"FLNC","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.2121,"target":9.45,"target_label":"ceiling","reward_risk":0.56,"pos_in_5d_range_pct":5.9,"room_to_5d_high_atr":3.28},"price":9.365,"vwap":9.3594,"ext_from_open_pct":0.16,"max_ext_allowed_pct":4.0,"volume_pace":0.472,"trend":"flat","recent_slope_pct":-0.0329,"volatility":"high"},"price":9.365,"volume":{"bars":335,"last_bar_volume":896.0,"baseline_avg":6547.75,"bar_rvol":0.136841,"raw_accel":-0.452636,"smooth_accel":-0.875589,"accel_momentum":-0.192419,"rvol_3bar":[0.151621,0.248017,0.136841],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":557.0,"sell_vol":167.0,"unclassified_vol":0.0,"imbalance":0.538674,"bid":9.36,"ask":9.37,"spread_pct":0.106781,"quote_size_imbalance":null,"quote_age_s":0.538296},"context":{"vwap":9.359375,"price_vs_vwap_pct":0.0601,"ema9":9.371684,"ema20":9.37107,"ema_stack":false,"ema_warm":true,"hod":9.53,"dist_to_hod_pct":-1.731375,"dist_to_hod_atr":7.995442,"atr":0.020637,"spread_atr":0.484572,"own_change_pct":-0.106667,"rel_strength_pct":{"SPY":-0.086825,"IWM":-0.099659}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.073713},"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":"959a63e6b4c8","ts":"2026-09-15T19:05:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 550.0s, plan says WATCH; stop 8.34, target 8.59 (premarket_high), R:R 0.29; R:R 0.29 < 2.0 at 8.54; pullback: buy 8.51-8.53 holding + reclaim/fading selling/support","plan":{"state":"WATCH","setup":"","stop":8.3441,"target":8.59,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":3.71},"price":8.5353,"vwap":8.4398,"ext_from_open_pct":1.97,"max_ext_allowed_pct":3.0,"volume_pace":0.745,"trend":"flat","recent_slope_pct":0.0161,"volatility":"high"},"price":8.5353,"volume":{"bars":335,"last_bar_volume":31717.0,"baseline_avg":105087.15,"bar_rvol":0.301816,"raw_accel":-0.500928,"smooth_accel":-0.547332,"accel_momentum":0.057904,"rvol_3bar":[1.082772,0.606498,0.301816],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":113,"trade_rate":3.766667,"buy_vol":9887.0,"sell_vol":6590.0,"unclassified_vol":0.0,"imbalance":0.200097,"bid":8.52,"ask":8.53,"spread_pct":0.117302,"quote_size_imbalance":null,"quote_age_s":0.364093},"context":{"vwap":8.439829,"price_vs_vwap_pct":1.131193,"ema9":8.522022,"ema20":8.502718,"ema_stack":true,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.610375,"dist_to_hod_atr":3.371841,"atr":0.041431,"spread_atr":0.241363,"own_change_pct":0.17744,"rel_strength_pct":{"SPY":0.197282,"IWM":0.184448}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.060393},"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":"20afe401e823","ts":"2026-09-15T19:05:15+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6018,"target":10.915,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":41.9,"room_to_5d_high_atr":1.26},"price":10.75,"vwap":10.6061,"ext_from_open_pct":3.27,"max_ext_allowed_pct":3.0,"volume_pace":0.869,"trend":"flat","recent_slope_pct":0.0732,"volatility":"medium"},"price":10.75,"volume":{"bars":335,"last_bar_volume":12832.0,"baseline_avg":16778.7,"bar_rvol":0.764779,"raw_accel":0.114857,"smooth_accel":-0.253093,"accel_momentum":0.028477,"rvol_3bar":[1.280418,0.688136,0.764779],"trend_3bar":"MIXED","projected_rvol":1.851633},"flow":{"window_s":30,"trades":151,"trade_rate":5.033333,"buy_vol":7212.0,"sell_vol":7659.0,"unclassified_vol":0.0,"imbalance":-0.030059,"bid":10.75,"ask":10.76,"spread_pct":0.09298,"quote_size_imbalance":null,"quote_age_s":0.030419},"context":{"vwap":10.605972,"price_vs_vwap_pct":1.357993,"ema9":10.721564,"ema20":10.731207,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.736746,"dist_to_hod_atr":4.75757,"atr":0.039936,"spread_atr":0.250398,"own_change_pct":0.316674,"rel_strength_pct":{"SPY":0.336516,"IWM":0.323682}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":-1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":-0.022988},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"761c5bb4d775","ts":"2026-09-15T19:05:45+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7738,"target":10.07,"target_label":"ceiling","reward_risk":3.61,"pos_in_5d_range_pct":480.5,"room_to_5d_high_atr":-5.48},"price":9.838,"vwap":9.7325,"ext_from_open_pct":4.11,"max_ext_allowed_pct":5.0,"volume_pace":3.374,"trend":"flat","recent_slope_pct":0.0162,"volatility":"low"},"price":9.838,"volume":{"bars":335,"last_bar_volume":855.0,"baseline_avg":8301.4,"bar_rvol":0.102995,"raw_accel":-0.898552,"smooth_accel":0.07354,"accel_momentum":-0.74681,"rvol_3bar":[1.362984,1.044329,0.102995],"trend_3bar":"DECELERATING","projected_rvol":0.450366},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":271.0,"sell_vol":1731.0,"unclassified_vol":0.0,"imbalance":-0.729271,"bid":9.82,"ask":9.84,"spread_pct":0.203459,"quote_size_imbalance":null,"quote_age_s":14.985401},"context":{"vwap":9.732419,"price_vs_vwap_pct":1.084842,"ema9":9.852745,"ema20":9.862543,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.54902,"dist_to_hod_atr":8.323199,"atr":0.043493,"spread_atr":0.459845,"own_change_pct":0.101523,"rel_strength_pct":{"SPY":0.121365,"IWM":0.10853}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.075111},"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":"83b77a6b21ab","ts":"2026-09-15T19:05:55+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"price $5.75 below VWAP $5.76","plan":{"state":"PASS","setup":"","stop":5.6554,"target":5.81,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":86.1,"room_to_5d_high_atr":0.19},"price":5.755,"vwap":5.7569,"ext_from_open_pct":0.96,"max_ext_allowed_pct":3.0,"volume_pace":0.538,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"high"},"price":5.755,"volume":{"bars":335,"last_bar_volume":981.0,"baseline_avg":5193.55,"bar_rvol":0.188888,"raw_accel":-0.656513,"smooth_accel":-0.786029,"accel_momentum":0.029157,"rvol_3bar":[0.343692,0.557382,0.188888],"trend_3bar":"MIXED","projected_rvol":1.835423},"flow":{"window_s":30,"trades":57,"trade_rate":1.9,"buy_vol":4253.0,"sell_vol":3769.0,"unclassified_vol":0.0,"imbalance":0.060334,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.066039},"context":{"vwap":5.756905,"price_vs_vwap_pct":-0.033086,"ema9":5.767414,"ema20":5.772116,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.623932,"dist_to_hod_atr":10.370199,"atr":0.009161,"spread_atr":1.0916,"own_change_pct":-0.121279,"rel_strength_pct":{"SPY":-0.101437,"IWM":-0.114272}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.011396},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"c8dfaff393ca","ts":"2026-09-15T19:06:00+00:00","symbol":"CXM","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":5.6676,"target":5.81,"target_label":"ceiling","reward_risk":0.43,"pos_in_5d_range_pct":88.4,"room_to_5d_high_atr":0.16},"price":5.7672,"vwap":5.757,"ext_from_open_pct":1.18,"max_ext_allowed_pct":3.0,"volume_pace":0.537,"trend":"flat","recent_slope_pct":0.0005,"volatility":"high"},"price":5.7672,"volume":{"bars":335,"last_bar_volume":981.0,"baseline_avg":5193.55,"bar_rvol":0.188888,"raw_accel":-0.656513,"smooth_accel":-0.786029,"accel_momentum":0.029157,"rvol_3bar":[0.343692,0.557382,0.188888],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":55,"trade_rate":1.833333,"buy_vol":4353.0,"sell_vol":3755.0,"unclassified_vol":0.0,"imbalance":0.073754,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":4.176579},"context":{"vwap":5.756905,"price_vs_vwap_pct":0.178834,"ema9":5.767414,"ema20":5.772116,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.415385,"dist_to_hod_atr":9.038447,"atr":0.009161,"spread_atr":1.0916,"own_change_pct":-0.121279,"rel_strength_pct":{"SPY":-0.085838,"IWM":-0.047736}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.013931},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"b7c2604117ce","ts":"2026-09-15T19:06:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5842,"target":10.915,"target_label":"ceiling","reward_risk":1.23,"pos_in_5d_range_pct":40.5,"room_to_5d_high_atr":1.29},"price":10.7324,"vwap":10.6063,"ext_from_open_pct":3.1,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.0331,"volatility":"medium"},"price":10.7324,"volume":{"bars":336,"last_bar_volume":18769.0,"baseline_avg":16983.0,"bar_rvol":1.105164,"raw_accel":0.462671,"smooth_accel":-0.371111,"accel_momentum":-0.118018,"rvol_3bar":[0.688136,0.764779,1.105164],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":42,"trade_rate":1.4,"buy_vol":1152.0,"sell_vol":4838.0,"unclassified_vol":0.0,"imbalance":-0.615359,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.250781},"context":{"vwap":10.606316,"price_vs_vwap_pct":1.188762,"ema9":10.725251,"ema20":10.732044,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.897623,"dist_to_hod_atr":5.248364,"atr":0.039555,"spread_atr":0.252811,"own_change_pct":0.093197,"rel_strength_pct":{"SPY":0.128638,"IWM":0.16674}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.680073},"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":"82de4fbfa622","ts":"2026-09-15T19:06:10+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5863,"target":10.915,"target_label":"ceiling","reward_risk":1.22,"pos_in_5d_range_pct":40.7,"room_to_5d_high_atr":1.29},"price":10.7345,"vwap":10.6063,"ext_from_open_pct":3.12,"max_ext_allowed_pct":3.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.037,"volatility":"medium"},"price":10.7345,"volume":{"bars":336,"last_bar_volume":18769.0,"baseline_avg":16983.0,"bar_rvol":1.105164,"raw_accel":0.462671,"smooth_accel":-0.371111,"accel_momentum":-0.118018,"rvol_3bar":[0.688136,0.764779,1.105164],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":26,"trade_rate":0.866667,"buy_vol":1081.0,"sell_vol":2289.0,"unclassified_vol":0.0,"imbalance":-0.358457,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.098401},"context":{"vwap":10.606316,"price_vs_vwap_pct":1.208561,"ema9":10.725251,"ema20":10.732044,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.878428,"dist_to_hod_atr":5.195273,"atr":0.039555,"spread_atr":0.252811,"own_change_pct":0.093197,"rel_strength_pct":{"SPY":0.128638,"IWM":0.16674}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.396154},"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":"c004e6a63532","ts":"2026-09-15T19:06:15+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5936,"target":10.915,"target_label":"ceiling","reward_risk":1.17,"pos_in_5d_range_pct":41.3,"room_to_5d_high_atr":1.28},"price":10.7418,"vwap":10.6063,"ext_from_open_pct":3.19,"max_ext_allowed_pct":4.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":0.0506,"volatility":"medium"},"price":10.7418,"volume":{"bars":336,"last_bar_volume":18769.0,"baseline_avg":16983.0,"bar_rvol":1.105164,"raw_accel":0.462671,"smooth_accel":-0.371111,"accel_momentum":-0.118018,"rvol_3bar":[0.688136,0.764779,1.105164],"trend_3bar":"ACCELERATING","projected_rvol":0.154743},"flow":{"window_s":30,"trades":27,"trade_rate":0.9,"buy_vol":1197.0,"sell_vol":489.0,"unclassified_vol":0.0,"imbalance":0.419929,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.508513},"context":{"vwap":10.606316,"price_vs_vwap_pct":1.277388,"ema9":10.725251,"ema20":10.732044,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.8117,"dist_to_hod_atr":5.010721,"atr":0.039555,"spread_atr":0.252811,"own_change_pct":0.093197,"rel_strength_pct":{"SPY":0.128638,"IWM":0.16674}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.46409},"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":"3f04901767a5","ts":"2026-09-15T19:06:20+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.8965,"target":12.59,"target_label":"prev_day_high","reward_risk":2.28,"pos_in_5d_range_pct":10.0,"room_to_5d_high_atr":2.11},"price":12.1081,"vwap":12.0907,"ext_from_open_pct":-3.06,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0246,"volatility":"high"},"price":12.1081,"volume":{"bars":336,"last_bar_volume":259.0,"baseline_avg":1999.75,"bar_rvol":0.129516,"raw_accel":-0.481935,"smooth_accel":-0.530942,"accel_momentum":-0.03719,"rvol_3bar":[0.76927,0.18273,0.129516],"trend_3bar":"DECELERATING","projected_rvol":0.003},"flow":{"window_s":30,"trades":3,"trade_rate":0.1,"buy_vol":4.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":12.09,"ask":12.1,"spread_pct":0.082679,"quote_size_imbalance":null,"quote_age_s":19.511596},"context":{"vwap":12.090717,"price_vs_vwap_pct":0.143773,"ema9":12.110831,"ema20":12.112394,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.132225,"dist_to_hod_atr":18.974547,"atr":0.027505,"spread_atr":0.363567,"own_change_pct":-0.324697,"rel_strength_pct":{"SPY":-0.289256,"IWM":-0.251153}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.129516},"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":"30e564aeb930","ts":"2026-09-15T19:06:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.595,"target":10.915,"target_label":"ceiling","reward_risk":1.16,"pos_in_5d_range_pct":41.4,"room_to_5d_high_atr":1.27},"price":10.7432,"vwap":10.6063,"ext_from_open_pct":3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":0.0532,"volatility":"medium"},"price":10.7432,"volume":{"bars":336,"last_bar_volume":18769.0,"baseline_avg":16983.0,"bar_rvol":1.105164,"raw_accel":0.462671,"smooth_accel":-0.371111,"accel_momentum":-0.118018,"rvol_3bar":[0.688136,0.764779,1.105164],"trend_3bar":"ACCELERATING","projected_rvol":0.140788},"flow":{"window_s":30,"trades":29,"trade_rate":0.966667,"buy_vol":820.0,"sell_vol":593.0,"unclassified_vol":0.0,"imbalance":0.160651,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.639221},"context":{"vwap":10.606316,"price_vs_vwap_pct":1.290588,"ema9":10.725251,"ema20":10.732044,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.798903,"dist_to_hod_atr":4.975327,"atr":0.039555,"spread_atr":0.252811,"own_change_pct":0.093197,"rel_strength_pct":{"SPY":0.128638,"IWM":0.16674}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":0,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.177546},"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":"d4164a8d37d3","ts":"2026-09-15T19:06:25+00:00","symbol":"CXM","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":5.6605,"target":5.81,"target_label":"ceiling","reward_risk":0.5,"pos_in_5d_range_pct":87.1,"room_to_5d_high_atr":0.18},"price":5.7601,"vwap":5.757,"ext_from_open_pct":1.05,"max_ext_allowed_pct":4.0,"volume_pace":0.537,"trend":"flat","recent_slope_pct":-0.018,"volatility":"high"},"price":5.7601,"volume":{"bars":336,"last_bar_volume":8838.0,"baseline_avg":5181.75,"bar_rvol":1.705601,"raw_accel":5.822406,"smooth_accel":-0.479915,"accel_momentum":0.306114,"rvol_3bar":[0.557382,0.188888,1.705601],"trend_3bar":"MIXED","projected_rvol":0.277435},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":548.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":0.567954,"bid":5.75,"ask":5.76,"spread_pct":0.173762,"quote_size_imbalance":null,"quote_age_s":0.092724},"context":{"vwap":5.756953,"price_vs_vwap_pct":0.054659,"ema9":5.767371,"ema20":5.771648,"ema_stack":false,"ema_warm":true,"hod":5.85,"dist_to_hod_pct":-1.536752,"dist_to_hod_atr":9.44248,"atr":0.009521,"spread_atr":1.050331,"own_change_pct":0.038161,"rel_strength_pct":{"SPY":0.073602,"IWM":0.111705}},"vas":{"raw":2,"score":5.6,"components":{"rvol":1,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.968704},"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":"5a638db6fecc","ts":"2026-09-15T19:06:30+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.7726,"target":10.07,"target_label":"ceiling","reward_risk":3.63,"pos_in_5d_range_pct":480.2,"room_to_5d_high_atr":-5.48},"price":9.8368,"vwap":9.7327,"ext_from_open_pct":4.09,"max_ext_allowed_pct":4.0,"volume_pace":3.371,"trend":"flat","recent_slope_pct":-0.0776,"volatility":"low"},"price":9.8368,"volume":{"bars":336,"last_bar_volume":3032.0,"baseline_avg":8276.0,"bar_rvol":0.366361,"raw_accel":0.465442,"smooth_accel":-0.586662,"accel_momentum":-0.660201,"rvol_3bar":[1.044329,0.102995,0.366361],"trend_3bar":"MIXED","projected_rvol":0.82262},"flow":{"window_s":30,"trades":31,"trade_rate":1.033333,"buy_vol":491.0,"sell_vol":2913.0,"unclassified_vol":0.0,"imbalance":-0.711516,"bid":9.79,"ask":9.82,"spread_pct":0.305966,"quote_size_imbalance":null,"quote_age_s":1.584947},"context":{"vwap":9.732547,"price_vs_vwap_pct":1.071178,"ema9":9.848196,"ema20":9.859444,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.560784,"dist_to_hod_atr":8.387886,"atr":0.043301,"spread_atr":0.692832,"own_change_pct":-0.077255,"rel_strength_pct":{"SPY":-0.041814,"IWM":-0.003711}},"vas":{"raw":-7,"score":0.0,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.260671},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"37a1af42d6e2","ts":"2026-09-15T19:06:40+00:00","symbol":"IMMX","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":11.9055,"target":12.59,"target_label":"prev_day_high","reward_risk":2.23,"pos_in_5d_range_pct":10.5,"room_to_5d_high_atr":2.09},"price":12.1171,"vwap":12.0907,"ext_from_open_pct":-2.99,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0097,"volatility":"high"},"price":12.1171,"volume":{"bars":336,"last_bar_volume":259.0,"baseline_avg":1999.75,"bar_rvol":0.129516,"raw_accel":-0.481935,"smooth_accel":-0.530942,"accel_momentum":-0.03719,"rvol_3bar":[0.76927,0.18273,0.129516],"trend_3bar":"DECELERATING","projected_rvol":0.264033},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":244.0,"sell_vol":108.0,"unclassified_vol":0.0,"imbalance":0.386364,"bid":12.09,"ask":12.1,"spread_pct":0.082679,"quote_size_imbalance":null,"quote_age_s":2.000571},"context":{"vwap":12.090717,"price_vs_vwap_pct":0.21821,"ema9":12.110831,"ema20":12.112394,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.060966,"dist_to_hod_atr":18.647337,"atr":0.027505,"spread_atr":0.363567,"own_change_pct":-0.324697,"rel_strength_pct":{"SPY":-0.289256,"IWM":-0.251153}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.05004},"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":"f4daa1144885","ts":"2026-09-15T19:07:05+00:00","symbol":"IMMX","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":11.8964,"target":12.59,"target_label":"prev_day_high","reward_risk":2.28,"pos_in_5d_range_pct":10.0,"room_to_5d_high_atr":2.11},"price":12.108,"vwap":12.0907,"ext_from_open_pct":-3.06,"max_ext_allowed_pct":4.0,"volume_pace":0.592,"trend":"flat","recent_slope_pct":-0.0006,"volatility":"high"},"price":12.108,"volume":{"bars":337,"last_bar_volume":498.0,"baseline_avg":1964.25,"bar_rvol":0.253532,"raw_accel":0.014128,"smooth_accel":-0.746616,"accel_momentum":-0.215673,"rvol_3bar":[0.18273,0.129516,0.253532],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":14,"trade_rate":0.466667,"buy_vol":375.0,"sell_vol":24.0,"unclassified_vol":0.0,"imbalance":0.879699,"bid":12.09,"ask":12.1,"spread_pct":0.082679,"quote_size_imbalance":null,"quote_age_s":5.561263},"context":{"vwap":12.090731,"price_vs_vwap_pct":0.142825,"ema9":12.108725,"ema20":12.111242,"ema_stack":false,"ema_warm":true,"hod":12.63,"dist_to_hod_pct":-4.133017,"dist_to_hod_atr":18.367879,"atr":0.028419,"spread_atr":0.351875,"own_change_pct":-0.080099,"rel_strength_pct":{"SPY":-0.066896,"IWM":-0.024052}},"vas":{"raw":-3,"score":2.5,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.223032},"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":"da720429d81c","ts":"2026-09-15T19:07:05+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7492,"target":13.0289,"target_label":"ceiling","reward_risk":0.55,"pos_in_5d_range_pct":45.3,"room_to_5d_high_atr":1.13},"price":12.93,"vwap":12.8987,"ext_from_open_pct":-0.92,"max_ext_allowed_pct":4.0,"volume_pace":0.703,"trend":"flat","recent_slope_pct":0.0891,"volatility":"medium"},"price":12.93,"volume":{"bars":336,"last_bar_volume":913.0,"baseline_avg":1233.85,"bar_rvol":0.73996,"raw_accel":0.271588,"smooth_accel":2.70462,"accel_momentum":0.325774,"rvol_3bar":[0.442347,0.586099,0.73996],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":990.0,"sell_vol":0.0,"unclassified_vol":0.0,"imbalance":1.0,"bid":12.9,"ask":12.96,"spread_pct":0.464037,"quote_size_imbalance":null,"quote_age_s":2.395108},"context":{"vwap":12.898626,"price_vs_vwap_pct":0.243234,"ema9":12.894554,"ema20":12.882556,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-2.854996,"dist_to_hod_atr":8.747644,"atr":0.04344,"spread_atr":1.381207,"own_change_pct":-0.010069,"rel_strength_pct":{"SPY":0.003134,"IWM":0.045978}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.73996},"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":"05202887afd6","ts":"2026-09-15T19:07:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5815,"target":10.915,"target_label":"ceiling","reward_risk":1.25,"pos_in_5d_range_pct":40.3,"room_to_5d_high_atr":1.3},"price":10.7297,"vwap":10.6068,"ext_from_open_pct":3.07,"max_ext_allowed_pct":4.0,"volume_pace":0.868,"trend":"flat","recent_slope_pct":0.0136,"volatility":"medium"},"price":10.7297,"volume":{"bars":337,"last_bar_volume":21995.0,"baseline_avg":17143.6,"bar_rvol":1.282986,"raw_accel":0.171879,"smooth_accel":0.226958,"accel_momentum":0.598069,"rvol_3bar":[0.764779,1.105164,1.282986],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":95,"trade_rate":3.166667,"buy_vol":11751.0,"sell_vol":5280.0,"unclassified_vol":0.0,"imbalance":0.379954,"bid":10.75,"ask":10.76,"spread_pct":0.09298,"quote_size_imbalance":null,"quote_age_s":0.736917},"context":{"vwap":10.606728,"price_vs_vwap_pct":1.159374,"ema9":10.729461,"ema20":10.733402,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.922303,"dist_to_hod_atr":5.40699,"atr":0.038894,"spread_atr":0.257108,"own_change_pct":0.250947,"rel_strength_pct":{"SPY":0.26415,"IWM":0.306994}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.487476},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"816883121b5a","ts":"2026-09-15T19:07:45+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.3% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.6017,"target":10.915,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":41.9,"room_to_5d_high_atr":1.26},"price":10.7499,"vwap":10.6069,"ext_from_open_pct":3.27,"max_ext_allowed_pct":3.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":0.0512,"volatility":"medium"},"price":10.7499,"volume":{"bars":337,"last_bar_volume":21995.0,"baseline_avg":17143.6,"bar_rvol":1.282986,"raw_accel":0.171879,"smooth_accel":0.226958,"accel_momentum":0.598069,"rvol_3bar":[0.764779,1.105164,1.282986],"trend_3bar":"ACCELERATING","projected_rvol":0.5165},"flow":{"window_s":30,"trades":50,"trade_rate":1.666667,"buy_vol":3290.0,"sell_vol":558.0,"unclassified_vol":0.0,"imbalance":0.709979,"bid":10.75,"ask":10.76,"spread_pct":0.09298,"quote_size_imbalance":null,"quote_age_s":1.35414},"context":{"vwap":10.606728,"price_vs_vwap_pct":1.349819,"ema9":10.729461,"ema20":10.733402,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.73766,"dist_to_hod_atr":4.887631,"atr":0.038894,"spread_atr":0.257108,"own_change_pct":0.250947,"rel_strength_pct":{"SPY":0.26415,"IWM":0.306994}},"vas":{"raw":4,"score":6.9,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.910893},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"d71df7ac8fb0","ts":"2026-09-15T19:08:20+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7505,"target":10.07,"target_label":"ceiling","reward_risk":3.98,"pos_in_5d_range_pct":474.2,"room_to_5d_high_atr":-5.39},"price":9.8147,"vwap":9.7327,"ext_from_open_pct":3.86,"max_ext_allowed_pct":5.0,"volume_pace":3.355,"trend":"flat","recent_slope_pct":-0.1187,"volatility":"low"},"price":9.8147,"volume":{"bars":338,"last_bar_volume":85.0,"baseline_avg":8061.45,"bar_rvol":0.010544,"raw_accel":-0.982952,"smooth_accel":-0.600955,"accel_momentum":0.067975,"rvol_3bar":[0.366361,0.623094,0.010544],"trend_3bar":"MIXED","projected_rvol":0.004466},"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":9.79,"ask":9.81,"spread_pct":0.204082,"quote_size_imbalance":null,"quote_age_s":19.985289},"context":{"vwap":9.732706,"price_vs_vwap_pct":0.842462,"ema9":9.832445,"ema20":9.849472,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.777451,"dist_to_hod_atr":8.915305,"atr":0.043218,"spread_atr":0.462772,"own_change_pct":-0.567951,"rel_strength_pct":{"SPY":-0.56069,"IWM":-0.520663}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.010544},"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":"01823a0bf77d","ts":"2026-09-15T19:08:25+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7607,"target":7.91,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":71.3,"room_to_5d_high_atr":0.44},"price":7.8486,"vwap":7.7839,"ext_from_open_pct":1.93,"max_ext_allowed_pct":4.0,"volume_pace":0.542,"trend":"flat","recent_slope_pct":-0.0217,"volatility":"medium"},"price":7.8486,"volume":{"bars":338,"last_bar_volume":2197.0,"baseline_avg":12537.4,"bar_rvol":0.175236,"raw_accel":-0.846471,"smooth_accel":5.674316,"accel_momentum":2.326902,"rvol_3bar":[1.578539,0.87953,0.175236],"trend_3bar":"DECELERATING","projected_rvol":0.728572},"flow":{"window_s":30,"trades":20,"trade_rate":0.666667,"buy_vol":1876.0,"sell_vol":2277.0,"unclassified_vol":0.0,"imbalance":-0.096557,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":3.314873},"context":{"vwap":7.783884,"price_vs_vwap_pct":0.831405,"ema9":7.850508,"ema20":7.850872,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.524715,"dist_to_hod_atr":2.731508,"atr":0.015156,"spread_atr":0.659785,"own_change_pct":-0.021651,"rel_strength_pct":{"SPY":-0.01439,"IWM":0.025637}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":0},"missing":[],"volume_pressure":-0.01692},"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":"14ece0b6885e","ts":"2026-09-15T19:08:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5868,"target":10.9,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":40.7,"room_to_5d_high_atr":1.29},"price":10.735,"vwap":10.6072,"ext_from_open_pct":3.12,"max_ext_allowed_pct":4.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0026,"volatility":"medium"},"price":10.735,"volume":{"bars":338,"last_bar_volume":13382.0,"baseline_avg":17173.8,"bar_rvol":0.77921,"raw_accel":-0.391589,"smooth_accel":0.200523,"accel_momentum":-0.026435,"rvol_3bar":[1.105164,1.282986,0.77921],"trend_3bar":"MIXED","projected_rvol":0.974304},"flow":{"window_s":30,"trades":61,"trade_rate":2.033333,"buy_vol":4457.0,"sell_vol":3985.0,"unclassified_vol":0.0,"imbalance":0.055911,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.063878},"context":{"vwap":10.606983,"price_vs_vwap_pct":1.20691,"ema9":10.732569,"ema20":10.734506,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.873857,"dist_to_hod_atr":5.355244,"atr":0.03828,"spread_atr":0.261231,"own_change_pct":0.218251,"rel_strength_pct":{"SPY":0.225513,"IWM":0.26554}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.043566},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"73dde5651bb3","ts":"2026-09-15T19:08:55+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7621,"target":7.91,"target_label":"prev_day_high","reward_risk":0.68,"pos_in_5d_range_pct":71.6,"room_to_5d_high_atr":0.44},"price":7.85,"vwap":7.784,"ext_from_open_pct":1.95,"max_ext_allowed_pct":3.0,"volume_pace":0.542,"trend":"flat","recent_slope_pct":-0.0181,"volatility":"medium"},"price":7.85,"volume":{"bars":338,"last_bar_volume":2197.0,"baseline_avg":12537.4,"bar_rvol":0.175236,"raw_accel":-0.846471,"smooth_accel":5.674316,"accel_momentum":2.326902,"rvol_3bar":[1.578539,0.87953,0.175236],"trend_3bar":"DECELERATING","projected_rvol":0.736734},"flow":{"window_s":30,"trades":35,"trade_rate":1.166667,"buy_vol":3295.0,"sell_vol":1366.0,"unclassified_vol":0.0,"imbalance":0.41386,"bid":7.85,"ask":7.86,"spread_pct":0.127307,"quote_size_imbalance":null,"quote_age_s":0.030394},"context":{"vwap":7.783884,"price_vs_vwap_pct":0.849391,"ema9":7.850508,"ema20":7.850872,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.506971,"dist_to_hod_atr":2.639138,"atr":0.015156,"spread_atr":0.659785,"own_change_pct":-0.021651,"rel_strength_pct":{"SPY":-0.01439,"IWM":0.025637}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-2,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.072523},"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":"7974d458de96","ts":"2026-09-15T19:09:00+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5861,"target":10.9,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":40.7,"room_to_5d_high_atr":1.29},"price":10.7343,"vwap":10.6073,"ext_from_open_pct":3.12,"max_ext_allowed_pct":3.0,"volume_pace":0.866,"trend":"flat","recent_slope_pct":-0.0039,"volatility":"medium"},"price":10.7343,"volume":{"bars":338,"last_bar_volume":13382.0,"baseline_avg":17173.8,"bar_rvol":0.77921,"raw_accel":-0.391589,"smooth_accel":0.200523,"accel_momentum":-0.026435,"rvol_3bar":[1.105164,1.282986,0.77921],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":63,"trade_rate":2.1,"buy_vol":5095.0,"sell_vol":3624.0,"unclassified_vol":0.0,"imbalance":0.168712,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":1.281852},"context":{"vwap":10.606983,"price_vs_vwap_pct":1.200311,"ema9":10.732569,"ema20":10.734506,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.880256,"dist_to_hod_atr":5.37353,"atr":0.03828,"spread_atr":0.261231,"own_change_pct":0.218251,"rel_strength_pct":{"SPY":0.222872,"IWM":0.239273}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.131462},"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":"658bdc26a3e3","ts":"2026-09-15T19:09:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5918,"target":10.9,"target_label":"ceiling","reward_risk":1.08,"pos_in_5d_range_pct":41.1,"room_to_5d_high_atr":1.28},"price":10.74,"vwap":10.6073,"ext_from_open_pct":3.17,"max_ext_allowed_pct":4.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0112,"volatility":"medium"},"price":10.74,"volume":{"bars":339,"last_bar_volume":14794.0,"baseline_avg":17228.65,"bar_rvol":0.858686,"raw_accel":0.105515,"smooth_accel":0.163763,"accel_momentum":-0.03676,"rvol_3bar":[1.282986,0.77921,0.858686],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":81,"trade_rate":2.7,"buy_vol":9761.0,"sell_vol":3605.0,"unclassified_vol":0.0,"imbalance":0.460572,"bid":10.74,"ask":10.75,"spread_pct":0.093067,"quote_size_imbalance":null,"quote_age_s":0.36721},"context":{"vwap":10.60725,"price_vs_vwap_pct":1.251499,"ema9":10.732915,"ema20":10.734487,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.828154,"dist_to_hod_atr":5.403913,"atr":0.03701,"spread_atr":0.270196,"own_change_pct":0.076449,"rel_strength_pct":{"SPY":0.08107,"IWM":0.097471}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.395486},"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":"da5b9b5b5b83","ts":"2026-09-15T19:09:20+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.1% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5868,"target":10.9,"target_label":"ceiling","reward_risk":1.11,"pos_in_5d_range_pct":40.7,"room_to_5d_high_atr":1.29},"price":10.735,"vwap":10.6074,"ext_from_open_pct":3.12,"max_ext_allowed_pct":3.0,"volume_pace":0.867,"trend":"flat","recent_slope_pct":-0.0205,"volatility":"medium"},"price":10.735,"volume":{"bars":339,"last_bar_volume":14794.0,"baseline_avg":17228.65,"bar_rvol":0.858686,"raw_accel":0.105515,"smooth_accel":0.163763,"accel_momentum":-0.03676,"rvol_3bar":[1.282986,0.77921,0.858686],"trend_3bar":"MIXED","projected_rvol":1.725614},"flow":{"window_s":30,"trades":85,"trade_rate":2.833333,"buy_vol":6506.0,"sell_vol":4766.0,"unclassified_vol":0.0,"imbalance":0.154365,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":0.43984},"context":{"vwap":10.60725,"price_vs_vwap_pct":1.204361,"ema9":10.732915,"ema20":10.734487,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.873857,"dist_to_hod_atr":5.539011,"atr":0.03701,"spread_atr":0.270196,"own_change_pct":0.076449,"rel_strength_pct":{"SPY":0.08107,"IWM":0.097471}},"vas":{"raw":1,"score":5.0,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":1},"missing":[],"volume_pressure":0.132551},"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":"363efce19d6a","ts":"2026-09-15T19:09:40+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5842,"target":10.9,"target_label":"ceiling","reward_risk":1.13,"pos_in_5d_range_pct":40.5,"room_to_5d_high_atr":1.29},"price":10.7324,"vwap":10.6074,"ext_from_open_pct":3.1,"max_ext_allowed_pct":4.0,"volume_pace":0.866,"trend":"flat","recent_slope_pct":-0.0253,"volatility":"medium"},"price":10.7324,"volume":{"bars":339,"last_bar_volume":14794.0,"baseline_avg":17228.65,"bar_rvol":0.858686,"raw_accel":0.105515,"smooth_accel":0.163763,"accel_momentum":-0.03676,"rvol_3bar":[1.282986,0.77921,0.858686],"trend_3bar":"MIXED","projected_rvol":0.898329},"flow":{"window_s":30,"trades":56,"trade_rate":1.866667,"buy_vol":1669.0,"sell_vol":3146.0,"unclassified_vol":0.0,"imbalance":-0.30675,"bid":10.73,"ask":10.74,"spread_pct":0.093153,"quote_size_imbalance":null,"quote_age_s":1.14293},"context":{"vwap":10.60725,"price_vs_vwap_pct":1.17985,"ema9":10.732915,"ema20":10.734487,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.897623,"dist_to_hod_atr":5.609262,"atr":0.03701,"spread_atr":0.270196,"own_change_pct":0.076449,"rel_strength_pct":{"SPY":0.08107,"IWM":0.097471}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.263402},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"1631909ecbc0","ts":"2026-09-15T19:09:50+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"extended +3.2% above open $10.41 (max 3%: volume pace normal, buying normal)","plan":{"state":"PASS","setup":"","stop":10.5953,"target":10.9,"target_label":"ceiling","reward_risk":1.06,"pos_in_5d_range_pct":41.4,"room_to_5d_high_atr":1.27},"price":10.7435,"vwap":10.6075,"ext_from_open_pct":3.2,"max_ext_allowed_pct":3.0,"volume_pace":0.866,"trend":"flat","recent_slope_pct":-0.0047,"volatility":"medium"},"price":10.7435,"volume":{"bars":339,"last_bar_volume":14794.0,"baseline_avg":17228.65,"bar_rvol":0.858686,"raw_accel":0.105515,"smooth_accel":0.163763,"accel_momentum":-0.03676,"rvol_3bar":[1.282986,0.77921,0.858686],"trend_3bar":"MIXED","projected_rvol":0.877678},"flow":{"window_s":30,"trades":46,"trade_rate":1.533333,"buy_vol":863.0,"sell_vol":1828.0,"unclassified_vol":0.0,"imbalance":-0.358603,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.609787},"context":{"vwap":10.60725,"price_vs_vwap_pct":1.284495,"ema9":10.732915,"ema20":10.734487,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.796161,"dist_to_hod_atr":5.309344,"atr":0.03701,"spread_atr":0.270196,"own_change_pct":0.076449,"rel_strength_pct":{"SPY":0.08107,"IWM":0.097471}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":1,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.307927},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"8580f62ff522","ts":"2026-09-15T19:10:00+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.88 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.6992,"target":13.0289,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":42.0,"room_to_5d_high_atr":1.2},"price":12.88,"vwap":12.8988,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":0.018,"volatility":"medium"},"price":12.88,"volume":{"bars":337,"last_bar_volume":1501.0,"baseline_avg":1269.95,"bar_rvol":1.181936,"raw_accel":0.644031,"smooth_accel":1.994264,"accel_momentum":-0.710357,"rvol_3bar":[0.586099,0.73996,1.181936],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":372.0,"sell_vol":2394.0,"unclassified_vol":0.0,"imbalance":-0.73102,"bid":12.88,"ask":12.91,"spread_pct":0.232648,"quote_size_imbalance":null,"quote_age_s":0.78383},"context":{"vwap":12.898768,"price_vs_vwap_pct":-0.145502,"ema9":12.901643,"ema20":12.887074,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.230654,"dist_to_hod_atr":9.712442,"atr":0.044273,"spread_atr":0.677612,"own_change_pct":0.244214,"rel_strength_pct":{"SPY":0.245495,"IWM":0.25823}},"vas":{"raw":0,"score":4.4,"components":{"rvol":0,"accel":3,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.864019},"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":"344a6fe0eeb9","ts":"2026-09-15T19:10:10+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5768,"target":10.9,"target_label":"ceiling","reward_risk":1.18,"pos_in_5d_range_pct":39.9,"room_to_5d_high_atr":1.31},"price":10.725,"vwap":10.6075,"ext_from_open_pct":3.03,"max_ext_allowed_pct":4.0,"volume_pace":0.865,"trend":"flat","recent_slope_pct":-0.0537,"volatility":"medium"},"price":10.725,"volume":{"bars":340,"last_bar_volume":12772.0,"baseline_avg":17162.25,"bar_rvol":0.744191,"raw_accel":-0.136677,"smooth_accel":-0.235988,"accel_momentum":-0.399751,"rvol_3bar":[0.77921,0.858686,0.744191],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":52,"trade_rate":1.733333,"buy_vol":3540.0,"sell_vol":1795.0,"unclassified_vol":0.0,"imbalance":0.327085,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.074033},"context":{"vwap":10.60747,"price_vs_vwap_pct":1.107993,"ema9":10.732332,"ema20":10.734059,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.965265,"dist_to_hod_atr":5.974204,"atr":0.035988,"spread_atr":0.27787,"own_change_pct":-0.082876,"rel_strength_pct":{"SPY":-0.081595,"IWM":-0.06886}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.243414},"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":"f5a7a2a2ba52","ts":"2026-09-15T19:10:20+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7195,"target":13.0289,"target_label":"ceiling","reward_risk":0.71,"pos_in_5d_range_pct":43.4,"room_to_5d_high_atr":1.18},"price":12.9003,"vwap":12.8988,"ext_from_open_pct":-1.15,"max_ext_allowed_pct":3.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":-0.0178,"volatility":"medium"},"price":12.9003,"volume":{"bars":338,"last_bar_volume":2976.0,"baseline_avg":1306.1,"bar_rvol":2.278539,"raw_accel":0.982678,"smooth_accel":2.067729,"accel_momentum":0.073465,"rvol_3bar":[0.73996,1.181936,2.278539],"trend_3bar":"ACCELERATING","projected_rvol":0.199832},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":87.0,"sell_vol":334.0,"unclassified_vol":0.0,"imbalance":-0.586698,"bid":12.88,"ask":12.91,"spread_pct":0.232648,"quote_size_imbalance":null,"quote_age_s":12.903995},"context":{"vwap":12.898751,"price_vs_vwap_pct":0.012011,"ema9":12.897314,"ema20":12.886401,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.078137,"dist_to_hod_atr":9.169205,"atr":0.044682,"spread_atr":0.671409,"own_change_pct":-0.038805,"rel_strength_pct":{"SPY":-0.037524,"IWM":-0.024789}},"vas":{"raw":3,"score":6.2,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-1.336815},"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":"000eb921f7db","ts":"2026-09-15T19:10:25+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.1% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7756,"target":9.9598,"target_label":"clear air (typical 60-min move)","reward_risk":1.87,"pos_in_5d_range_pct":481.0,"room_to_5d_high_atr":-5.49},"price":9.8398,"vwap":9.7329,"ext_from_open_pct":4.12,"max_ext_allowed_pct":4.0,"volume_pace":3.341,"trend":"flat","recent_slope_pct":0.077,"volatility":"low"},"price":9.8398,"volume":{"bars":340,"last_bar_volume":1059.0,"baseline_avg":8137.5,"bar_rvol":0.130138,"raw_accel":-0.715552,"smooth_accel":-0.451482,"accel_momentum":-0.165571,"rvol_3bar":[0.010544,0.467928,0.130138],"trend_3bar":"MIXED","projected_rvol":0.203207},"flow":{"window_s":30,"trades":37,"trade_rate":1.233333,"buy_vol":297.0,"sell_vol":448.0,"unclassified_vol":0.0,"imbalance":-0.202685,"bid":9.8,"ask":9.83,"spread_pct":0.305655,"quote_size_imbalance":null,"quote_age_s":2.729389},"context":{"vwap":9.73286,"price_vs_vwap_pct":1.098752,"ema9":9.825965,"ema20":9.843173,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.531373,"dist_to_hod_atr":9.142593,"atr":0.039398,"spread_atr":0.76146,"own_change_pct":-0.507099,"rel_strength_pct":{"SPY":-0.505819,"IWM":-0.493083}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":-1},"missing":[],"volume_pressure":-0.026377},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"efbbc3d94a76","ts":"2026-09-15T19:10:30+00:00","symbol":"RDW","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":10.5861,"target":10.9,"target_label":"ceiling","reward_risk":1.12,"pos_in_5d_range_pct":40.7,"room_to_5d_high_atr":1.29},"price":10.7343,"vwap":10.6077,"ext_from_open_pct":3.12,"max_ext_allowed_pct":4.0,"volume_pace":0.865,"trend":"flat","recent_slope_pct":-0.0363,"volatility":"medium"},"price":10.7343,"volume":{"bars":340,"last_bar_volume":12772.0,"baseline_avg":17162.25,"bar_rvol":0.744191,"raw_accel":-0.136677,"smooth_accel":-0.235988,"accel_momentum":-0.399751,"rvol_3bar":[0.77921,0.858686,0.744191],"trend_3bar":"MIXED","projected_rvol":1.265219},"flow":{"window_s":30,"trades":62,"trade_rate":2.066667,"buy_vol":9299.0,"sell_vol":1558.0,"unclassified_vol":0.0,"imbalance":0.712996,"bid":10.72,"ask":10.73,"spread_pct":0.09324,"quote_size_imbalance":null,"quote_age_s":0.029155},"context":{"vwap":10.60747,"price_vs_vwap_pct":1.195667,"ema9":10.732332,"ema20":10.734059,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-1.880256,"dist_to_hod_atr":5.715784,"atr":0.035988,"spread_atr":0.27787,"own_change_pct":-0.082876,"rel_strength_pct":{"SPY":-0.081595,"IWM":-0.06886}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-1,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.530606},"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":"05a95d7c6082","ts":"2026-09-15T19:10:35+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.88 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.6992,"target":13.0289,"target_label":"ceiling","reward_risk":0.82,"pos_in_5d_range_pct":42.0,"room_to_5d_high_atr":1.2},"price":12.88,"vwap":12.8987,"ext_from_open_pct":-1.3,"max_ext_allowed_pct":3.0,"volume_pace":0.704,"trend":"flat","recent_slope_pct":-0.0493,"volatility":"medium"},"price":12.88,"volume":{"bars":338,"last_bar_volume":2976.0,"baseline_avg":1306.1,"bar_rvol":2.278539,"raw_accel":0.982678,"smooth_accel":2.067729,"accel_momentum":0.073465,"rvol_3bar":[0.73996,1.181936,2.278539],"trend_3bar":"ACCELERATING","projected_rvol":0.383257},"flow":{"window_s":30,"trades":8,"trade_rate":0.266667,"buy_vol":91.0,"sell_vol":151.0,"unclassified_vol":0.0,"imbalance":-0.247934,"bid":12.88,"ask":12.91,"spread_pct":0.232648,"quote_size_imbalance":null,"quote_age_s":0.079034},"context":{"vwap":12.898751,"price_vs_vwap_pct":-0.145368,"ema9":12.897314,"ema20":12.886401,"ema_stack":false,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.230654,"dist_to_hod_atr":9.623525,"atr":0.044682,"spread_atr":0.671409,"own_change_pct":-0.038805,"rel_strength_pct":{"SPY":-0.037524,"IWM":-0.024789}},"vas":{"raw":4,"score":6.9,"components":{"rvol":2,"accel":3,"momentum":0,"imbalance":-1},"missing":[],"volume_pressure":-0.564927},"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":"8691acda78d5","ts":"2026-09-15T19:10:40+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7458,"target":9.93,"target_label":"clear air (typical 60-min move)","reward_risk":1.87,"pos_in_5d_range_pct":473.0,"room_to_5d_high_atr":-5.37},"price":9.81,"vwap":9.7329,"ext_from_open_pct":3.81,"max_ext_allowed_pct":4.0,"volume_pace":3.339,"trend":"flat","recent_slope_pct":0.0163,"volatility":"low"},"price":9.81,"volume":{"bars":340,"last_bar_volume":1059.0,"baseline_avg":8137.5,"bar_rvol":0.130138,"raw_accel":-0.715552,"smooth_accel":-0.451482,"accel_momentum":-0.165571,"rvol_3bar":[0.010544,0.467928,0.130138],"trend_3bar":"MIXED","projected_rvol":0.146544},"flow":{"window_s":30,"trades":32,"trade_rate":1.066667,"buy_vol":297.0,"sell_vol":347.0,"unclassified_vol":0.0,"imbalance":-0.07764,"bid":9.8,"ask":9.82,"spread_pct":0.203874,"quote_size_imbalance":null,"quote_age_s":4.545817},"context":{"vwap":9.73286,"price_vs_vwap_pct":0.792573,"ema9":9.825965,"ema20":9.843173,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.823529,"dist_to_hod_atr":9.898976,"atr":0.039398,"spread_atr":0.50764,"own_change_pct":-0.507099,"rel_strength_pct":{"SPY":-0.505819,"IWM":-0.493083}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":-0.010104},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"8303a2ed1eed","ts":"2026-09-15T19:11:05+00:00","symbol":"SMR","event":"WAIT","bot":{"state":"WAIT","reason":"held 910.0s, plan says PASS; stop 8.34, target 8.59 (premarket_high), R:R 0.29; R:R 0.29 < 2.0 at 8.53; no breakout level or rising-low pullback to trade","plan":{"state":"PASS","setup":"","stop":8.3433,"target":8.59,"target_label":"premarket_high","reward_risk":0.29,"pos_in_5d_range_pct":9.6,"room_to_5d_high_atr":3.71},"price":8.5345,"vwap":8.4414,"ext_from_open_pct":1.97,"max_ext_allowed_pct":3.0,"volume_pace":0.744,"trend":"flat","recent_slope_pct":0.0077,"volatility":"high"},"price":8.5345,"volume":{"bars":341,"last_bar_volume":103162.0,"baseline_avg":97257.45,"bar_rvol":1.060711,"raw_accel":0.494062,"smooth_accel":0.269664,"accel_momentum":0.11049,"rvol_3bar":[0.542592,0.702086,1.060711],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":119,"trade_rate":3.966667,"buy_vol":25876.0,"sell_vol":14739.0,"unclassified_vol":0.0,"imbalance":0.274209,"bid":8.53,"ask":8.54,"spread_pct":0.117165,"quote_size_imbalance":null,"quote_age_s":0.266029},"context":{"vwap":8.441405,"price_vs_vwap_pct":1.102836,"ema9":8.530941,"ema20":8.516581,"ema_stack":true,"ema_warm":true,"hod":8.675,"dist_to_hod_pct":-1.619597,"dist_to_hod_atr":4.412334,"atr":0.031843,"spread_atr":0.314045,"own_change_pct":0.099647,"rel_strength_pct":{"SPY":0.103608,"IWM":0.120675}},"vas":{"raw":3,"score":6.2,"components":{"rvol":0,"accel":1,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.290856},"shadow":{"decision":"PASS","failed":[],"missing":[],"rules":{"vas":true,"imbalance":true,"bar_rvol":true,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"fda9d2260e6e","ts":"2026-09-15T19:11:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2223,"target":7.4,"target_label":"ceiling","reward_risk":0.7,"pos_in_5d_range_pct":37.8,"room_to_5d_high_atr":1.33},"price":7.3267,"vwap":7.2866,"ext_from_open_pct":2.47,"max_ext_allowed_pct":3.0,"volume_pace":0.801,"trend":"flat","recent_slope_pct":-0.0499,"volatility":"medium"},"price":7.3267,"volume":{"bars":341,"last_bar_volume":35571.0,"baseline_avg":162385.7,"bar_rvol":0.219053,"raw_accel":-0.12379,"smooth_accel":-0.325138,"accel_momentum":-0.052746,"rvol_3bar":[1.22686,0.102135,0.219053],"trend_3bar":"MIXED","projected_rvol":0.980961},"flow":{"window_s":30,"trades":214,"trade_rate":7.133333,"buy_vol":11391.0,"sell_vol":42538.0,"unclassified_vol":0.0,"imbalance":-0.577556,"bid":7.32,"ask":7.33,"spread_pct":0.136519,"quote_size_imbalance":null,"quote_age_s":1.756167},"context":{"vwap":7.286546,"price_vs_vwap_pct":0.551068,"ema9":7.333427,"ema20":7.324191,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.39031,"dist_to_hod_atr":4.623916,"atr":0.02234,"spread_atr":0.44762,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.003961,"IWM":0.021028}},"vas":{"raw":-6,"score":0.6,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":-2},"missing":[],"volume_pressure":-0.126515},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0bfd98237611","ts":"2026-09-15T19:11:55+00:00","symbol":"RLGT","event":"REJECT","bot":{"state":"REJECT","reason":"extended +4.0% above open $9.45 (max 4%: volume pace strong, buying normal)","plan":{"state":"PASS","setup":"","stop":9.7658,"target":9.95,"target_label":"clear air (typical 60-min move)","reward_risk":1.87,"pos_in_5d_range_pct":478.4,"room_to_5d_high_atr":-5.45},"price":9.83,"vwap":9.7329,"ext_from_open_pct":4.02,"max_ext_allowed_pct":4.0,"volume_pace":3.329,"trend":"flat","recent_slope_pct":0.053,"volatility":"low"},"price":9.83,"volume":{"bars":341,"last_bar_volume":962.0,"baseline_avg":6628.9,"bar_rvol":0.145122,"raw_accel":-0.419512,"smooth_accel":-0.291127,"accel_momentum":0.160355,"rvol_3bar":[0.467928,0.130138,0.145122],"trend_3bar":"MIXED","projected_rvol":0.256727},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":120.0,"sell_vol":36.0,"unclassified_vol":0.0,"imbalance":0.538462,"bid":9.81,"ask":9.83,"spread_pct":0.203666,"quote_size_imbalance":null,"quote_age_s":2.117637},"context":{"vwap":9.732892,"price_vs_vwap_pct":0.997729,"ema9":9.824772,"ema20":9.840966,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.627451,"dist_to_hod_atr":9.40153,"atr":0.039355,"spread_atr":0.508191,"own_change_pct":-0.101729,"rel_strength_pct":{"SPY":-0.097768,"IWM":-0.080701}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.078143},"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":"94e4c8b89afb","ts":"2026-09-15T19:11:55+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"volume pace 0.25x normal below floor 0.4x","plan":{"state":"PASS","setup":"","stop":8.329,"target":8.6,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":129.4,"room_to_5d_high_atr":-1.07},"price":8.52,"vwap":8.2218,"ext_from_open_pct":11.23,"max_ext_allowed_pct":3.0,"volume_pace":0.25,"trend":"flat","recent_slope_pct":-0.1109,"volatility":"high"},"price":8.52,"volume":{"bars":339,"last_bar_volume":976.0,"baseline_avg":871.8,"bar_rvol":1.119523,"raw_accel":0.216958,"smooth_accel":3.71466,"accel_momentum":4.084324,"rvol_3bar":[0.027327,0.964174,1.119523],"trend_3bar":"ACCELERATING","projected_rvol":4.272039},"flow":{"window_s":30,"trades":25,"trade_rate":0.833333,"buy_vol":933.0,"sell_vol":2400.0,"unclassified_vol":0.0,"imbalance":-0.440144,"bid":8.49,"ask":8.55,"spread_pct":0.704225,"quote_size_imbalance":null,"quote_age_s":0.291895},"context":{"vwap":8.220427,"price_vs_vwap_pct":3.644253,"ema9":8.573867,"ema20":8.567691,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.930233,"dist_to_hod_atr":2.708535,"atr":0.029536,"spread_atr":2.031401,"own_change_pct":-0.234127,"rel_strength_pct":{"SPY":-0.230165,"IWM":-0.213099}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.492751},"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":"e9c472422d8e","ts":"2026-09-15T19:12:00+00:00","symbol":"RLGT","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":9.7758,"target":9.96,"target_label":"clear air (typical 60-min move)","reward_risk":1.87,"pos_in_5d_range_pct":481.1,"room_to_5d_high_atr":-5.49},"price":9.84,"vwap":9.733,"ext_from_open_pct":4.13,"max_ext_allowed_pct":5.0,"volume_pace":3.328,"trend":"flat","recent_slope_pct":0.0733,"volatility":"low"},"price":9.84,"volume":{"bars":341,"last_bar_volume":962.0,"baseline_avg":6628.9,"bar_rvol":0.145122,"raw_accel":-0.419512,"smooth_accel":-0.291127,"accel_momentum":0.160355,"rvol_3bar":[0.467928,0.130138,0.145122],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":121.0,"sell_vol":436.0,"unclassified_vol":0.0,"imbalance":-0.56553,"bid":9.81,"ask":9.84,"spread_pct":0.305344,"quote_size_imbalance":null,"quote_age_s":2.647783},"context":{"vwap":9.732892,"price_vs_vwap_pct":1.100473,"ema9":9.824772,"ema20":9.840966,"ema_stack":false,"ema_warm":true,"hod":10.2,"dist_to_hod_pct":-3.529412,"dist_to_hod_atr":9.147434,"atr":0.039355,"spread_atr":0.762286,"own_change_pct":-0.101729,"rel_strength_pct":{"SPY":-0.093807,"IWM":-0.078948}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.082071},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"9e7b8726e7df","ts":"2026-09-15T19:12:05+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.461,"target":9.87,"target_label":"premarket_high","reward_risk":1.7,"pos_in_5d_range_pct":7.8,"room_to_5d_high_atr":3.15},"price":9.6124,"vwap":9.5619,"ext_from_open_pct":-1.41,"max_ext_allowed_pct":4.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.0353,"volatility":"high"},"price":9.6124,"volume":{"bars":342,"last_bar_volume":15056.0,"baseline_avg":10577.0,"bar_rvol":1.423466,"raw_accel":2.221224,"smooth_accel":-0.536884,"accel_momentum":0.180433,"rvol_3bar":[0.201274,0.310918,1.423466],"trend_3bar":"ACCELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":45,"trade_rate":1.5,"buy_vol":5224.0,"sell_vol":502.0,"unclassified_vol":0.0,"imbalance":0.824659,"bid":9.61,"ask":9.62,"spread_pct":0.104004,"quote_size_imbalance":null,"quote_age_s":3.526429},"context":{"vwap":9.561915,"price_vs_vwap_pct":0.527984,"ema9":9.625208,"ema20":9.619353,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.213632,"dist_to_hod_atr":7.652264,"atr":0.028436,"spread_atr":0.351667,"own_change_pct":-0.234498,"rel_strength_pct":{"SPY":-0.226575,"IWM":-0.211716}},"vas":{"raw":1,"score":5.0,"components":{"rvol":0,"accel":-2,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":1.173875},"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":"67ec25cac40a","ts":"2026-09-15T19:12:05+00:00","symbol":"BB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7571,"target":7.91,"target_label":"prev_day_high","reward_risk":0.74,"pos_in_5d_range_pct":70.6,"room_to_5d_high_atr":0.45},"price":7.845,"vwap":7.7843,"ext_from_open_pct":1.88,"max_ext_allowed_pct":4.0,"volume_pace":0.54,"trend":"flat","recent_slope_pct":-0.0255,"volatility":"medium"},"price":7.845,"volume":{"bars":342,"last_bar_volume":4234.0,"baseline_avg":8247.15,"bar_rvol":0.513389,"raw_accel":-0.167519,"smooth_accel":-0.214587,"accel_momentum":0.179687,"rvol_3bar":[1.271426,0.516212,0.513389],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":353.0,"sell_vol":177.0,"unclassified_vol":0.0,"imbalance":0.332075,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.567317},"context":{"vwap":7.784346,"price_vs_vwap_pct":0.77918,"ema9":7.849686,"ema20":7.850391,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.570342,"dist_to_hod_atr":3.064651,"atr":0.014684,"spread_atr":0.681034,"own_change_pct":-0.056043,"rel_strength_pct":{"SPY":-0.04812,"IWM":-0.033261}},"vas":{"raw":0,"score":4.4,"components":{"rvol":-2,"accel":-1,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.170484},"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":"b6ba2fa8165a","ts":"2026-09-15T19:13:05+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.4636,"target":9.87,"target_label":"premarket_high","reward_risk":1.68,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.15},"price":9.615,"vwap":9.5621,"ext_from_open_pct":-1.38,"max_ext_allowed_pct":4.0,"volume_pace":0.699,"trend":"flat","recent_slope_pct":-0.0229,"volatility":"high"},"price":9.615,"volume":{"bars":343,"last_bar_volume":10414.0,"baseline_avg":10809.85,"bar_rvol":0.963381,"raw_accel":-0.308316,"smooth_accel":0.998409,"accel_momentum":1.535293,"rvol_3bar":[0.310918,1.423466,0.963381],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":2711.0,"sell_vol":63.0,"unclassified_vol":0.0,"imbalance":0.954578,"bid":9.61,"ask":9.62,"spread_pct":0.104004,"quote_size_imbalance":null,"quote_age_s":0.479148},"context":{"vwap":9.562048,"price_vs_vwap_pct":0.553777,"ema9":9.622287,"ema20":9.61852,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.187182,"dist_to_hod_atr":7.565316,"atr":0.028419,"spread_atr":0.351875,"own_change_pct":-0.253243,"rel_strength_pct":{"SPY":-0.230797,"IWM":-0.202428}},"vas":{"raw":5,"score":7.5,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":2},"missing":[],"volume_pressure":0.919622},"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":"132436204770","ts":"2026-09-15T19:13:30+00:00","symbol":"EXK","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":9.4576,"target":9.87,"target_label":"premarket_high","reward_risk":1.72,"pos_in_5d_range_pct":7.7,"room_to_5d_high_atr":3.16},"price":9.609,"vwap":9.5621,"ext_from_open_pct":-1.45,"max_ext_allowed_pct":3.0,"volume_pace":0.698,"trend":"flat","recent_slope_pct":-0.0354,"volatility":"high"},"price":9.609,"volume":{"bars":343,"last_bar_volume":10414.0,"baseline_avg":10809.85,"bar_rvol":0.963381,"raw_accel":-0.308316,"smooth_accel":0.998409,"accel_momentum":1.535293,"rvol_3bar":[0.310918,1.423466,0.963381],"trend_3bar":"MIXED","projected_rvol":0.627761},"flow":{"window_s":30,"trades":40,"trade_rate":1.333333,"buy_vol":1908.0,"sell_vol":1485.0,"unclassified_vol":0.0,"imbalance":0.124668,"bid":9.6,"ask":9.61,"spread_pct":0.104112,"quote_size_imbalance":null,"quote_age_s":3.708769},"context":{"vwap":9.562048,"price_vs_vwap_pct":0.491029,"ema9":9.622287,"ema20":9.61852,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.24822,"dist_to_hod_atr":7.776441,"atr":0.028419,"spread_atr":0.351875,"own_change_pct":-0.253243,"rel_strength_pct":{"SPY":-0.230797,"IWM":-0.202428}},"vas":{"raw":4,"score":6.9,"components":{"rvol":-1,"accel":3,"momentum":1,"imbalance":1},"missing":[],"volume_pressure":0.120103},"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":"1a4a298d04f8","ts":"2026-09-15T19:13:35+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.88% exceeds max 1.0%","plan":{"state":"WATCH","setup":"","stop":8.2491,"target":8.7191,"target_label":"clear air (typical 60-min move)","reward_risk":0.47,"pos_in_5d_range_pct":131.2,"room_to_5d_high_atr":-1.14},"price":8.5691,"vwap":8.2261,"ext_from_open_pct":11.87,"max_ext_allowed_pct":4.0,"volume_pace":0.254,"trend":"flat","recent_slope_pct":-0.1247,"volatility":"high"},"price":8.5691,"volume":{"bars":341,"last_bar_volume":13310.0,"baseline_avg":1055.1,"bar_rvol":12.614918,"raw_accel":2.582773,"smooth_accel":20.766626,"accel_momentum":-100.30004,"rvol_3bar":[1.119523,4.271833,12.614918],"trend_3bar":"ACCELERATING","projected_rvol":1.587392},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":975.0,"sell_vol":1.0,"unclassified_vol":0.0,"imbalance":0.997951,"bid":8.42,"ask":8.58,"spread_pct":1.882353,"quote_size_imbalance":null,"quote_age_s":36.477145},"context":{"vwap":8.225734,"price_vs_vwap_pct":4.174293,"ema9":8.549475,"ema20":8.556659,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-0.359302,"dist_to_hod_atr":0.797227,"atr":0.038759,"spread_atr":4.128038,"own_change_pct":-0.759346,"rel_strength_pct":{"SPY":-0.736899,"IWM":-0.70853}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":12.589068},"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":"0da68acc9656","ts":"2026-09-15T19:13:40+00:00","symbol":"TGB","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.7867,"target":8.0,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":2.63},"price":7.905,"vwap":7.8539,"ext_from_open_pct":0.06,"max_ext_allowed_pct":3.0,"volume_pace":1.026,"trend":"flat","recent_slope_pct":-0.023,"volatility":"medium"},"price":7.905,"volume":{"bars":343,"last_bar_volume":528.0,"baseline_avg":6176.75,"bar_rvol":0.085482,"raw_accel":-0.805166,"smooth_accel":-0.562059,"accel_momentum":-0.129171,"rvol_3bar":[0.197316,0.414896,0.085482],"trend_3bar":"MIXED","projected_rvol":0.236046},"flow":{"window_s":30,"trades":10,"trade_rate":0.333333,"buy_vol":330.0,"sell_vol":304.0,"unclassified_vol":0.0,"imbalance":0.041009,"bid":7.9,"ask":7.91,"spread_pct":0.126502,"quote_size_imbalance":null,"quote_age_s":0.156767},"context":{"vwap":7.853851,"price_vs_vwap_pct":0.651256,"ema9":7.907779,"ema20":7.904145,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.315259,"dist_to_hod_atr":1.803558,"atr":0.013861,"spread_atr":0.721423,"own_change_pct":-0.099837,"rel_strength_pct":{"SPY":-0.07739,"IWM":-0.049021}},"vas":{"raw":-5,"score":1.2,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":0},"missing":[],"volume_pressure":0.003506},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol","rel_strength"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":false,"not_decelerating":true}}}
{"type":"snapshot","id":"79f5d9817d8a","ts":"2026-09-15T19:13:40+00:00","symbol":"VNCE","event":"REJECT","bot":{"state":"REJECT","reason":"spread 1.88% exceeds max 1.0%","plan":{"state":"PASS","setup":"","stop":8.18,"target":8.6,"target_label":"ceiling","reward_risk":0.31,"pos_in_5d_range_pct":128.7,"room_to_5d_high_atr":-1.05},"price":8.5,"vwap":8.2261,"ext_from_open_pct":10.97,"max_ext_allowed_pct":4.0,"volume_pace":0.254,"trend":"flat","recent_slope_pct":-0.2869,"volatility":"high"},"price":8.5,"volume":{"bars":341,"last_bar_volume":13310.0,"baseline_avg":1055.1,"bar_rvol":12.614918,"raw_accel":2.582773,"smooth_accel":20.766626,"accel_momentum":-100.30004,"rvol_3bar":[1.119523,4.271833,12.614918],"trend_3bar":"ACCELERATING","projected_rvol":1.461473},"flow":{"window_s":30,"trades":4,"trade_rate":0.133333,"buy_vol":875.0,"sell_vol":52.0,"unclassified_vol":0.0,"imbalance":0.88781,"bid":8.42,"ask":8.58,"spread_pct":1.882353,"quote_size_imbalance":null,"quote_age_s":41.477145},"context":{"vwap":8.225734,"price_vs_vwap_pct":3.334247,"ema9":8.549475,"ema20":8.556659,"ema_stack":false,"ema_warm":true,"hod":8.6,"dist_to_hod_pct":-1.162791,"dist_to_hod_atr":2.580024,"atr":0.038759,"spread_atr":4.128038,"own_change_pct":-0.759346,"rel_strength_pct":{"SPY":-0.736899,"IWM":-0.70853}},"vas":{"raw":7,"score":8.8,"components":{"rvol":3,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":11.199652},"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":"df2085122c92","ts":"2026-09-15T19:14:05+00:00","symbol":"EXK","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":9.465,"target":9.87,"target_label":"premarket_high","reward_risk":1.68,"pos_in_5d_range_pct":8.0,"room_to_5d_high_atr":3.14},"price":9.6164,"vwap":9.5621,"ext_from_open_pct":-1.37,"max_ext_allowed_pct":4.0,"volume_pace":0.697,"trend":"flat","recent_slope_pct":0.0193,"volatility":"high"},"price":9.6164,"volume":{"bars":344,"last_bar_volume":4574.0,"baseline_avg":10659.7,"bar_rvol":0.429093,"raw_accel":-0.560784,"smooth_accel":0.725774,"accel_momentum":-0.272635,"rvol_3bar":[1.423466,0.963381,0.429093],"trend_3bar":"DECELERATING","projected_rvol":null},"flow":{"window_s":30,"trades":19,"trade_rate":0.633333,"buy_vol":823.0,"sell_vol":294.0,"unclassified_vol":0.0,"imbalance":0.47359,"bid":9.6,"ask":9.61,"spread_pct":0.104112,"quote_size_imbalance":null,"quote_age_s":0.178141},"context":{"vwap":9.562112,"price_vs_vwap_pct":0.567738,"ema9":9.623989,"ema20":9.619689,"ema_stack":false,"ema_warm":true,"hod":9.83,"dist_to_hod_pct":-2.17294,"dist_to_hod_atr":7.514527,"atr":0.028425,"spread_atr":0.351804,"own_change_pct":0.06026,"rel_strength_pct":{"SPY":0.091289,"IWM":0.137355}},"vas":{"raw":2,"score":5.6,"components":{"rvol":-2,"accel":3,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.203214},"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":"6db46221a861","ts":"2026-09-15T19:14:05+00:00","symbol":"TGB","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.7867,"target":8.0,"target_label":"premarket_high","reward_risk":0.8,"pos_in_5d_range_pct":22.2,"room_to_5d_high_atr":2.63},"price":7.905,"vwap":7.8539,"ext_from_open_pct":0.06,"max_ext_allowed_pct":4.0,"volume_pace":1.025,"trend":"flat","recent_slope_pct":-0.0006,"volatility":"medium"},"price":7.905,"volume":{"bars":344,"last_bar_volume":1276.0,"baseline_avg":5978.15,"bar_rvol":0.213444,"raw_accel":-0.146224,"smooth_accel":-0.462811,"accel_momentum":0.099248,"rvol_3bar":[0.414896,0.085482,0.213444],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":13,"trade_rate":0.433333,"buy_vol":431.0,"sell_vol":363.0,"unclassified_vol":0.0,"imbalance":0.085642,"bid":7.9,"ask":7.91,"spread_pct":0.126502,"quote_size_imbalance":null,"quote_age_s":1.774416},"context":{"vwap":7.853869,"price_vs_vwap_pct":0.65103,"ema9":7.907223,"ema20":7.904226,"ema_stack":false,"ema_warm":true,"hod":7.93,"dist_to_hod_pct":-0.315259,"dist_to_hod_atr":1.837277,"atr":0.013607,"spread_atr":0.734911,"own_change_pct":0.0,"rel_strength_pct":{"SPY":0.03103,"IWM":0.077096}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":0},"missing":[],"volume_pressure":0.01828},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"69d1fca145d6","ts":"2026-09-15T19:14:05+00:00","symbol":"BB","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":7.7606,"target":7.91,"target_label":"prev_day_high","reward_risk":0.7,"pos_in_5d_range_pct":71.3,"room_to_5d_high_atr":0.45},"price":7.8485,"vwap":7.7844,"ext_from_open_pct":1.93,"max_ext_allowed_pct":3.0,"volume_pace":0.537,"trend":"flat","recent_slope_pct":-0.0023,"volatility":"medium"},"price":7.8485,"volume":{"bars":344,"last_bar_volume":1962.0,"baseline_avg":8078.95,"bar_rvol":0.242853,"raw_accel":-0.028587,"smooth_accel":-0.718626,"accel_momentum":-0.160075,"rvol_3bar":[0.513389,0.189408,0.242853],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":17,"trade_rate":0.566667,"buy_vol":257.0,"sell_vol":186.0,"unclassified_vol":0.0,"imbalance":0.160271,"bid":7.84,"ask":7.85,"spread_pct":0.12747,"quote_size_imbalance":null,"quote_age_s":4.988565},"context":{"vwap":7.784394,"price_vs_vwap_pct":0.823516,"ema9":7.849339,"ema20":7.850091,"ema_stack":false,"ema_warm":true,"hod":7.89,"dist_to_hod_pct":-0.525982,"dist_to_hod_atr":2.940366,"atr":0.014114,"spread_atr":0.708522,"own_change_pct":-0.08275,"rel_strength_pct":{"SPY":-0.05172,"IWM":-0.005654}},"vas":{"raw":-4,"score":1.9,"components":{"rvol":-2,"accel":-2,"momentum":-1,"imbalance":1},"missing":[],"volume_pressure":0.038922},"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":"ffe8b10aaaed","ts":"2026-09-15T19:14:05+00:00","symbol":"RDW","event":"WAIT","bot":{"state":"WAIT","reason":"not yet constructive (trend/EMA/VWAP alignment not bullish)","plan":{"state":"PASS","setup":"","stop":10.5618,"target":10.9,"target_label":"ceiling","reward_risk":1.28,"pos_in_5d_range_pct":38.8,"room_to_5d_high_atr":1.33},"price":10.71,"vwap":10.6084,"ext_from_open_pct":2.88,"max_ext_allowed_pct":4.0,"volume_pace":0.862,"trend":"flat","recent_slope_pct":-0.019,"volatility":"medium"},"price":10.71,"volume":{"bars":344,"last_bar_volume":9764.0,"baseline_avg":15451.4,"bar_rvol":0.631917,"raw_accel":-0.431035,"smooth_accel":-0.093515,"accel_momentum":-0.166388,"rvol_3bar":[0.76264,1.142703,0.631917],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":39,"trade_rate":1.3,"buy_vol":10339.0,"sell_vol":663.0,"unclassified_vol":0.0,"imbalance":0.879476,"bid":10.7,"ask":10.71,"spread_pct":0.093414,"quote_size_imbalance":null,"quote_age_s":0.574467},"context":{"vwap":10.608281,"price_vs_vwap_pct":0.958867,"ema9":10.71941,"ema20":10.72642,"ema_stack":false,"ema_warm":true,"hod":10.94,"dist_to_hod_pct":-2.102377,"dist_to_hod_atr":6.48857,"atr":0.035447,"spread_atr":0.282112,"own_change_pct":-0.226377,"rel_strength_pct":{"SPY":-0.195347,"IWM":-0.149282}},"vas":{"raw":-1,"score":3.8,"components":{"rvol":-2,"accel":0,"momentum":-1,"imbalance":2},"missing":[],"volume_pressure":0.555756},"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":"6af20b377188","ts":"2026-09-15T19:14:05+00:00","symbol":"ONDS","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":7.2176,"target":7.4,"target_label":"ceiling","reward_risk":0.75,"pos_in_5d_range_pct":37.3,"room_to_5d_high_atr":1.34},"price":7.322,"vwap":7.287,"ext_from_open_pct":2.41,"max_ext_allowed_pct":3.0,"volume_pace":0.803,"trend":"flat","recent_slope_pct":-0.0363,"volatility":"medium"},"price":7.322,"volume":{"bars":344,"last_bar_volume":197938.0,"baseline_avg":161738.6,"bar_rvol":1.223814,"raw_accel":-0.337688,"smooth_accel":1.417741,"accel_momentum":0.863759,"rvol_3bar":[1.071868,1.841695,1.223814],"trend_3bar":"MIXED","projected_rvol":null},"flow":{"window_s":30,"trades":74,"trade_rate":2.466667,"buy_vol":2823.0,"sell_vol":15002.0,"unclassified_vol":0.0,"imbalance":-0.683254,"bid":7.32,"ask":7.33,"spread_pct":0.136519,"quote_size_imbalance":null,"quote_age_s":0.461875},"context":{"vwap":7.286958,"price_vs_vwap_pct":0.480889,"ema9":7.327467,"ema20":7.323413,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.453567,"dist_to_hod_atr":4.92208,"atr":0.021942,"spread_atr":0.455748,"own_change_pct":-0.144513,"rel_strength_pct":{"SPY":-0.113483,"IWM":-0.067417}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.836176},"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":"84ede26b26fc","ts":"2026-09-15T19:14:20+00:00","symbol":"ONDS","event":"REJECT","bot":{"state":"REJECT","reason":"lower-highs/lower-lows structure","plan":{"state":"PASS","setup":"","stop":7.2156,"target":7.4,"target_label":"ceiling","reward_risk":0.77,"pos_in_5d_range_pct":37.1,"room_to_5d_high_atr":1.34},"price":7.32,"vwap":7.287,"ext_from_open_pct":2.38,"max_ext_allowed_pct":3.0,"volume_pace":0.802,"trend":"flat","recent_slope_pct":-0.0418,"volatility":"medium"},"price":7.32,"volume":{"bars":344,"last_bar_volume":197938.0,"baseline_avg":161738.6,"bar_rvol":1.223814,"raw_accel":-0.337688,"smooth_accel":1.417741,"accel_momentum":0.863759,"rvol_3bar":[1.071868,1.841695,1.223814],"trend_3bar":"MIXED","projected_rvol":0.4843},"flow":{"window_s":30,"trades":153,"trade_rate":5.1,"buy_vol":7733.0,"sell_vol":20081.0,"unclassified_vol":0.0,"imbalance":-0.443949,"bid":7.31,"ask":7.32,"spread_pct":0.136705,"quote_size_imbalance":null,"quote_age_s":1.182353},"context":{"vwap":7.286958,"price_vs_vwap_pct":0.453443,"ema9":7.327467,"ema20":7.323413,"ema_stack":false,"ema_warm":true,"hod":7.43,"dist_to_hod_pct":-1.480485,"dist_to_hod_atr":5.01323,"atr":0.021942,"spread_atr":0.455748,"own_change_pct":-0.144513,"rel_strength_pct":{"SPY":-0.113483,"IWM":-0.067417}},"vas":{"raw":2,"score":5.6,"components":{"rvol":0,"accel":3,"momentum":1,"imbalance":-2},"missing":[],"volume_pressure":-0.543311},"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":"187f2bbd8313","ts":"2026-09-15T19:14:30+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7292,"target":13.0061,"target_label":"ceiling","reward_risk":0.53,"pos_in_5d_range_pct":44.0,"room_to_5d_high_atr":1.16},"price":12.91,"vwap":12.8987,"ext_from_open_pct":-1.07,"max_ext_allowed_pct":4.0,"volume_pace":0.702,"trend":"flat","recent_slope_pct":0.0543,"volatility":"medium"},"price":12.91,"volume":{"bars":342,"last_bar_volume":189.0,"baseline_avg":1425.45,"bar_rvol":0.13259,"raw_accel":-0.826764,"smooth_accel":-0.555905,"accel_momentum":-0.053679,"rvol_3bar":[0.675257,0.74291,0.13259],"trend_3bar":"MIXED","projected_rvol":0.802554},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":523.0,"sell_vol":49.0,"unclassified_vol":0.0,"imbalance":0.828671,"bid":12.88,"ask":12.93,"spread_pct":0.387447,"quote_size_imbalance":null,"quote_age_s":2.477714},"context":{"vwap":12.898692,"price_vs_vwap_pct":0.087666,"ema9":12.892436,"ema20":12.886981,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.005259,"dist_to_hod_atr":9.81754,"atr":0.040743,"spread_atr":1.227192,"own_change_pct":-0.232019,"rel_strength_pct":{"SPY":-0.200989,"IWM":-0.154923}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.109873},"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":"f9204f4e4f44","ts":"2026-09-15T19:14:30+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"WATCH","setup":"","stop":11.0932,"target":11.4,"target_label":"ceiling","reward_risk":0.42,"pos_in_5d_range_pct":24.6,"room_to_5d_high_atr":1.24},"price":11.31,"vwap":11.2624,"ext_from_open_pct":0.44,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":0.2004,"volatility":"high"},"price":11.31,"volume":{"bars":344,"last_bar_volume":136876.0,"baseline_avg":178048.75,"bar_rvol":0.768756,"raw_accel":0.052123,"smooth_accel":0.457424,"accel_momentum":-0.124882,"rvol_3bar":[0.696574,0.709718,0.768756],"trend_3bar":"ACCELERATING","projected_rvol":4.617601},"flow":{"window_s":30,"trades":483,"trade_rate":16.1,"buy_vol":136497.0,"sell_vol":274582.0,"unclassified_vol":0.0,"imbalance":-0.335909,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.09159},"context":{"vwap":11.262329,"price_vs_vwap_pct":0.42328,"ema9":11.202215,"ema20":11.181965,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.480836,"dist_to_hod_atr":2.364761,"atr":0.071889,"spread_atr":0.139104,"own_change_pct":0.174994,"rel_strength_pct":{"SPY":0.206023,"IWM":0.252089}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.258232},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"e45fb9b2f649","ts":"2026-09-15T19:14:35+00:00","symbol":"ALMU","event":"REJECT","bot":{"state":"REJECT","reason":"price $12.90 below VWAP $12.90","plan":{"state":"PASS","setup":"","stop":12.717,"target":13.0061,"target_label":"ceiling","reward_risk":0.6,"pos_in_5d_range_pct":43.2,"room_to_5d_high_atr":1.18},"price":12.8978,"vwap":12.8987,"ext_from_open_pct":-1.17,"max_ext_allowed_pct":4.0,"volume_pace":0.702,"trend":"flat","recent_slope_pct":0.0354,"volatility":"medium"},"price":12.8978,"volume":{"bars":342,"last_bar_volume":189.0,"baseline_avg":1425.45,"bar_rvol":0.13259,"raw_accel":-0.826764,"smooth_accel":-0.555905,"accel_momentum":-0.053679,"rvol_3bar":[0.675257,0.74291,0.13259],"trend_3bar":"MIXED","projected_rvol":0.808166},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":523.0,"sell_vol":134.0,"unclassified_vol":0.0,"imbalance":0.592085,"bid":12.88,"ask":12.93,"spread_pct":0.387447,"quote_size_imbalance":null,"quote_age_s":4.885508},"context":{"vwap":12.898692,"price_vs_vwap_pct":-0.006917,"ema9":12.892436,"ema20":12.886981,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.09692,"dist_to_hod_atr":10.116975,"atr":0.040743,"spread_atr":1.227192,"own_change_pct":-0.232019,"rel_strength_pct":{"SPY":-0.200989,"IWM":-0.154923}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.078504},"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":"1474ace58756","ts":"2026-09-15T19:14:35+00:00","symbol":"MARA","event":"REJECT","bot":{"state":"REJECT","reason":"VWAP sloping down","plan":{"state":"PASS","setup":"","stop":11.0882,"target":11.4,"target_label":"ceiling","reward_risk":0.44,"pos_in_5d_range_pct":24.2,"room_to_5d_high_atr":1.25},"price":11.305,"vwap":11.2625,"ext_from_open_pct":0.4,"max_ext_allowed_pct":3.0,"volume_pace":0.856,"trend":"flat","recent_slope_pct":0.1915,"volatility":"high"},"price":11.305,"volume":{"bars":344,"last_bar_volume":136876.0,"baseline_avg":178048.75,"bar_rvol":0.768756,"raw_accel":0.052123,"smooth_accel":0.457424,"accel_momentum":-0.124882,"rvol_3bar":[0.696574,0.709718,0.768756],"trend_3bar":"ACCELERATING","projected_rvol":4.25064},"flow":{"window_s":30,"trades":536,"trade_rate":17.866667,"buy_vol":147794.0,"sell_vol":278868.0,"unclassified_vol":0.0,"imbalance":-0.307208,"bid":11.3,"ask":11.31,"spread_pct":0.088456,"quote_size_imbalance":null,"quote_age_s":0.051683},"context":{"vwap":11.262329,"price_vs_vwap_pct":0.378884,"ema9":11.202215,"ema20":11.181965,"ema_stack":true,"ema_warm":true,"hod":11.48,"dist_to_hod_pct":-1.52439,"dist_to_hod_atr":2.434312,"atr":0.071889,"spread_atr":0.139104,"own_change_pct":0.174994,"rel_strength_pct":{"SPY":0.206023,"IWM":0.252089}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-1,"accel":2,"momentum":-1,"imbalance":-2},"missing":[],"volume_pressure":-0.236168},"shadow":{"decision":"FAIL","failed":["vas","imbalance","bar_rvol"],"missing":[],"rules":{"vas":false,"imbalance":false,"bar_rvol":false,"spread":true,"rel_strength":true,"not_decelerating":true}}}
{"type":"snapshot","id":"0b23960661d2","ts":"2026-09-15T19:14:50+00:00","symbol":"ALMU","event":"WAIT","bot":{"state":"WAIT","reason":"holding 0.0s / 18s","plan":{"state":"PASS","setup":"","stop":12.7277,"target":13.0061,"target_label":"ceiling","reward_risk":0.54,"pos_in_5d_range_pct":43.9,"room_to_5d_high_atr":1.16},"price":12.9085,"vwap":12.8987,"ext_from_open_pct":-1.08,"max_ext_allowed_pct":4.0,"volume_pace":0.701,"trend":"flat","recent_slope_pct":0.052,"volatility":"medium"},"price":12.9085,"volume":{"bars":342,"last_bar_volume":189.0,"baseline_avg":1425.45,"bar_rvol":0.13259,"raw_accel":-0.826764,"smooth_accel":-0.555905,"accel_momentum":-0.053679,"rvol_3bar":[0.675257,0.74291,0.13259],"trend_3bar":"MIXED","projected_rvol":0.569083},"flow":{"window_s":30,"trades":12,"trade_rate":0.4,"buy_vol":527.0,"sell_vol":113.0,"unclassified_vol":0.0,"imbalance":0.646875,"bid":12.88,"ask":12.94,"spread_pct":0.464756,"quote_size_imbalance":null,"quote_age_s":0.208944},"context":{"vwap":12.898692,"price_vs_vwap_pct":0.076037,"ema9":12.892436,"ema20":12.886981,"ema_stack":true,"ema_warm":true,"hod":13.31,"dist_to_hod_pct":-3.016529,"dist_to_hod_atr":9.854355,"atr":0.040743,"spread_atr":1.472631,"own_change_pct":-0.232019,"rel_strength_pct":{"SPY":-0.200989,"IWM":-0.154923}},"vas":{"raw":-2,"score":3.1,"components":{"rvol":-2,"accel":-2,"momentum":0,"imbalance":2},"missing":[],"volume_pressure":0.085769},"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}}}
