[計(jì)算機(jī)軟件及應(yīng)用]NGES交易系統(tǒng)交易API和行情API接口規(guī)范_第1頁
[計(jì)算機(jī)軟件及應(yīng)用]NGES交易系統(tǒng)交易API和行情API接口規(guī)范_第2頁
[計(jì)算機(jī)軟件及應(yīng)用]NGES交易系統(tǒng)交易API和行情API接口規(guī)范_第3頁
[計(jì)算機(jī)軟件及應(yīng)用]NGES交易系統(tǒng)交易API和行情API接口規(guī)范_第4頁
[計(jì)算機(jī)軟件及應(yīng)用]NGES交易系統(tǒng)交易API和行情API接口規(guī)范_第5頁
已閱讀5頁,還剩173頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、NGES交易系統(tǒng)交易API和行情API接口規(guī)范Version發(fā)布日期:2009年6月20日修訂記錄、核準(zhǔn)記錄和審核記錄修訂記錄版本編號修訂日期主要修訂摘要2009/5/4技術(shù)中心和技術(shù)公司:根據(jù)會(huì)員接入規(guī)范和流程測試結(jié)果修改文檔。2008/12/4技術(shù)公司:增加災(zāi)備接口;增加主題查詢接口說明。2008/01/28技術(shù)公司:增加RESTART、RESUME和QUICK三種數(shù)據(jù)流恢復(fù)模式。2007/12/17技術(shù)部:合并TraderAPI和MduserAPI文檔,調(diào)整部分章節(jié)內(nèi)容。2007/12/11技術(shù)公司:增加了錯(cuò)誤代碼處理;增加了私有流序列號設(shè)置功能;增加了前置機(jī)NameServer內(nèi)容,但

2、暫時(shí)不開放。2007/8/31上海期貨交易所技術(shù)部:根據(jù)NGES V1.08交易系統(tǒng)修改部分接口;提高壓縮效率;增加交易員私有流。2006/8/11上海期貨信息技術(shù)制定初稿。核準(zhǔn)記錄核準(zhǔn)人員屬于部門(單位)核準(zhǔn)日期嚴(yán)少輝技術(shù)中心2009/6/20審核記錄審核人員屬于部門(單位)審核日期鄒文軍技術(shù)中心2009/5/20文件制作和維護(hù):上海期貨交易所技術(shù)部;上海期貨信息技術(shù)。目 錄 TOC o 1-3 h z u HYPERLINK l _Toc233184969 第一部分、NGES交易系統(tǒng)接口介紹 PAGEREF _Toc233184969 h 4 HYPERLINK l _Toc2331849

3、70 1.介紹 PAGEREF _Toc233184970 h 4 HYPERLINK l _Toc233184971 1.1.背景 PAGEREF _Toc233184971 h 4 HYPERLINK l _Toc233184972 1.2.TraderAPI簡介 PAGEREF _Toc233184972 h 4 HYPERLINK l _Toc233184973 1.3.MduserAPI簡介 PAGEREF _Toc233184973 h 4 HYPERLINK l _Toc233184974 1.4.TraderAPI/MduserAPI發(fā)行的平臺(tái) PAGEREF _Toc2331

4、84974 h 4 HYPERLINK l _Toc233184975 1.5.修改歷史 PAGEREF _Toc233184975 h 4 HYPERLINK l _Toc233184976 1.5.1.版本 PAGEREF _Toc233184976 h 4 HYPERLINK l _Toc233184977 2.FTD體系結(jié)構(gòu) PAGEREF _Toc233184977 h 4 HYPERLINK l _Toc233184978 2.1.通訊模式 PAGEREF _Toc233184978 h 4 HYPERLINK l _Toc233184979 2.2.數(shù)據(jù)流 PAGEREF _To

5、c233184979 h 4 HYPERLINK l _Toc233184980 3.接口模式 PAGEREF _Toc233184980 h 4 HYPERLINK l _Toc233184981 3.1.TraderAPI接口 PAGEREF _Toc233184981 h 4 HYPERLINK l _Toc233184982 3.1.1.對話流和查詢流編程接口 PAGEREF _Toc233184982 h 4 HYPERLINK l _Toc233184983 3.1.2.私有流編程接口 PAGEREF _Toc233184983 h 4 HYPERLINK l _Toc233184

6、984 3.1.3.公共流編程接口 PAGEREF _Toc233184984 h 4 HYPERLINK l _Toc233184985 3.2.MduserAPI接口 PAGEREF _Toc233184985 h 4 HYPERLINK l _Toc233184986 3.2.1.對話流編程接口 PAGEREF _Toc233184986 h 4 HYPERLINK l _Toc233184987 3.2.2.行情流編程接口 PAGEREF _Toc233184987 h 4 HYPERLINK l _Toc233184988 4.運(yùn)行模式 PAGEREF _Toc233184988 h

7、 4 HYPERLINK l _Toc233184989 4.1.工作流程 PAGEREF _Toc233184989 h 4 HYPERLINK l _Toc233184990 4.1.1.初始化階段 PAGEREF _Toc233184990 h 4 HYPERLINK l _Toc233184991 4.1.2.功能調(diào)用階段 PAGEREF _Toc233184991 h 4 HYPERLINK l _Toc233184992 4.2.工作線程 PAGEREF _Toc233184992 h 4 HYPERLINK l _Toc233184993 4.3.會(huì)員系統(tǒng)使用TraderAPI與

