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)