开拓者期货期权程序化系统交易论坛

标题: 信号多转空,为什么只平仓而不开仓呢,代码如下 [打印本页]

作者: vip0745    时间: 2018-1-8 11:27:07     标题: 信号多转空,为什么只平仓而不开仓呢,代码如下

本帖最后由 vip0745 于 2018-1-8 11:39 编辑

        If(BarStatus==2){
                // 多
                if (做多条件)
                {
                        BuyToCover(CanOpen, 0);
                        Buy(CanOpen, 0);
                }

                // 空
                if (做空条件)
                {
                        Sell(CanOpen, 0);
                        SellShort(CanOpen, 0);
                }
        }

结果是:如果持有多单出现做空信号的时候只会交多单平掉,并没有相应的开仓空单。反过来也是一样的结果,这是什么问题呢?

[attach]36396[/attach]
作者: vip0745    时间: 2018-1-8 11:46:48

难道平仓和开仓不能在同一个Bar上面进行吗?
作者: 小米    时间: 2018-1-8 13:23:32

vip0745 发表于 2018-1-8 11:46
难道平仓和开仓不能在同一个Bar上面进行吗?

是可以实现开平在同一个bar上的。
但是如果不是开盘就开仓的策略,我们不建议开与平写在同一个bar上,是可能有隐患的。。
上述代码中,建议将barstatus==2去掉。。另外,在你的代码逻辑里,可以省去buytocover与sell这两句。
作者: vip0745    时间: 2018-1-8 13:27:44

小米 发表于 2018-1-8 13:23
是可以实现开平在同一个bar上的。
但是如果不是开盘就开仓的策略,我们不建议开与平写在同一个bar上,是 ...

好吧,那我试着在其它的bar上面进行平仓操作。




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2