Given a Coarse and Fine resolution of daily that occurs at 12:00am i.e.

self.UniverseSettings.Resolution = Resolution.Daily self.AddUniverse(self.CoarseSelectionFunction, self.FineSelectionFunction)

How can I optimise this to only filter on the first trading day of the year? My backtests take a really long time because it goes through these Coarse and Fine filter functions every day. 

I only want to rebalance on the first trading day of the year? I know we can use 

self.AddEquity("SPY") self.Schedule.On(self.DateRules.MonthStart("SPY"), self.TimeRules.BeforeMarketOpen("SPY"), self.Rebalance)

to trigger at 9:30am EST. but how can I make sure the Coarse and Fine filters only do heavy computations on the day of my Schedule.On functions (market open trading days)?

Thank you.

Author