8、交易系統(tǒng)的交互 PAGEREF _Toc233184993 h 4 HYPERLINK l _Toc233184994 4.4.與交易所前置系統(tǒng)的連接 PAGEREF _Toc233184994 h 4 HYPERLINK l _Toc233184995 4.5.本地文件 PAGEREF _Toc233184995 h 4 HYPERLINK l _Toc233184996 4.6.請求/應(yīng)答日志文件 PAGEREF _Toc233184996 h 4 HYPERLINK l _Toc233184997 4.7.可靠數(shù)據(jù)流的訂閱方式 PAGEREF _Toc233184997 h 4 HYPE

9、RLINK l _Toc233184998 4.7.1.API維護(hù)重傳報(bào)文的序號 PAGEREF _Toc233184998 h 4 HYPERLINK l _Toc233184999 4.7.2.會(huì)員系統(tǒng)維護(hù)重傳報(bào)文的序號 PAGEREF _Toc233184999 h 4 HYPERLINK l _Toc233185000 4.8.心跳機(jī)制(Heartbeat) PAGEREF _Toc233185000 h 4 HYPERLINK l _Toc233185001 4.9.前置機(jī)列表 PAGEREF _Toc233185001 h 4 HYPERLINK l _Toc233185002 4

10、.10.災(zāi)備接口 PAGEREF _Toc233185002 h 4 HYPERLINK l _Toc233185003 第二部分、TraderAPI參考手冊 PAGEREF _Toc233185003 h 4 HYPERLINK l _Toc233185004 1.TraderAPI接口分類 PAGEREF _Toc233185004 h 4 HYPERLINK l _Toc233185005 1.1.管理接口 PAGEREF _Toc233185005 h 4 HYPERLINK l _Toc233185006 1.2.業(yè)務(wù)接口 PAGEREF _Toc233185006 h 4 HYPE

11、RLINK l _Toc233185007 1.3.當(dāng)前版本不開放的業(yè)務(wù) PAGEREF _Toc233185007 h 4 HYPERLINK l _Toc233185008 2.TraderAPI參考手冊 PAGEREF _Toc233185008 h 4 HYPERLINK l _Toc233185009 2.1.CShfeFtdcTraderSpi接口 PAGEREF _Toc233185009 h 4 HYPERLINK l _Toc233185010 2.1.1.OnFrontConnected 方法 PAGEREF _Toc233185010 h 4 HYPERLINK l _T

12、oc233185011 2.1.2.OnFrontDisconnected 方法 PAGEREF _Toc233185011 h 4 HYPERLINK l _Toc233185012 2.1.3.OnHeartBeatWarning方法 PAGEREF _Toc233185012 h 4 HYPERLINK l _Toc233185013 2.1.4.OnPackageStart方法 PAGEREF _Toc233185013 h 4 HYPERLINK l _Toc233185014 2.1.5.OnPackageEnd方法 PAGEREF _Toc233185014 h 4 HYPERL

13、INK l _Toc233185015 2.1.6.OnRspUserLogin方法 PAGEREF _Toc233185015 h 4 HYPERLINK l _Toc233185016 2.1.7.OnRspUserLogout 方法 PAGEREF _Toc233185016 h 4 HYPERLINK l _Toc233185017 2.1.8.OnRspUserPasswordUpdate 方法 PAGEREF _Toc233185017 h 4 HYPERLINK l _Toc233185018 2.1.9.OnRspSubscribeTopic方法 PAGEREF _Toc233

14、185018 h 4 HYPERLINK l _Toc233185019 2.1.10.OnRspQryTopic方法 PAGEREF _Toc233185019 h 4 HYPERLINK l _Toc233185020 2.1.11.OnRspError 方法 PAGEREF _Toc233185020 h 4 HYPERLINK l _Toc233185021 2.1.12.OnRspOrderInsert 方法 PAGEREF _Toc233185021 h 4 HYPERLINK l _Toc233185022 2.1.13.OnRspOrderAction 方法 PAGEREF _

15、Toc233185022 h 4 HYPERLINK l _Toc233185023 2.1.14.OnRspQuoteInsert 方法 PAGEREF _Toc233185023 h 4 HYPERLINK l _Toc233185024 2.1.15.OnRspQuoteAction 方法 PAGEREF _Toc233185024 h 4 HYPERLINK l _Toc233185025 2.1.16.OnRspExecOrderInsert 方法 PAGEREF _Toc233185025 h 4 HYPERLINK l _Toc233185026 2.1.17.OnRspExec

16、OrderAction 方法 PAGEREF _Toc233185026 h 4 HYPERLINK l _Toc233185027 2.1.18.OnRspQryPartAccount 方法 PAGEREF _Toc233185027 h 4 HYPERLINK l _Toc233185028 2.1.19.OnRspQryOrder 方法 PAGEREF _Toc233185028 h 4 HYPERLINK l _Toc233185029 2.1.20.OnRspQryQuote 方法 PAGEREF _Toc233185029 h 4 HYPERLINK l _Toc233185030

17、 2.1.21.OnRspQryTrade 方法 PAGEREF _Toc233185030 h 4 HYPERLINK l _Toc233185031 2.1.22.OnRspQryClient 方法 PAGEREF _Toc233185031 h 4 HYPERLINK l _Toc233185032 2.1.23.OnRspQryPartPosition 方法 PAGEREF _Toc233185032 h 4 HYPERLINK l _Toc233185033 2.1.24.OnRspQryClientPosition 方法 PAGEREF _Toc233185033 h 4 HYPE

