今天看到一個平滑邏輯很簡單,但又能貼進趨勢行情的移動平均線。很多人都會用均線寫策略,不妨替換看看,有時候會有很不錯的發現……
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");
畫出來的圖長這個樣子……盤整的時候反應比較慢,但趨勢來的時候會貼得比較近。
後記:
其實邏輯是這個樣子的,盤整的時候反而需要反應比較慢的指標;趨勢出現的時候,指標要快狠準。
----------------------------------------------------------------------------------------------------
網站聲明(Disclaimer)
本教學網站內所提供之程式碼(包括函數、指標、訊號)屬開放程式碼,用意在於讓使用者學習程式語法之撰寫,使用者可以任意修改語法內容並調整參數。本網站所有之內容(包括文章、影片、歷史紀錄、程式碼、教材)限用於個人學習使用,請勿轉寄、濫用,嚴禁私自串接帳戶交易。-------------------------------------------------------------------------------------------------
0 留言:
張貼留言
如果有私人問題想請教,請透過網站右方『與站長聯絡』之表單,謝謝!