Hull Moving Average(HMA)(附程式碼)
一樣,只要看到有別於傳統簡單移動平均線(SMA)的均線指標,其改良目的就是多不脫針對反應遲鈍或是盤整被巴兩項缺陷,Hull Moving Average(HMA)由一位叫Alan Hull的澳洲專業交易人所發明(請參看他的網站),做為改良版均線指標,HMA在許多報價軟體被廣為運用,不過很可惜,MultiCharts並沒有內建HMA指標,本文向大家介紹這個頗有知名度的均線指標。HMA簡介
HMA基本上是從WMA(Weighted Moving Average)進化而來,WMA基本上就是給最近的收盤價最高權重,依序等量遞減(WMA與EMA的差別,就是權重遞減方是不同,前者等量遞減,後者以指數式遞減,有興趣進一步了解可參考本文),在MultiCharts裡計算WMA是函式XAverage(Price, Length),接下來,輪到HMA登場,我們先看發明者Hull本人是怎麼發明出HMA的。
以下是從0~9共10個價格數字,平均值為4.5,姑且先稱為MA_all,顯然4.5是離最近的價格9距離太遠,正好顯露出MA反應遲鈍的問題,Hull的做法是再算最近5個值的平均值(5~9),MA_w=7,然後由於MA_w是計算比較近期的價格,應給較高權重,所以他接著以2*MA_w-MA_all的方法來把權重再一次調整。
[attach]5515[/attach]
PowerLanguage程式碼
以上就是HMA的主要精神,接下來我們直接看程式碼:
================================================**** Hidden Message *****[/size]
================================================
IntPortion()函式是取整數之用。
跟上面解說範例的差異,實際HMA在計算MA_all及MA_w時是以WMA來計算(各位看官也可以採SMA甚至EMA取代看看有何不同效果)。此外,HMA在最後計算WMA時,取的期間再開一次根號,是何用意?如果不這麼做的話,以上面這個程式碼範例Length=20,在計算變數MA及變數HMA,前後做了兩次WAverage計算,其實等於已經把近20+20=40根K棒都抓進來運算,反而讓更多舊的價格來影響均線值,故以程式碼中Length=20,開根號取整數等於4,把權重還給近期價格。
HMA與其他均線比較
我們把HMA、AMA以及SMA放在一起比較,可以發現HMA(水藍色)最為敏感,最為貼著貼著指數走,其次是AMA,最後也就是最鈍的SMA。在盤整時期,HMA也會跟著行情上上下下,顯然對抗雜訊震盪走勢能力不好。此外,在劇烈大行情時,HMA會算出比近日最高還高或是比近日最低還低的數值,這是HMA計算公式所致,可以解讀成最後的末升段或末跌段的強力動能遞延,如果是要開發以HMA為依據的進出策略,可特別留一下。
[attach]5516[/attach]
結論
HMA有短均線敏感度優點,面對盤整盤卻沒有忽上忽下的缺點,如果習慣採5日均線(5-SMA)操作的朋友,或許可以試試HMA。 看看 学习 PowerLanguage程式码 谢谢 谢谢分享! 谢谢分享! 谢谢分享。。 请问可以用到交易师软件里吗谢谢 好的 看看
页:
[1]