18、RLINK l _Toc233185034 2.1.25.OnRspQryInstrument 方法 PAGEREF _Toc233185034 h 4 HYPERLINK l _Toc233185035 2.1.26.OnRspQryInstrumentStatus 方法 PAGEREF _Toc233185035 h 4 HYPERLINK l _Toc233185036 2.1.27.OnRspQryBulletin 方法 PAGEREF _Toc233185036 h 4 HYPERLINK l _Toc233185037 2.1.28.OnRspQryMarketData 方法 PA

19、GEREF _Toc233185037 h 4 HYPERLINK l _Toc233185038 2.1.29.OnRspQryMBLMarketData 方法 PAGEREF _Toc233185038 h 4 HYPERLINK l _Toc233185039 2.1.30.OnRspQryHedgeVolume 方法 PAGEREF _Toc233185039 h 4 HYPERLINK l _Toc233185040 2.1.31.OnRtnTrade 方法 PAGEREF _Toc233185040 h 4 HYPERLINK l _Toc233185041 2.1.32.OnRt

20、nOrder 方法 PAGEREF _Toc233185041 h 4 HYPERLINK l _Toc233185042 2.1.33.OnRtnQuote 方法 PAGEREF _Toc233185042 h 4 HYPERLINK l _Toc233185043 2.1.34.OnRtnExecOrder 方法 PAGEREF _Toc233185043 h 4 HYPERLINK l _Toc233185044 2.1.35.OnRtnInstrumentStatus 方法 PAGEREF _Toc233185044 h 4 HYPERLINK l _Toc233185045 2.1.

21、36.OnRtnInsInstrument 方法 PAGEREF _Toc233185045 h 4 HYPERLINK l _Toc233185046 2.1.37.OnRtnDelInstrument 方法 PAGEREF _Toc233185046 h 4 HYPERLINK l _Toc233185047 2.1.38.OnRtnInsCombinationLeg 方法 PAGEREF _Toc233185047 h 4 HYPERLINK l _Toc233185048 2.1.39.OnRtnDelCombinationLeg 方法 PAGEREF _Toc233185048 h

22、4 HYPERLINK l _Toc233185049 2.1.40.OnRtnBulletin 方法 PAGEREF _Toc233185049 h 4 HYPERLINK l _Toc233185050 2.1.41.OnRtnAliasDefine 方法 PAGEREF _Toc233185050 h 4 HYPERLINK l _Toc233185051 2.1.42.OnRtnFlowMessageCancel方法 PAGEREF _Toc233185051 h 4 HYPERLINK l _Toc233185052 2.1.43.OnErrRtnOrderInsert方法 PAGE

23、REF _Toc233185052 h 4 HYPERLINK l _Toc233185053 2.1.44.OnErrRtnOrderAction方法 PAGEREF _Toc233185053 h 4 HYPERLINK l _Toc233185054 5.OnErrRtnQuoteInsert方法 PAGEREF _Toc233185054 h 4 HYPERLINK l _Toc233185055 2.1.46.OnErrRtnQuoteAction方法 PAGEREF _Toc233185055 h 4 HYPERLINK l _Toc233185056 2.1.47.OnErrRt

24、nExecOrderInsert方法 PAGEREF _Toc233185056 h 4 HYPERLINK l _Toc233185057 2.1.48.OnErrRtnExecOrderAction方法 PAGEREF _Toc233185057 h 4 HYPERLINK l _Toc233185058 2.1.49.OnRspCombOrderInsert方法 PAGEREF _Toc233185058 h 4 HYPERLINK l _Toc233185059 2.1.50.OnRspQryCombOrder方法 PAGEREF _Toc233185059 h 4 HYPERLINK

25、 l _Toc233185060 2.1.51.OnRtnCombOrder方法 PAGEREF _Toc233185060 h 4 HYPERLINK l _Toc233185061 2.1.52.OnErrRtnCombOrderInsert方法 PAGEREF _Toc233185061 h 4 HYPERLINK l _Toc233185062 2.2.CShfeFtdcTraderApi接口 PAGEREF _Toc233185062 h 4 HYPERLINK l _Toc233185063 2.2.1.CreateFtdcTraderApi方法 PAGEREF _Toc23318

26、5063 h 4 HYPERLINK l _Toc233185064 2.2.2.GetVersion方法 PAGEREF _Toc233185064 h 4 HYPERLINK l _Toc233185065 2.2.3.Release 方法 PAGEREF _Toc233185065 h 4 HYPERLINK l _Toc233185066 2.2.4.Init 方法 PAGEREF _Toc233185066 h 4 HYPERLINK l _Toc233185067 2.2.5.Join 方法 PAGEREF _Toc233185067 h 4 HYPERLINK l _Toc233

27、185068 2.2.6.GetTradingDay方法 PAGEREF _Toc233185068 h 4 HYPERLINK l _Toc233185069 2.2.7.RegisterSpi 方法 PAGEREF _Toc233185069 h 4 HYPERLINK l _Toc233185070 2.2.8.RegisterFront 方法 PAGEREF _Toc233185070 h 4 HYPERLINK l _Toc233185071 2.2.9.RegisterNameServer 方法 PAGEREF _Toc233185071 h 4 HYPERLINK l _Toc2

