nges交易系統(tǒng)_第1頁
nges交易系統(tǒng)_第2頁
nges交易系統(tǒng)_第3頁
nges交易系統(tǒng)_第4頁
nges交易系統(tǒng)_第5頁
已閱讀5頁,還剩204頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 nges交易系統(tǒng)交易api和行情api接口規(guī)范 v1.25nges交易系統(tǒng)交易api和行情api接口規(guī)范version:1.25發(fā)布日期:2014年06月26日i 修訂記錄、核準記錄和審核記錄修訂記錄版本編號修訂日期主要修訂摘要1.25-r0012014/03/26技術(shù)公司:traderapi增加了期權(quán)放棄執(zhí)行功能;traderapi修改了期權(quán)申請執(zhí)行相關(guān)函數(shù)的參數(shù);traderapi增加了詢價指令增加了錯誤代碼說明;增加了枚舉值;增加了數(shù)據(jù)類型。1.24-r0012013/5/7技術(shù)公司:traderapi增加了度量功能:addmeasureitem、onmeasurenotify1.23

2、-r0012013/5/6技術(shù)公司:修改了報單方法reqorderinsert說明。1.22-r0022012/9/10技術(shù)公司:traderapi增加了匯率查詢功能:reqqryexchangerate、onrspqryexchangerate;合約結(jié)構(gòu)增加了幣種字段:currencyid;traderapi開放了信息查詢功能:reqqryinformation、onrspqryinformation。1.22-r0012011/6/16技術(shù)公司:traderapi增加reqqryexecorder、onrspqryexecorder方法;mduserapi增加onrtnflowmessag

3、ecancel方法;給部分結(jié)構(gòu)增加了actionday字段;給部分結(jié)構(gòu)增加了businesslocalid字段;給執(zhí)行宣告增加了offsetflag字段。1.20-r0022009/5/4技術(shù)中心和技術(shù)公司:根據(jù)會員接入規(guī)范和流程測試結(jié)果修改文檔。1.20-r0012008/12/4技術(shù)公司:增加災(zāi)備接口;增加主題查詢接口說明。1.12-r0032008/01/28技術(shù)公司:增加restart、resume和quick三種數(shù)據(jù)流恢復(fù)模式。1.12-r0022007/12/17技術(shù)部:合并traderapi和mduserapi文檔,調(diào)整部分章節(jié)內(nèi)容。1.12-r0012007/12/11技術(shù)公司

4、:增加了錯誤代碼處理;增加了私有流序列號設(shè)置功能;增加了前置機nameserver內(nèi)容,但暫時不開放。1.08-r0012007/8/31上海期貨交易所技術(shù)部:根據(jù)nges v1.08交易系統(tǒng)修改部分接口;提高壓縮效率;增加交易員私有流。1.002006/8/11上海期貨信息技術(shù)有限公司制定初稿。核準記錄核準人員屬于部門(單位)核準日期技術(shù)中心審核記錄審核人員屬于部門(單位)審核日期鄒文軍技術(shù)中心2014/4/29文件制作和維護:上海期貨交易所技術(shù)部;上海期貨信息技術(shù)有限公司。目 錄第一部分、nges交易系統(tǒng)接口介紹11.介紹21.1.背景21.2.traderapi簡介31.3.mduser

5、api簡介31.4.traderapi/mduserapi發(fā)行的平臺41.5.修改歷史41.5.1.版本1.2041.5.2.版本1.2251.5.3.版本1.2371.5.4.版本1.2481.5.5.版本1.2582.ftd體系結(jié)構(gòu)102.1.通訊模式112.2.數(shù)據(jù)流123.接口模式153.1.traderapi接口153.1.1.對話流和查詢流編程接口153.1.2.私有流編程接口163.1.3.公共流編程接口163.2.mduserapi接口163.2.1.對話流編程接口173.2.2.行情流編程接口184.運行模式194.1.工作流程194.1.1.初始化階段194.1.2.功能調(diào)

6、用階段194.2.工作線程204.3.會員系統(tǒng)使用traderapi與交易系統(tǒng)的交互214.4.與交易所前置系統(tǒng)的連接234.5.本地文件244.6.請求/應(yīng)答日志文件244.7.可靠數(shù)據(jù)流的訂閱方式244.7.1.api維護重傳報文的序號254.7.2.會員系統(tǒng)維護重傳報文的序號264.8.心跳機制(heartbeat)274.9.前置機列表284.10.災(zāi)備接口30第二部分、traderapi參考手冊321.traderapi接口分類331.1.管理接口331.2.業(yè)務(wù)接口331.3.當前版本不開放的業(yè)務(wù)362.traderapi參考手冊382.1.cshfeftdctraderspi接口

