C#行情API使用手冊

C#行情API驗證流程

API驗證流程

STEP1

請先下載API元件,並使用您的程式登入元富API,登入測試環境。

STEP2

於數位API網站線上驗證公告。

STEP3

數位API網站公告驗證成功之後,請重新登入API。

STEP4

請點選數位API網站線上認證"取得報價"按鈕。

STEP5

請在數位API網站線上認證填入在API端取得的行情資料。

STEP6

請點選數位API網站線上認證"驗證行情資料"按鈕。

STEP7

若行情資料驗證正確,即自動開通行情API權限。

STEP8

行情驗證成功之後,請重新登入API。

關聯網站

C#行情API範例程式說明

1. 系統需求

  • .Net Framwork 4.0

  • Visual Studio 2013

2. 環境準備

安裝UI外掛元件: GKS2DevExpress範例程式套裝元件(18.02.13.01).exe

3. 執行Sample

1

進入專案目錄 WPF_MasterQuoteCSSample目錄下,直接開啟.csproj 檔案

2

直接執行 sample code,確認能夠使用API

Docs UI Kit Docs UI Kit
3

輸入身分證字號、密碼、選擇訂閱內容後,開始連線

4

填入股票代號、期貨代號,按下訂閱

4. 回報狀態事件

4.1 Observer_OnSystemEvent

說明 系統訊息通知

4.2 Observer_OnConnectState

說明 系統連線狀態

4.3 Observer_OnUpdateLastSnapshot

說明 商品最新快照更新

4.4 QuoteApi_OnLoginResultEvent_DAPI

說明 登入是否成功

4.5 QuoteApi_OnAnnouncementEvent_DAPI

說明 公告內容

4.6 QuoteApi_OnVerifiedEvent_DAPI

說明 驗證結果回報

4.7 QuoteApi_OnSystemEvent_DAPI

說明 回傳驗證失敗訊息

4.8 QuoteApi_OnUpdateBasic_DAPI

說明 回傳商品資訊

5. API物件欄位說明

5.1 class ProductSnapshot (報價資料)

No. 欄位名稱 資料類型 格式 說明
1 BasicData ProductBasic 商品基本資料
2 TickData ProductTick 商品Tick報價資料

5.2 class ProductTick (報價資料)

No. 欄位名稱 資料類型 格式 說明
1 Exchange String 交易所(TWSE、TAIFEX)
2 Symbol String 商品代號(TWSE、TAIFEX)
3 MatchTime String %H:%M:%S.%f 成交資料時間(TWSE、TAIFEX)
4 OrderBookTime String %H:%M:%S.%f 五檔資料時間(TWSE、TAIFEX)
5 TxSeq String 交易所序號(TWSE、TAIFEX)
6 ObSeq String 交易所序號(TWSE、TAIFEX)
7 IsTrail Bool 0:非試撮,1:試撮 是否為試撮資料(TWSE、TAIFEX)
8 DecimalLocator String 價格欄位小數位數(TAIFEX)
9 MatchPrice String 成交價 成交價(TWSE、TAIFEX)
10 MatchQty String 商品成交量(TWSE、TAIFEX)
11 MatchPriceList String[] 一筆行情, 多筆成交價(TWSE、TAIFEX)
12 MatchQtyList String[] 一筆行情, 多筆成交量(TWSE、TAIFEX)
13 MatchBuyCount String 累計買進成交筆數(TAIFEX)
14 MatchSellCount String 累計賣出成交筆數(TAIFEX)
15 TotalMatchQty String 商品成交總量(TWSE、TAIFEX)
16 TotalTradingAmount String 商品成交總額(TWSE、TAIFEX)
17 TradingUnit String 交易單位(TWSE、TAIFEX)
18 DayHigh String 當日最高價(TWSE、TAIFEX)
19 DayLow String 當日最低價(TWSE、TAIFEX)
20 RefPrice String 參考價(TWSE)
21 BuyPrice String[] 五檔報價(買價) (TWSE、TAIFEX)
22 BuyQty String[] 五檔報價(買量) (TWSE、TAIFEX)
23 SellPrice String[] 五檔報價(賣價) (TWSE、TAIFEX)
24 SellQty String[] 五檔報價(賣量) (TWSE、TAIFEX)
25 AllMarketAmount String 整體市場成交總額(TWSE)
26 AllMarketVolume String 整體市場成交數量(TWSE)
27 AllMarketCnt String 整體市場成交筆數(TWSE)
28 AllMarketBuyCnt String 整體市場委託買進筆數(TWSE)
29 AllMarketSellCnt String 整體市場委託賣出筆數(TWSE)
30 AllMarketBuyQty String 整體市場委託買進數量(TWSE)
31 AllMarketSellQty String 整體市場委託賣出數量(TWSE)
32 IsFixedPriceTransaction String 是否為定盤交易(TWSE)
33 OpenPrice String 開盤價(TWSE、TAIFEX)
34 FirstDerivedBuyPriceOrg String 衍生委託單第一檔買進價格數量(TAIFEX)
35 FirstDerivedBuyQty String 衍生委託單第一檔買進價格數量(TAIFEX)
36 FirstDerivedSellPriceOrg String 衍生委託單第一檔賣出價格數量(TAIFEX)
37 FirstDerivedSellQty String 衍生委託單第一檔賣出價格數量(TAIFEX)
38 TotalBuyOrder String 買進累計委託筆數(TAIFEX)
39 TotalBuyQty String 買進累計委託合約數(TAIFEX)
40 TotalSellOrder String 賣出累計委託筆數(TAIFEX)
41 TotalSellQty String 賣出累計委託合約數(TAIFEX)
42 ClosePrice String 收盤價(TAIFEX)
43 SettlePrice String 結算價(TAIFEX)

