Coverage for qsim.transforms.technical : 24%
Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
|
base.Transform.__init__(self, feed, props, result_address) self.events = []
self.window = datetime.timedelta(days = self.config.get_integer('days'), seconds = self.config.get_integer('seconds'), microseconds = self.config.get_integer('microseconds'), milliseconds = self.config.get_integer('milliseconds'), minutes = self.config.get_integer('minutes'), hours = self.config.get_integer('hours'), weeks = self.config.get_integer('weeks'))
self.events.append(event)
#filter the event list to the window length. self.events = [x for x in self.events if (qutil.parse_date(x['dt']) - qutil.parse_date(event['dt'])) <= self.window]
if(len(self.events) == 0): return 0.0
total = 0.0 for event in self.events: total += event['price']
self.average = total/len(self.events)
self.state['value'] = self.average
return self.state |