之前介绍了线性回归算法。 这里简要回忆一下: 什么是线性回归? 线性回归分析,指的是根据一个变量的值来预测另一个变量的值。 线性回归适用于使预测和实际输出值之间的差异最小化的直线或平面。 通常使用“最小二乘”法来发现一组成对数据的最佳拟合线,之后从 Y(自变量)估算 X(因变量)的值。 为什么线性回归很重要? 线性回归模型相对简单,且应用范围极其广泛,涵盖生物、行为、环境、社会科学和商业等领域。 因此线性回归模型已经成为科学、可靠地预测未来的方法。 线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,由于算法简单,因此运用十分广泛。 线性回归的表达形式为y = w'x e,这里的e表示误差,并且认为误差服从均值为0的正态分布。 线性回归的计算公式或者说原理,继续复习一下,是下面这样子的: 给定n个数据in,我们按照下面的公式计算它的线性回归: 上面的最后一行,就是线性回归公式。 上面的这组计算公式,就是利用所谓“最小二乘法”对一组数据进行线性回归。 这个方法,最早是由数学王子高斯发明的。 从上面公式我们可以看出,线性回归的曲线斜率,就代表了数据的趋势强度。 这个趋势强度就是由曲线的斜率来表示的,tulip库里面称为:linregslope 对应的计算公式就是: 之前,基于技术分析库Tulip,开发了通用的通达信上可以使用的技术分析指标,里面包含100多种技术分析指标。 Tulip技术分析库的计算性能远远超过Ta-lib库: 那么,现在我就可以在通达信上调用技术分析库Tulip中的线性回归斜率指标了, 公式是下面这样子的: 公式源代码很简单: F1:=TDXDLL7(1,OPEN, HIGH,LOW); F2:=TDXDLL7(2,CLOSE,VOL,0); F3:=TDXDLL7(3,20,0,0); VAL:TDXDLL7(4,'LINREGSLOPE',-1,-1),LINETHICK2; 0; 解释一下,上面公式是把tulip库需要的各种股价数据都输入进去, 之后这里设置对应的计算周期为20, 最后调用tulip的LINREGSLOPE指标(tulip的指标是小写,可通达信公式输入的是大写),这个指标全称就是Linear Regression Slope,表示“线性回归斜率”。 公式后面的0,表示画一根零线。用于对趋势的强度进行衡量。 用起来的效果如何呢? 看下图: 上面的副图就是趋势线斜率LINREGSLOPE,表示了线性趋势的强度。 而主图白色线就是线性趋势线。 为了对比,还同时在主图画上了MA20均线和EMA20均线。 这里黄线为MA,紫红线为EMA,周期都取20天 大家在看副图的趋势线斜率的同时,可以对比主图的白色线性趋势线。 当趋势线上涨或下跌越快时,斜率相应的会增加(正向或反向)。 多看几个例子: 从上面的这些分析可见, 线性回归形成的趋势指标,结合斜率还能够描述趋势的强度。 这两个指标的结合,形成了一组较完整的量化趋势分析思路。 甚至从这个指标,还能够较好的看出趋势的背离。每一次涨跌形成的山脉或者低谷,这些高低点与价格高低点背离可以较好的看出趋势的延续或者逆转。 ————————————————
|
|