请教一个自建函数的写法

/------------------------------------------------------------------------ // 简称: LinearReg // 名称: 求线性回归 // 类别: 用户函数 // 类型: 内建函数 // 输出: 布尔型 //------------------------------------------------------------------------ Params Series<Numeric> Price(1); //数值型序列值 Numeric Length(10); //周期数 Numeric TgtBar(0); //Bar偏移 NumericRef LRSlope; //斜率返回值 NumericRef LRAngle; //角度返回值 NumericRef LRIntercept; //Y轴截距返回值 NumericRef LRValue; //回归返回值 Vars Numeric SumXY(0); Numeric SumY; Numeric SumX; Numeric SumXSqr; Numeric Divisor; Numeric i; Begin if (Length > 1) { SumX = Length * ( Length - 1 ) * 1/2; SumXSqr = Length * ( Length - 1 ) * ( 2 * Length - 1 ) * 1/6 ; Divisor = Sqr( SumX ) - Length * SumXSqr ; SumY = Summation( Price, Length ) ; for i = 0 to Length - 1 { SumXY = SumXY + i * Price[i] ; } LRSlope = ( Length * SumXY - SumX * SumY) / Divisor ; LRAngle = Atan ( LRSlope ) ; LRIntercept = ( SumY - LRSlope * SumX ) / Length ; LRValue = LRIntercept + (Length - 1 - TgtBar)*LRSlope; Return True; }Else { Return False; } End 这是系统自带的线性回归,在旗舰版中运用的时候直接使用 LinearReg(close,length,X,X,X,X,X,);就能得到赋值结果。但是在TBQ里面不行,提示序列变量回溯不能传参给引用类型,如何解决?

Vars //此处添加变量 Series<Numeric> LRSlope(0); Series<Numeric> LRIntercept(0); Series<Numeric> LRAngle(0); Series<Numeric> LRValue(0); 应用的设定里是这么写的

请把具体应用的代码贴出来 这个一定是你语法错了

回复:LinearReg(close,Length,0,LRSlope,LRAngle,LRIntercept,LRValue); 这就是我应用的代码,就这一行,旗舰版里这么写没问题