很多人需要將模型的及時觸發信號共享,其實金字塔的VBA提供了非常簡單的方式來實現,當然需要至少標準版。
我們以圖表程序化交易為例:
1,首先用戶要將模型加載圖表上,登錄模擬交易帳戶,然后啟動圖表程序化交易。為了保證觸發信號的穩定性,建議使用走完K線模式運行程序化交易。
2,當圖表程序化交易出現觸發交易信號后,VBA會收到一個AlarmPleaceOrder 事件,通過這個事件,我們就可以利用VBA的文件支持功能來將觸發信號寫盤了,AlarmPleaceOrder 事件觸發后,會將模型的各種參數傳遞過來,這里進行簡單的介紹:
AlarmPleaceOrder 事件
當出現圖表和后臺本地預警信號時發生。注意,圖表程式化交易事件觸發僅限標準版及其以上版本才可以使用。
AlarmPleaceOrder(Name,Order, OrderType,Actionk,Volume,Price, Market, Code,Account)
Name 后臺程式化交易預警名稱
Order 程式化交易類別 0開多 1平多 2開空 3平空
OrderType 下單類型 0限價 1市價 2停損
Action 下單方向 0買 1賣
Volume 下單數量
Price 預警價格
Code 品種代碼
Market 市場標識
Account 交易賬戶
AlarmPleaceOrder 事件 在 MarketData 對象中。
范例:
Sub MARKETDATA_AlarmPleaceOrder(Name, Order, OrderType, Action, Volume, Price, Code, Market, Account)
'觸發過來的信號寫盤
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