SummationFC疑问
假设length为10,price为close,currentbar为3那么语句 SumValue = SumValue + Price[Length - 1] *(Length - i);中的 Price[Length - 1] 应该为close[10-1],也就是close[9],而currentbar为3,这个应该是不存在的吧? 另外 Series<Numeric> SumValue(0,3);中的 (0,3)是什么意思啊?//------------------------------------------------------------------------// 简称: SummationFC// 名称: 快速求和// 类别: 用户函数// 类型: 内建函数// 输出: 数值型//------------------------------------------------------------------------Params Series<Numeric> Price(1); //数值型序列值 Integer Length(10); //周期数Vars Series<Numeric> SumValue(0,3); Series<Numeric> MyLength(-1,3); Numeric i;Begin IF(MyLength[1] != Length) //长度变化或第一次运行 变长或变短 { MyLength = Length; If(InvalidInteger() == CurrentBar()) { return InvalidNumeric(); } SumValue = 0; If(CurrentBar() < Length) { For i = 0 To CurrentBar() { SumValue = SumValue + Price[i]; } SumValue = SumValue + Price[Length - 1] *(Length - i); } Else { For i = 0 To Length - 1 { SumValue = SumValue + Price[i]; } } } Else { SumValue = SumValue[1] + Price - Price[Length]; } Return SumValue;End//------------------------------------------------------------------------// 编译版本 GS2010.12.08// 版权所有 TradeBlazer Software 2003-2025// 更改声明 TradeBlazer Software保留对TradeBlazer平// 台每一版本的TradeBlazer公式修改和重写的权利//------------------------------------------------------------------------