C#複委託交易API使用手冊

C#複委託交易API流程說明

API驗證流程

STEP1

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

STEP2

下單(依照數位API網站線上驗證下單內容,於您的程式進行委託下單)。

STEP3

下單完成後,於數位API網站線上驗證頁面輸入委託書號。

STEP4

以上步驟完成後,於數位API網站線上驗證頁面點選"驗證"。

STEP5

驗證成功後及驗證完成,須待人員審核,請稍待審核流程,方能開通權限。

關聯網站

C#複委託交易API範例程式說明

1. 系統需求

  • 須先以系統管理員身分執行路徑: MasterTradeOvsStkCSSample\bin\Release_x64\RegOCX.bat,進行api元件註冊(檔案路徑不可存在中文)

  • .Net Framwork 4.8

  • Visual Studio 2022

  • 如果MLSecuritiesATL_x64.dll出現註冊失敗的訊息,請先去微軟官方網站下載並安裝套件https://aka.ms/vs/17/release/vc_redist.x64.exe

2. 執行Sample

Docs UI Kit
1

選擇連線至"模擬交易主機",先確認能夠正常使用

2

輸入身分證字號、密碼後,登入帳號

3

填入商品代號、交易所代號、委託量、委託價,按下新單

API規格

物件名稱: MasterTradeOvsStkAPI:

API主要物件,負責API證券連線、交易、回報等行為

一、 方法

A. 連線

Connect:建立連線

輸入/輸出 欄位名稱 格式 說明
In aLoginID String 使用者名稱
In aLoginPw String 使用者密碼
In euServerKind TEServerKind

Release:連線至交易主機

SIM:連線至模擬競賽主機

In IsForce String 單一帳號認證成功即下單

B. 切斷連線

Disconnect:切斷連線

輸入/輸出 欄位名稱 格式 說明
- - - -

C. 下單

SendOvsStkOrder_New:新單

輸入/輸出 欄位名稱 格式 說明
In NewOrder TOvsStkOrder_NEW 請閱:資料格A.新單格式
Out aMsg String 訊息

D. 刪單

SendOvsStkOrder_Del:刪單

輸入/輸出 欄位名稱 格式 說明
In DelOrder TOvsStkOrder_DEL 請閱: 資料格B.刪單格式
Out aMsg String 訊息

E. 交割款查詢

SendOvsStkQry_SettleAmt

輸入/輸出 欄位名稱 格式 說明
In tmpQry TOvsStkQry_SettleAmt
以下為TOvsStkQry_SettleAmt欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
DateS String 查詢起始日期(yyyyMMdd)
DateE String 查詢結束日期(yyyyMMdd)
Out aMsg String 訊息

F. 即時庫存查詢

SendOvsStkQry_Bal

輸入/輸出 欄位名稱 格式 說明
In tmpQry TOvsStkQry_Bal
以下為TOvsStkQry_Bal欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
Out aMsg String 訊息

G. 庫存明細查詢

SendOvsStkQry_BalDtl

輸入/輸出 欄位名稱 格式 說明
In tmpQry TOvsStkQry_BalDtl
以下為TOvsStkQry_BalDtl欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
Out aMsg String 訊息

H. 委託查詢

SendOvsStkQry_Order

輸入/輸出 欄位名稱 格式 說明
In tmpQry TOvsStkQry_Order
以下為TOvsStkQry_Order欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
DateS String 查詢起始日期(yyyyMMdd)
DateE String 查詢結束日期(yyyyMMdd)
Out aMsg String 訊息

I. 成交查詢

SendOvsStkQry_Deal

輸入/輸出 欄位名稱 格式 說明
In tmpQry TOvsStkQry_Deal
以下為TOvsStkQry_Deal欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
DateS String 查詢起始日期(yyyyMMdd)
DateE String 查詢結束日期(yyyyMMdd)
Out aMsg String 訊息

二、 事件

A. 系統訊息

OnSystemEvent:系統訊息事件

欄位名稱 格式 說明
aMsg String 系統訊息文字

B. 證券公告

OnAnnouncementEvent

欄位名稱 格式 說明
aMsg String 公告訊息

C. 通知複委託證券可以開始委託

OnOvsStkStartToOrderEvent:請注意:必須收到此Event的通知, 才可以開始委託

欄位名稱 格式 說明
- - -

D. 返回可交易複委託證券帳號

