STD函數的內部計算公式


各股票軟件的標准差函數STD是不同的,而布林線的上下軌是以STD為基礎計算出來的,所以使用布林線應小心。
以2008/3/28的上證綜指為例,利用如下代碼:"收盤價3日STD:STD(CLOSE,3);",三日收盤價分別是:3606.86,3580.15,3411.49,在飛狐交易師中顯示的3日收盤價標准差是105.928,大智慧新一代中顯示的是105.932,通達信中是86.49,同花順中顯示74.90。用EXCEL中的函數STDEV計算的樣本方差是105.9316,STDEVP計算總體方差是86.49。
可見大智慧和飛狐使用的算法是樣本方差,二者數據基本一致,大智慧的更精確一點,通達信使用的是總體方差,同花順就不知所謂了。
這里最關鍵的是要明白總體方差與樣本方差的區別。
總體方差(population variance)    :如果這組數據本身便構成一個總體, 均差平方和除以數據中觀察值的數目,        稱為總體方差。如一組數據X1,X2,..., Xn:其平均值M=(X1+X2+...+Xn)/n ,總體方差為  [ (X1-M)^2+...(Xn-M)^2 ]/n 的平方根。                  
對於無限總體,N為無限大。 

樣本是由總體中任意抽取而形成的,樣本的各種數量關系(包括平均值和方差)都是總體的相關數量的估計值。
數理統計學已經證明了,對於從總體中抽取的樣本,用前面的總體方式公式計算出來的方差值來估計總體的方差  總是偏小的。  樣本方差有時也稱為樣本均方(mean square, 簡記為MS),是總體方差的無偏估計,計算公式是
  [ (X1-M)^2+...(Xn-M)^2 ]/(n-1)的平方根,也就是說用(n-1)取代n作為分母。
為什么用n-1而不是n呢?
這可以從自由度來解釋。這樣看,X1,X2,...Xn是n個可以自由變化的樣本,互不影響。
而X1-M, X2-M,...Xn-M是否也是n個自由變化的呢?不是……因為這n個統計量受到一個約束條件的影響就是之和等於0。如果我們記 yi=Xi-M,也就是說y1+y2+...yn=0,
這樣我們可以任意變動其中n-1值,比如取定了y1,y2,...y(n-1),那么yn就不能任意變化。
樣本方差與樣本均值,都是隨機變量,都有自己的分布,也都可能有自己的期望與方差(由此進一步討論估計量的無偏性與有效性)。取分母n-1,可使樣本方差的期望等於總體方差,即這種定義的樣本方差是總體方差的無偏估計。

 

對於股票,我理解由於是無限總體中取的有限樣本,應該使用樣本方差而不是總體方差,這樣的話大智慧和飛狐中的布林線上下軌比較科學,通達信的會誤差幾十個點,同花順就更不用說了。從前面我們可以看出,實際上總體方差=樣本方差* a,其中a為[n/(n-1)]的平方根。一般布林線默認值n為20,因此a=1.026。
因此通達信的使用者如果想用更科學的樣本方差代替總體方差,應修改布林線公式,在STD函數前加一個系數1.026。如此校正后,通達信的布林線上下軌與大智慧、飛狐的都基本相同。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM