Development ----------- :Release: 1.0.0 :Date: TBD .. warning:: This release is still under active development. All changes listed are subject to change at any time. Highlights ~~~~~~~~~~ None Enhancements ~~~~~~~~~~~~ * Made the data loading classes have more consistent interfaces. This includes the equity bar writers, adjustment writer, and asset db writer. The new interface is that the resource to be written to is passed at construction time and the data to write is provided later to the `write` method as a dataframe. This model allows us to pass these writer objects around as a resource for other classes and functions to consume (:issue:`1109`). * Added masking to :class:`zipline.pipeline.CustomFactor`. Custom factors can now be passed a Filter upon instantiation. This tells the factor to only compute over stocks for which the filter returns True, rather than always computing over the entire universe of stocks. (:issue:`1095`) * Added :class:`zipline.utils.cache.ExpiringCache`. A cache which wraps entries in a :class:`zipline.utils.cache.CachedObject`, which manages expiration of entries based on the `dt` supplied to the `get` method. (:issue:`1130`) * Implemented :class:`zipline.pipeline.factors.RecarrayField`, a new pipeline term designed to be the output type of a CustomFactor with multiple outputs. (:issue:`1119`) * Added optional `outputs` parameter to :class:`zipline.pipeline.CustomFactor`. Custom factors are now capable of computing and returning multiple outputs, each of which are themselves a Factor. (:issue:`1119`) Experimental Features ~~~~~~~~~~~~~~~~~~~~~ .. warning:: Experimental features are subject to change. None Bug Fixes ~~~~~~~~~ None Performance ~~~~~~~~~~~ None Maintenance and Refactorings ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ None Build ~~~~~ None Documentation ~~~~~~~~~~~~~ None Miscellaneous ~~~~~~~~~~~~~ None