OnOvsStockAccListUpdateEvent

欄位名稱 格式 說明
aAccList List‹TCommonAccData›

可交易複委託證券帳號列表,

請閱:資料格式C.複委託證券帳號格式


E. 複委託證券交易回補完成

OnRptOvsStk_RecoverDoneEvent

欄位名稱 格式 說明
aRptResultList

TRptOvsStkResultList:

List‹TRptOvsStkResult›

回報列表,

請閱:資料格式D.回報格式

aRptDealDtlList TRptOvsStkDtlLSS:List‹object›

成交明細, object為TRptOvsStkDtl_Deal,

請閱:資料格式E.成交格式


F. 複委託證券交易即時回報

OnRptOvsStk_RealTimeResultEvent

欄位名稱 格式 說明
aPushResutList

List‹string›

string為Json, 格式:TRptOvsStkResult,

請閱:資料格式D.回報格式


G. 複委託證券交易收單ACK

OnOvsStkORD_ACKEvent

欄位名稱 格式 說明
tmpORD_ACK

TOvsStkOrder_ORD_ACK:

OrderStu:收單狀態,

請閱:資料格式F.收單狀態列舉說明

Time:時間
Msg:訊息
OrgOrderContent:原始委託物件 請閱:資料格式G.原始委託物件格式

H. 交割款查詢結果

OnOvsStkQryResSettleAmtEvent

欄位名稱 格式 說明
tmpQryRes TOvsStkQryRes_SettleAmt
以下為TOvsStkQryRes_SettleAmt欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
DateS String 查詢起始日期(yyyyMMdd)
DateE String 查詢結束日期(yyyyMMdd)
QryResStu String 查詢結果狀態(0:表示查詢成功, 其餘視為查詢失敗)
QryResTime String 查詢結果返回時間
QryResMsg String 查詢結果訊息
QryRes List‹TOvsStkQryResSettleAmt› 查詢結果,請閱:資料格式H.交割款查詢結果格式

A. 即時庫存查詢結果

OnOvsStkQryResBalEvent

欄位名稱 格式 說明
tmpQryRes TOvsStkQryRes_Bal
以下為TOvsStkQryRes_Bal欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
QryResStu String 查詢結果狀態(0:表示查詢成功, 其餘視為查詢失敗)
QryResTime String 查詢結果返回時間
QryResMsg String 查詢結果訊息
QryRes List‹TOvsStkQryResBal› 查詢結果, 請閱:資料格式I.即時庫存查詢結果格式

B. 庫存明細查詢結果

OnOvsStkQryResBalDtlEvent

欄位名稱 格式 說明
tmpQryRes TOvsStkQryRes_BalDtl
以下為TOvsStkQryRes_BalDtl欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
QryResStu String 查詢結果狀態(0:表示查詢成功, 其餘視為查詢失敗)
QryResTime String 查詢結果返回時間
QryResMsg String 查詢結果訊息
QryRes List‹TOvsStkQryResBalDtl› 查詢結果, 請閱:資料格式J.庫存明細查詢結果格式

C. 委託查詢結果

OnOvsStkQryResOrderEvent

欄位名稱 格式 說明
tmpQryRes TOvsStkQryRes_Order
以下為TOvsStkQryRes_Order欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
DateS String 查詢起始日期(yyyyMMdd)
DateE String 查詢結束日期(yyyyMMdd)
QryResStu String 查詢結果狀態(0:表示查詢成功, 其餘視為查詢失敗)
QryResTime String 查詢結果返回時間
QryResMsg String 查詢結果訊息
QryRes List‹TOvsStkQryResOrder› 查詢結果,請閱:資料格式K.委託查詢結果格式

D. 成交查詢結果

OnOvsStkQryResDealEvent

欄位名稱 格式 說明
tmpQryRes TOvsStkQryRes_Deal
以下為TOvsStkQryRes_Deal欄位說明:
Broker String 輸入分公司代碼
MAccNo7 String 輸入交易帳號7碼
DateS String 查詢起始日期(yyyyMMdd)
DateE String 查詢結束日期(yyyyMMdd)
QryResStu String 查詢結果狀態(0:表示查詢成功, 其餘視為查詢失敗)
QryResTime String 查詢結果返回時間
QryResMsg String 查詢結果訊息
QryRes List‹TOvsStkQryResDeal› 查詢結果,請閱:資料格式L.成交查詢結果格式

