关于MLRS使用的疑问

MLRS这个函数,按照官方帮助文档的解释,目标方程是ax+res=b,也就是x是线的斜率,res是y轴的截距。

其例子里面使用的:

Array<Array<Numeric>> a = [[30.2,33.1],[31.9,34.8],[32.7,35.6]];

Array<Array<Numeric>> b = [[13.5],[12.4],[11.3]];

Array<Array<Numeric>> x;

Array<Numeric> tvalues;

Array<Numeric> res;

Numeric ret = MLRS(a,b,x,tvalues,res);//多元线性回归求解

Print("MLRS,ret:" + Text(ret) + ",x:" + TextArray(x) + ",tvalues:" + TextArray(tvalues) + ",res:" + TextArray(res));

以上的a和b构成两组关于x轴和y轴的点,他们分别是

第一组点:

x=30.2, y=13.5

x=31.9, y=12.4

x=32.7, y=11.3

第二组点:

x=33.1, y=13.5

x=34.8, y=12.4

x=35.6, y=11.3

那么针对第一组和第二组的点的回归线的斜率应该是都是-0.843558,如下:

但是看MLRS的计算结果:

MLRS,ret:0,x:[[-14.311297],[13.467739]],tvalues:[-6.858083,7.04551],res:[-0.080982,0.253067,-0.172086]

MLRS计算出来的第一组点的斜率是-14.311297,第二组点的斜率是13.467739,res结果也对不上。

所以,MLRS的计算逻辑到底是什么?有人可以详细说明一下吗?

关于setbaseperiod的几个疑问
关于TBQ新手使用的几点疑问
关于多数据源对齐的 SetBeginBarMaxCount疑问
关于OnTimer的疑问
关于tick的疑问
关于策略优化的参数设置疑问
全局变量的使用疑问
关于 SetGlobalVar 的疑问
关于NthLower用法的疑问
关于提前发单代码的疑问

这是多元线性回归,A是3*2,b是3*1,x是2*1,res是3*1。看一下基础知识再用这个函数。

顶一下,同问,有没有线性回归的例子?