28、33185072 2.2.10.SetHeartbeatTimeout方法 PAGEREF _Toc233185072 h 4 HYPERLINK l _Toc233185073 2.2.11.OpenRequestLog方法 PAGEREF _Toc233185073 h 4 HYPERLINK l _Toc233185074 2.2.12.OpenResponseLog方法 PAGEREF _Toc233185074 h 4 HYPERLINK l _Toc233185075 2.2.13.SubscribePrivateTopic方法 PAGEREF _Toc233185075 h 4

29、HYPERLINK l _Toc233185076 2.2.14.SubscribePublicTopic方法 PAGEREF _Toc233185076 h 4 HYPERLINK l _Toc233185077 2.2.15.SubscribeUserTopic方法 PAGEREF _Toc233185077 h 4 HYPERLINK l _Toc233185078 2.2.16.ReqUserLogin 方法 PAGEREF _Toc233185078 h 4 HYPERLINK l _Toc233185079 2.2.17.ReqUserLogout 方法 PAGEREF _Toc2

30、33185079 h 4 HYPERLINK l _Toc233185080 2.2.18.ReqUserPasswordUpdate 方法 PAGEREF _Toc233185080 h 4 HYPERLINK l _Toc233185081 2.2.19.ReqSubscribeTopic方法 PAGEREF _Toc233185081 h 4 HYPERLINK l _Toc233185082 2.2.20.ReqQryTopic方法 PAGEREF _Toc233185082 h 4 HYPERLINK l _Toc233185083 2.2.21.ReqOrderInsert 方法

31、PAGEREF _Toc233185083 h 4 HYPERLINK l _Toc233185084 2.2.22.ReqOrderAction 方法 PAGEREF _Toc233185084 h 4 HYPERLINK l _Toc233185085 2.2.23.ReqQuoteInsert 方法 PAGEREF _Toc233185085 h 4 HYPERLINK l _Toc233185086 2.2.24.ReqQuoteAction 方法 PAGEREF _Toc233185086 h 4 HYPERLINK l _Toc233185087 2.2.25.ReqExecOrd

32、erInsert 方法 PAGEREF _Toc233185087 h 4 HYPERLINK l _Toc233185088 2.2.26.ReqExecOrderAction 方法 PAGEREF _Toc233185088 h 4 HYPERLINK l _Toc233185089 2.2.27.ReqQryPartAccount 方法 PAGEREF _Toc233185089 h 4 HYPERLINK l _Toc233185090 2.2.28.ReqQryOrder 方法 PAGEREF _Toc233185090 h 4 HYPERLINK l _Toc233185091 2

33、.2.29.ReqQryQuote 方法 PAGEREF _Toc233185091 h 4 HYPERLINK l _Toc233185092 2.2.30.ReqQryTrade 方法 PAGEREF _Toc233185092 h 4 HYPERLINK l _Toc233185093 2.2.31.ReqQryClient 方法 PAGEREF _Toc233185093 h 4 HYPERLINK l _Toc233185094 2.2.32.ReqQryPartPosition 方法 PAGEREF _Toc233185094 h 4 HYPERLINK l _Toc2331850

34、95 2.2.33.ReqQryClientPosition 方法 PAGEREF _Toc233185095 h 4 HYPERLINK l _Toc233185096 2.2.34.ReqQryInstrument 方法 PAGEREF _Toc233185096 h 4 HYPERLINK l _Toc233185097 2.2.35.ReqQryInstrumentStatus 方法 PAGEREF _Toc233185097 h 4 HYPERLINK l _Toc233185098 2.2.36.ReqQryMarketData 方法 PAGEREF _Toc233185098 h

35、 4 HYPERLINK l _Toc233185099 2.2.37.ReqQryBulletin 方法 PAGEREF _Toc233185099 h 4 HYPERLINK l _Toc233185100 2.2.38.ReqQryMBLMarketData 方法 PAGEREF _Toc233185100 h 4 HYPERLINK l _Toc233185101 2.2.39.ReqQryHedgeVolume 方法 PAGEREF _Toc233185101 h 4 HYPERLINK l _Toc233185102 2.2.40.ReqCombOrderInsert方法 PAGE

36、REF _Toc233185102 h 4 HYPERLINK l _Toc233185103 2.2.41.ReqQryCombOrder方法 PAGEREF _Toc233185103 h 4 HYPERLINK l _Toc233185104 3.TraderAPI開發(fā)示例 PAGEREF _Toc233185104 h 4 HYPERLINK l _Toc233185105 第三部分、MduserAPI參考手冊 PAGEREF _Toc233185105 h 4 HYPERLINK l _Toc233185106 1.MduserAPI接口分類 PAGEREF _Toc23318510

37、6 h 4 HYPERLINK l _Toc233185107 1.1.管理接口 PAGEREF _Toc233185107 h 4 HYPERLINK l _Toc233185108 1.2.業(yè)務(wù)接口 PAGEREF _Toc233185108 h 4 HYPERLINK l _Toc233185109 2.MduserAPI參考手冊 PAGEREF _Toc233185109 h 4 HYPERLINK l _Toc233185110 2.1.CShfeFtdcMduserSpi接口 PAGEREF _Toc233185110 h 4 HYPERLINK l _Toc233185111 2

