The class field that tracks the current month is updated only if there are securities that passed the selection criteria. It prevents division by zero and allows the universe selection a new attempt on the next trading day while keeps the universe unchanged
- We will now check if python selection method returned `Universe.Unchanged`
- Removing `ToList()` call on fine and coarse data before sending it to
the python algorithm
- Adding regression algorithms
- ConstituentsQC500GeneratorAlgorithm:
- Change monthly flag to be consistent with Selection Model that cannot use Schedule events.
- Use a Dictionary keyed by `Symbol` instead of `string`.
- Selector functions return `Universe.Unchanged` instead of empty list;
-Refactoring and more informative logging.
- QC500UniverseSelectionModel
- SelectFine methods were performing all the logics every day and it should be only once per month
- Log and return `Universe.Unchanged` before division by zero if universe drops to zero members after filtering before selection by sector.
- Refactoring