5.3 class ProductBasic (基本資料)

No. 欄位名稱 資料類型 格式 說明
1 Exchange String 交易所(TWSE、TAIFEX)
2 Symbol String 商品代號(TWSE、TAIFEX)
3 Category String 商品分類(TWSE、TAIFEX)
4 TodayRefPrice String 參考價(TAIFEX)
5 RiseStopPrice String 漲停價(TWSE、TAIFEX)
6 FallStopPrice String 跌停價(TWSE、TAIFEX)
7 ChineseName String UTF-8 商品中文名稱(TWSE)
8 PreTotalMatchQty String 上一交易日成交總量(TWSE、TAIFEX)
9 PreTodayRefPrice String 上一交易日參考價(TWSE、TAIFEX)
10 PreClosePrice String 上一交易日收盤價(TWSE、TAIFEX)
11 IndustryCategory String 參考“產業別代碼表” 產業別(TWSE)
12 StockCategory String 參考"證券別代碼表" 證券別(TWSE)
13 BoardRemark String 板別註記(TWSE)
14 ClassRemark String 參考”股票異常代碼表” 股票異常代碼(TWSE)
15 StockAnomalyCode String 參考"股票異常代碼表" 股票異常代碼(TWSE)
16 NonTenParValueRemark String 非10元面額註記(TWSE)
17 AbnormalRecommendationIndicator String 異常推介個股註記(TWSE)
18 AbnormalSecuritiesIndicator String 異常推介個股註記(TWSE)
19 DayTradingRemark String "0":預設值
"A":可先買後賣或先賣後買現股當沖證券
"B":時表示為 可先買後賣現股當沖證券
SPACE:表示為不可現股當沖證券
可現股當沖註記(TWSE)
20 TradingUnit String 交易單位(TWSE)
21 TickSize String 最小跳動單位(TWSE)
22 prodKind String 契約種類(TAIFEX)
23 strikePriceDecimalLocator String 選擇權商品代號之履約價小數位數(TAIFEX)
24 PreTotalTradingAmount String 上一交易日成交總額(TWSE)
25 DecimalLocator String 價格小數位數(TAIFEX)
26 BeginDate String YYYYMMDD 上市日期(TAIFEX)
27 EndDate String YYYYMMDD 下市日期(TAIFEX)
28 FlowGroup String 流程群組(TAIFEX)
29 DeliveryDate String YYYYMMDD 最後結算日(TAIFEX)
30 DynamicBanding String Y:適用
N:不適用
適用動態價格穩定(TAIFEX)
31 ContractSymbol String 契約代號(TAIFEX)
32 ContractName String 契約中文名稱(TAIFEX)
33 StockID String 現貨股票代碼(TAIFEX)
34 StatusCode String N:正常
P:暫停交易
U:即將上市
狀態碼(TAIFEX)
35 Currency String 幣別(TAIFEX)
36 AcceptQuoteFlag String 是否可報價(TAIFEX)
37 BlockTradeFlag String Y:可
N:不可
是否可鉅額交易(TAIFEX)
38 ExpiryType String S:標準
W:週
到期別(TAIFEX)
39 UnderlyingType String E:ETF
S:個股
現貨類別(TAIFEX)
40 MarketCloseGroup String 參考"商品收盤時間群組表" 商品收盤時間群組(TAIFEX)
41 EndSession String 一般交易時段:0
盤後交易時段:1
交易時段(TAIFEX)
42 isAfterHours String 早盤 : 0
午盤: 1
早午盤識別(TAIFEX)

