def testSecurityMovingPositiveAverage(self): window = 10 ma1 = SecurityMovingPositiveAverage(window, ['close']) for i in range(len(self.aapl['close'])): data = {'aapl': {'close': self.aapl['close'][i], 'open': self.aapl['open'][i]}} data['ibm'] = {'close': self.ibm['close'][i], 'open': self.ibm['open'][i]} ma1.push(data) if i < 10: start = 0 else: start = i + 1 - window value = ma1.value for name in value.index: sampled = list(filter(lambda x: x > 0, self.dataSet[name]['close'][start:(i + 1)])) if len(sampled) > 0: expected = np.mean(sampled) else: expected = 0.0 calculated = value[name] self.assertAlmostEqual(expected, calculated, 12, 'at index {0}\n' 'expected: {1:.12f}\n' 'calculated: {2:.12f}'.format(i, expected, calculated)) with self.assertRaises(ValueError): _ = SecurityMovingPositiveAverage(window, ['close', 'open'])
def testSecurityMovingPositiveAverage(self): window = 10 ma1 = SecurityMovingPositiveAverage(window, ['close']) for i in range(len(self.aapl['close'])): data = dict(aapl=dict(close=self.aapl['close'][i], open=self.aapl['open'][i]), ibm=dict(close=self.ibm['close'][i], open=self.ibm['open'][i])) ma1.push(data) if i < window: start = 0 else: start = i + 1 - window value = ma1.value for name in value.index(): sampled = list( filter(lambda x: x > 0, self.dataSet[name]['close'][start:(i + 1)])) if len(sampled) > 0: expected = np.mean(sampled) else: expected = 0.0 calculated = value[name] self.assertAlmostEqual( expected, calculated, 12, 'at index {0}\n' 'expected: {1:.12f}\n' 'calculated: {2:.12f}'.format(i, expected, calculated))
def testSecurityMovingPositiveAverage(self): window = 10 ma1 = SecurityMovingPositiveAverage(window, ['close'], ['aapl', 'ibm']) for i in range(len(self.aapl['close'])): data = { 'aapl': { 'close': self.aapl['close'][i], 'open': self.aapl['open'][i] } } data['ibm'] = { 'close': self.ibm['close'][i], 'open': self.ibm['open'][i] } ma1.push(data) if i < 10: start = 0 else: start = i + 1 - window value = ma1.value for name in value.index: sampled = list( filter(lambda x: x > 0, self.dataSet[name]['close'][start:(i + 1)])) if len(sampled) > 0: expected = np.mean(sampled) else: expected = 0.0 calculated = value[name] self.assertAlmostEqual( expected, calculated, 12, 'at index {0}\n' 'expected: {1:.12f}\n' 'calculated: {2:.12f}'.format(i, expected, calculated)) with self.assertRaises(ValueError): _ = SecurityMovingPositiveAverage(window, ['close', 'open'], ['aapl', 'ibm'])