- 精华
- 0
- 在线时间
- 301 小时
- UID
- 168489
- 积分
- 87
- 帖子
- 55
- 阅读权限
- 30
- 注册时间
- 2013-6-3
- 最后登录
- 2024-3-19
- 精华
- 0
- UID
- 168489
- 积分
- 87
- 帖子
- 55
- 主题
- 6
- 阅读权限
- 30
- 注册时间
- 2013-6-3
- 最后登录
- 2024-3-19
|
本帖最后由 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 |
|