安装用VeighNa Studio来运行吧,你这个报错是都没有安装上
你的leg1_bar获取时候由于没有数据,所以应该是None,对None取datetime就报错了,排查下策略逻辑吧
register_event()函数,已经注册了对价差盘口(行情)变化的监听。
下面补充的一行self.event_engine.register是为了额外加上对价差持仓(交易)变化的监听。
所以这里是正确的。
看这个报错的内容,用Release模式进行编译,不要用Debug试试
剥离到了对应的模块中,比如CTA策略模块剥离到了vnpy_ctastrategy这个模块里,可以在其中看到代码
窗口分辨率最低要1920x1080,缩放100%,看看是不是小了
因为组合类策略更多是中低频的,分钟级已经算是极限的调仓频率了吧,所以用不着多支持StopOrder。
你的虚拟环境少了某个包...不行就用Veighna Studio吧,方便很多
两个方向吧:
要在run.py脚本里,加载上那些你要用的接口
Python新的【类型提示】语法, 英文【type hinting】,搜下就知道了
administrator改为你的windows用户名,另外就是升级到2.9.0试试
删除C:\users\administrator.vntrader\database.db文件,然后重启即可
on_trade下写个print(trade.datetime)就行啊
空是指【卖出】,所以 空 平对应在仓位上是【多头仓位平仓】
欢迎分享呀
导入的时候,本地代码不要加交易所【.CME】的后缀
放到C:\users\administrator\strategies目录即可
主推程序化交易的券商有对应接口支持,比如:中泰、华鑫、东方。
漏了括号:
get_database().save_bar_data(bars)