I'm trying to fire an event once daily at 3:59:30 PM. I've tried the following to no avail:
// This method does not accept seconds?
self.Schedule.On(self.DateRules.EveryDay(self.symbol),
self.TimeRules.At(15, 59),
Action(self.ThirtySecondsBeforeMarketClose))
// This method fires at 4:00PM instead of 3:59:30 PM
self.Schedule.On(self.DateRules.EveryDay(self.symbol), \
self.TimeRules.BeforeMarketClose(self.symbol, 0.5), \
Action(self.ThirtySecondsBeforeMarketClose))
// This method oddly fires twice at 9:31 AM and once at 3:59:00 PM
self.Schedule.On(self.DateRules.EveryDay(self.symbol), self.TimeRules.Every(timedelta(seconds=(23370))), Action(self.EveryMarketClose))