为了账号安全,请及时绑定邮箱和手机立即绑定

Python:E1136:值“self.exchange.get_portfolio”是不可订阅的

Python:E1136:值“self.exchange.get_portfolio”是不可订阅的

ITMISS 2021-08-14 15:42:18
def get_portfolio(self):        contracts = settings.CONTRACTS        portfolio = {}        for symbol in contracts:            position = self.bitmex.position(symbol=symbol)            instrument = self.bitmex.instrument(symbol=symbol)        if instrument['isQuanto']:            future_type = "Quanto"        elif instrument['isInverse']:            future_type = "Inverse"        elif not instrument['isQuanto'] and not instrument['isInverse']:            future_type = "Linear"        else:            raise NotImplementedError("Unknown future type; not quanto or inverse: %s" % instrument['symbol'])        if instrument['underlyingToSettleMultiplier'] is None:            multiplier = float(instrument['multiplier']) / float(instrument['quoteToSettleMultiplier'])        else:            multiplier = float(instrument['multiplier']) / float(instrument['underlyingToSettleMultiplier'])        portfolio[symbol] = {            "currentQty": float(position['currentQty']),            "futureType": future_type,            "multiplier": multiplier,            "markPrice": float(instrument['markPrice']),            "spot": float(instrument['indicativeSettlePrice'])        }    return portfolioqty = self.exchange.get_portfolio['currentQty']()有人知道我在调用 get_portfolio 函数时做错了什么,因为我不断收到以下错误消息:E1136:Value 'self.exchange.get_portfolio' is unsubscriptable
查看完整描述

2 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

你应该这样做:


qty = self.exchange.get_portfolio()

qty = qty[qty.keys()[0]]['currentQty']

或在一行中:


qty = self.exchange.get_portfolio()[self.exchange.get_portfolio().keys()[0]]['currentQty']



查看完整回答
反对 回复 2021-08-14
  • 2 回答
  • 0 关注
  • 256 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号