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

标题: 关于TrueDate函数的问题 [打印本页]

作者: zyqh160000897    时间: 2014-7-23 11:19:15     标题: 关于TrueDate函数的问题

本帖最后由 zyqh160000897 于 2014-7-23 11:23 编辑

请问如何把OpenD,CloseD,HighD,LowD 这四个函数恢复到夜盘以前的取值状态啊?把truedate换成date就可以了吗?比如说OpenD是按照上午8点或9点分界的,在OpenD这个函数里如何调整?
TrueDate该函数针对夜盘设计,返回指定Bar的真正交易日期,格式为YYYYMMDD的整数。 周期小于日线时,该函数计算结果以18点为界,之前返回当前交易日日期,之后返回下一个交易日日期。 请问各位老师如何改为以上午8点为界啊?在OpenD这个函数里如何调整?



Params
        Numeric daysAgo(2);
Vars
        NumericSeries barCnt;
        NumericSeries dayOpen;
        Numeric i;
        Numeric j;
        Numeric nIndex(0);
        Numeric CBIndex;
Begin
        CBIndex = CurrentBar;
        If(CBIndex == 0 || TrueDate(0)!=TrueDate(1))
        {
                barCnt = 1;
                dayOpen = Open;
        }Else
        {
                barCnt = barCnt + 1;
        }
               
        If(daysAgo == 0)
        {
                return dayOpen;
        }Else
        {
                For i = 1 To daysAgo
                {
                        If( i == 1)
                        {       
                                j = 0;
                        }Else
                        {
                                j = j + BarCnt[j];                               
                        }
                        If (j > CBIndex )
                                Return InvalidNumeric;
                        nIndex = nIndex + BarCnt[j];
                }
                Return dayOpen[nIndex];
        }
End
作者: zyqh160000897    时间: 2014-10-2 09:25:15

没人回答自己回答自己吧
软件工具栏上面点击三角形,有全部数据、日盘数据和夜盘数据分类。




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