C#行情API實作使用說明

1. 載入dll

Docs UI Kit路徑: WPF_MasterQuoteCSSample\bin\x86_Release\

Docs UI Kit元件: MasterQuoteCS.dll、MasterQuoteCS_DAPI.dll、Newtonsoft.Json.dll、NLog.dll、SolaceSystems.Solclient.Messaging.dll。

Docs UI Kit

2. 初始化物件MarketDataMart

Docs UI Kit功能: 連線狀態通知、行情異動通知。

                
                  fQuoteApi = new MasterQuoteDAPI(fQuoteEvent);
				  fQuoteApi.OnSystemEvent_DAPI += QuoteApi_OnSystemEvent_DAPI;//驗證失敗訊息
				  fQuoteApi.OnUpdateBasic_DAPI += QuoteApi_OnUpdateBasic_DAPI;//傳來驗證商品資料
				  fQuoteApi.OnMatch_DAPI += QuoteApi_OnMatch_DAPI;//傳來驗證成交行情
				  fQuoteEvent.OnSystemEvent += Observer_OnSystemEvent;//系統訊息通知
				  fQuoteEvent.OnConnectState += Observer_OnConnectState;//系統連線狀態
				  fQuoteEvent.OnUpdateLastSnapshot += Observer_OnUpdateLastSnapshot;//國內商品最新快照更新
				  fQuoteEvent.OnUpdateOvsMatch += QuoteEvent_OnUpdateOvsMatch; //海期成交行情
				  fQuoteEvent.OnUpdateOvsOrderBook += QuoteEvent_OnUpdateOvsOrderBook;//海期五檔行情
                
              

※註:請參閱Sample中的「InitQuoteAPI」procedure。

3. 執行連線:執行函式Docs UI KitLogin

                
                  fQuoteApi.Login(aUsername, aUsername, aIsSIM);
                
              

參數說明

欄位名稱 格式 說明
aUsername String 身份證字號
aPassword String 密碼
aIsSIM Bool 是否為測試主機

※註:請參閱Sample中的「DoQuoteConn」procedure。

4. API登入,驗證失敗回報

Docs UI Kit由「OnSystemEvent_DAPI」傳回驗證失敗訊息。

Docs UI Kit驗證成功, 會收到通知行情連線狀態, 方能開始訂閱行情、取商品檔。

※註:請參閱Sample中的「QuoteApi_OnSystemEvent_DAPI」procedure。

5. 系統公告驗證

Docs UI Kit由「QuoteApi_OnAnnouncementEvent_DAPI」會收到相關公告資訊。

請回傳公告內文,依照內文至驗證網進行公告驗證

6. API驗證成交行情

Docs UI Kit由「OnMatch_DAPI」傳回驗證行情, 請依照內容至驗證網進行驗證

※註:請參閱Sample中的「QuoteApi_OnMatch_DAPI」procedure。

[以下需驗證成功後, 才能進行]

7. API通知行情連線狀態

