Exemple #1
0
    def __init__(self, config, trader):
        super().__init__()
        self.config = config
        self.trader = trader
        self.portfolio = trader.get_portfolio()
        self.exchange = trader.get_exchange()
        self.logger = get_logger(
            f"{self.__class__.__name__}[{self.exchange.get_name()}]")

        self.trade_history = []
        self.profitability = 0
        self.profitability_percent = 0
        self.profitability_diff = 0

        self.currencies_last_prices = {}
        self.origin_crypto_currencies_values = {}
        self.current_crypto_currencies_values = {}
        self.origin_portfolio = None

        # buffer of currencies excluding market only used currencies ex: conf = btc/usd, eth/btc, ltc/btc, here usd
        # is market only => not used to compute market average profitability
        self.traded_currencies_without_market_specific = set()

        # buffer of currencies containing currencies that have already been logged as without matching symbol
        # (used not to spam logs)
        self.already_informed_no_matching_symbol_currency = set()

        self.portfolio_origin_value = 0
        self.portfolio_current_value = 0
        self.trades_value = 0

        self.reference_market = ConfigManager.get_reference_market(self.config)
Exemple #2
0
def get_reference_market():
    global reference_market
    if reference_market is None:
        try:
            reference_market = ConfigManager.get_reference_market(
                global_config)
        except StopIteration:
            reference_market = None
    return reference_market
 def __init__(self, octobot):
     self.octobot = octobot
     self.edited_config = octobot.edited_config
     self.enabled = ConfigManager.get_metrics_enabled(self.edited_config)
     self.bot_id = self._init_config_bot_id(self.edited_config)
     self.reference_market = ConfigManager.get_reference_market(
         self.edited_config)
     self.logger = get_logger(self.__class__.__name__)
     self.current_config = None
     self.keep_running = True
     self.session = octobot.get_aiohttp_session()
     self.has_real_trader = ConfigManager.get_trader_enabled(
         self.edited_config)
def test_get_reference_market():
    config = load_config("tests/static/config.json")
    assert ConfigManager.get_reference_market(config) == DEFAULT_REFERENCE_MARKET

    config[CONFIG_TRADING][CONFIG_TRADER_REFERENCE_MARKET] = "ETH"
    assert ConfigManager.get_reference_market(config) == "ETH"