• <xmp id="4g4m2"><menu id="4g4m2"></menu><menu id="4g4m2"><strong id="4g4m2"></strong></menu>
    <xmp id="4g4m2">
  • <menu id="4g4m2"></menu>
  • <dd id="4g4m2"></dd>
  • 只發布交易干貨的網站
    用實戰期貨交易系統和心得助你重塑交易認知

    正規期貨開戶 | 手續費只+1分

    90%交易者的手續費都被加收超1倍,一起看看最新的交易所手續費一覽表吧!

    什么是移動平均法(移動平均法的7大內容)

    1 前言

    移動平均(Moving Average,MA),又稱移動平均線,簡稱均線。作為技術分析中一種分析工夫序列的常用工具,常被應用于股票價格序列。移動平均可過濾高頻噪聲,反映出中長期低頻趨勢,輔助投資者做出投資判定。

    根據計算辦法的不同,盛行的移動平均包括簡樸移動平均、加權移動平均、指數移動平均,更高階的移動平均算法則有分形自順應移動平均、赫爾移動平均等。這其中,簡樸移動平均又最為常見。下圖為上證指數日線的 5 個不同計算窗口(20 日,50 日,120 日,200 日,300 日)的簡樸移動平均線。

    簡樸移動平均(Simple Moving Average, SMA)就是對工夫序列直接求等權重均值,因此運用簡樸。但其最令人詬病的就是它的滯后性。從上圖不難看出,伴著計算窗口 T 的增大,移動平均線越來越光滑,但同時也越來越滯后。以 120 日均線為例,在 2015 年 6 月份之后的大熊市開始了很長一段工夫之后,120 日均線才開始呈現下降趨勢。假如我們按照這個趨勢進行投資,那這個滯后無疑造成了巨額的虧損。

    現實上,任何移動平均算法都會呈現肯定的滯后性。它以滯后性的代價換來了光滑性,移動平均必須在光滑性和滯后性之間取舍。然而,滯后性是怎么產生的呢?簡樸移動平均在工夫上滯后多少呢?有沒有什么高級的移動平均算法能在保證光滑性的同時將滯后性減小到最低呢?這些就是本文要回答的問題。

    2 移動平均的實質

    移動平均的實質是一種低通濾波。它的目的是過濾掉工夫序列中的高頻擾動,保留有用的低頻趨勢。如何從工夫序列中抽取出真正的低頻趨勢呢?無論采取哪種移動平均算法,理論上的計算辦法都相同,下面我們簡要說明。同時,我們也會清楚地闡述該計算辦法僅在理論上有效,而在實際應用中是無法完成的,并由此揭示產生滯后性的原因。

    假設我們有一個工夫序列 y = {…, y_(t-2), y_(t-1), y_t, y_(t+1), y_(t+2), …},如下圖所示。另外,假設我們有一個作用在時域 t 上的過濾函數 F(注:這個 F 的詳細形式根據不同的移動平均算法而不同)。

    在理論上,在任意 t 時辰的低頻濾波(用 x_t 示意)在數學上可以示意為該工夫序列 y 和過濾函數 F 在整個時域上的卷積,即

    其中,F_i 為過濾函數 F 在時辰 i 的取值。由于在實際中不可能用到無窮多的數據,因此可以考慮給過濾加一個窗函數,即過濾函數 F 只在窗口長度 T 內有效、在窗口之外為 0,如下圖所示:

    加入長度為 T 的窗函數后,在時辰t的低頻濾波變為該工夫序列 y 和過濾函數 F 在這個窗口內的卷積:

    然而,無論是否運用加窗函數,上述公式最大的問題是,在計算t時辰的低頻分量時,利用到了未來的數據。換句話說,理論上的低通濾波(或者移動光滑)必須要用事后數據,其假設所有數據都發生后再在全局上計算所有時點的低頻分量。但這在實時數據中是不可能的,因為在任何當前時辰 t,我們都沒有未來數據可以利用。

    正因如此,在實際應用中,我們無法運用 t-(T-1)/2 到 t+(T-1)/2 之間的數據,只能退而求其次運用 t-(T-1) 到 t 之間的數據。這相稱于我們把計算低頻趨勢的過濾窗函數在時域上向左平移 (T-1)/2 個單位,如下圖所示:

    如此處理后,對于實時數據,在當前時辰 t 的低頻濾波變為該工夫序列 y 和過濾函數 F 在 t-T+1 到 t 之間的卷積:

    沒有未來數據便是滯后的根本原因。

    對于簡樸移動平均來說,在窗口 T 內,過濾函數在每個時點的取值都是 1/T。利用上述公式計算得到的實際上是 t-(T-1)/2 時辰(而非 t 時辰)的低頻趨勢,而我們把它當作 t 時辰的低頻趨勢運用,這便產生了 (T-1)/2 的滯后。當我們運用簡樸移動平均時,在當前時辰 t,對于給定的工夫窗口 T,我們僅能求出 t-(T-1)/2 時辰之前的低頻趨勢,而無法求出 t-(T-1)/2 之后的低頻趨勢。這也解釋了為什么工夫窗口 T 越大,滯后 (T-1)/2 越多。這就是為什么看股票數據里面 MA20、MA30、MA50 等日均線這種,計算均線的窗口 T 越大,得到的移動光滑曲線越滯后。

    既然無論如何都沒有未來數據,那么是否意味著我們就只能接受移動平均的滯后性呢?答案是否定的。換個角度來考慮這個問題,滯后性說明由簡樸移動平均計算得到的低頻趨勢對近期的最新數據不夠敏感。這是由于它在計算低頻趨勢時,對窗口內所有的數據點都給予相同的權重。按著這個思路延伸,天然的主意就是在計算移動平均時,給近期的數據更高的權重,而給窗口內較遠的數據更低的權重,以更快的捕獲近期的變化。由此便得到了加權移動平均和指數移動平均。

    3 加權移動平均

    在計算加權移動平均(Weighted Moving Average, WMA)時,窗口內的過濾函數的取值從當前數據到之前第 T-1 期的數據依次線性遞減。因此,第 t-i 期的 F_(t-i) 為 2(T-i)/(T(T+1)),i = 0, 1,……, T-1。該權重是 i 的單調線性遞減函數。下圖為 T = 15 時不同 i 的取值對應的權重(圖片來自 wiki)。

    在確定了權重后,t 時辰的加權移動平均(記為 WMA_t)由下式得到:

    值得一提的是,由于嚴格的按照線性遞減,因此權重會最終在當前時辰之前的第 T 期時點衰減為 0。

    以上證指數過去 10 年的日數據為例,下圖比較了 T = 100 時的簡樸移動平均和加權移動平均的過濾效果。加權移動平均比簡樸移動平均對近期的變化更加敏感,尤其是在牛熊市轉換的時分,加權移動平均的滯后性小于簡樸移動平均。但是,由于僅采用線性權重衰減,加權移動平均仍舊呈現出滯后性。

    4 指數移動平均

    指數移動平均(Exponential Moving Average, EMA)和加權移動平均類似,但不同之處是各數值的加權按指數遞減,而非線性遞減。此外,在指數衰減中,無論往前看多遠的數據,該期數據的系數都不會衰減到 0,而僅僅是向 0 逼近。因此,指數移動平均實際上是一個無窮級數,即無論多久遠的數據都會在計算當期的指數移動平均數值時有肯定的作用,只不過離當前太遠的數據權重非十分低,因此它們的作用往往可以忽略。

    在實際應用中,t 時辰的指數移動平均(記為 EMA_t)可以按如下辦法得到:

    其中 alpha 示意權重的衰減程度,取值在 0 和 1 之間。alpha 越大,過去的觀測值衰減的越快。雖然指數移動平均是一個無窮級數,但在實際應用時,我們也常常看到 T 期指數移動平均的說法。這里的 T 是用來計算 alpha 的參數,它不示意指數衰減在 T 期后結束。alpha 和 T 的關系為 alpha = 2/(T+1)。下圖為 T = 15 時不同時辰的權重(圖片來自 wiki)。可以看到,任何一期的權重都不會衰減到 0。

    下圖比較了 T = 100 時簡樸移動平均、加權移動平均和指數移動平均的光滑效果。指數移動平均由于對近期的數據賦予了更高的權重,因此它比加權移動平均對近期的變化更加敏感,但這種效果在本例中并不顯著,指數移動平均也存在肯定的滯后。

    當 alpha = 1/T 時,得到的指數移動平均又稱為修正移動平均(Modified Moving Average,MMA)或光滑移動平均(SMoothed Moving Average,SMMA),它們在應用中也非常常見。比如,在計算技術指標 ADX 的時分,就應用到了光滑移動平均。感愛好的讀者可參考文章《精選技術指標系列(1):ADX》。

    無論是加權還是指數移動平均,它們都是通過對近期的數值賦予更高的權重來提高低頻趨勢對近期變化的敏感程度。然而,它們的計算表達式(或算法結構)是固定的,在整個工夫序列上的各個時點都運用同樣的結構(即一成不變的權重分配辦法)計算移動平均,而不考慮工夫序列自身的特點。

    一個優秀的移動平均算法計算出來的均線應在工夫序列自身波動不明顯的時點充足光滑,而在工夫序列自身發生巨變時飛快捕獲、將滯后最小化。要想達到這種效果,就必須利用工夫序列自身的特點。分形自順應移動平均算法就是這樣一個有力的工具。

    5 分形自順應移動平均

    顧名思義,分形自順應移動平均(FRactal Adaptive Moving Average,FRAMA)利用了投資品價格序列的分形特征(關于什么是分形,請參考《分形市場假說》)。簡樸的說,該算法通過一個簡樸的公式計算從工夫序列從當前時點往前 2T 長度的工夫窗口內的分形維數 D,并利用分形維數進一步求解指數移動平均的參數 alpha。

    分形維數描述工夫序列的趨勢,其取值在 1 到 2 之間,越大說明趨勢越明顯,越小說明工夫序列越隨機。因此,通過連續的計算工夫序列局部的分形維數,該算法可以動態的、自順應的根據工夫序列的特征計算光滑所用的參數。由于 alpha 是 D 的減函數,因此 D 越大(趨勢越明顯),alpha 越小,即指數光滑時對過去的數值衰減的越慢;D 越小(隨機性越強),alpha 越大,即指數光滑時對過去的數值衰減的越快、對最新數據的變化越敏感。

    詳細的,對于當前時點 t 和給定的窗口 T,該辦法用到了三個工夫窗口,即 t 到 t-T+1(記為窗口 W1,長度為 T),t-T 到 t-2T+1(記為窗口 W2,長度為 T),以及 t 到 t-2T+1(記為窗口 W,長度為 2T)。不難看出,W = W1+W2。該辦法的步驟如下:

    計算 FRAMA 均線的步驟

    什么是移動平均法(移動平均法的7大內容)

    用窗口 W1 內的最高價和最低價計算 N1 = (最高價 – 最低價) / T

    用窗口 W2 內的最高價和最低價計算 N2 = (最高價 – 最低價) / T

    用窗口 T 內的最高價和最低價計算 N3 = (最高價 – 最低價) / (2T)

    計算分形維數 D = [log(N1+N2) – log(N3)] / log(2)

    計算指數移動平均的參數 alpha = exp(-4.6*(D-1)),并使其滿意在 0.01 和 1 之間

    將 alpha 帶入指數移動平均的公式求解 t 時辰的 FRAMA 移動平均值

    下圖比較了 T = 100 時指數移動平均以及分形自順應移動平均的光滑效果。很明顯,由于利用了工夫序列自身的分形特征,FRAMA 均線對滯后性的提高十分明顯,這意味著在價格趨勢發生變化的時分它捕獲的更加及時。當然,取決于選取的參數,FRAMA 均線在一些局部可能不夠光滑,它體現了一種動態的對光滑度和敏捷度的取舍。

    6 赫爾移動平均

    最后,我們再介紹一種業界常用的高級移動平均算法,即赫爾移動平均(Hull Moving Average,HMA)。它由 Alan Hull 發明,故由此得名。該算法最大的特點是在減少滯后的同時有效的提高了均線的光滑程度。

    在本文中,我們并不對它背后的邏輯做太多的剖析,這將留到今后某一期的精選技術指標中介紹。我們直接給出它的計算步驟。對于給定的窗口 T:

    計算 HMA 均線的步驟

    計算窗口為 T/2 的加權移動平均,并把結果乘以 2(假如 T/2 不是整數則取整)

    計算窗口為 T 的加權移動平均

    用第 1 步的結果減去第 2 部的結果,得到一個新的工夫序列

    以第 3 步得到的工夫序列為對象,計算窗口為 sqrt(T),即根號 T,的加權移動平均(假如根號 T 不是整數則取整)

    上述步驟的數學表達式為 HMA = WMA((2*WMA(y, int(T/2)) – WMA(y, T)), int(sqrt(T)))。

    最后,比較 T = 100 時候形自順應移動平均和赫爾移動平均的光滑效果。令人驚喜的看到,HMA 均線有著不輸 FRAMA 均線的敏捷性(滯后性十分低),并且在局部也提高了光滑性,確實做到了在保證光滑性的同時最大的升高了滯后性。

    7 結語

    作為技術分析的利器,移動平均線人人都在看、人人都在用。可又有多少人想得清晰、用的知道呢?本文詳盡的分析了移動平均技術的實質,揭示了滯后性產生的原因。通過對五種不同過濾技術的分析和對比,說明了高級的移動平均技術(比如 FRAMA 和 HMA)可以有效的升高滯后性并保證均線的光滑性。

    本文名稱:《什么是移動平均法(移動平均法的7大內容)》
    本文鏈接:http://www.wuhansb.com/baike/247463.html
    免責聲明:投資有風險!入市需謹慎!本站內容均由用戶自發貢獻,或整編自互聯網,或AI編輯完成,因此對于內容真實性不能作任何類型的保證!請自行判斷內容真假!但是如您發現有涉嫌:抄襲侵權、違法違規、疑似詐騙、虛假不良等內容,請通過底部“聯系&建議”通道,及時與本站聯系,本站始終秉持積極配合態度處理各類問題,因此在收到郵件后,必會刪除相應內容!另外,如需做其他配合工作,如:設置相關詞匯屏蔽等,均可配合完成,以防止后續出現此類內容。生活不易,還請手下留情!由衷希望大家能多多理解,在此先謝過大家了~

    我要說說 搶沙發

    評論前必須登錄!

    立即登錄   注冊

    切換注冊

    登錄

    忘記密碼 ?

    切換登錄

    注冊

    我們將發送一封驗證郵件至你的郵箱, 請正確填寫以完成賬號注冊和激活

    簧色带三级