diff --git a/tests/finance/test_slippage.py b/tests/finance/test_slippage.py index 7f0871cc..403d8b46 100644 --- a/tests/finance/test_slippage.py +++ b/tests/finance/test_slippage.py @@ -329,7 +329,7 @@ class SlippageTestCase(TestCase): slippage_model = VolumeShareSlippage() try: - _, txn = slippage_model.simulate(event, [order]).next() + _, txn = next(slippage_model.simulate(event, [order])) except StopIteration: txn = None diff --git a/tests/test_events_through_risk.py b/tests/test_events_through_risk.py index 6026c4ad..5e141ca0 100644 --- a/tests/test_events_through_risk.py +++ b/tests/test_events_through_risk.py @@ -293,7 +293,7 @@ class TestEventsThroughRisk(unittest.TestCase): crm = algo.perf_tracker.cumulative_risk_metrics - first_msg = gen.next() + first_msg = next(gen) self.assertIsNotNone(first_msg, "There should be a message emitted.") @@ -310,7 +310,7 @@ class TestEventsThroughRisk(unittest.TestCase): crm.metrics.algorithm_volatility[algo.datetime.date()], "On the first day algorithm volatility does not exist.") - second_msg = gen.next() + second_msg = next(gen) self.assertIsNotNone(second_msg, "There should be a message " "emitted.") @@ -325,7 +325,7 @@ class TestEventsThroughRisk(unittest.TestCase): crm.algorithm_returns[-1], decimal=6) - third_msg = gen.next() + third_msg = next(gen) self.assertEqual(1, len(algo.portfolio.positions), "Number of positions should stay the same.") diff --git a/tests/test_sources.py b/tests/test_sources.py index d801a025..1ba2e937 100644 --- a/tests/test_sources.py +++ b/tests/test_sources.py @@ -31,7 +31,7 @@ class TestDataFrameSource(TestCase): assert isinstance(source.end, pd.lib.Timestamp) for expected_dt, expected_price in df.iterrows(): - sid0 = source.next() + sid0 = next(source) assert expected_dt == sid0.dt assert expected_price[0] == sid0.price @@ -74,4 +74,4 @@ class TestDataFrameSource(TestCase): for check_field in check_fields: self.assertIn(check_field, event) self.assertTrue(isinstance(event['volume'], (integer_types))) - self.assertEqual(stocks_iter.next(), event['sid']) + self.assertEqual(next(stocks_iter), event['sid']) diff --git a/zipline/sources/data_source.py b/zipline/sources/data_source.py index 3b2c21ba..96461d8f 100644 --- a/zipline/sources/data_source.py +++ b/zipline/sources/data_source.py @@ -62,3 +62,6 @@ class DataSource(object): def next(self): return self.mapped_data.next() + + def __next__(self): + return next(self.mapped_data) diff --git a/zipline/sources/test_source.py b/zipline/sources/test_source.py index 2380e6c1..a25cec90 100644 --- a/zipline/sources/test_source.py +++ b/zipline/sources/test_source.py @@ -166,6 +166,9 @@ class SpecificEquityTrades(object): def next(self): return self.generator.next() + def __next__(self): + return next(self.generator) + def rewind(self): self.generator = self.create_fresh_generator()