コード例 #1
0
    def __init__(self, target_currency: str, mm1: MarketManager,
                 mm2: MarketManager, is_test: bool):
        mm1_name = mm1.get_market_name().lower()
        mm2_name = mm2.get_market_name().lower()

        if is_test:
            self.trade_commander_col = SharedMongoClient.get_test_streamer_db(
            )["trade_commander"]
            self.balance_commander_col = SharedMongoClient.get_test_streamer_db(
            )["balance_commander"]
        if not is_test:
            self.trade_commander_col = SharedMongoClient.get_streamer_db(
                target_currency, mm1_name, mm2_name)["trade_commander"]
            self.balance_commander_col = SharedMongoClient.get_streamer_db(
                target_currency, mm1_name, mm2_name)["balance_commander"]

        self.trade_strategy = MCTSAnalyzer.min_coin_tradable_spread_strategy

        super().__init__(mm1, mm2, target_currency)
コード例 #2
0
    def __init__(self, target_currency: str, mm1_name: str, mm2_name: str,
                 start_time: int, end_time: int, is_test: bool):
        self.mm1_name = mm1_name
        self.mm2_name = mm2_name
        self.target_currency = target_currency

        self.start_time = start_time
        self.end_time = end_time

        if is_test:
            self.rfab_ledger_col = SharedMongoClient.get_test_streamer_db(
            )["rfab_ledger"]
            self.transfer_ledger_col = SharedMongoClient.get_test_streamer_db(
            )["transfer_ledger"]
            self.invest_ledger_col = SharedMongoClient.get_test_streamer_db(
            )["invest_ledger"]
        else:
            self.rfab_ledger_col = SharedMongoClient.get_streamer_db(
                target_currency, mm1_name, mm2_name)["rfab_ledger"]
            self.transfer_ledger_col = SharedMongoClient.get_streamer_db(
                target_currency, mm1_name, mm2_name)["transfer_ledger"]
            self.invest_ledger_col = SharedMongoClient.get_streamer_db(
                target_currency, mm1_name, mm2_name)["invest_ledger"]

        try:
            self.file_dir = self.DEFAULT_DIR + '%s_%s_%s_ledger.xlsx' % (
                self.target_currency, self.mm1_name, self.mm2_name)

            # set workbook
            self.target_wb: Workbook = load_workbook(self.file_dir)

            # set worksheet
            self.rfab_ws: Worksheet = self.target_wb.get_sheet_by_name("rfab")
            self.transfer_ws: Worksheet = self.target_wb.get_sheet_by_name(
                "transfer")
            self.invest_ws: Worksheet = self.target_wb.get_sheet_by_name(
                "investment")

        except FileNotFoundError:
            logging.error(
                "Filed Not Found!! Now creating New RFAB ledger xlsx!")
            self.write_new_ledger()
コード例 #3
0
    def __init__(self, target_currency: str, mm1: MarketManager, mm2: MarketManager, is_test: bool):

        # make instance of handler ref
        self.th_instance = Threshold()
        self.cond_instance = Condition()
        self.rec_instance = Recorder()

        # MARKET relevant
        self.mm1 = mm1
        self.mm2 = mm2
        self.is_test = is_test
        self.target_currency = target_currency
        self.mm1_name = self.mm1.get_market_name().lower()
        self.mm2_name = self.mm2.get_market_name().lower()
        self.mm1_krw_bal = float(self.mm1.balance.get_available_coin("krw"))
        self.mm2_krw_bal = float(self.mm2.balance.get_available_coin("krw"))
        self.mm1_coin_bal = float(self.mm1.balance.get_available_coin(target_currency))
        self.mm2_coin_bal = float(self.mm2.balance.get_available_coin(target_currency))

        # steamer init relevant
        if is_test:
            self.streamer_db = SharedMongoClient.get_test_streamer_db()
        if not is_test:
            self.streamer_db = SharedMongoClient.get_streamer_db(self.target_currency, self.mm1_name, self.mm2_name)

        # MCTU relevant
        self.mm1_ob = None
        self.mm2_ob = None
        self.streamer_min_trading_coin = None

        # TIME relevant
        self.streamer_start_time = int(time.time())
        self.ocat_rewind_time = None
        self._bot_start_time = None
        self._settlement_time = None
        self.trading_mode_now_time = None