三、 資料格式

A. 新單格式: TOvsStkOrder_NEW

欄位名稱 格式 說明
SegMkt String 請填入0:整股
Broker String 分公司代碼
MAccNo7 String 七碼母帳號
AccNo7 String

七碼子帳號

(註:不為母子戶者, 請填入七碼母帳號)

BSType String 買賣別(B/S)
Exchange String 元富交易所代碼, 美股請填入US
Symbol String 商品代號(ex:NVDA)
PriceType String

價格類別, 請填入2

(2:限價)

OrderPrice String 委託價
OrderQty String 委託量(股數)
OrderType String 單別(0:單日單, 1:長效單)
SettleType String

委託台外幣, 請填入Y或N, 不可填入空字串或不填

(Y:外幣交割, N:台幣交割)


B. 刪單格式: TOvsStkOrder_DEL

欄位名稱 格式 說明
Broker String 分公司代碼
MAccNo7 String 七碼母帳號
AccNo7 String

七碼子帳號

(註:不為母子戶者, 請填入七碼母帳號)

OrderNo String 原委託單號
OrderDate String 原委託單的委託日期
NetId String 網路單號(請填入空字串)

C. 複委託證券帳號格式: TCommonAccData

欄位名稱 格式 說明
AccType String OvsStk:複委託證
BkrNo String 分公司代碼
AccNo String Broker-七碼子帳號
MAccNo String Broker-七碼母帳號
AccNo7 String 七碼子帳號
MAccNo7 String 七碼母帳號
IsSub boolean 是否為母子戶

D. 回報格式: TRptOvsStkResult

欄位名稱 格式 說明
OrderStatus String

2:委託成功

6:已刪單

71:部份成交

72:已完全成交

11:委託失敗

Function_Code String 交易性質(01:新單 04:刪單)
OrderDate String 委託單日期YYYYMMDD
Broker String 分公司代碼
OrderNo String 委託單號
AccNo7 String 七碼子帳號
Exchange String 元富交易所代碼, 美股為US
Symbol String 商品代碼ex:NVDA
BSType String 買賣別B/S
Price decimal 委託價
OrderQty Integer 委託量(股數)
CumQty decimal 成交數量(股數)
DelQty Integer 刪單數量(股數)
LeavesQty Integer 剩餘有效委託數量(股數)
PriceType String 價格類別(2:限價)
OrderType String 單別(0:單日單, 1:長效單)
SettleType String 台外幣業務別(Y:外幣, N:台幣)
OrderTime String 委託時間HHmmss
DealTime String 成交時間HHmmss
Msg String 訊息
以下為即時回報專用:
Single_OrderStatus TERptOvsStkOrderStatus

本次回報狀態:

2:委託成功回報

6:刪單成功回報

7:成交回報

11:錯誤回報

Single_Price decimal

價格

(本次若為委託成功, 則為委託價; 若為成交回報, 則為成交單價)

Single_Price Integer

數量(股數)

(本次若為委託成功, 則為委託量; 若為成交回報, 則為成交單量)

Single_RejCode TERptOvsStkOrderRejectCode

拒絕委託類型:

1:新單

2:刪單


E. 成交格式: TRptOvsStkDtl_Deal

欄位名稱 格式 說明
Function_Code String 交易性質(01:新單 04:刪單)
OrderDate String 委託單日期YYYYMMDD
Broker String 分公司代碼
OrderNo String 委託單號
DealDate String 成交日期YYYYMMDD
Time String 時間HHmmss
AccNo7 String 七碼子帳號
Exchange String 元富交易所代碼, 美股為US
Symbol String 商品代碼ex:NVDA
Price decimal 委託價
BSType String 買賣別B/S
DealSn String 市場撮合流水號
DealAmt decimal 成交金額
Tax decimal 交易稅
Fee decimal 手續費
SettleAmt decimal 應收付金額
BrokerFee decimal 上手手續費
DealNo String 成交單號
Qty Integer 成交數量(股數)
SettleType String 台外幣業務別(Y:外幣, N:台幣)
OrderTime String 委託時間HHmmss
DealTime String 成交時間HHmmss

F. 收單狀態列舉說明: TEOvsStkOrderKind

