2010年10月16日 星期六

程式編寫入門1 - Mov()

上次示範了如何用 MetaStock 編寫一個簡單的交易系統,當時所用的是 Mov() 函式,它在 MetaStock 中所代表的就是移動平均線。不過,正式介紹 Mov() 之前,大家首先要知道一些 data arrays 在 MetaStock 語法中的縮寫:


上述的縮寫字在程式編寫過程中經常也會用到,因此大家需要記住。現在我們可以看一看 Mov() 函式的結構:

Mov(DATA ARRAY, PERIODS, METHOD)

移動平均線主要有3種類型:簡單 (Simple)、加權 (Weighted) 與指數 (Exponential)。函式中最後的 METHOD 就是用來決定我們採用那個類型的平均線:S = 簡單 、W = 加權、E = 指數。例如,Mov(C,10,E) 在程式中的意思就是以收市價計算的10天指數移動平均線 (有關平均線類型可參考文章 technical-analysts.blogspot.com/2010/10/blog-post_10.html )。

讓我們來實作一下,在 MetaStock 中建立一個以成交量計算的移動平均線 (Volume MA) 技術指標。

1. 打開 MetaStock 後,選 "Indicator Builder..."。


2. 按右方的 "New..."。


3. 在 "Name" 輸入 Volume MA 作為這個技術指標的名稱,接著在 "Formula" 裡輸入以下程式碼:

x:=Input("Number of periods",2,100,50);
Mov(V,x,S)

完成後按 "確定"。


上述「 x:=Input("Number of periods",2,100,50); 」是指建立一個 x 變數,並讓我們在2至100之間自行決定其數值,預設值為50。而「 Mov(V,x,S) 」的意思就是以成交量計算的 x 天簡單移動平均線。

4. 按 "Close" 關閉 Indicator Builder 後,可看到我們剛建立的 Volume MA 已在技術指標選單裡。


5. 用滑鼠將 Volume MA 拖向下方的成交量圖表時,會出現視窗叫我們輸入移動平均線的長度,按 "確定" 使用預設值50天。


6. 完成後即可看到在成交量中多了一條50天移動平均線。


沒有留言: