C#

使用說明

交易 API

你可以在 Visual Studio 的 C# 專案裡透過下列方式來使用 API 的交易功能

步驟1, 透過 Reference Manager 將 megaSpeedyAPIDotnet.dll or megaSpeedyAPIDotnet_64.dll 加進專案的參考裡

1. 在專案名稱上按下滑鼠右鍵打開選單,選擇 Add 打開第 2 層選單

2. 在第 2 層選單選擇 Reference.... 開啟 Reference Manager

3. 在 Reference Manager 左方選單點選 Browse 並按下 Browse…

4. 在跳出來的檔案總管裡移動到 megaSpeedyAPIDotnet.dll or megaSpeedyAPIDotnet_64.dll 所在位置,點選檔案後按下 Add

步驟2, 在 Program.cs 開頭 Visual Studio 自動加上的 using 後面加上 using megaSpeedyAPI;
using megaSpeedyAPI;
步驟3, 產生一個類別為 spdOrderAPI 物件 orderAPI (名稱可自取)
spdOrderAPI orderAPI = new spdOrderAPI();
步驟4, 指定 event 發生時要由哪個 method 來負責處理
// 連線成功的事件處理
orderAPI.evOnConnected = new OnOrderConnected(this.OnConnected);
// 連線中斷的事件處理
orderAPI.evOnDisconnected = new OnOrderDisconnected(this.OnDisconnected);
// 登入成功或失敗的事件處理
orderAPI.evOnLogonResponse = new OnOrderLogonResponse(this.OnLogonResponse);
// 新單委託成功的事件處理
orderAPI.evOnNewOrder = new OnOrderReplyNewOrder(this.OnReplyNewOrder);
// 刪單委託成功的事件處理
orderAPI.evOnOrderCanceled = new OnOrderReplyCancelOrder(this.OnReplyCancelOrder);
// 改單委託成功的事件處理
orderAPI.evOnOrderReplaced = new OnOrderReplyReplaceOrder(this.OnReplyReplaceOrder);
// 委託失敗的事件處理
orderAPI.evOnOrderRejected = new OnOrderRejectOrder(this.OnOrderReject);
// 成交回報的事件處理
orderAPI.evOnOrderFilled = new OnOrderFill(this.OnOrderFill);
步驟5, 透過 spdOrderAPI 物件 orderAPI 使用 spdOrderAPI 的 method EnableMEGACA 來設定下單所用來產生簽章的憑證
orderAPI.EnableMEGACA("xxxxxx.pfx","id","password")
步驟6, 透過 spdOrderAPI 物件 orderAPI 使用 spdOrderAPI 的 method Connect 來連線交易主機
orderAPI.Connect("交易主機IP", 交易主機_ListenPort, 視為逾時的秒數);
步驟7, 繼續透過 spdOrderAPI 物件 orderAPI 使用 spdOrderAPI 的其他 method 來下單。可用函式列表請參閱「class spdOrderAPI」。

行情 API

你可以在 Visual Studio 的 C# 專案裡透過下列方式來使用 API 的行情功能

步驟1, 透過 Reference Manager 將 megaSpeedyAPIDotnet.dll or megaSpeedyAPIDotnet_64.dll 加進專案的參考裡

1. 在專案名稱上按下滑鼠右鍵打開選單,選擇 Add 打開第 2 層選單

2. 在第 2 層選單選擇 Reference.... 開啟 Reference Manager

3. 在 Reference Manager 左方選單點選 Browse 並按下 Browse...

4. 在跳出來的檔案總管裡移動到 megaSpeedyAPIDotnet.dll or megaSpeedyAPIDotnet_64.dll 所在位置,點選檔案後按下 Add

步驟2, 在 Program.cs 開頭 Visual Studio 自動加上的 using 後面加上 using megaSpeedyAPI;
using megaSpeedyAPI;
步驟3, 產生一個類別為 spdQuoteAPI 物件 quoteAPI(名稱可自取)
spdOrderAPI quoteAPI = new spdQuoteAPI();
步驟4, 指定 event 發生時要由哪個 method 來負責處理
// 連線成功的事件處理
quoteAPI.evOnConnected = new OnQuoteConnected(this.OnConnected);
// 連線中斷的事件處理
quoteAPI.evOnDisconnected = new OnQuoteDisconnected(this.OnDisconnected);
// 登入成功或失敗的事件處理
quoteAPI.evOnLogonResponse = new OnQuoteLogonResponse(this.OnLogonResponse);
// 商品檔下載完成的事件處理
quoteAPI.evOnContractDownloadComplete = new OnQuoteContractDownloadComplete(this.OnContractDownloadComplete);
// 收到委託簿的事件處理
quoteAPI.evOnOrderBook = new OnQuoteOrderBook(this.OnOrderBook);
// 收到成交訊息的事件處理
quoteAPI.evOnTrade = new OnQuoteTrade(this.OnTrade);
步驟5, 透過 spdQuoteAPI 物件 quoteAPI 使用 spdQuoteAPI 的函式 Logon 來連線行情主機
quoteAPI.Logon("行情主機IP", 行情主機_ListenPort, "your_id", "your_password", true);
步驟6, 繼續透過 spdQuoteAPI 物件 quoteAPI 使用 spdQuoteAPI 的其他函式來訂閱/解訂閱。可用函式列表請參閱「class spdQuoteAPI」。