38、.1.1.OnFrontConnected 方法 PAGEREF _Toc233185111 h 4 HYPERLINK l _Toc233185112 2.1.2.OnFrontDisconnected 方法 PAGEREF _Toc233185112 h 4 HYPERLINK l _Toc233185113 2.1.3.OnHeartBeatWarning方法 PAGEREF _Toc233185113 h 4 HYPERLINK l _Toc233185114 2.1.4.OnPackageStart方法 PAGEREF _Toc233185114 h 4 HYPERLINK l _T

39、oc233185115 2.1.5.OnPackageEnd方法 PAGEREF _Toc233185115 h 4 HYPERLINK l _Toc233185116 2.1.6.OnRspUserLogin方法 PAGEREF _Toc233185116 h 4 HYPERLINK l _Toc233185117 2.1.7.OnRspUserLogout 方法 PAGEREF _Toc233185117 h 4 HYPERLINK l _Toc233185118 2.1.8.OnRspSubscribeTopic方法 PAGEREF _Toc233185118 h 4 HYPERLINK

40、 l _Toc233185119 2.1.9.OnRspQryTopic方法 PAGEREF _Toc233185119 h 4 HYPERLINK l _Toc233185120 2.1.10.OnRspError 方法 PAGEREF _Toc233185120 h 4 HYPERLINK l _Toc233185121 1.OnRtnDepthMarketData 方法 PAGEREF _Toc233185121 h 4 HYPERLINK l _Toc233185122 2.2.CShfeFtdcMduserApi接口 PAGEREF _Toc233185122 h 4 HYPERLI

41、NK l _Toc233185123 2.2.1.CreateFtdcMduserApi方法 PAGEREF _Toc233185123 h 4 HYPERLINK l _Toc233185124 3.1.1.GetVersion方法 PAGEREF _Toc233185124 h 4 HYPERLINK l _Toc233185125 2.2.2.Release 方法 PAGEREF _Toc233185125 h 4 HYPERLINK l _Toc233185126 2.2.3.Init 方法 PAGEREF _Toc233185126 h 4 HYPERLINK l _Toc23318

42、5127 2.2.4.Join 方法 PAGEREF _Toc233185127 h 4 HYPERLINK l _Toc233185128 2.2.5.GetTradingDay方法 PAGEREF _Toc233185128 h 4 HYPERLINK l _Toc233185129 2.2.6.RegisterSpi 方法 PAGEREF _Toc233185129 h 4 HYPERLINK l _Toc233185130 2.2.7.RegisterFront 方法 PAGEREF _Toc233185130 h 4 HYPERLINK l _Toc233185131 3.1.2.R

43、egisterNameServer 方法 PAGEREF _Toc233185131 h 4 HYPERLINK l _Toc233185132 2.2.8.SetHeartbeatTimeout方法 PAGEREF _Toc233185132 h 4 HYPERLINK l _Toc233185133 2.2.9.SubscribeMarketDataTopic方法 PAGEREF _Toc233185133 h 4 HYPERLINK l _Toc233185134 2.2.10.ReqUserLogin 方法 PAGEREF _Toc233185134 h 4 HYPERLINK l _

44、Toc233185135 2.2.11.ReqUserLogout 方法 PAGEREF _Toc233185135 h 4 HYPERLINK l _Toc233185136 2.2.12.ReqSubscribeTopic方法 PAGEREF _Toc233185136 h 4 HYPERLINK l _Toc233185137 2.2.13.ReqQryTopic方法 PAGEREF _Toc233185137 h 4 HYPERLINK l _Toc233185138 3.MduserAPI開發(fā)示例 PAGEREF _Toc233185138 h 4 HYPERLINK l _Toc2

45、33185139 第四部分 附錄 PAGEREF _Toc233185139 h 4 HYPERLINK l _Toc233185140 1.錯(cuò)誤編碼列表 PAGEREF _Toc233185140 h 4 HYPERLINK l _Toc233185141 2.枚舉值列表 PAGEREF _Toc233185141 h 4 HYPERLINK l _Toc233185142 3.數(shù)據(jù)類型列表 PAGEREF _Toc233185142 h 4第一部分、NGES交易系統(tǒng)接口介紹本部分主要介紹NGES交易系統(tǒng)的接口,包括:第一章引入NGES交易系統(tǒng)的兩個(gè)接口,TraderAPI用于會(huì)員系統(tǒng)下達(dá)交

46、易、控制和查詢指令,接收私有流(含報(bào)單插入、報(bào)單操作響應(yīng)和成交回報(bào))、公共流(市場控制提示)、響應(yīng)流和查詢流(查詢結(jié)果);MduserAPI用于會(huì)員系統(tǒng)和行情轉(zhuǎn)發(fā)商系統(tǒng)接收行情流。第二章介紹了兩個(gè)API之后使用的通信協(xié)議FTD(Futures Trading Data Exchange Protocol),重點(diǎn)說明了數(shù)據(jù)流。第三章介紹了兩個(gè)API對應(yīng)于不同類型應(yīng)用的編程接口。第四章介紹了API的工作模式,包括線程之間的通信、心跳機(jī)制和私有流信息傳輸?shù)目煽啃詫?shí)現(xiàn)。作為NGES交易系統(tǒng)的接口基礎(chǔ),TraderAPI和MduserAPI的用戶應(yīng)該仔細(xì)閱讀第一部分內(nèi)容。介紹背景上海期貨交易所于2006

