2014年11月19日 星期三

★KAMA移動平均線(含程式碼)

     今天看到一個平滑邏輯很簡單,但又能貼進趨勢行情的移動平均線。很多人都會用均線寫策略,不妨替換看看,有時候會有很不錯的發現……

KAMA函數:

[LegacyColorValue = true];

{ TSMKAMA : Kaufman's Adaptive Moving Average}

inputs: period(numericsimple), fast(numericsimple), slow(numericsimple);
vars: efratio(0), smooth(1), fastend(.666), slowend(.0645), AMA(0), diff(0),
signal(0), noise(0);



{ calculate efficiency ratio }
if currentbar = 1 then begin
AMA = close;
fastend = 2/(fast + 1);
slowend = 2/(slow + 1);
end
else begin
efratio = 1;
diff = absvalue(close - close[1]);
signal = absvalue(close - close[period]);
noise = summation(diff,period);
if noise <> 0 then efratio = signal / noise;
smooth = power(efratio*(fastend - slowend) + slowend,2);
AMA = AMA[1] + smooth*(close - AMA[1]);
end;
TSMKAMA = AMA;


KAMA移動平均線指標


   Inputs: period(8), fast(3), slow(30);
   vars:    KAMA(0);

   { ADAPTIVE MOVING AVERAGE }
   KAMA = TSMKAMA(period,fast,slow);
   Plot1(KAMA,"KAMA");
 

畫出來的圖長這個樣子……盤整的時候反應比較慢,但趨勢來的時候會貼得比較近。



後記:

其實邏輯是這個樣子的,盤整的時候反而需要反應比較慢的指標;趨勢出現的時候,指標要快狠準。

0 留言:

張貼留言

如果有私人問題想請教,請透過網站右方『與站長聯絡』之表單,謝謝!

----------------------------------------------------------------------------------------------------
網站聲明(Disclaimer)
本教學網站內所提供之程式碼(包括函數、指標、訊號)屬開放程式碼,用意在於讓使用者學習程式語法之撰寫,使用者可以任意修改語法內容並調整參數。本網站所有之內容(包括文章、影片、歷史紀錄、程式碼、教材)限用於個人學習使用,請勿轉寄、濫用,嚴禁私自串接帳戶交易。
-------------------------------------------------------------------------------------------------