from tqsdk import TqApi, TqAuth, TqAccount, TargetPosTask import datetime import pandas as pd # api = TqApi(TqAccount("H海通期货", "320102", "123456"), auth=TqAuth("信易账户", "账户密码")) api = TqApi(auth=TqAuth("account", "pwd")) # 获得 i2209 tick序列的引用 # ticks = api.get_tick_serial("DCE.i2209") # 获得 i2209 10秒K线的引用 symbol = ['DCE.i2209'] klines = api.get_kline_serial(symbol, 60, 30) print(datetime.datetime.fromtimestamp(klines.iloc[-1]["datetime"] / 1e9)) pd.set_option('display.max_columns', None) while True: api.wait_update() if api.is_changing(klines.iloc[-1], "datetime"): klines_close = klines.filter(regex='(datetime)|close\d*$').copy() klines_close = klines.copy() datetime_format = datetime.datetime.fromtimestamp(klines_close.iloc[-1]["datetime"] / 1e9) print('新K线触发:', datetime_format) klines_close['datetime'] = klines_close['datetime'].apply(lambda x: datetime.datetime.fromtimestamp(x / 1e9)) print('klines_close:', klines_close)
李思恒 已回答的问题 2022年8月10日
因为你一变化的时候就取,这时候是没有数据的,我们的K线是连续的,open=上一根的close,这时候高开低收都是这个open的价格。最后你的截图好像有账号密码,如果是你的话记得删帖
李思恒 已回答的问题 2022年8月10日