我在期货公司的手机APP上手动平掉了策略开的仓位,然后重启station软件之后,策略界面显示持仓还在,请问是怎么回事?怎么才能清掉持仓?
我在期货公司的手机APP上手动平掉了策略开的仓位,然后重启station软件之后,策略界面显示持仓还在,请问是怎么回事?怎么才能清掉持仓?
你遇到的问题是:在期货公司的手机APP上手动平仓了策略开的仓位,但重启 VeighNa Station 后,策略界面仍然显示持仓未变。
这个问题在 VeighNa 的 CTA 策略模块中是正常现象,原因如下:
VeighNa 的 CTA 策略模块中,策略的 pos
变量表示的是策略的逻辑持仓,它是根据策略的交易逻辑(如开仓、平仓成交回报)来更新的。
它不会自动同步账户的实际持仓,也就是说:
on_trade
回调;pos
不会自动更新;pos
,所以显示持仓还在。策略的持仓信息保存在以下路径的 json 文件中:
Windows:
C:\Users\<用户名>\.vntrader\cta_strategy_data.json
Mac/Linux:
~/.vntrader/cta_strategy_data.json
重启 VeighNa 后,策略会从这个文件中加载上次保存的持仓数据(包括 pos
),所以即使你手动平仓了,策略界面仍然显示原来的持仓。
pos
设置为 0;pos
就会被清空;cta_strategy_data.json
文件;"pos": xx
改为 "pos": 0
;为了避免类似问题,建议:
如果你需要我帮你检查你的策略配置或 json 文件内容,也可以贴出来,我可以帮你分析。