47、年11月3日成功上線了“新一代交易所系統(tǒng)”(簡稱NGES)的第一階段項(xiàng)目,其中包括交易系統(tǒng)(簡稱NGES交易系統(tǒng))。NGES交易系統(tǒng)使用了開放的主流平臺(tái),可以運(yùn)行在Unix和Windows操作系統(tǒng)上。在中國證監(jiān)會(huì)信息中心的統(tǒng)一領(lǐng)導(dǎo)下,上海期貨交易所(簡稱SHFE或者交易所)、鄭州商品交易所(簡稱CZCE)和大連商品交易所(簡稱DCE)聯(lián)合研究了期貨交易數(shù)據(jù)交換標(biāo)準(zhǔn)(Futures Trading Data Exchange Protocol,簡稱FTD或者FTD協(xié)議)。中國證監(jiān)會(huì)于2005年3月25日發(fā)布了FTD(JR/T 0016-2004),并于同日作為行業(yè)標(biāo)準(zhǔn)實(shí)施。NGES交易系統(tǒng)本質(zhì)上

48、使用FTD作為會(huì)員遠(yuǎn)程交易的主接入?yún)f(xié)議;同時(shí)為保持兼容和會(huì)員遠(yuǎn)程交易系統(tǒng)平穩(wěn)切換,NGES交易系統(tǒng)支持原有基于Stratus交易主機(jī)的V1和V2版本的接口(分別簡稱為OFPV1和OFPV2);OFPV1和V2在NGES交易系統(tǒng)內(nèi)部通過前置機(jī)實(shí)現(xiàn)了到FTD的翻譯和轉(zhuǎn)換。和OFPV1和V2不同,F(xiàn)TD協(xié)議體系較為復(fù)雜,為簡化會(huì)員端遠(yuǎn)程交易系統(tǒng)的開發(fā)難度,同時(shí)也為提高交易系統(tǒng)運(yùn)行的可靠性,SHFE不建議會(huì)員的遠(yuǎn)程交易系統(tǒng)(簡稱會(huì)員系統(tǒng)或者會(huì)員端)直接使用FTD協(xié)議接入NGES交易系統(tǒng)。為此,上海期貨交易所發(fā)布了NGES交易系統(tǒng)的交易API接口(簡稱NGES TraderAPI或者TraderAPI)

49、和行情API接口(簡稱NGES MduserAPI或者M(jìn)duserAPI)。會(huì)員系統(tǒng)調(diào)用TraderAPI即可完成與NGES交易系統(tǒng)的對接,接收到交易所的報(bào)單和成交回報(bào)后TraderAPI將回調(diào)(Callback)會(huì)員系統(tǒng);會(huì)員系統(tǒng)或者行情轉(zhuǎn)發(fā)商(簡稱行情商)(會(huì)員和行情轉(zhuǎn)發(fā)商接收交易所行情的系統(tǒng)統(tǒng)稱為行情接收端程序)系統(tǒng)調(diào)用MduserAPI即可完成與NGES交易系統(tǒng)的對接,接收到交易所的行情后MduserAPI將回調(diào)(Callback)行情接收端程序(又稱為行情接收系統(tǒng))。TraderAPI把與NGES交易系統(tǒng)之間復(fù)雜的協(xié)議轉(zhuǎn)換、數(shù)據(jù)同步和網(wǎng)絡(luò)通信進(jìn)行了封裝。TraderAPI通過建立一個(gè)

50、基于TCP的虛鏈路通道與NGES交易系統(tǒng)交易前置機(jī)的連接,實(shí)現(xiàn)會(huì)員系統(tǒng)的報(bào)單等交易行為。通過TraderAPI建立的連接通道具有多地址注冊、斷線自動(dòng)重連和交易數(shù)據(jù)自動(dòng)重傳等特點(diǎn)。MduserAPI與TraderAPI類似,建立一個(gè)基于TCP的虛鏈路通道與NGES交易系統(tǒng)行情前置機(jī)的連接,實(shí)現(xiàn)行情的訂閱和接收。TraderAPI簡介TraderAPI是一個(gè)基于C+的類庫,通過使用和擴(kuò)展類庫提供的接口來實(shí)現(xiàn)全部的交易功能,包括報(bào)單與報(bào)價(jià)的錄入、報(bào)單與報(bào)價(jià)的撤銷、報(bào)單與報(bào)價(jià)的掛起、報(bào)單與報(bào)價(jià)的激活、報(bào)單與報(bào)價(jià)的修改、報(bào)單與報(bào)價(jià)的查詢、成交單查詢、會(huì)員客戶查詢、會(huì)員持倉查詢、客戶持倉查詢、合約查詢、合

51、約交易狀態(tài)查詢、交易所公告查詢。該類庫包含以下5個(gè)文件:文件名版本文件大小文件描述交易接口頭文件0定義了UserAPI所需的一系列數(shù)據(jù)類型的頭文件定義了一系列業(yè)務(wù)相關(guān)的數(shù)據(jù)結(jié)構(gòu)的頭文件traderapi.dll動(dòng)態(tài)鏈接庫二進(jìn)制文件traderapi.lib導(dǎo)入庫文件支持MS VC 6.0,MS VC.NET 2003編譯器。需要打開多線程編譯選項(xiàng)/MT。注意:NGES交易系統(tǒng)支持許多新的報(bào)單指令(比如市價(jià)、最優(yōu)價(jià)、組合交易等),還支持新的交易品種(比如期權(quán)及其報(bào)價(jià)),但受現(xiàn)有交易規(guī)則限制,NGES交易系統(tǒng)并沒有開放上述功能。會(huì)員系統(tǒng)在開發(fā)過程中需注意“當(dāng)前版本不開放的業(yè)務(wù)”,同時(shí)在每個(gè)功能描述

