关于STD函数问题 (文华财经WH8赢智V8.2)

投资者咨询:关于STD函数问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-6-17 13:06
 老师你好!
      STD是样本标准差函数,就是累加N个收盘价和N日均价之差的平方然后处于N再开平方根,但是我用SUM,平方,平方根展开计算得出的数值和之间用STD函数计算出来的结果相差很大,为什么会这样,麻烦老师帮忙编写一下!谢谢老师。MA1:=MA(C,N);
GSBZC:SQRT(SUM(SQUARE(C-MA1),N)/N);和直接用STD(C,N);计算结果相差很大。
技术人员回复
日期:2019-6-17 13:11
您要的应该是 STDP 总体标准差

而且您换算公式也不对 MA1不同k线返回不同值的 

SUM求和中 C-MA1,并不是标准差中的要求的数值和均值的差,您应该根据函数说明方法计算的
投资者咨询:关于STD函数问题 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2019-6-17 13:06
 算法举例:计算STD(C,3);在最近一根K线上的值。

用麦语言函数可以表示如下:
SQRT((SQUARE(C-MA(C,N))+SQUARE(REF(C,1)-MA(C,N))+SQUARE(REF(C,2)-MA(C,3)))/2);
但是N远大于3,所以上面这个式子要用到归纳式如下:SQRT(SUM(SQUARE(C-MA1),N)/(N-1));
但这个归纳式不对,老师帮下,谢谢老师!
技术人员回复
日期:2019-6-17 19:52
这里您没有必要纠结如何计算的,这里的计算十分复杂,您直接用STD即可

例子中是以N=3为例,远超过3的话,运算量十分大,这里给您再举一个例子

当N=4时,需要加入SQUARE(REF(C,3)-MA(C,4)),N每增加1,后面都要多出一部分运算

SQRT((SQUARE(C-MA(C,4))+SQUARE(REF(C,1)-MA(C,4))+SQUARE(REF(C,2)-MA(C,4))+SQUARE(REF(C,3)-MA(C,4)))/3);