7、382.1.1.onfrontconnected 方法382.1.2.onfrontdisconnected 方法382.1.3.onheartbeatwarning方法392.1.4.onpackagestart方法392.1.5.onpackageend方法392.1.6.onrspuserlogin方法402.1.7.onrspuserlogout 方法412.1.8.onrspuserpasswordupdate 方法422.1.9.onrspsubscribetopic方法432.1.10.onrspqrytopic方法442.1.11.onrsperror 方法452.1.12.o

8、nrsporderinsert 方法462.1.13.onrsporderaction 方法492.1.14.onrspquoteinsert 方法512.1.15.onrspquoteaction 方法532.1.16.onrspexecorderinsert 方法552.1.17.onrspexecorderaction 方法572.1.18.onrspqrypartaccount 方法592.1.19.onrspqryorder 方法602.1.20.onrspqryquote 方法632.1.21.onrspqrytrade 方法652.1.22.onrspqryclient 方法67

9、2.1.23.onrspqrypartposition 方法682.1.24.onrspqryclientposition 方法702.1.25.onrspqryinstrument 方法722.1.26.onrspqryinstrumentstatus 方法742.1.27.onrspqrybulletin 方法752.1.28.onrspqrymarketdata 方法762.1.29.onrspqrymblmarketdata 方法782.1.30.onrspqryhedgevolume 方法792.1.31.onrtntrade 方法802.1.32.onrtnorder 方法822.

10、1.33.onrtnquote 方法842.1.34.onrtnexecorder 方法862.1.35.onrtninstrumentstatus 方法872.1.36.onrtninsinstrument 方法882.1.37.onrtndelinstrument 方法892.1.38.onrtninscombinationleg 方法902.1.39.onrtndelcombinationleg 方法912.1.40.onrtnbulletin 方法922.1.41.onrtnaliasdefine 方法922.1.42.onrtnflowmessagecancel方法932.1.43.

11、onerrrtnorderinsert方法942.1.44.onerrrtnorderaction方法952.1.45.onerrrtnquoteinsert方法972.1.46.onerrrtnquoteaction方法982.1.47.onerrrtnexecorderinsert方法992.1.48.onerrrtnexecorderaction方法1002.1.49.onrspcomborderinsert方法1012.1.50.onrspqrycomborder方法1032.1.51.onrtncomborder方法1062.1.52.onerrrtncomborderinsert方

12、法1082.1.53.onrspqryexecorder方法1102.1.54.onrspqryexchangerate方法1122.1.55.onrspqryinformation方法1132.1.56.onmeasurenotify方法1142.1.57.onrspabandonexecorderinsert方法1142.1.58.onrspabandonexecorderaction方法1152.1.59.onrspqryabandonexecorder方法1162.1.60.onrtnabandonexecorder方法1182.1.61.onerrrtnabandonexecorde

13、rinsert方法1192.1.62.onerrrtnabandonexecorderaction方法1212.1.63.onrspquotedemand方法1222.1.64.onrtnquotedemandnotify方法1232.2.cshfeftdctraderapi接口1232.2.1.createftdctraderapi方法1242.2.2.getversion方法1242.2.3.release 方法1242.2.4.init 方法1252.2.5.join 方法1252.2.6.gettradingday方法1252.2.7.registerspi 方法1252.2.8.re

14、gisterfront 方法1262.2.9.registernameserver 方法1262.2.10.setheartbeattimeout方法1272.2.11.openrequestlog方法1272.2.12.openresponselog方法1272.2.13.subscribeprivatetopic方法1282.2.14.subscribepublictopic方法1282.2.15.subscribeusertopic方法1292.2.16.requserlogin 方法1292.2.17.requserlogout 方法1302.2.18.requserpasswordu

15、pdate 方法1312.2.19.reqsubscribetopic方法1322.2.20.reqqrytopic方法1332.2.21.reqorderinsert 方法1332.2.22.reqorderaction 方法1352.2.23.reqquoteinsert 方法1372.2.24.reqquoteaction 方法1382.2.25.reqexecorderinsert 方法1392.2.26.reqexecorderaction 方法1402.2.27.reqqrypartaccount 方法1412.2.28.reqqryorder 方法1422.2.29.reqqry

16、quote 方法1432.2.30.reqqrytrade 方法1442.2.31.reqqryclient 方法1452.2.32.reqqrypartposition 方法1462.2.33.reqqryclientposition 方法1472.2.34.reqqryinstrument 方法1482.2.35.reqqryinstrumentstatus 方法1482.2.36.reqqrymarketdata 方法1492.2.37.reqqrybulletin 方法1502.2.38.reqqrymblmarketdata 方法1512.2.39.reqqryhedgevolume

17、 方法1512.2.40.reqcomborderinsert方法1522.2.41.reqqrycomborder方法1542.2.42.reqqryexecorder方法1552.2.43.reqqryexchangerate方法1562.2.44.reqqryinformation方法1572.2.45.addmeasureitem方法1582.2.46.reqabandonexecorderinsert 方法1592.2.47.reqabandonexecorderaction 方法1602.2.48.reqqryabandonexecorder方法1612.2.49.reqquote

18、demand方法1623.traderapi開發(fā)示例163第三部分、mduserapi參考手冊1681.mduserapi接口分類1691.1.管理接口1691.2.業(yè)務(wù)接口1692.mduserapi參考手冊1702.1.cshfeftdcmduserspi接口1702.1.1.onfrontconnected 方法1702.1.2.onfrontdisconnected 方法1702.1.3.onheartbeatwarning方法1712.1.4.onpackagestart方法1712.1.5.onpackageend方法1712.1.6.onrspuserlogin方法1722.1.

19、7.onrspuserlogout 方法1732.1.8.onrspsubscribetopic方法1742.1.9.onrspqrytopic方法1752.1.10.onrsperror 方法1762.1.11.onrtndepthmarketdata 方法1762.1.12.onrtnflowmessagecancel 方法1792.2.cshfeftdcmduserapi接口1792.2.1.createftdcmduserapi方法1803.1.1.getversion方法1802.2.2.release 方法1802.2.3.init 方法1812.2.4.join 方法1812.2

20、.5.gettradingday方法1812.2.6.registerspi 方法1812.2.7.registerfront 方法1822.2.8.registernameserver 方法1822.2.9.setheartbeattimeout方法1832.2.10.subscribemarketdatatopic方法1832.2.11.requserlogin 方法1842.2.12.requserlogout 方法1852.2.13.reqsubscribetopic方法1852.2.14.reqqrytopic方法1863.mduserapi開發(fā)示例188第四部分 附錄1911.錯誤

21、編碼列表1912.枚舉值列表1943.數(shù)據(jù)類型列表198v第一部分、nges交易系統(tǒng)接口介紹本部分主要介紹nges交易系統(tǒng)的接口,包括:第一章引入nges交易系統(tǒng)的兩個接口,traderapi用于會員系統(tǒng)下達交易、控制和查詢指令,接收私有流(含報單插入、報單操作響應(yīng)和成交回報)、公共流(市場控制提示)、響應(yīng)流和查詢流(查詢結(jié)果);mduserapi用于會員系統(tǒng)和行情轉(zhuǎn)發(fā)商系統(tǒng)接收行情流。第二章介紹了兩個api之后使用的通信協(xié)議ftd(futures trading data exchange protocol),重點說明了數(shù)據(jù)流。第三章介紹了兩個api對應(yīng)于不同類型應(yīng)用的編程接口。第四章介紹了

22、api的工作模式,包括線程之間的通信、心跳機制和私有流信息傳輸?shù)目煽啃詫崿F(xiàn)。作為nges交易系統(tǒng)的接口基礎(chǔ),traderapi和mduserapi的用戶應(yīng)該仔細閱讀第一部分內(nèi)容。第201頁1. 介紹1.1. 背景上海期貨交易所于2006年11月3日成功上線了“新一代交易所系統(tǒng)”(簡稱nges)的第一階段項目,其中包括交易系統(tǒng)(簡稱nges交易系統(tǒng))。nges交易系統(tǒng)使用了開放的主流平臺,可以運行在unix和windows操作系統(tǒng)上。在中國證監(jiān)會信息中心的統(tǒng)一領(lǐng)導(dǎo)下,上海期貨交易所(簡稱shfe或者交易所)、鄭州商品交易所(簡稱czce)和大連商品交易所(簡稱dce)聯(lián)合研究了期貨交易數(shù)據(jù)交換標

23、準(futures trading data exchange protocol,簡稱ftd或者ftd協(xié)議)。中國證監(jiān)會于2005年3月25日發(fā)布了ftd(jr/t 0016-2004),并于同日作為行業(yè)標準實施。nges交易系統(tǒng)本質(zhì)上使用ftd作為會員遠程交易的主接入?yún)f(xié)議,ftd協(xié)議體系較為復(fù)雜,為簡化會員端遠程交易系統(tǒng)的開發(fā)難度,同時也為提高交易系統(tǒng)運行的可靠性,shfe不建議會員的遠程交易系統(tǒng)(簡稱會員系統(tǒng)或者會員端)直接使用ftd協(xié)議接入nges交易系統(tǒng)。為此,上海期貨交易所發(fā)布了nges交易系統(tǒng)的交易api接口(簡稱nges traderapi或者traderapi)和行情api接口

24、(簡稱nges mduserapi或者mduserapi)。會員系統(tǒng)調(diào)用traderapi即可完成與nges交易系統(tǒng)的對接,接收到交易所的報單和成交回報后traderapi將回調(diào)(callback)會員系統(tǒng);會員系統(tǒng)或者行情轉(zhuǎn)發(fā)商(簡稱行情商)(會員和行情轉(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ò)通信進行了封裝。traderapi通過建立一個基于tcp的虛鏈

25、路通道與nges交易系統(tǒng)交易前置機的連接,實現(xiàn)會員系統(tǒng)的報單等交易行為。通過traderapi建立的連接通道具有多地址注冊、斷線自動重連和交易數(shù)據(jù)自動重傳等特點。mduserapi與traderapi類似,建立一個基于tcp的虛鏈路通道與nges交易系統(tǒng)行情前置機的連接,實現(xiàn)行情的訂閱和接收。1.2. traderapi簡介traderapi是一個基于c+的類庫,通過使用和擴展類庫提供的接口來實現(xiàn)全部的交易功能,包括報單與報價的錄入、報單與報價的撤銷、報單與報價的掛起、報單與報價的激活、報單與報價的修改、報單與報價的查詢、成交單查詢、會員客戶查詢、會員持倉查詢、客戶持倉查詢、合約查詢、合約交易

26、狀態(tài)查詢、交易所公告查詢。該類庫包含以下5個文件:文件名版本文件大小文件描述ftdctraderapi.hv1.20交易接口頭文件ftdcuserapistruct.hv1.20定義了userapi所需的一系列數(shù)據(jù)類型的頭文件ftdcuserapidatatype.hv1.20定義了一系列業(yè)務(wù)相關(guān)的數(shù)據(jù)結(jié)構(gòu)的頭文件traderapi.dllv1.20動態(tài)鏈接庫二進制文件traderapi.libv1.20導(dǎo)入庫文件支持ms vc 6.0,ms vc.net 2003編譯器。需要打開多線程編譯選項/mt。注意:nges交易系統(tǒng)支持許多新的報單指令(比如市價、最優(yōu)價、組合交易等),還支持新的交易品

27、種(比如期權(quán)及其報價),但受現(xiàn)有交易規(guī)則限制,nges交易系統(tǒng)并沒有開放上述功能。會員系統(tǒng)在開發(fā)過程中需注意“當前版本不開放的業(yè)務(wù)”,同時在每個功能描述中的具體描述。1.3. mduserapi簡介mduserapi也是一個基于c+的類庫,通過使用和擴展類庫提供的接口來實現(xiàn)全部的行情訂閱和接收功能。該類庫包含以下5個文件:文件名版本文件大小文件描述ftdcmduserapi.hv1.20行情接口頭文件ftdcuserapistruct.hv1.20定義了userapi所需的一系列數(shù)據(jù)類型的頭文件ftdcuserapidatatype.hv1.20定義了一系列業(yè)務(wù)相關(guān)的數(shù)據(jù)結(jié)構(gòu)的頭文件mduse

28、rapi.dllv1.20動態(tài)鏈接庫二進制文件mduapi.libv1.20導(dǎo)入庫文件支持ms vc 6.0,ms vc.net 2003編譯器。需要打開多線程編譯選項/mt。1.4. traderapi/mduserapi發(fā)行的平臺目前發(fā)布了以下操作系統(tǒng)平臺的版本:l intel x86/windowsxp:包括.h文件、.dll文件和.lib文件。l intel linux:包括.h文件和.so文件;在redhat kernel 2.6.18-194下完成編譯。如果需要其他操作系統(tǒng)版本請和下面相關(guān)人員聯(lián)系:聯(lián)系人:王君鵬電話:+86-21-68400751手機:+86-0-13795239

29、757郵箱:wang.junpeng1.5. 修改歷史1.5.1. 版本1.20本版本基于nges交易系統(tǒng)交易api和行情api接口規(guī)范v1.12 r003修改。主要有以下變更:l 本版本提供了災(zāi)備功能:n 增加【4.10災(zāi)備接口】,簡要說明了災(zāi)備原理。n 由于登錄報文中增加了數(shù)據(jù)中心代碼,traderapi、mduserapi修改了requserlogin和onrspuserlogin方法的參數(shù)。n traderapi中增加了“數(shù)據(jù)流回退通知”onrtnflowmessagecancel方法的說明。l 本版本提供了數(shù)據(jù)流長度的查詢功能:n 登錄交易系統(tǒng)時,應(yīng)答中會返回當前會員私有流長度和交易

30、員私有流長度。n traderapi、mduserapi增加了對reqqrytopic和rspqrytpoic方法說明,用于查詢流長度。l 對以前版本發(fā)現(xiàn)問題的修正: n traderapi、mduserapi增加了getversion方法說明,之前版本雖提供功能但無文檔說明。n mduserapi增加了registernameserver方法說明,之前版本雖提供功能但無文檔說明。l 修改了聯(lián)系人,將周軍改成王君鵬。1.5.2. 版本1.22本版本基于nges交易系統(tǒng)交易api和行情api接口規(guī)范v1.20修改。主要有以下變更:l 本版本增加了以下函數(shù)接口:n traderapi中增加了“執(zhí)行

31、宣告查詢”,見【2.2.42 reqqryexecorder方法】。n traderapi中增加了“執(zhí)行宣告查詢應(yīng)答”,見【2.1.53 onrspqryexecorder方法】。n mduserapi中增加了“數(shù)據(jù)流回退通知”,見【2.1.12 onrtnflowmessagecancel 方法】。n traderapi中增加了“匯率查詢”,見【2.2.43 reqqryexchangerate方法】。n traderapi中增加了“匯率查詢應(yīng)答”,見【2.1.54 onrspqryexchangerate方法】。n traderapi中增加了“信息查詢”,見【2.2.44 reqqryin

32、formation方法】。n traderapi中增加了“信息查詢應(yīng)答”,見【2.1.55 onrspqryinformation方法】。l 本版本對以下結(jié)構(gòu)有字段增加:n cshfeftdcrspuserloginfield結(jié)構(gòu),增加actionday字段。n cshfeftdcmarketdatafield結(jié)構(gòu),增加actionday字段。n cshfeftdcdepthmarketdatafield結(jié)構(gòu),增加actionday字段。n cshfeftdcquotefield結(jié)構(gòu),增加actionday字段。n cshfeftdcquotefield結(jié)構(gòu),增加businesslocalid

33、字段。n cshfeftdctradefield結(jié)構(gòu),增加actionday字段。n cshfeftdctradefield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcorderfield結(jié)構(gòu),增加actionday字段。n cshfeftdcorderfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdccomborderfield結(jié)構(gòu),增加actionday字段。n cshfeftdccomborderfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcexecorderfield結(jié)構(gòu),增加actionday字段。n

34、 cshfeftdcexecorderfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcexecorderfield結(jié)構(gòu),增加offsetflag字段。n cshfeftdcinputexecorderfield結(jié)構(gòu),增加offsetflag字段。n cshfeftdcinputexecorderfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcinputorderfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcorderactionfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftd

35、cinputquotefield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcquoteactionfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcexecorderactionfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcinputcomborderfield結(jié)構(gòu),增加businesslocalid字段。n cshfeftdcrspinstrumentfield結(jié)構(gòu),增加currencyid字段。l 本版本新增字段說明:n actionday:含義為實際發(fā)生日期;在夜市交易業(yè)務(wù)開展后,一筆交易的實際發(fā)生日期與

36、交易日是可以不同的,因此需要增加一個實際發(fā)生日期來明確定位一筆交易。已有的tradingday則保持原有交易日的含義。譬如1號晚上的交易發(fā)生日期為1號,而其交易日則是2號。n businesslocalid:含義為客戶設(shè)定的本地業(yè)務(wù)標志;因用戶輸入一筆報單而產(chǎn)生的報單錄入應(yīng)答、報單回報、成交回報(如果能成交的話)等都是因同一個輸入而產(chǎn)生,因此增加一個客戶自己設(shè)定的業(yè)務(wù)標識可以方便客戶跟蹤一筆輸入所產(chǎn)生的所有相關(guān)結(jié)果。n currencyid:含義為幣種代碼;合約結(jié)構(gòu)中的幣種代碼表示該合約的報單幣種,即假設(shè)幣種代碼是人民幣,則該合約采用人民幣價格單位報單,該筆報單產(chǎn)生的相應(yīng)成交和行情都以人民幣為

37、單位,如果幣種代碼是美元,則該合約采用美元價格單位報單,該筆報單產(chǎn)生的相應(yīng)成交和行情都以美元為單位。l 本版本對以下章節(jié)描述錯誤進行了修正:n traderapi【2.2.41 reqqrycomborder方法】中,對參數(shù)的描述進行了修正。n mduserapi【2.1.6 onrspuserlogin方法】中,對參數(shù)的描述進行了修正。1.5.3. 版本1.23本版本基于nges交易系統(tǒng)交易api和行情api接口規(guī)范v1.22修改。主要有以下變更:l 本版本修改了reqorderinsert方法的說明,見【2.2.21 reqorderinsert方法】:n 有效期類型timeconditi

38、on,將“僅支持當日有效”改為支持“當日有效和立即成交,否則撤銷”;n 成交量類型volumecondition,將“只支持任意數(shù)量”改為“支持任意數(shù)量,有效期類型為tc_ioc時也支持最小數(shù)量、全部數(shù)量”。n 最小數(shù)量minvolume,將“未使用”去掉,改為成交量條件為最小數(shù)量時有效。n fak(fill and kill)指令就是將報單的有效期類型設(shè)置為tc_ioc,同時,將成交量類型設(shè)置為vc_av,即任意數(shù)量;fok(fill or kill)指令就是將報單的有效期類型設(shè)置為tc_ioc,同時將成交量類型設(shè)置為vc_cv,即全部數(shù)量。此外,在fak指令下,還可指定最小成交數(shù)量,即在指

39、定價位、滿足最小成交數(shù)量以上成交,剩余訂單自動被系統(tǒng)撤銷,否則自動被系統(tǒng)全部撤銷。此種狀況下,有效期類型設(shè)置為tc_ioc,數(shù)量條件設(shè)為vc_mv,同時設(shè)定minvolume字段。具體類型的枚舉值可以參見第四部分-附錄第2節(jié)枚舉值列表。1.5.4. 版本1.24本版本基于nges交易系統(tǒng)交易api和行情api接口規(guī)范v1.23修改。主要有以下變更:l 本版本增加了以下函數(shù)接口:n traderapi中增加了“添加本地度量節(jié)點”,見【2.2.45 addmeasureitem方法】。n traderapi中增加了“度量通知響應(yīng)”,見【2.1.56 onmeasurenotify方法】。1.5.5

40、. 版本1.25本版本基于nges交易系統(tǒng)交易api和行情api接口規(guī)范v1.24修改。主要有以下變更:l 本版本增加了以下函數(shù)接口:n traderapi中增加了“放棄執(zhí)行宣告錄入應(yīng)答”,見【2.1.57 onrspabandonexecorderinsert方法】。n traderapi中增加了“放棄執(zhí)行宣告操作應(yīng)答”,見【2.1.58 onrspabandonexecorderaction方法】。n traderapi中增加了“放棄執(zhí)行宣告查詢應(yīng)答”,見【2.1.59 onrspqryabandonexecorder方法】。n traderapi中增加了“放棄執(zhí)行宣告回報”,見【2.1.

41、60 onrtnabandonexecorder方法】。n traderapi中增加了“放棄執(zhí)行宣告錄入錯誤回報”,見【2.1.61 onerrrtnabandonexecorderinsert方法】。n traderapi中增加了“放棄執(zhí)行宣告操作錯誤回報”,見【2.1.62 onerrrtnabandonexecorderaction方法】。n traderapi中增加了“放棄執(zhí)行宣告錄入請求”,見【2.2.46 reqabandonexecorderinsert方法】。n traderapi中增加了“放棄執(zhí)行宣告操作請求”,見【2.2.47 reqabandonexecorderacti

42、on方法】。n traderapi中增加了“放棄執(zhí)行宣告查詢請求”,見【2.2.48 reqqryabandonexecorder方法】。n traderapi中增加了“詢價錄入請求”,見【2.2.49 reqquotedemand方法】。n traderapi中增加了“詢價錄入應(yīng)答”,見【2.1.63 onrspquotedemand方法】。n traderapi中增加了“詢價請求分發(fā)”,見【2.1.64 onrtnquotedemandnotify方法】。l 本版本修改了以下結(jié)構(gòu)字段:n struct cshfeftdcinputexecorderfield結(jié)構(gòu)增加了hedgeflag、p

43、osidirection、reservepositionflag和closeflag字段;n struct cshfeftdcexecorderfield結(jié)構(gòu)增加了hedgeflag、posidirection、reservepositionflag和closeflag字段;l 本版本新增了以下結(jié)構(gòu)字段:n 輸入放棄執(zhí)行宣告結(jié)構(gòu)struct cshfeftdcinputabandonexecorderfield;n 放棄執(zhí)行宣告操作結(jié)構(gòu)struct cshfeftdcabandonexecorderactionfield;n 放棄執(zhí)行宣告查詢結(jié)構(gòu)struct cshfeftdcqryaband

44、onexecorderfield;n 放棄執(zhí)行宣告結(jié)構(gòu)struct cshfeftdcabandonexecorderfield;n 詢價錄入請求結(jié)構(gòu)struct cshfeftdcinputquotedemandfield;n 詢價錄入應(yīng)答結(jié)構(gòu)struct cshfeftdcquotedemandinfofield;n 詢價請求分發(fā)結(jié)構(gòu)struct cshfeftdcquotedemandnotfiyfield;l 本版本增加了以下數(shù)據(jù)類型:n tftdcexecorderpositionflagtype是一個期權(quán)行權(quán)后是否保留期貨頭寸的標記類型,分為保留- shfe_ftdc_eopf_r

45、eserve和不保留- shfe_ftdc_eopf_unreserve;n tftdcexecordercloseflagtype是一個期權(quán)行權(quán)后生成的頭寸是否自動平倉標記類型,分為自動平倉- shfe_ftdc_eocf_autoclose和免于自動平倉- shfe_ftdc_eocf_nottoclose;n 合約狀態(tài)枚舉值增加了is_transactionprocessing交易業(yè)務(wù)處理階段,目前針對期權(quán)即為僅允許宣告的階段。l 本版本增加了以下錯誤編碼說明:n 121:放棄執(zhí)行宣告字段錯誤;n 122:放棄執(zhí)行宣告操作字段錯誤;n 123:重復(fù)的放棄執(zhí)行宣告;n 124:放棄執(zhí)行宣告

46、已經(jīng)取消;n 125:放棄執(zhí)行宣告找不到;n 126:放棄執(zhí)行宣告只能用于期權(quán);n 127:不在宣告期內(nèi);n 128:只有持有多頭倉位才能放棄行權(quán);n 129:執(zhí)行或放棄執(zhí)行宣告不能為開倉;n 130:沒有足夠的持倉用于申請保留;2. ftd體系結(jié)構(gòu)會員和行情商的系統(tǒng)并不直接與nges交易系統(tǒng)的核心主機通信;從安全隔離角度上看,會員和行情商甚至不能意識到有交易撮合主機和行情主機的存在;會員和行情商只能連接到上述主機的兩個代理服務(wù)器,分別是交易前置機(簡稱交易前置,也被稱為交易系統(tǒng)或交易所系統(tǒng))和行情前置機(簡稱為行情前置)。交易前置機負責(zé)會員系統(tǒng)的交易業(yè)務(wù),但不負責(zé)發(fā)送行情,此項功能由行情前置

47、機完成。traderapi使用建立在tcp協(xié)議之上的ftd協(xié)議與nges交易系統(tǒng)的前置機通信。mduserapi使用建立在tcp協(xié)議之上的ftd協(xié)議與nges交易系統(tǒng)的行情前置機通信。行情前置負責(zé)處理行情接收系統(tǒng)的行情訂閱請求,并將所訂閱的行情推送到行情接收系統(tǒng)。2.1. 通訊模式ftd協(xié)議中的所有通訊都基于某個通訊模式。通訊模式實際上就是通訊雙方協(xié)同工作的方式。ftd涉及的通訊模式共有三種:l 對話通訊模式l 私有通訊模式l 廣播通訊模式對話通訊模式是指由會員系統(tǒng)主動發(fā)起的通訊請求。該請求被交易系統(tǒng)接收和處理,并給予響應(yīng)。例如報單、查詢等。這種通訊模式與普通的客戶/服務(wù)器模式相同。私有通訊模

48、式是指交易系統(tǒng)主動,向某個特定的會員或者特定會員的某個特定交易員發(fā)出的信息。例如成交回報等。廣播通訊模式是指交易系統(tǒng)主動,向市場中的所有會員都發(fā)出相同的信息。例如公告、市場公共信息等。通訊模式和網(wǎng)絡(luò)的連接不一定存在簡單的一對一的關(guān)系。也就是說,一個網(wǎng)絡(luò)連接中可能傳送多種不同通訊模式的報文,一種通訊模式的報文也可以在多個不同的連接中傳送。無論哪種通訊模式,其通訊過程都如圖1所示:圖表 1各通訊模式的工作過程2.2. 數(shù)據(jù)流交易前置支持對話通訊模式、私有通訊模式、廣播通訊模式。行情前置的行情轉(zhuǎn)發(fā)功能支持對話通訊模式、廣播通訊模式。1、對話通訊模式對話通訊模式下支持對話數(shù)據(jù)流和查詢數(shù)據(jù)流。對話數(shù)據(jù)流

49、是一個雙向數(shù)據(jù)流,會員系統(tǒng)發(fā)送交易請求,交易系統(tǒng)反饋應(yīng)答。交易系統(tǒng)不維護對話流的狀態(tài)。系統(tǒng)故障時,對話數(shù)據(jù)流會重置,在途的數(shù)據(jù)可能會丟失。查詢數(shù)據(jù)流是一個雙向數(shù)據(jù)流,會員系統(tǒng)發(fā)送查詢請求,交易系統(tǒng)反饋應(yīng)答。交易系統(tǒng)不維護查詢流的狀態(tài)。系統(tǒng)故障時,查詢數(shù)據(jù)流會重置,在途的數(shù)據(jù)可能會丟失。2、私有通訊模式在私有通訊模式下,數(shù)據(jù)流是可靠的。在一個交易日內(nèi),會員系統(tǒng)斷線后恢復(fù)連接時,可以請求交易系統(tǒng)發(fā)送指定序號之后的私有數(shù)據(jù)流數(shù)據(jù)。私有數(shù)據(jù)流向會員系統(tǒng)提供報單狀態(tài)報告、成交回報更等信息。私有數(shù)據(jù)流分為會員私有流和交易員私有流兩種。交易系統(tǒng)維護每個會員的私有流,有關(guān)該會員的回報信息,如報單回報、成交回報

50、等都通過會員私有流下發(fā)。交易員要有足夠的權(quán)限才可以訂閱會員私有流。交易員私有流與會員私有流類似,但只包含該交易員發(fā)起的交易引發(fā)的回報信息。每個交易員都可以訂閱自已的交易員私有流。3、廣播通訊模式廣播通訊模式下支持公共數(shù)據(jù)流。公共數(shù)據(jù)流是一個單向數(shù)據(jù)流,由交易系統(tǒng)或者行情系統(tǒng)發(fā)向會員系統(tǒng),用于發(fā)送市場公共信息;公共數(shù)據(jù)流是一個可靠的數(shù)據(jù)流,交易系統(tǒng)維護整個系統(tǒng)的公共數(shù)據(jù)流,在一個交易日內(nèi),會員系統(tǒng)斷線恢復(fù)連接時,可以請求交易系統(tǒng)發(fā)送指定序號之后的公共數(shù)據(jù)流數(shù)據(jù)。以行情為例,行情數(shù)據(jù)流是一個公共數(shù)據(jù)流,由行情發(fā)布系統(tǒng)發(fā)向會員系統(tǒng),用于發(fā)送行情信息;行情流是一個可靠的數(shù)據(jù)流,交易系統(tǒng)維護整個系統(tǒng)的行

51、情流,在一個交易日內(nèi),行情接收系統(tǒng)斷線恢復(fù)連接時,可以請求交易系統(tǒng)發(fā)送指定序號之后的行情流數(shù)據(jù)。交易系統(tǒng)所提供的行情內(nèi)容是按照主題組織的。每個主題包括一組合約的行情,還包括了行情發(fā)布內(nèi)容和發(fā)布方式,包括行情深度、采樣頻率、延遲時間等。交易所會公布各行情主題的具體內(nèi)容,并設(shè)定每個行情用戶所能訂閱的行情主題。每個行情主題對應(yīng)著一個行情流。要獲得行情通知,行情接收系統(tǒng)必需在連接行情前置后,訂閱一個或多個行情發(fā)布主題。3. 接口模式3.1. traderapi接口traderapi提供了二個接口,分別為cshfeftdctraderapi和cshfeftdctraderspi。這兩個接口是對ftd協(xié)議

52、的封裝。會員系統(tǒng)可以通過cshfeftdctraderapi發(fā)出操作請求,通過繼承cshfeftdctraderspi并重載回調(diào)函數(shù)來處理交易系統(tǒng)的回復(fù)或響應(yīng)。3.1.1. 對話流和查詢流編程接口通過對話流進行通訊的編程接口通常如下:/請求:int cshfeftdctraderapi:reqxxx(cshfeftdcxxxfield *preqxxx, int nrequestid)/響應(yīng):void cshfeftdctraderspi:onrspxxx(cshfeftdcxxxfield *prspxxx, cshfeftdcrspinfofield *prspinfo, int nreq

53、uestid, bool bislast)其中請求接口第一個參數(shù)為請求的內(nèi)容,不能為空。該參數(shù)根據(jù)請求命令的不同使用具有不同的類,該類的成員變量的類型和合法的數(shù)值請參閱附錄中的“枚舉值列表”和“數(shù)據(jù)類型列表”。請求接口的第二個參數(shù)為請求號。請求號由會員系統(tǒng)負責(zé)維護,交易所建議每個請求的請求號不會重復(fù)。在接收交易系統(tǒng)的響應(yīng)時,可以得到當時發(fā)出請求時填寫的請求號,從而可以將響應(yīng)與請求對應(yīng)起來。當收到交易系統(tǒng)應(yīng)答時,cshfeftdctraderspi的回調(diào)函數(shù)會被調(diào)用。如果響應(yīng)數(shù)據(jù)不止一個,則回調(diào)函數(shù)會被多次調(diào)用?;卣{(diào)函數(shù)一共包含四個參數(shù)。其中:l 第一個參數(shù)為響應(yīng)的具體數(shù)據(jù),如果出錯或沒有結(jié)果有

54、可能為null。l 第二個參數(shù)為處理結(jié)果,表明本次請求的處理結(jié)果是成功還是失敗。在發(fā)生多次回調(diào)時,除了第一次回調(diào),其它的回調(diào)該參數(shù)都可能為null。l 第三個參數(shù)為請求號,即原來發(fā)出請求時填寫的請求號。l 第四個參數(shù)為響應(yīng)結(jié)束標志,表明是否是本次響應(yīng)的最后一次回調(diào)。3.1.2. 私有流編程接口私有流中的數(shù)據(jù)為會員或者交易員的私有信息,包括報單回報、成交回報、報價回報、執(zhí)行宣告回報等。通過私有流接收回報的編程接口通常如下:void cshfeftdctraderspi:onrtnxxx(cshfeftdcxxxfield *pxxx);/或者void cshfeftdctraderspi:onerrrtnxxx(cshfeftdcxxxfield *pxxx, cshfeftdcrspinfofield *prspinfo);當收到交易系統(tǒng)通過私有流發(fā)布的回報數(shù)據(jù)時,cshfeftdctraderspi的回調(diào)函數(shù)會被調(diào)用。回調(diào)函數(shù)的參數(shù)為回報的具體內(nèi)容。3.1.3

溫馨提示

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

評論

0/150

提交評論