diff --git a/zipline/components/merge.py b/zipline/components/merge.py index 2ad64b4a..689ec8cf 100644 --- a/zipline/components/merge.py +++ b/zipline/components/merge.py @@ -50,6 +50,17 @@ class Merge(Aggregate): # Data Flow # --------- + def append(self, event): + """ + :param event: a ndict with one entry. key is the name of the + transform, value is the transformed value. + Add an event to the buffer for the source specified by + source_id. + """ + + self.data_buffer[event.keys()[0]].append(event) + self.received_count += 1 + def next(self): """Get the next merged message from the feed buffer.""" if not (self.is_full() or self.draining): @@ -67,14 +78,3 @@ class Merge(Aggregate): cur = events.pop(0) result.merge(cur) return result - - def append(self, event): - """ - :param event: a ndict with one entry. key is the name of the - transform, value is the transformed value. - Add an event to the buffer for the source specified by - source_id. - """ - - self.data_buffer[event.keys()[0]].append(event) - self.received_count += 1 diff --git a/zipline/finance/movingaverage.py b/zipline/finance/movingaverage.py index ce5b2827..2aee0531 100644 --- a/zipline/finance/movingaverage.py +++ b/zipline/finance/movingaverage.py @@ -5,7 +5,7 @@ from zipline.transforms.base import BaseTransform class MovingAverageTransform(BaseTransform): - def init(self, daycount=3): + def init(self, name, daycount=3): self.daycount = daycount self.by_sid = defaultdict(self._create) diff --git a/zipline/finance/returns.py b/zipline/finance/returns.py index 3077d515..01dfd7fd 100644 --- a/zipline/finance/returns.py +++ b/zipline/finance/returns.py @@ -3,7 +3,7 @@ from zipline.transforms.base import BaseTransform class ReturnsTransform(BaseTransform): - def init(self): + def init(self, name): self.by_sid = defaultdict(self._create) def transform(self, event): diff --git a/zipline/finance/vwap.py b/zipline/finance/vwap.py index 14ea98ad..3b165a71 100644 --- a/zipline/finance/vwap.py +++ b/zipline/finance/vwap.py @@ -6,7 +6,7 @@ from zipline.finance.movingaverage import EventWindow class VWAPTransform(BaseTransform): - def init(self, daycount=3): + def init(self, name, daycount=3): self.daycount = daycount self.by_sid = defaultdict(self.create_vwap) @@ -19,12 +19,12 @@ class VWAPTransform(BaseTransform): def create_vwap(self): return DailyVWAP(self.daycount) -class DailyVWAP: +class DailyVWAP(object): """ A class that tracks the volume weighted average price based on tick updates. """ - def __init__(self, daycount): + def init(self, name, daycount=3): self.window = EventWindow(daycount) self.flux = 0.0 self.volume = 0