from ChanEnum import Chan_MACD_STATE class ChanMACDUnitTF(): def __init__(self, start_time, start_klu, pre_unittf, dir, start_type): self.start_time = start_time self.end_time = None self.start_klu = start_klu self.end_klu = None self.klu_list = [] self.klu_list.append(start_klu) self.histset_list = [] self.next = None self.pre = pre_unittf self.unittf_dir = dir self.start_type = start_type self.end_type = None self.peak_hist = start_klu.macdhist self.near0_count = 1 def set_next(self, next_unittf): self.next = next_unittf def add_histset(self, histset): self.histset_list.append(histset) histset.set_next(self) def add_klu(self, klu): if klu: self.klu_list.append(klu) klu.set_unittf(self) if klu.macdhist > self.peak_hist: self.peak_hist = klu.macdhist if klu.macd_state == Chan_MACD_STATE.NEAR0 and len(self.histset_list) > 1: #print(self.start_time, klu.time, self.near0_count) self.near0_count += 1 def set_end_klu(self, end_klu, end_type): self.add_klu(end_klu) self.end_type = end_type self.end_klu = end_klu self.end_time = end_klu.time