很多人需要將模型的及時(shí)觸發(fā)信號(hào)共享,其實(shí)金字塔的VBA提供了非常簡(jiǎn)單的方式來(lái)實(shí)現(xiàn),當(dāng)然需要至少標(biāo)準(zhǔn)版。
我們以圖表程序化交易為例:
1,首先用戶(hù)要將模型加載圖表上,登錄模擬交易帳戶(hù),然后啟動(dòng)圖表程序化交易。為了保證觸發(fā)信號(hào)的穩(wěn)定性,建議使用走完K線模式運(yùn)行程序化交易。
2,當(dāng)圖表程序化交易出現(xiàn)觸發(fā)交易信號(hào)后,VBA會(huì)收到一個(gè)AlarmPleaceOrder 事件,通過(guò)這個(gè)事件,我們就可以利用VBA的文件支持功能來(lái)將觸發(fā)信號(hào)寫(xiě)盤(pán)了,AlarmPleaceOrder 事件觸發(fā)后,會(huì)將模型的各種參數(shù)傳遞過(guò)來(lái),這里進(jìn)行簡(jiǎn)單的介紹:
AlarmPleaceOrder 事件
當(dāng)出現(xiàn)圖表和后臺(tái)本地預(yù)警信號(hào)時(shí)發(fā)生。注意,圖表程式化交易事件觸發(fā)僅限標(biāo)準(zhǔn)版及其以上版本才可以使用。
AlarmPleaceOrder(Name,Order, OrderType,Actionk,Volume,Price, Market, Code,Account)
Name 后臺(tái)程式化交易預(yù)警名稱(chēng)
Order 程式化交易類(lèi)別 0開(kāi)多 1平多 2開(kāi)空 3平空
OrderType 下單類(lèi)型 0限價(jià) 1市價(jià) 2停損
Action 下單方向 0買(mǎi) 1賣(mài)
Volume 下單數(shù)量
Price 預(yù)警價(jià)格
Code 品種代碼
Market 市場(chǎng)標(biāo)識(shí)
Account 交易賬戶(hù)
AlarmPleaceOrder 事件 在 MarketData 對(duì)象中。
范例:
Sub MARKETDATA_AlarmPleaceOrder(Name, Order, OrderType, Action, Volume, Price, Code, Market, Account)
'觸發(fā)過(guò)來(lái)的信號(hào)寫(xiě)盤(pán)
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\"&Name&".txt", True)
a.WriteLine(Order&"--"&OrderType)
a.Close
application.MsgOut Order&"--"&OrderType
End Sub