Steps to replicate:
1) Open a new Chart
2) Select YM ##-## as the data source.
3) Choose 120 minute bars.
4) Choose Custom range of 1/1/2018 to 1/1/2020.
5) Choose Trading Hours template "CBOE US Index Futures RTH" <-- (8:30am - 3:15pm)
6) Uncheck Break at EOD
Starting with 1/1/2018, observe the bar times at the end of each day. For the first several days it all behaves as I would expect. If a full bar cannot be completed in a session, the last bar of the session will have whatever the time is of the last bar that fully fits in the session.
For example, suppose the last bar of the session ends at 2:30pm, 45 minutes before the 3:15pm session close.
On the next session/day, the bar time of the first bar is 9:45am, because it includes the 45 min from the previous session and adds another 1hr 15min to the 8:30am session open. This forms a bar that consists of 120 minutes total and spans the session break.
So far, this is what I would expect.
But as you continue forward in time on the data series, eventually (within 5 to 20 days), you get to a bar whose time is exactly 3:15pm, the exact end of a session. One would expect the next bar to begin at 8:30am of the next session and end at 10:30am. So, the first bar of the next session should have a time of 10:30am.
But instead, from here on out, every first bar of the session has a time of 9:15am (only 45min after the open). And the last bar of the session is at 3:15pm. The same thing repeats for the rest of the data series.
Notes:
* I purged all historical data and tried again and got the same behavior.
* I quit NT, rebooted and still got the same behavior.
* Same problem with 60min bars (Within a few days the first bar of each session is 9:15am, a 45min bar, and the last bar of each session is 3:15pm)
* Same problem with 20min bars. (Within a few days the first bar of each session is 8:35am, a 5min bar, and the last bar of each session is 3:15pm)
* This did NOT happen with 17min or 21min bars. They worked as I'd expect.
Hoping you can replicate this behavior or explain why it behaves this way.
Thanks,

Comment