def __init__(self, settings): PriceVolumeDailyTrigger.__init__(self, settings) self.mingap = settings.getfloat("BulkowskiGapDailyTrigger", "mingap") self.open = AdjustedOpen() self.close = AdjustedClose() self.lastClose = HistoricMetric(self.close, 1) self.sma = SimpleMovingAverage(metric=self.close, period=50) self.lastsma = HistoricMetric(self.sma, 1) self._addMetrics(self.open, self.close, self.lastClose, self.sma, self.lastsma)
def check(self): if PriceVolumeDailyTrigger.check(self): if self.lastClose.value() > 0 and self.open.value() > 0: gap = (self.lastClose.value() - self.open.value())/self.lastClose.value() if gap >= self.mingap: return True return False