2010年12月22日 星期三

MetaStock裡的「正宗」MACD

初接觸 MetaStock 的投資者,多數都會有個疑問,就是怎麼 MetaStock 裡的 MACD 不能自訂日數組合的?MetaStock 只容許我們修改訊號線的日數,但用來計算 MACD 線的兩條 EMA,不但不能更改,甚至沒有顯示所採用的是什麼日數:


這也太神秘了吧,MACD 而已,又不是黑盒系統,怎會什麼也沒有顯示的?我嘗試到 "MetaStock Help" 查看,找到如下解釋:

In order to maintain the mathematical integrity of the MACD as prescribed by Gerald Appel, MetaStock does not allow the time periods in the MACD to be changed.

2010年12月8日 星期三

程式編寫入門5 - 常用技術指標

除了移動平均線,投資者最常用的技術指標,相信非 RSI、STC 及 MACD 莫屬。現在簡單介紹一下它們在 MetaStock 程式中的表達方式:


為幫助理解,我們嘗試自行建立隨機指數 (STC),在 Indicator Builder 輸入以下的指標名稱及程式:

Name:STC
Formula:
Stoch(14,3)

2010年11月28日 星期日

程式編寫入門4 - Cross()

當我們編寫交易系統時,最常用到的也許就是穿越訊號,例如 10天線升穿 50天線,或 9天 RSI 升穿 30。在 MetaStock 中,這時就要用到 Cross() function:

Cross(DATA ARRAY 1, DATA ARRAY 2)

假設我們現在要建立一個移動平均線系統,買賣規則如下:

買入訊號
5天線升穿 20天線

沽出(平倉)訊號
5天線跌破 20天線

2010年11月18日 星期四

保力加通道與 RSI 的結合 - %b(RSI)

自從技術分析大師 Welles Wilder 的著作《New Concepts in Technical Trading Systems》面世後,相對強弱指數 (RSI) 就成為投資者最喜歡的技術指標之一。RSI 的基本應用非常簡單,幾乎隨便找一本技術分析書都可以找到:

1. RSI 超越 70為超買,市場有調整壓力。

2. RSI 低於 30為超賣,市場隨時展開反彈。

只要看過這兩個「法則」,就不難想到為什麼 RSI 會如此受歡迎了。多數投資者都喜歡低買高沽,怎樣才算高?很多人習慣與過去的價位比較,若恆指上星期還在 21000點附近,現在升至 22000點,就覺得很「高」了,再加上看到 RSI 升至超買區,往往就會忍不住想做淡。

2010年11月5日 星期五

程式編寫入門3 - Input()

大部份的技術指標都有一些參數供我們自行調整,以適應不同的市場或周期,例如 RSI 就可以採用 9天或 14天等不同的計算日數。那麼,當我們利用 MetaStock 的 Indicator Builder 建立技術指標時,要如何做才能讓指標擁有參數設定的功能呢?以保力加通道的 %b 為例,我曾介紹用下面的 formula 來建立 (請參考「程式編寫入門2」):

(C-BBandBot(C,20,S,2))/(BBandTop(C,20,S,2)-BBandBot(C,20,S,2))

大家可能留意到,這個 formula 所計算的 %b 是固定以 20天 SMA 及 2倍標準差作為參數組合的。如果想在指標建立好後,能夠讓我們自行調整參數,就要用到 Input() 函式:

Input("PROMPT TEXT", MINIMUM VALUE, MAXIMUM VALUE, DEFAULT VALUE)