现在情景如下:
在一个工作区内,对同一个品种合约开启了3个策略单元。这些策略都只能开多仓。在开启策略的时刻,账户在该品种合约上是0持仓的状态。
此刻,策略A,策略B显示,根据历史信号,都是在几天前就开了多单,现在是多单持有的状态。策略C是空仓状态。那么在不同步策略持仓的条件下,接下来发生的事情是,策略A,策略B在有平仓信号的时候会发出平仓指令,但因为账户没有持仓会显示平仓失败。策略C在有多单信号的时候会发出多单信号,正常建仓。
我的需求是:
1.当策略开始运行的时候,每个策略单元都会检查目前的账户持仓。若现在账户持仓是0,则不管策略的历史信号是否为多单持有的状态,都能够按照触发开仓条件时,正常开仓。
2. 进阶版。假设每个策略的开仓数量为3手。目前,账户该合约持有2手。那么在策略A,B,C分别触发信号的时候,能够在一个策略上开仓1手,其他2个策略上正常各自开仓3手。
有老师能帮忙提供一下思路么?感谢!
建议不要再纠结历史信号了,都是前几天的开仓,再补能按原来的价格补得回来吗,不会再重现了,建议你策略运行加入时间条件对历史信号进行清空,等待下次开仓信号,简单一点
“加入时间条件对历史信号进行清空”,这个是如何操作的呢?