You are on page 1of 9

國外券商資源小弟家的新玩法

一、 資料源
目前各位將即時資料(包含 DDE)轉進 GlobalServer 使用 MetaServer 的部份,
小弟家則另行開發一項資料仲介軟體(KnowHowServer),將國外券商所提供
的資料源,轉換為 GS 可讀取的格式,來與 GS 進行溝通﹗當然,我們針對
國內即時源的部份,同樣有設計一個 DDE Server(包含多資料源),可供交易
內期的交易人使用,但因為考量國內程式交易環境的法令限制,及 DDE 資
料交換格式的時效性,故目前不開放對外使用,也許待那一天主管機管看清
楚現況,或是 KH 可以取得比 DDE 更即時的資料時,我們會將這項產品推
上線﹗
當然,有了即時源,實際上是可以自行開發平台,使資料+策略引擎+訊號+
下單同時在一個平台下完成。但小弟家沒有開發 EL 的語法,所以必須要以
高階語言編譯程式,因此本產品也沒有規劃要推出。
當然,這部份還包含了另外兩個功能,第一是可直接將由券商所提供的歷史資料
回補至 GS 所存放在電腦中的記憶體位置(短時間);另外,就是提供將歷史資料
轉成 XPO 的格式(近期開發中),再讓 GS 讀取(長時間)。

二、 KnowHowEvent.dll
使用 TS 所提供的類別庫進行連結,只是小弟家使用的方法是寫一個動態連
結檔(KnowHowEvent.dll),來命令 TS 中的.mdb 檔案有新的資料寫入時,同步
將.mdb 中的新資料寫出至外部的下單系統,以最即時的方法取得下單訊號
且由下單系統來執行下單動作。

而關於國外券商所提供的資源,我們將他與 TS 整體的規劃如下圖流程所示,
提供給各位參考,此流程簡單易懂,有興趣的網大也可以依此架構進行開發。這
也就是小弟說,為什麼國外比較好玩的主要原因,只要您會寫程式,其它的或說
小弟覺得最重要的”即時源”,國外券商都已經幫你解決了﹗效能遠高於一般國內
以 DDE 連結的方式,程式實作上也較國內某資訊廠商開發的報價接口來的好使
用。
所以小弟家由以上我們所開發的小玩具,針對 FXCM 及 IB 分別設計了兩套
下單工具,如下:

A、FXCM 外匯自動下單交易系統
在主程式之下,各位同樣可以看到一個“報價表單”,為提供客戶手動下單
之用,同樣即時源一樣取自 FXCM 的伺服器(免費)。另外,主程式之下,包含了
“回報視窗”,就是讀回 FXCM 伺服器內傳回的成交回報,並且同樣保留可執行
手動平倉功能;“訊息表單”,讀取 FXCM 回傳給你的訊息,例如保證金不足、
下單單位錯誤等訊息;“帳戶資訊”,讀取登錄該帳戶的所有資訊,包含目前持
有部份的浮動損益及帳戶的總權益等。
“掛單表單”,主要的功能就是顧及客戶於下單時(無論手動或自動),都有
可能因為價格已經跑掉而沒辨法成交(或是您可以將它視為委回,但一旦成交該
筆掛單即會被刪除),此時,該筆下單即會呈現在此,讓您知道您還有一筆預掛
單在系統內,當然這部份是保留客製化的主要功能,例如我們可以為客戶設計刪
單,及再追單等類似演算法的功能;“策略表單”,主要用於自動交易,提供客
戶策略建表,因為客戶在 TS 上可能同時跑多組策略,但不一定每組策略都會實
際作單,故設計此表單提供客戶做確認的功能,一旦由 TS 讀回的訊號與此表單
中的欄位互相對應,且欄位一已勾選確認,則此筆單將會正確的被送出。主程式
畫面如下,
上述的主程式“回報表單”中,尚包含了三張表單,為“目前部位表單”、
“平倉表單”及“總表單”。基本上,主程式是完全根據 FXCM 提供的 AP 來設
計,表單功能幾乎與其相同。

另外,保留手動下單功能,使用者可點選報價表單中的 Bid 或 Ask 進行買賣


下單,且下單的型態提供“市價”及“限價”兩種;另外,交易人亦可點選閃電
下單功能,系統會根據您所點選商品的內外盤價直接丟單,不會出現下方的確認
視窗。
手動平倉功能,使用者可點選“回報視窗”中,“目前部位表單”裡的
“Close”進行手動平倉,則系統會帶回成交序號及單位的確認視窗,協助交易
者進行平倉動作。

另外,關於 FXCM 下單系統的其它功能,將會持續針對其 AP 該有的功能進


行開發。未來,也將持續開發其它不同外匯現貨交易商的下單系統,例如:Forex…,
同時也提供簡訊功能,讓我們可以取得最新的下單訊息及系統訊息。

B、Interactive Brokers 外期自動下單交易系統


主程式的部份如下圖,在開啟檔案時,程式會自動幫您登入(必須先開啟 IB
的 TWS 系統),而表單上的 IB Report 及 Error and Messages 會回報相關的登錄資
訊。而表單下方的欄位,主要是將 TS 所產生的訊號呈現於此(本機上 TS 的任何
策略訊號),表單右方中間的表單是讓客戶自建確認下單策略,一旦下方表格與
右方表格相互對應,下單系統會立即幫您下單。
而系統的中有二個顯示回報儲存格,分別為委託回報及成交回報。這裏要特
別提及的部份,實際上,IB 所提供的回報訊息很多,但我們僅截取認為有用的訊
息,當然如果客戶對於其它回報訊息認為有用,則在接口有提供的情況下,讀取
相關的資料。另外,各位可以看到表單的最下方,提供了系統狀態顯示。其中,
包含了 IB 連線狀態、系統時間(本機),以及包含一個系統離開鍵。

手動下單及刪單,委回及成回會同時取回,且在成回取得的情況下,而刪單時,
只要填入未成交回報的委託單 Ticks ID 即可。另外,只要點選閃電下單,則游標
指向 bid 價且按左鍵時即賣出,同理 ask 價即買進。
手動取得某商品的報價及手動取得某商品的歷史資料(可轉出 txt 檔),在與
手動下單的介面均可實現。而在介面取得報價的目的在於,可針對某些商品來進
行套利及價差交易。
當然,此系統我們同樣提供簡訊功能,讓我們可以確實掌握系統及下單目前
的現況,哈﹗不過因為沒有在 ts 上跑策略所以畫面右方的訊號表單沒有東西寫
入,但我們自己測試的結果,在 ts 下以 1tick 跑策略,下單系統的單一樣僅跟,
這好像是廢話,要是自己寫的 ap 跑的比 ts 慢,那就是一個天大的笑話了。

You might also like