每個自定義函數(shù)都會有一個Formula對象,即使沒有參數(shù)的自定義函數(shù)也至少有這么一個對象參數(shù)存在。每次公式系統(tǒng)執(zhí)行遇到自定義函數(shù)的時候,會不斷的依次調(diào)用它,直至整個公式解釋完畢。
示例
創(chuàng)建一個計算CYC日收盤價移動平均線的自定義函數(shù),CUSTOM_MA2(CYC),在"添加自定義函數(shù)"對話框上名稱輸"CUSTOM_MA2",在參數(shù)位置輸入"CYC"后單擊確定,然后在隨即彈出的VBS編輯器界面上,輸入下面代碼:
'計算指定周期長度的收盤價均價
Function CUSTOM_MA2(Formula,cyc)
'得到K線數(shù)據(jù)對象
Set History = Formula.ParentGrid.GetHistoryData()
'若當(dāng)前周期尚未到計算周期,不參與計算
if Formula.IndexData < cyc-1 then //ma(close,10)
CUSTOM_MA2 = 0
exit function
end if
DataCount = 0
for i =
Formula.IndexData-cyc+1 to Formula.IndexData
'累加收盤價
DataCount = DataCount +
history.close(i)
Next
CUSTOM_MA2 = DataCount / cyc
End Function
以上代碼輸入完畢后按下 Shift+F5啟動VBS教本運行,然后就可以在公式編輯中使用我們剛剛創(chuàng)建的自定義函數(shù)了.
http://www.weistock.com/WeisoftHelp/visualbasiczidingyihanshu.htm
都有