def get_account_info(self): logger.info( u'---------------------------------------spot account info------------------------------------------------' ) try: accounts = self.API.get_accounts() if accounts.get('status') == 'ok': spot_account = list( filter(lambda x: x["type"] == 'spot', accounts.get("data"))) self.ACCOUNT_ID = spot_account[0].get('id') my_account_info = self.API.get_balance(self.ACCOUNT_ID) symbols = [self.BALANCE_E, self.BALANCE_T] if my_account_info.get('status') == 'ok': data = from_dict(my_account_info, "data", "list") for symbol in symbols: symbol_infos = list( filter(lambda x: x["currency"] == symbol, data)) symbol_info = self.accountInfo[symbol] symbol_info["available"] = float( symbol_infos[0]["balance"]) symbol_info["freezed"] = float( symbol_infos[1]["balance"]) symbol_info["total"] = symbol_info[ "available"] + symbol_info["freezed"] logger_join(symbol.upper(), symbol_info["total"], "available", symbol_info["available"], "freezed", symbol_info["freezed"]) else: self.get_account_info() else: self.get_account_info() except Exception as err: logger.error(err) self.get_account_info()
def get_account_info(self): print( u'---------------------------------------spot account info------------------------------------------------' ) try: my_account_info = okcoinSpot.userinfo() if my_account_info.get('result'): freezed = from_dict(my_account_info, "info", "funds", "freezed") free = from_dict(my_account_info, "info", "funds", "free") print(u"USDT", free["usdt"], "freezed", freezed["usdt"]) print(self.BALANCE_T.upper(), free[self.BALANCE_T], "freezed", freezed[self.BALANCE_T]) else: print("getAccountInfo Fail,Try again!") self.get_account_info() except Exception as err: print(err) self.get_account_info()
def get_coin_num(self, symbol): return from_dict(self.accountInfo, symbol, "available")