Exemplo n.º 1
0
    def _create_symbol_threads_managers(self, exchange, symbol_evaluator):

        if Backtesting.enabled(self.config):
            real_time_ta_eval_list = []
        else:
            # Create real time TA evaluators
            real_time_ta_eval_list = EvaluatorCreator.create_real_time_ta_evals(
                self.config, exchange, symbol_evaluator.get_symbol(),
                self.relevant_evaluators)
        symbol_time_frame_updater_thread = SymbolTimeFramesDataUpdaterThread()
        for time_frame in self.time_frames:
            if exchange.get_exchange_manager().time_frame_exists(
                    time_frame.value, symbol_evaluator.get_symbol()):
                self.symbol_threads_manager[
                    time_frame] = EvaluatorThreadsManager(
                        self.config, time_frame,
                        symbol_time_frame_updater_thread, symbol_evaluator,
                        exchange,
                        self.exchange_trading_modes[exchange.get_name()],
                        real_time_ta_eval_list, self.relevant_evaluators)
            else:
                self.logger.warning(
                    f"{exchange.get_name()} exchange is not supporting the required time frame: "
                    f"'{time_frame.value}' for {symbol_evaluator.get_symbol()}."
                )
        self.symbol_time_frame_updater_threads.append(
            symbol_time_frame_updater_thread)
Exemplo n.º 2
0
    def _create_symbol_threads_managers(self, exchange, symbol_evaluator,
                                        global_price_updater):

        if Backtesting.enabled(self.config):
            real_time_ta_eval_list = []
        else:
            # Create real time TA evaluators
            real_time_ta_eval_list = EvaluatorCreator.create_real_time_ta_evals(
                self.config, exchange, symbol_evaluator.get_symbol(),
                self.relevant_evaluators)
            self.real_time_eval_tasks = self.real_time_eval_tasks + real_time_ta_eval_list

        for time_frame in self.time_frames:
            if exchange.get_exchange_manager().time_frame_exists(
                    time_frame.value, symbol_evaluator.get_symbol()):
                self.symbol_tasks_manager[time_frame] = \
                    EvaluatorTaskManager(self.config,
                                         time_frame,
                                         global_price_updater,
                                         symbol_evaluator,
                                         exchange,
                                         self.exchange_trading_modes[exchange.get_name()],
                                         real_time_ta_eval_list,
                                         self.async_loop,
                                         self.relevant_evaluators)
            else:
                self.logger.warning(
                    f"{exchange.get_name()} exchange is not supporting the required time frame: "
                    f"'{time_frame.value}' for {symbol_evaluator.get_symbol()}."
                )
Exemplo n.º 3
0
 def create_symbol_threads_managers(self, symbol, exchange,
                                    symbol_evaluator):
     # Create real time TA evaluators
     real_time_ta_eval_list = EvaluatorCreator.create_real_time_ta_evals(
         self.config, exchange, symbol)
     for time_frame in self.time_frames:
         if exchange.time_frame_exists(time_frame.value):
             self.symbols_threads_manager.append(
                 EvaluatorThreadsManager(self.config, symbol, time_frame,
                                         symbol_evaluator, exchange,
                                         real_time_ta_eval_list))
Exemplo n.º 4
0
 def _create_symbol_threads_managers(self, symbol, exchange,
                                     symbol_evaluator):
     # Create real time TA evaluators
     real_time_ta_eval_list = EvaluatorCreator.create_real_time_ta_evals(
         self.config, exchange, symbol)
     symbol_time_frame_updater_thread = SymbolTimeFramesDataUpdaterThread()
     for time_frame in self.time_frames:
         if exchange.time_frame_exists(time_frame.value):
             self.symbol_threads_manager[
                 time_frame] = EvaluatorThreadsManager(
                     self.config, symbol, time_frame,
                     symbol_time_frame_updater_thread, symbol_evaluator,
                     exchange, real_time_ta_eval_list)
     self.symbol_time_frame_updater_threads.append(
         symbol_time_frame_updater_thread)
Exemplo n.º 5
0
 def _create_symbol_threads_managers(self, symbol, exchange, symbol_evaluator):
     # Create real time TA evaluators
     real_time_ta_eval_list = EvaluatorCreator.create_real_time_ta_evals(self.config,
                                                                         exchange,
                                                                         symbol)
     symbol_time_frame_updater_thread = SymbolTimeFramesDataUpdaterThread()
     for time_frame in self.time_frames:
         if exchange.time_frame_exists(time_frame.value):
             self.symbol_threads_manager[time_frame] = EvaluatorThreadsManager(self.config,
                                                                               symbol,
                                                                               time_frame,
                                                                               symbol_time_frame_updater_thread,
                                                                               symbol_evaluator,
                                                                               exchange,
                                                                               real_time_ta_eval_list)
     self.symbol_time_frame_updater_threads.append(symbol_time_frame_updater_thread)
Exemplo n.º 6
0
 def _create_real_time_ta_evaluators(self, exchange, symbol_evaluator):
     return EvaluatorCreator.create_real_time_ta_evals(
         self.octobot.get_config(), exchange, symbol_evaluator.get_symbol(),
         self.octobot.get_relevant_evaluators(), self.dispatchers_list)