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