52、中的具體描述。MduserAPI簡介MduserAPI也是一個(gè)基于C+的類庫,通過使用和擴(kuò)展類庫提供的接口來實(shí)現(xiàn)全部的行情訂閱和接收功能。該類庫包含以下5個(gè)文件:文件名版本文件大小文件描述FtdcMduser行情接口頭文件定義了UserAPI所需的一系列數(shù)據(jù)類型的頭文件FtdcUserApiDataT定義了一系列業(yè)務(wù)相關(guān)的數(shù)據(jù)結(jié)構(gòu)的頭文件mduserapi.dll動(dòng)態(tài)鏈接庫二進(jìn)制文件mduapi.lib導(dǎo)入庫文件支持MS VC 6.0,MS VC.NET 2003編譯器。需要打開多線程編譯選項(xiàng)/MT。TraderAPI/MduserAPI發(fā)行的平臺(tái)目前發(fā)布了以下操作系統(tǒng)平臺(tái)的版本:Intel

53、X86/WindowsXP:包括.h文件、.dll文件和.lib文件。Intel Linux:包括.h文件和.so文件;在RedHat kernel -42下完成編譯。如果需要其他操作系統(tǒng)版本請和下面相關(guān)人員聯(lián)系:聯(lián)系人:王君鵬 :+86-21-68400751 :+86-0-郵箱: HYPERLINK mailto: 修改歷史本版本基于NGES交易系統(tǒng)交易API和行情API接口規(guī)范V1.12 R003修改。主要有以下變更:本版本提供了災(zāi)備功能:增加【4.10災(zāi)備接口】,簡要說明了災(zāi)備原理。由于登錄報(bào)文中增加了數(shù)據(jù)中心代碼,TraderAPI、MdUserAPI修改了ReqUserLogin和

54、OnRspUserLogin方法的參數(shù)。TraderAPI中增加了“數(shù)據(jù)流回退通知”O(jiān)nRtnFlowMessageCancel方法的說明。本版本提供了數(shù)據(jù)流長度的查詢功能:登錄交易系統(tǒng)時(shí),應(yīng)答中會(huì)返回當(dāng)前會(huì)員私有流長度和交易員私有流長度。TraderAPI、MdUserAPI增加了對ReqQryTopic和RspQryTpoic方法說明,用于查詢流長度。對以前版本發(fā)現(xiàn)問題的修正: TraderAPI、MdUserAPI增加了GetVersion方法說明,之前版本雖提供功能但無文檔說明。MdUserAPI增加了RegisterNameServer方法說明,之前版本雖提供功能但無文檔說明。修改了

55、聯(lián)系人,將周軍改成王君鵬。FTD體系結(jié)構(gòu)會(huì)員和行情商的系統(tǒng)并不直接與NGES交易系統(tǒng)的核心主機(jī)通信;從安全隔離角度上看,會(huì)員和行情商甚至不能意識(shí)到有交易撮合主機(jī)和行情主機(jī)的存在;會(huì)員和行情商只能連接到上述主機(jī)的兩個(gè)代理服務(wù)器,分別是交易前置機(jī)(簡稱交易前置,也被稱為交易系統(tǒng)或交易所系統(tǒng))和行情前置機(jī)(簡稱為行情前置)。交易前置機(jī)負(fù)責(zé)會(huì)員系統(tǒng)的交易業(yè)務(wù),但不負(fù)責(zé)發(fā)送行情,此項(xiàng)功能由行情前置機(jī)完成。TraderAPI使用建立在TCP協(xié)議之上的FTD協(xié)議與NGES交易系統(tǒng)的前置機(jī)通信。MduserAPI使用建立在TCP協(xié)議之上的FTD協(xié)議與NGES交易系統(tǒng)的行情前置機(jī)通信。行情前置負(fù)責(zé)處理行情接收系

56、統(tǒng)的行情訂閱請求,并將所訂閱的行情推送到行情接收系統(tǒng)。通訊模式FTD協(xié)議中的所有通訊都基于某個(gè)通訊模式。通訊模式實(shí)際上就是通訊雙方協(xié)同工作的方式。FTD涉及的通訊模式共有三種:對話通訊模式私有通訊模式廣播通訊模式對話通訊模式是指由會(huì)員系統(tǒng)主動(dòng)發(fā)起的通訊請求。該請求被交易系統(tǒng)接收和處理,并給予響應(yīng)。例如報(bào)單、查詢等。這種通訊模式與普通的客戶/服務(wù)器模式相同。私有通訊模式是指交易系統(tǒng)主動(dòng),向某個(gè)特定的會(huì)員或者特定會(huì)員的某個(gè)特定交易員發(fā)出的信息。例如成交回報(bào)等。廣播通訊模式是指交易系統(tǒng)主動(dòng),向市場中的所有會(huì)員都發(fā)出相同的信息。例如公告、市場公共信息等。通訊模式和網(wǎng)絡(luò)的連接不一定存在簡單的一對一的關(guān)系

