- 精华
- 0
- 在线时间
- 1983 小时
- UID
- 113966
- 积分
- 1033
- 帖子
- 642
- 阅读权限
- 60
- 注册时间
- 2012-12-9
- 最后登录
- 2021-2-18
- 精华
- 0
- UID
- 113966
- 积分
- 1033
- 帖子
- 642
- 主题
- 207
- 阅读权限
- 60
- 注册时间
- 2012-12-9
- 最后登录
- 2021-2-18
|
本帖最后由 wwr_5817 于 2012-12-25 09:29 编辑
内建用户函数NthCon抄录如下:
// 简称: NthCon
// 名称: 第N个满足条件的Bar距当前的Bar数目
// 类别: 用户函数
// 类型: 内建函数
// 输出: 数值型
//------------------------------------------------------------------------
Params
Bool Con(false);
Numeric N(1);
Vars
NumericSeries PreConIndex;
NumericSeries BarNums;
Numeric i(0);
Numeric ReBars(0);
Begin
If(Con)
{
BarNums = 0;
PreConIndex = BarNums[1] + 1;
}Else
{
BarNums = BarNums + 1;
PreConIndex = BarNums;
}
ReBars = BarNums;
For i = 2 To N
{
ReBars = ReBars + PreConIndex[ReBars];
}
Return ReBars;
End
//------------------------------------------------------------------------
我的公式应用:
Vars
Numeric B1;
Numeric B2;
Begin
B1=NthCon(con1,2);
B2=NthCon(con2,2);
End
//------------------------------------------------------------------------
对于已走完的某合约图表,插入我的公式应用,问题:
在满足con1而不满足con2的某Bar上执行我的公式应用时,变量B1调用NthCon函数的序列变量BarNums、PreConIndex的值为con1的序列值,变量B2调用NthCon函数的序列变量BarNums、PreConIndex的值为con2的序列值,NthCon函数是否会混淆con1与con2的序列值?
也就是说,NthCon函数在1个公式应用中只能用同一个Con,否则其序列变量出错导致调用出错?每个函数中定义的序列变量的存储地址是唯一的? |
|