最近在simnow上测试买卖功能,从StrategyTemplate继承了一个类,在其中写了一个函数并设断点,当程序运行到断点时做了测试
In[2]: self.buy('zn2205.SHFE', 28480, 1)
Out[2]: ['CTP.3_1133302839_1']
In[5]: self.sell('zn2205.SHFE', 28480, 1)
Out[5]: []
其中buy是成功的,返回了订单号。在gui中看到委托和成交都有变化;但sell就不成功,只返回空的list,gui中也没有变化。
short/cover也做了实验,情况类似,short成功,cover失败。请教原因!
另外我buy成功之后,调用get_all_positions()没有看到刚才buy成功的信息。大概跟踪了一下源码,看到positions是在oms_engine里维护的本地变量,需要一些事件驱动的处理才会更新,我的代码停在断点里,所以看不到。不知道我的理解是否正确?BTW,如果想查询交易所真实的持仓数据要用哪个函数啊?
新手问题,多谢多谢!