1
CTP 客户端开发指南
应用高新技术,改善人类生活
更新:2014-11-7
版本:2.0
CTP 客户端开发指南
上海期货信息技术有限公司
2
前言
这是一份由上期技术提供的旨在帮助开发者快速了解、学习与综合交易平台进行对接的开发接口的文档。这
份文档提供了综合交易平台接口的整体介绍,解释了接口的运行机制,简述了使用相应的接口开发客户端的
常规步骤。文档中还会列举出其他开发人员咨询的问题及我们给出的回复。
这份指南是在参考了已有的一些文档的基础上,对以前的文档内容进行了总结和归纳,并补充了最新版本接
口中新增的特性。
如果读者认为本文档中还有可以完善的地方或还有需要重点指出但没有覆盖到的地方,欢迎提出宝贵的意见
和建议。
联系方式
上期技术
,
金融事业部
apiSupport@sfit.shfe.com.cn
更多上期技术实时信息请关注上期技术微信公众平台
CTP 客户端开发指南
上海期货信息技术有限公司
3
目录
CTP 客户端开发指南
----------------------------------------------------------------------------------------------
1
前言
-------------------------------------------------------------------------------------------------------------------
2
1 CTP
------------------------------------------------------------------------------------------------------------------
4
1.1 介绍
-------------------------------------------------------------------------------------------------------
4
1.2 FTD 通讯协议
---------------------------------------------------------------------------------------------
5
1.2.1 通讯模式
-----------------------------------------------------------------------------------------
5
1.2.2 数据流
--------------------------------------------------------------------------------------------
7
1.3 两种数据交换模式
-------------------------------------------------------------------------------------
8
1.3.1 请求/应答模式
----------------------------------------------------------------------------------
8
1.3.2 发布/订阅模式
----------------------------------------------------------------------------------
8
1.4 CTP 系统架构
---------------------------------------------------------------------------------------------
9
2 API
----------------------------------------------------------------------------------------------------------------
11
2.1 介绍
----------------------------------------------------------------------------------------------------
11
2.1.1 接口文件
--------------------------------------------------------------------------------------
12
2.2 通用规则
----------------------------------------------------------------------------------------------
13
2.2.1 命名规则
--------------------------------------------------------------------------------------
13
2.2.2 接口类
-----------------------------------------------------------------------------------------
13
2.2.3 通用参数
--------------------------------------------------------------------------------------
13
2.2.4 交易接口的初始化步骤
--------------------------------------------------------------------
14
DEMO 开发
-------------------------------------------------------------------------------------------------------
15
3 行情 DEMO 开发
---------------------------------------------------------------------------------------------
15
3.1 准备工作
----------------------------------------------------------------------------------------------
15
3.2 行情接口的初始化
----------------------------------------------------------------------------------
17
3.3 登录系统
----------------------------------------------------------------------------------------------
18
3.4 订阅行情
----------------------------------------------------------------------------------------------
19
3.5 订阅和接收询价
-------------------------------------------------------------------------------------
20
4 交易 DEMO 开发
---------------------------------------------------------------------------------------------
21
4.1 交易接口的初始化
----------------------------------------------------------------------------------
21
4.2 登陆系统
----------------------------------------------------------------------------------------------
22
4.3 结算单确认
-------------------------------------------------------------------------------------------
22
4.4 报单流程
----------------------------------------------------------------------------------------------
23
4.5 处理报单的函数
-------------------------------------------------------------------------------------
25
4.6 报单
----------------------------------------------------------------------------------------------------
26
4.6.1 FOK & FAk
--------------------------------------------------------------------------------------
27
4.6.2 报单序列号
-----------------------------------------------------------------------------------
29
4.6.3 报单回报
--------------------------------------------------------------------------------------
29
4.6.4 成交回报
--------------------------------------------------------------------------------------
29
4.7 预埋单
-------------------------------------------------------------------------------------------------
30
4.8 撤单
----------------------------------------------------------------------------------------------------
31
4.9 询价和报价
-------------------------------------------------------------------------------------------
31
4.10 行权
---------------------------------------------------------------------------------------------------
33
CTP 客户端开发指南
上海期货信息技术有限公司
4
5 补充说明
-------------------------------------------------------------------------------------------------------
34
5.1 流文件
-------------------------------------------------------------------------------------------------
34
5.2 流量控制
----------------------------------------------------------------------------------------------
35
5.2.1 查询流量限制
--------------------------------------------------------------------------------
35
5.2.2 报单流量限制
--------------------------------------------------------------------------------
35
5.3 断线重连
----------------------------------------------------------------------------------------------
35
CTP 客户端开发指南
上海期货信息技术有限公司
5
1 CTP
1.1
介绍
综合交易平台(Comprehensive Transaction Platform,CTP)是专门为期货公司开发的一套期货经纪业务管理
系统,由交易、风险控制和结算三大系统组成。
其中,交易系统主要负责订单处理、行情转发及银期转账业务,结算系统负责交易管理、帐户管理、经纪人
管理、资金管理、费率设置、日终结算、信息查询以及报表管理等,风控系统则主要在盘中进行高速的实时
试算,以及时揭示并控制风险。系统能够同时连通国内四家期货交易所,支持国内商品期货和股指期货的交
易结算业务,并能自动生成、报送保证金监控文件和反洗钱监控文件。
综合交易平台借鉴代表了国际衍生品领域交易系统先进水平的上期所“新一代交易所系统”的核心技术,采
用创新的完全精确重演的分布式体系架构。
综合交易平台是基于全内存的交易系统,支持7x24小时连续交易,运维人员不必每日启停系统,可以做到“一
键运维”。该特性使得综合交易平台新增交易中心以扩展业务规模时不用增加运维人力的成本。
支持FENS机制的“一键切换”多活交易中心也是目前市场上只有CTP系统实现了的特性。该机制使得交易系统
可在某个交易中心宕机的情况下立即切换到另一个备用交易中心,得以实现真真正正的连续交易。
综合交易平台公开并对外开放交易系统接口,使用该接口可以接收交易所的行情数据和执行交易指令。该接
口采用开放接口(API)的方式接入,早已在期货界已经形成事实上的行业标准。
综合交易平台mini版(CTP mini),是一款速度更快,更轻量级的CTP系统。相对于CTP来说,它追求的是更
小型化的配置,更节约化的资源配备。而用CTP的API开发的客户端程序也可以完美兼容CTP mini系统。