1.00K 浏览
0

比如我需要一个扫描全市场多个期货合约,的最新价格、合约乘数、等信息的功能。

用get_quote() 逐个取合约取数据时,当碰到一个当时没有行情数据的期货合约是比如现在的 au2305,那么之后的正常合约上(有行情数据的),get_quote()也不返回数据了,好像这个函数碰到一次无行情数据的合约就 出故障了 不能继续使用了一样。  为什么会这样?如何实现我想要的功能? get_quote() 源代码在哪里看?谢。

import numpy as np
import pandas as pd
from tqsdk import TqApi, TqAuth

api = TqApi(auth=TqAuth(‘xxxx’, ‘xxxx’))

#标的物 期货代码列表
list_udl = [‘SHFE.au2304′,’SHFE.au2305′,’SHFE.cu2304′,’SHFE.cu2305’] #

for udl_symbol in list_udl:
try: udl_quote = api.get_quote(udl_symbol)#return a dict of udl quote
except: print(‘error: api.get_quote() ‘, udl_symbol, ‘ has no quote.’)
else:
print(udl_quote.instrument_name, ‘ ‘,udl_quote.last_price, ‘ ‘,udl_quote.volume_multiple)

api.close()

李思恒 已回答的问题 2023年1月11日
0

源码就是你的本地,可以看本地的库.可以先排除没有行情的合约,或者尽量别用list在不确定之前

李思恒 已回答的问题 2023年1月11日