From ecd80b88ba18243e44da791517660d7a4238b03b Mon Sep 17 00:00:00 2001 From: twiecki Date: Wed, 26 Mar 2014 17:22:17 +0900 Subject: [PATCH] ENH: Add OHLC to simulated data source --- tests/test_sources.py | 3 --- zipline/sources/simulated.py | 8 +++++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/tests/test_sources.py b/tests/test_sources.py index a99e2db0..10ad80ec 100644 --- a/tests/test_sources.py +++ b/tests/test_sources.py @@ -56,7 +56,6 @@ class TestDataFrameSource(TestCase): self.assertTrue('volume' in event) self.assertTrue('price' in event) self.assertEquals(event['arbitrary'], 1.) - self.assertEquals(event['volume'], 1000) self.assertEquals(event['sid'], 0) self.assertTrue(isinstance(event['volume'], int)) self.assertTrue(isinstance(event['arbitrary'], float)) @@ -102,7 +101,6 @@ class TestRandomWalkSource(TestCase): self.assertLess(event.dt, end) self.assertGreater(event.price, 0, "price should never go negative.") - self.assertEqual(event.volume, 1000) self.assertTrue(13 <= event.dt.hour <= 21, "event.dt.hour == %i, not during market \ hours." % event.dt.hour) @@ -127,7 +125,6 @@ class TestRandomWalkSource(TestCase): self.assertLess(event.dt, end) self.assertGreater(event.price, 0, "price should never go negative.") - self.assertEqual(event.volume, 1000) self.assertTrue(13 <= event.dt.hour <= 21, "event.dt.hour == %i, not during market \ hours." % event.dt.hour) diff --git a/zipline/sources/simulated.py b/zipline/sources/simulated.py index 6db0f5bb..b39d1624 100644 --- a/zipline/sources/simulated.py +++ b/zipline/sources/simulated.py @@ -97,6 +97,9 @@ class RandomWalkSource(DataSource): 'sid': (lambda x: x, 'sid'), 'price': (float, 'price'), 'volume': (int, 'volume'), + 'open_price': (float, 'open_price'), + 'high': (float, 'high'), + 'low': (float, 'low'), } def _gen_next_step(self, x): @@ -111,7 +114,10 @@ class RandomWalkSource(DataSource): 'dt': current_dt, 'sid': sid, 'price': cur_prices[sid], - 'volume': 1000, + 'volume': np.random.randint(1e5, 1e6), + 'open_price': cur_prices[sid], + 'high': cur_prices[sid] + .1, + 'low': cur_prices[sid] - .1, } yield event