def test_universe_persistence(self): universe = Universe('custom', ['zz500']) univ_desc = universe.save() loaded_universe = Universe.load(univ_desc) self.assertEqual(universe.name, loaded_universe.name) self.assertListEqual(universe.base_universe, loaded_universe.base_universe) universe = Universe('custom', ['zz500'], filter_cond=LAST('x') > 1.) univ_desc = universe.save() loaded_universe = Universe.load(univ_desc) self.assertEqual(universe.name, loaded_universe.name) self.assertListEqual(universe.base_universe, loaded_universe.base_universe) self.assertEqual(str(universe.filter_cond), str(loaded_universe.filter_cond))
def load(cls, data_desc: dict): freq = data_desc['freq'] universe = Universe.load(data_desc['universe']) batch = data_desc['batch'] neutralized_risk = data_desc['neutralized_risk'] risk_model = data_desc['risk_model'] pre_process = data_desc['pre_process'] post_process = data_desc['post_process'] warm_start = data_desc['warm_start'] data_source = data_desc['data_source'] return cls(freq=freq, universe=universe, batch=batch, neutralized_risk=neutralized_risk, risk_model=risk_model, pre_process=pre_process, post_process=post_process, warm_start=warm_start, data_source=data_source)