可以按照portfolio_strategy的示例策略修改迁移过去,不想要put_event就自己删掉就好了
可以参考自带的双均线策略
OES API应该是接的是期权版本吧,股票版本可能要重新编译
在交易组件输入交易所和合约代码,并且按“Enter”键才可订阅行情。
https://www.vnpy.com/docs/cn/quickstart.html#id7
如果“enter”之后没有出现行情,大概率是没有查到该合约名字。订阅前建议由菜单栏的”帮助“->“查询合约”里查一下合约名字
可以在电脑“设置”-“时间和语言”-“日期和时间”处选择一下自己所在的时区
报这个错应该是有时区的datetime和没有时区的datetime相减导致的
应该是超过默认的空闲时间,连接自动断开了,可以修改mysql的超时设置试试
vnstudio默认是装在C:\vnstudio目录下
请问你查询成功之后重启了吗?查询合约就是去self.contracts里取合约信息,那说明是有的,如果重启了还没有的话,建议你去load_contract_data函数下打印一下self.contracts看看
本地没有缓存,限价单的单子是下到交易所了所以重启的时候从交易所查询到了,本地停止单就没下到交易所,关闭之后缓存就清掉了
请认真再检查一下你这句命令,好像和报错那句不是一样的。报错好像是这句C:\vnstudio/python.exe C:\vnstudio/helpers/add_into_sys_path.py,你是C:\vnstudio\python.exe C:\vnstudio\helpers\add_into_sys_path.py
查询成功是指,合约查询窗口里有内容了是吗?
要调用contractDetails函数才能把合约信息放入self.contracts里,才能通过get_contract函数获取信息。
看你的图,名称那里空的,就是vnpy这边还没有信息放进self.contracts里
订阅行情之后,需要点击查询合约(如果订阅了,留空即可)才能把合约信息放进self.contracts里
然后重启vnpy即可
可以开个cmd,在其中执行上述报错的命令,看看输出信息是什么