57、。也就是說,一個(gè)網(wǎng)絡(luò)連接中可能傳送多種不同通訊模式的報(bào)文,一種通訊模式的報(bào)文也可以在多個(gè)不同的連接中傳送。無論哪種通訊模式,其通訊過程都如圖1所示:圖表 SEQ 圖表 * ARABIC 1各通訊模式的工作過程數(shù)據(jù)流交易前置支持對話通訊模式、私有通訊模式、廣播通訊模式。行情前置的行情轉(zhuǎn)發(fā)功能支持對話通訊模式、廣播通訊模式。1、對話通訊模式對話通訊模式下支持對話數(shù)據(jù)流和查詢數(shù)據(jù)流。對話數(shù)據(jù)流是一個(gè)雙向數(shù)據(jù)流,會(huì)員系統(tǒng)發(fā)送交易請求,交易系統(tǒng)反饋應(yīng)答。交易系統(tǒng)不維護(hù)對話流的狀態(tài)。系統(tǒng)故障時(shí),對話數(shù)據(jù)流會(huì)重置,在途的數(shù)據(jù)可能會(huì)丟失。查詢數(shù)據(jù)流是一個(gè)雙向數(shù)據(jù)流,會(huì)員系統(tǒng)發(fā)送查詢請求,交易系統(tǒng)反饋應(yīng)答。交易

58、系統(tǒng)不維護(hù)查詢流的狀態(tài)。系統(tǒng)故障時(shí),查詢數(shù)據(jù)流會(huì)重置,在途的數(shù)據(jù)可能會(huì)丟失。2、私有通訊模式在私有通訊模式下,數(shù)據(jù)流是可靠的。在一個(gè)交易日內(nèi),會(huì)員系統(tǒng)斷線后恢復(fù)連接時(shí),可以請求交易系統(tǒng)發(fā)送指定序號之后的私有數(shù)據(jù)流數(shù)據(jù)。私有數(shù)據(jù)流向會(huì)員系統(tǒng)提供報(bào)單狀態(tài)報(bào)告、成交回報(bào)更等信息。私有數(shù)據(jù)流分為會(huì)員私有流和交易員私有流兩種。交易系統(tǒng)維護(hù)每個(gè)會(huì)員的私有流,有關(guān)該會(huì)員的回報(bào)信息,如報(bào)單回報(bào)、成交回報(bào)等都通過會(huì)員私有流下發(fā)。交易員要有足夠的權(quán)限才可以訂閱會(huì)員私有流。交易員私有流與會(huì)員私有流類似,但只包含該交易員發(fā)起的交易引發(fā)的回報(bào)信息。每個(gè)交易員都可以訂閱自已的交易員私有流。3、廣播通訊模式廣播通訊模式下支

59、持公共數(shù)據(jù)流。公共數(shù)據(jù)流是一個(gè)單向數(shù)據(jù)流,由交易系統(tǒng)或者行情系統(tǒng)發(fā)向會(huì)員系統(tǒng),用于發(fā)送市場公共信息;公共數(shù)據(jù)流是一個(gè)可靠的數(shù)據(jù)流,交易系統(tǒng)維護(hù)整個(gè)系統(tǒng)的公共數(shù)據(jù)流,在一個(gè)交易日內(nèi),會(huì)員系統(tǒng)斷線恢復(fù)連接時(shí),可以請求交易系統(tǒng)發(fā)送指定序號之后的公共數(shù)據(jù)流數(shù)據(jù)。以行情為例,行情數(shù)據(jù)流是一個(gè)公共數(shù)據(jù)流,由行情發(fā)布系統(tǒng)發(fā)向會(huì)員系統(tǒng),用于發(fā)送行情信息;行情流是一個(gè)可靠的數(shù)據(jù)流,交易系統(tǒng)維護(hù)整個(gè)系統(tǒng)的行情流,在一個(gè)交易日內(nèi),行情接收系統(tǒng)斷線恢復(fù)連接時(shí),可以請求交易系統(tǒng)發(fā)送指定序號之后的行情流數(shù)據(jù)。交易系統(tǒng)所提供的行情內(nèi)容是按照主題組織的。每個(gè)主題包括一組合約的行情,還包括了行情發(fā)布內(nèi)容和發(fā)布方式,包括行情深度

60、、采樣頻率、延遲時(shí)間等。交易所會(huì)公布各行情主題的具體內(nèi)容,并設(shè)定每個(gè)行情用戶所能訂閱的行情主題。每個(gè)行情主題對應(yīng)著一個(gè)行情流。要獲得行情通知,行情接收系統(tǒng)必需在連接行情前置后,訂閱一個(gè)或多個(gè)行情發(fā)布主題。接口模式TraderAPI接口TraderAPI提供了二個(gè)接口,分別為CShfeFtdcTraderApi和CShfeFtdcTraderSpi。這兩個(gè)接口是對FTD協(xié)議的封裝。會(huì)員系統(tǒng)可以通過CShfeFtdcTraderApi發(fā)出操作請求,通過繼承CShfeFtdcTraderSpi并重載回調(diào)函數(shù)來處理交易系統(tǒng)的回復(fù)或響應(yīng)。對話流和查詢流編程接口通過對話流進(jìn)行通訊的編程接口通常如下:/請求

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論