Docs UI Kit由「OnSystemEvent」傳回狀態, 其參數"aIsConnected"值為True表示連線成功。

※註:請參閱Sample中的「Observer_OnConnectState」procedure。

8. 訂閱國內行情:執行函式Docs UI KitSubscribe

                
                  fQuoteApi.Subscribe(exchange, symbol);
                
              

參數說明

欄位名稱 格式 說明
exchange String 交易所(TWS:證交所; TWF:期交所)
symbol String 商品代碼
(證券:輸入股票代號;
期貨:輸入期交所委託代碼, 例如:TXFA3)

※註:請參閱Sample中的「btnSymbol_Sub_Click」procedure。

9. API通知國內行情異動

Docs UI Kit由「OnUpdateLastSnapshot」傳回行情, 行情欄位說明, 請閱本文「5.欄位規格」。

※註:請參閱Sample中的「Observer_OnUpdateLastSnapshot」procedure。

10. 取消訂閱國內行情:執行函式Docs UI KitUnsubscribe

                
                  fQuoteApi.Unsubscribe(exchange, symbol);
                
              

參數說明

欄位名稱 格式 說明
exchange String 交易所(TWS:證交所; TWF:期交所)
symbol String 商品代碼
(證券:輸入股票代號;
期貨:輸入期交所委託代碼, 例如:TXFA3)

※註:請參閱Sample中的「btnSymbol_UnSub_Click」procedure。

訊息代碼表

1. TWSE 證交所訊息代碼表

TWSE股票異常代碼

股票異常代碼
00—正常 01—注意 02—處置 03—注意及處置
04—再次處置 05—注意及再次處置
06—彈性處置 07—注意及彈性處置
產業別
產業別代碼 產業別 產業別代碼 產業別 產業別代碼 產業別
1 水泥工業 12 汽車工業 23 油電燃氣業
2 食品工業 14 建材營造 24 半導體業
3 塑膠工業 15 航運業 25 電腦及週邊設備業
4 紡織纖維 16 觀光事業 26 光電業
5 電機機械 17 金融保險 27 通信網路業
6 電器電纜 18 貿易百貨 28 電子零組件業
8 玻璃陶瓷 19 綜合 29 電子通路業
9 造紙工業 20 其他 30 資訊服務業
10 鋼鐵工業 21 化學工業 31 其他電子業
11 橡膠工業 22 生技醫療業
證券別
代碼 意義
W1 認購權證、等比例發行(公開發行時原始轉換標的股數為1000)
W2 認購權證、不等比例發行(公開發行時原始轉換標的股數不為1000)
W3 認售權證、等比例發行(公開發行時原始轉換標的股數為1000)
W4 認售權證、不等比例發行(公開發行時原始轉換標的股數不為1000)
BS 本國企業上市屬證券股
FB 本國企業上市屬銀行股
空白 其他本國企業上市證券
RR 其它外國企業上市證券
RS 外國企業上市屬證券股
RB 外國企業上市屬銀行股

2. TAIFEX 期交所訊息代碼表

TAIFEX 期交所訊息代碼表

流程群組 開盤時間 收盤時間
1 08:45 13:45
3 08:45 13:30
4 08:45 11:00
5 08:45 16:15
6 08:00 16:15
9 08:45 14:00
10 15:00 隔日05:00
11 17:25 隔日05:00
12 15:00 隔日03:30
(當美國東部夏令時間EDT:隔日02:30)
13 15:00 06:15:00 PM
(當英國夏令時間BST:17:15)
14 15:00 10:30:00 PM
(當美國東部夏令時間EDT:21:30)

TAIFEX商品收盤時間群組

MARKET-CLOSE-GROUP 收盤時間
1 13:45
5 16:15
10 隔日5:00

元富證券股份有限公司 |台北市敦化南路二段97號22樓|客服專線:0800-088-148|手機及國外客服專線:(02)2708-3972 |108年金管證總字第0031號

元富證券股份有限公司
台北市敦化南路二段97號22樓
客服專線:0800-088-148
手機及國外客服專線:(02)2708-3972
108年金管證總字第0031號