9 EMA engine self-test 2026-10-14T11:44:08.271Z [PASS] two sessions of 78 five-minute bars; the 9 EMA runs over both sessions (no reset at the open) [PASS] the VWAP restarts with the session [PASS] pullback long: previous close above VWAP and 9 EMA, rising 9 EMA, the bar dips to it and closes back above both: bar 45 2024-01-03 13:20 [PASS] the stop is one tick below the VWAP at the signal bar; entry at the next minute open [PASS] first bar of a session gives no signal, nor the last [PASS] E9-VWAP long: out at the next open after the first bar closing below the 9 EMA [PASS] the stop is checked on every minute, also the entry minute [PASS] a stop gapped through fills at the open [PASS] costs: $15.76 a round trip, $20 a point [PASS] E9-X20: an opposite cross closes the trade and opens the next at the same minute [PASS] the stop is one tick beyond the 20 EMA at the cross bar [PASS] early close: the 29 Nov 2024 session ends at 13:15 [PASS] synthetic E9-VWAP-M5: engine and re-implementation agree trade by trade: 174 vs 174, 0 differences [PASS] synthetic E9-VWAP-M15: engine and re-implementation agree trade by trade: 62 vs 62, 0 differences [PASS] synthetic E9-X20-M5: engine and re-implementation agree trade by trade: 135 vs 135, 0 differences real data: 2373779 minutes, 2020-01-01 18:01 .. 2026-09-25 17:00 New York (stamps at the minute's close) [PASS] 5-minute session bars, VWAP and both EMAs equal a naive recomputation: 133233 bars, 0 bar or VWAP differences, 0 EMA differences [PASS] E9-VWAP-M5: engine and independent re-implementation agree trade by trade: 10446 vs 10446 trades, 0 differences [PASS] E9-VWAP-M5: control at offset 0 reproduces the real trades: 10446 of 10446, 0 differences [PASS] E9-X20-M5: engine and independent re-implementation agree trade by trade: 5359 vs 5359 trades, 0 differences [PASS] E9-X20-M5: control at offset 0 reproduces the real trades: 5359 of 5359, 0 differences [PASS] 15-minute session bars, VWAP and both EMAs equal a naive recomputation: 44417 bars, 0 bar or VWAP differences, 0 EMA differences [PASS] E9-VWAP-M15: engine and independent re-implementation agree trade by trade: 3944 vs 3944 trades, 0 differences [PASS] E9-VWAP-M15: control at offset 0 reproduces the real trades: 3944 of 3944, 0 differences PASSED