The Session Analyzer is upgraded to define sessions by local market time and to translate those windows into broker/server time with date-aware DST logic. We describe the session model, broker offset treatment, and efficient bar selection, then add a relationship layer that measures temporal overlap, shared price range, range breaks, and size ratios. This provides a clear, reusable basis for session-based research and chart inspection
In Part 1 of this series, we introduced quantitative session analysis by dividing the trading day into fixed broker-server windows and measuring the price activity within them. However, this approach introduces a practical limitation: the same server-time interval may not represent the same local market session throughout the year. As a result, session opening and closing levels, ranges, and overlap measurements can become inconsistent across seasonal clock changes.
The underlying issue is Daylight Saving Time (DST). London and New York change their clocks on different dates, while Tokyo does not observe DST. Although the configured local session hours remain unchanged, their relationship to UTC and the broker's server clock can shift. For MT5 indicators, historical analysis, and backtesting, this means that fixed server-time definitions may include different price bars than the intended local market windows.
To address this limitation, we must shift our approach from asking: "What server-time interval represents this session?"
To asking: "What is the local session definition, and where does that definition fall on the broker's clock for this specific date?"
This article introduces the Universal Session Engine, which defines each session through its local opening and closing hours and a timezone profile. The engine translates these definitions into broker-server timestamps for each occurrence using modeled regional DST rules and the configured broker-offset scheme. These calculated windows then provide the basis for collecting session measurements.
Check out the new article: Developing a Quantitative Session Analysis Tool (Part 2): Building Universal Sessions and Analysing Session Relationships.
In Part 1 of this series, we introduced quantitative session analysis by dividing the trading day into fixed broker-server windows and measuring the price activity within them. However, this approach introduces a practical limitation: the same server-time interval may not represent the same local market session throughout the year. As a result, session opening and closing levels, ranges, and overlap measurements can become inconsistent across seasonal clock changes.
The underlying issue is Daylight Saving Time (DST). London and New York change their clocks on different dates, while Tokyo does not observe DST. Although the configured local session hours remain unchanged, their relationship to UTC and the broker's server clock can shift. For MT5 indicators, historical analysis, and backtesting, this means that fixed server-time definitions may include different price bars than the intended local market windows.
To address this limitation, we must shift our approach from asking: "What server-time interval represents this session?"
To asking: "What is the local session definition, and where does that definition fall on the broker's clock for this specific date?"
This article introduces the Universal Session Engine, which defines each session through its local opening and closing hours and a timezone profile. The engine translates these definitions into broker-server timestamps for each occurrence using modeled regional DST rules and the configured broker-offset scheme. These calculated windows then provide the basis for collecting session measurements.
Author: Francis Nyoike Thumbi