EngineMarket Data

Sessions and timezones

Interpret market timestamps and understand runtime-specific session filtering.

Keep absolute timestamps separate from session-local clock rules and display formatting. The same instant can have different displayed dates in different timezones without representing a different market observation.

Record the timezone with the run

Agent Lab labels its start and end inputs UTC and stores the timezone setting separately. Record both. Do not enter local wall-clock values into UTC-labeled fields and expect the session timezone to reinterpret them.

Use a named timezone supported by the runtime rather than assuming a fixed UTC offset describes an exchange throughout the year. Daylight-saving transitions can change the relationship between a session's local opening time and UTC.

Historical session gates

The memory loop interprets time through the configured session timezone. Regular-hours settings and other loop time rules can skip periods before SJS is invoked.

For covered CME futures and dates, it also consults the engine's session calendar gate, including closed periods and closing behavior. Uncovered cases retain fallback rules. Do not treat those fallbacks as a complete holiday calendar for every venue.

A stored bar outside the eligible processing window does not establish that strategy logic will run on it. Conversely, a gap in probe output does not prove the underlying data is absent.

Overnight sessions

A futures session can cross a calendar-day boundary. A date change on the chart does not necessarily identify a new trading session. Define daily counters and resets using the session convention your strategy actually needs.

Session transitions can also interact with closing positions and skipping to the next open. Document these alongside entry rules when interpreting a backtest; they are not merely chart formatting options.

Investigate a boundary

Choose a short window spanning the unexpected boundary. Compare the raw timestamps, configured timezone, instrument, regular-hours setting, and frames logged by the diagnostic. Check whether a session gate or cadence rule explains the first missing frame before changing strategy code.

Continue with warmup and readiness.

On this page