def testOlderDateTime(self): """append should fail with candle input that has an older datetime than the most recently processed candle """ s = Atr(4) testInput = inputValues[:8] for c in testInput: s.append(c) self.assertRaises(InvalidDateTimeError, s.append, inputValues[4])
def testOutputKnownValues(self): """Atr calculation should give known result with known input results are rounded by str representation of floats """ s = Atr(4) knownvalues = [None, None, None, 12.24, 12.372, 12.3032, 12.26992, 12.225952] for c in inputValues[:8]: s.append(c) for i in range(len(s.output)): self.assertEqual(str(s.output[i]), str(knownvalues[i]))
def testOutputKnownValues(self): """Atr calculation should give known result with known input results are rounded by str representation of floats """ s = Atr(4) knownvalues = [ None, None, None, 12.24, 12.372, 12.3032, 12.26992, 12.225952 ] for c in inputValues[:8]: s.append(c) for i in range(len(s.output)): self.assertEqual(str(s.output[i]), str(knownvalues[i]))
from ta.Atr import * import datetime import random ind = Atr(12) d = datetime.datetime(2005, 1, 1, 9, 30) td = datetime.timedelta(0, 1) close = 12.20 nrofticks = int(60 * 60 * 6.5) # one market day with one tick every second start = datetime.datetime.now() for x in xrange(nrofticks): c = (d, close+0.01, close+0.04, close-0.10, close, 20192812) ind.append(c) d = d + td if (random.random() > 0.4): close = close + random.random()/2 else: close = close - random.random()/2 end = datetime.datetime.now() diff = end - start dfsec = float("" + str(diff.seconds) + "." + str(diff.microseconds)) print "Inserting %s candles in Atr indicator took %s seconds. %s candles per second." % (nrofticks, dfsec, nrofticks / dfsec)
from ta.Atr import * import datetime import random ind = Atr(12) d = datetime.datetime(2005, 1, 1, 9, 30) td = datetime.timedelta(0, 1) close = 12.20 nrofticks = int(60 * 60 * 6.5) # one market day with one tick every second start = datetime.datetime.now() for x in range(nrofticks): c = (d, close + 0.01, close + 0.04, close - 0.10, close, 20192812) ind.append(c) d = d + td if (random.random() > 0.4): close = close + random.random() / 2 else: close = close - random.random() / 2 end = datetime.datetime.now() diff = end - start dfsec = float("" + str(diff.seconds) + "." + str(diff.microseconds)) print( "Inserting %s candles in Atr indicator took %s seconds. %s candles per second." % (nrofticks, dfsec, nrofticks / dfsec))