helloworld22 发表于 2016-8-20 21:38:19

帮助手册里的收盘平仓代码无法使用

代码如下:
If((Date[-1]!=InvalidInteger && Date!=Date[-1])||(Date[-1]==InvalidInteger && Date < CurrentDate))
    {
        Sell(0,Close);
        BuyToCover(0,Close);
    }Else If(Date==CurrentDate && Time==0.1455 && CurrentTime>=0.1459)
    {
        Sell(0,Close);
        BuyToCover(0,Close);
    }


在TBPlus 64位下回测无效
当日最后一概BAR 的Date 和 Date[-1]) 的值是一样的。

ego90289698 发表于 2016-8-20 22:59:16

应该是 Date!=Date  “日期不等于昨天”

helloworld22 发表于 2016-8-20 23:38:37

ego90289698 发表于 2016-8-20 22:59 static/image/common/back.gif
应该是 Date!=Date  “日期不等于昨天”

不是,这个语句是要判断bar的日期是否和第二天的日期不相同,不相同则说明是最后一根bar

helloworld22 发表于 2016-8-21 21:51:28

我明白了,原来是夜盘问题,那如何解决呢?

ego90289698 发表于 2016-8-24 00:06:29

本帖最后由 ego90289698 于 2016-8-24 00:08 编辑

带夜盘的品种第2天数据是从当日夜盘开始算的,但是Date!=Date ,指的是正常日期。
这个只有TB官方来解决问题了。
页: [1]
查看完整版本: 帮助手册里的收盘平仓代码无法使用