Esempio n. 1
0
 def __can_pattern_be_added_to_list_after_checking_next_ticks__(
         self, pattern: Pattern):
     tick_last = pattern.function_cont.tick_last
     pos_start = tick_last.position + 1
     number_of_positions = pattern.function_cont.number_of_positions
     counter = 0
     can_pattern_be_added = True
     for pos in range(pos_start, self.df_length):
         counter += 1
         next_tick = WaveTick(self.df.loc[pos])
         break_loop = self.__check_for_loop_break__(pattern, counter,
                                                    number_of_positions,
                                                    next_tick)
         if break_loop:
             can_pattern_be_added = False
             if pattern.breakout is None:  # we want to have the last tick before breakout
                 tick_last = next_tick
             break
         if pattern.breakout is None:
             pattern.function_cont.adjust_functions_when_required(next_tick)
             if pattern.function_cont.is_tick_breakout(
                     next_tick):  # online we have other checks... ToDo...
                 pattern_breakout = pattern.get_pattern_breakout(
                     tick_last, next_tick, False)
                 if pattern_breakout.is_breakout_a_signal(
                 ) or pattern_breakout.breakout_direction == FD.DESC:
                     pattern.function_cont.tick_for_breakout = next_tick
                     pattern.breakout = pattern_breakout
         if pattern.breakout is None:  # we want to have the last tick before breakout
             tick_last = next_tick
     pattern.function_cont.add_tick_from_main_df_to_df(self.df, tick_last)
     return can_pattern_be_added