query_quotes里未下市的判断采用的时间是行情推进所在的时间还是当前时间呢?
代码如下(其中pool=50)
symbols = boing_knife.query_quotes(ins_class='FUTURE', expired=False, has_night = None) from re import search for b in bans: ban_list=[sy for sy in symbols if search(b, sy)] for sy in ban_list: symbols.remove(sy) from random import sample symbols = sample(symbols,pool) try: boing_knife.get_quote_list(symbols=symbols) except Exception as error: print('ERROR: ', error) quotes = {} futures = {} longs = {} shorts = {} print('\n初始化完毕')
这是初始化代码,get_quote_list会报获取行情超时。
使用获取的get_quote逐个获取也会报超时
for sy in symbols: if not sy in quotes.keys(): try: quotes[sy] = boing_knife.get_quote(symbol=sy) now_f = int(1_000_000_000*datetime.strptime(quotes[sy].datetime.split('.')[0], '%Y-%m-%d %H:%M:%S').timestamp()) except Exception as error: print('ERROR: ', error) continue
李思恒 已回答的问题 2024年3月14日
而且我修改了几次,把回测时间改到非常临近当前时间。他逐条报错时,大部分合约代码在当前时间和回测开始时间(行情所在时间)都是未下市的。