However for people doing end of day processing this is a big pain. Unless they set CalculateOnBarClose to false, they do not get the latest day's statistics on their charts. You could set CalculateOnBarClose to false but then you will end up with a lot of unneeded calculations being performed. You can not filter that with the FirstTickOBar since that tick never arrives till the next day. For Friday's and weekly bars, this means the first tick on Monday.
With support for sessions in NT7, I think it is time for NT to generate an artificial LastTickOfSession which reports the last price and occurs when the session ends. For all charts tied to the session this will close the current bar and trigger the OnBarUpdate function which can now be used to do EOD processing.
NT is doing the processing to figure out when the session is ending to stop feeding data to the char and when to start feeding data to the chart again when the next session starts. So adding this virtual tick should not require a major architectural overhaul.
Since this special tick will be qualified as the LastTickOfSession any indicator or strategy which would potentially mess up can filter it out.
If backward compatibility for indicators based on existing architecture is affected, NT could add a OnLastTickOfSession function which can be overridden locally in indicators to do endofsession processing. For most indicators this should just trigger the OnBarUpdate function call. In cases where the distinction between the current implementation of the first tick of next bar and the new LastTickOfSession is important, the user can ignore it (not override the OnLastTickOfSession function) or write something custom to handle the situation.
Comment