代碼 說明
-1 Local未送單
-999 無法辨別的錯誤
-900 暫停收單
-901 新單委託收單失敗
-902 刪單委託收單失敗
-903 減量委託收單失敗
-904 改價委託收單失敗
11 新單委託已送至交易主機
12 刪單委託已送至交易主機
13 減量委託已送至交易主機
14 改價委託已送至交易主機

G. 原始委託物件格式: TOvsStkOrder

欄位名稱 格式 說明
Memo String 備註
OrderKind TEOvsStkOrderKind

10:新單委託

20:刪單委託

CAOrder String 收單成功才有資料

H. 交割款查詢結果格式: TOvsStkQryResSettleAmt

欄位名稱 格式 說明
Exchange String 交易所代碼
DealDate String 成交日期
SettleDate String 交割日期
SettleAmt String 交割金額(+/-)
SettleCur String 交割幣別
SettleAmt_NTD String 台幣應收付金額(+/-)
ExchRate String 匯率
SettleType String 台外幣業務別(Y:外幣 N:台幣)

I. 即時庫存查詢結果格式: TOvsStkQryResBal

欄位名稱 格式 說明
Exchange String 交易所代碼
Symbol String 商品代碼
OpenBalQty String 昨日庫存
OrderQty_B String 買入數量
DealQty_B String 買入成交數量
OrderQty_S String 賣出數量
DealQty_S String 賣出成交數量
BalQtyAvi String 目前可用庫存
BalQty String 實際庫存
CostAmt String 庫存成本
BalAvgPri String 均價
ProdName String 商品名稱
Gain String 損益(+/-)
Profitability String 報酬率%(+/-)
Cur String 幣別
CostAmt_NTD String 台幣庫存成本
SegMkt String 類別(0:整股 1.定額)
SettleType String 台外幣業務別(Y:外幣 N:台幣)

J. 庫存明細查詢結果格式: TOvsStkQryResBalDtl

欄位名稱 格式 說明
Exchange String 交易所代碼
DealDate String 成交日期
DealNo String 成交單號
Symbol String 商品代碼
BSType String 買賣別(B/S)
DealQty String 成交數量
DealAmt String 成交價金
SettleAmt String 應收付金額(+/-)
CutQty String 已平倉數量
SettleAmt_Cut String 平倉應收付金額(+/-)
BalQty String 未平倉數量
Cur String 幣別
ProdName String 商品名稱
SegMkt String 類別(0:整股 1.定額)
SettleType String 台外幣業務別(Y:外幣 N:台幣)

K. 委託查詢結果格式: TOvsStkQryResOrder

欄位名稱 格式 說明
OrderDate String 委託單日期
NetNo String 網路單號
OrderNo String 委託單號
Exchange String 交易所代碼
Symbol String 商品代碼
OrderQty String 委託數量
OrderPri String 委託價
BSType String 買賣別(B/S)
DealQty String 成交數量
OrderType String 長效單(GTC)0:單日單 1:長效單
Src String 來源別(下單管道)
OrdStu String 委託狀態
ErrMsg String 錯誤原因說明
SendOrderDate String 下單日期
SendOrderTime String 下單時間
ProdName String 商品名稱
WKQty String 未成交數量
OrdStuType String

委託單狀態類別碼:

A01委託成功

A02改量成功

A03刪單成功

A04全部成交

A05部份成交

A06部分成交其餘刪單

A07委託失敗

A08委託收到

A09改量收到

A10刪單收到

A11改單失敗

A12刪單失敗

B01委託成功

B02部份成交

B03全部成交

B04部份成交其餘刪單

B05刪單成功

Z01預約收到

Z02預約取消

PriceType String 價格種類(1:市場價,2:限價)
SegMkt String 類別(0:整股 1.定額)
SettleType String 台外幣業務別(Y:外幣 N:台幣)

L. 成交查詢結果格式: TOvsStkQryResDeal

欄位名稱 格式 說明
DealDate String 成交日期
OrderDate String 委託單日期
OrderNo String 委託單號
Exchange String 交易所代碼
Symbol String 商品代碼
DealQty String 成交數量
DealPri String 成交價
BSType String 買賣別(B/S)
DealAmt String 成交價金
DealTime String 成交時間
DealNo String 成交單號
ProdName String 商品名稱
Cur String 幣別
SegMkt String 類別(0:整股 1.定額)
SettleType String 台外幣業務別(Y:外幣 N:台幣)

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

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