Exemple #1
0
    def __init__(self, config, exchange):
        self.exchange = exchange
        self.config = config
        self.risk = None
        self.set_risk(self.config[CONFIG_TRADER][CONFIG_TRADER_RISK])
        self.logger = logging.getLogger(self.__class__.__name__)

        if not hasattr(self, 'simulate'):
            self.simulate = False

        self.enable = self.enabled(self.config)

        self.portfolio = Portfolio(self.config, self)

        self.trades_manager = TradesManager(config, self)

        self.order_manager = OrdersManager(config, self)

        if self.enable:
            if not self.simulate:
                self.update_open_orders()
                # self.update_close_orders()

            self.order_manager.start()
            self.logger.debug("Enabled on " + self.exchange.get_name())
        else:
            self.logger.debug("Disabled on " + self.exchange.get_name())
Exemple #2
0
    def __init__(self, config, exchange, order_refresh_time=None):
        super().__init__()
        self.exchange = exchange
        self.config = config
        self.risk = None
        self.set_risk(self.config[CONFIG_TRADING][CONFIG_TRADER_RISK])

        # logging
        self.trader_type_str = REAL_TRADER_STR
        self.logger = get_logger(self.__class__.__name__)

        if not hasattr(self, 'simulate'):
            self.simulate = False

        self.enable = self.enabled(self.config)

        self.portfolio = Portfolio(self.config, self)

        self.trades_manager = TradesManager(config, self)

        self.order_manager = OrdersManager(config, self)

        self.exchange.get_exchange_manager().register_trader(self)

        self.notifier = EvaluatorNotification(self.config)

        self.trading_modes = []

        if order_refresh_time is not None:
            self.order_manager.set_order_refresh_time(order_refresh_time)
Exemple #3
0
    def initialize_trader(self):
        self.portfolio = Portfolio(self.config, self)

        self.trades_manager = TradesManager(self.config, self)

        self.order_manager = OrdersManager(self.config, self)

        self.exchange.get_exchange_manager().register_trader(self)

        self.notifier = EvaluatorNotification(self.config)

        if self.order_refresh_time is not None:
            self.order_manager.set_order_refresh_time(self.order_refresh_time)
Exemple #4
0
    def __init__(self, config, exchange):
        self.exchange = exchange
        self.config = config
        self.risk = self.config[CONFIG_TRADER][CONFIG_TRADER_RISK]
        self.logger = logging.getLogger(self.__class__.__name__)
        self.simulate = False

        self.portfolio = Portfolio(self.config, self)

        self.trades_manager = TradesManager(config, self)

        self.order_manager = OrdersManager(config, self)
        self.order_manager.start()

        # Debug
        if self.enabled():
            self.logger.debug("Enabled on " + self.exchange.get_name())
        else:
            self.logger.debug("Disabled on " + self.exchange.get_name())
Exemple #5
0
    def __init__(self, config, exchange, order_refresh_time=None):
        self.exchange = exchange
        self.config = config
        self.risk = None
        self.set_risk(self.config[CONFIG_TRADING][CONFIG_TRADER_RISK])

        # logging
        self.trader_type_str = REAL_TRADER_STR
        self.logger = get_logger(self.__class__.__name__)

        if not hasattr(self, 'simulate'):
            self.simulate = False

        self.enable = self.enabled(self.config)

        self.portfolio = Portfolio(self.config, self)

        self.trades_manager = TradesManager(config, self)

        self.order_manager = OrdersManager(config, self)

        self.exchange.get_exchange_manager().register_trader(self)

        if order_refresh_time is not None:
            self.order_manager.set_order_refresh_time(order_refresh_time)

        if self.enable:
            if not self.simulate:
                self.update_open_orders()
                # self.update_close_orders()

                # can current orders received: start using websocket for orders if available
                self.exchange.get_exchange_personal_data().init_orders()

            self.order_manager.start()
            self.logger.debug(f"Enabled on {self.exchange.get_name()}")
        else:
            self.logger.debug(f"Disabled on {self.exchange.get_name()}")