TypeError:float()参数必须是字符串或数字,而不是';dict';用Python
我正在尝试购买robinhood_stock API。我需要把价格转换成本地号码。我正在使用Jupyter笔记本电脑 这应该是非常简单的,但我仍然失败,我想出售我目前拥有的全部金额TypeError:float()参数必须是字符串或数字,而不是';dict';用Python,python,jupyter-notebook,round-robin,Python,Jupyter Notebook,Round Robin,我正在尝试购买robinhood_stock API。我需要把价格转换成本地号码。我正在使用Jupyter笔记本电脑 这应该是非常简单的,但我仍然失败,我想出售我目前拥有的全部金额 #Initiate our scheduler so we can keep checking every minute for new price changes s = sched.scheduler(time.time, time.sleep) RQ = r.crypto.get_crypto_quo
#Initiate our scheduler so we can keep checking every minute for new price changes
s = sched.scheduler(time.time, time.sleep)
RQ = r.crypto.get_crypto_quote('ETH', info=None)
hqA = (RQ['ask_price'])
hqBid= (RQ['bid_price'])
def run(sc):
RQ = r.crypto.get_crypto_quote('ETH', info=None)
ME = r.profiles.load_account_profile(info=None)
ETH = r.stocks.get_ratings('ETH', info=None)
sell = r.crypto.get_crypto_positions(info='quantity_available')
SELL=(sell[0])
bp= (ME['crypto_buying_power'])
hqM= (RQ['mark_price'])
global enteredTrade
if hqA == hqM or hqA < hqM and SELL != 0:
#Sell $1 worth of Ethereum
r.orders.order_sell_crypto_by_price('ETH', SELL, priceType=None, timeInForce=None)
RQ = r.crypto.get_crypto_quote('ETH', info=None)
print('Sell')
s.cancel(sc)
else:
print('Ask'+hqA+'>='+hqM+'Mark')
print('Stay')
if hqBid == hqM or hqBid > hqM and bp != 0:
#Buy $1 worth of Ethereum
r.orders.order_sell_crypto_by_price('ETH', hqBid, priceType=None, timeInForce=None)
RQ = r.crypto.get_crypto_quote('ETH', info=None)
print("Buy")
s.cancel(sc)
else:
print('Bid'+hqBid+'<='+hqM+'Mark')
print('Stay')
#call this method again every 10 for new price changes
s.enter(1, 1, run, (sc,))
s.enter(1, 1, run, (s,))
s.run()
#启动我们的调度程序,以便我们可以随时检查新的价格变化
s=sched.scheduler(time.time,time.sleep)
RQ=r.crypto.get_crypto_quote('ETH',info=None)
hqA=(RQ[‘要价’)
hqBid=(RQ[投标价格])
def运行(sc):
RQ=r.crypto.get_crypto_quote('ETH',info=None)
ME=r.profiles.load\u account\u profile(信息=None)
ETH=r.stocks.get_评级('ETH',info=None)
sell=r.crypto.get_crypto_positions(info='quantity'u available')
卖出=(卖出[0])
bp=(ME[“加密购买力])
hqM=(RQ[‘标价’)
全球企业贸易
如果hqA==hqM或hqA='+hqM+'Mark')
打印('停留')
如果hqBid==hqM或hqBid>hqM和bp!=0:
#购买价值1美元的以太坊
r、 orders.order\u sell\u crypto\u by\u price('ETH',hqBid,priceType=None,TimeInfo=None)
RQ=r.crypto.get_crypto_quote('ETH',info=None)
打印(“购买”)
s、 取消(sc)
其他:
打印('Bid'+hqBid+'尝试打印sell[0]
并检查结果。其他一切似乎都是正确的
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-9-d758c73dd1c4> in <module>
51 s.enter(5, 1, run, (sc,))
52 s.enter(1, 1, run, (s,))
---> 53 s.run()
~\Anaconda3\lib\sched.py in run(self, blocking)
149 delayfunc(time - now)
150 else:
--> 151 action(*argument, **kwargs)
152 delayfunc(0) # Let other threads run
153
<ipython-input-9-d758c73dd1c4> in run(sc)
29 if hqA == hqM or hqA < hqM and SELL != 0:
30 #Sell $1 worth of Ethereum
---> 31 r.orders.order_sell_crypto_by_price('ETH', str(SELL), priceType=None, timeInForce=None)
32 RQ = r.crypto.get_crypto_quote('ETH', info=None)
33 print('Sell')
~\Anaconda3\lib\site-packages\robin_stocks\helper.py in login_wrapper(*args, **kwargs)
38 raise Exception('{} can only be called when logged in'.format(
39 func.__name__))
---> 40 return(func(*args, **kwargs))
41 return(login_wrapper)
42
~\Anaconda3\lib\site-packages\robin_stocks\orders.py in order_sell_crypto_by_price(symbol, amountInDollars, priceType, timeInForce)
1569 crypto_info = crypto.get_crypto_info(symbol)
1570 price = helper.round_price(crypto.get_crypto_quote_from_id(
-> 1571 crypto_info['id'], info=priceType))
1572 # turn the money amount into decimal number of shares
1573 try:
~\Anaconda3\lib\site-packages\robin_stocks\helper.py in round_price(price)
162
163 """
--> 164 price = float(price)
165 if price <= 1e-2:
166 returnPrice = round(price, 6)
TypeError: float() argument must be a string or a number, not 'dict'