ticks = api.get_tick_serial("DCE.eg2109") quote = api.get_quote("DCE.eg2109") while True: api.wait_update() if api.is_changing(quote, "bid_price1"): print(ticks.iloc[-1].bid_price1 - ticks.iloc[-2].bid_price1)
需要tick频率的价格变化判断,
以上代码按之前理解打印输出应该是1.0或者-1.0,可是实际输出时还有输出0的情况,
1.这是代表买一价格并没有更新成功吗?
2.是因为quote与tick是不同步的?
尝试过用api.is_changing(ticks, “bid_price1”)以及api.is_changing(ticks.iloc[-1], “bid_price1”)结果输出全部是False。。
3.api.is_changing怎样判断tick里面的某项内容变化?
4.请问怎样查询自己账号下在论坛里的历史记录?
ringo 已回答的问题 2021年7月23日
因为quote和tick并不是在每个截面完全等价你应该判断的是
api.is_changing(tick.iloc[-1],”last_price”):
xxxxxxxx
ringo 已回答的问题 2021年7月23日
更新频率是有一个限制的,最快的就是tick频率约0.5秒,bid_price1并不一定是每个tick都会有变化的,然后关于tick某项可以参考kline的用法,是datafram判断某个值,看看我们文档
silph002 发表新评论 2021年7月23日
如果bid_price1没有变化,上面代码是不是应该就不会进入打印的语句了呢?
是的,按理说是不会满足判断条件的
可是上面这段代码经常会有 0 的输出。。。是为什么呢?
补充,以上代码有时在 bid_price1 实际有变化的情况下,打印输出也是 0,请问是什么原因呢?
另外论坛历史记录已经找到了。。。