资源描述
易盛国际金融衍生品交易分析系统
API使用说明
文件状态:
正在修改
3.0.1.0
版
本:
完成日期:
2013-12-26
易盛国际金融衍生品交易分析系统
API使用说明
文档变更日志
API
时间
作者
描述
备注
V3.0.1.0
2013-12-26
API使用说明
第一版
易盛国际金融衍生品交易分析系统
API使用说明
1系统简介........................................................................................................................................ 3
API介绍................................................................................................................................... 3
2体系结构....................................................................................................................................... 4
2.1 API架构 ............................................................................................................................. 4
2.2授权..................................................................................................................................... 5
3开发接口....................................................................................................................................... 6
3.1初始化阶段........................................................................................................................ 6
3.2功能调用阶段.................................................................................................................... 6
3.3授权码................................................................................................................................ 6
3.4 IEsunnyTradeSpi接口........................................................................................................ 6
3.4.1 OnOpen方法........................................................................................................... 7
3.4.2 OnClose()方法....................................................................................................... 7
3.4.3 OnLogin方法 .......................................................................................................... 7
3.4.4 OnInitFinished方法................................................................................................. 8
3.4.5 OnLogOut方法 ....................................................................................................... 9
3.4.6 OnRspSetPassword方法 ......................................................................................... 9
3.4.7 OnRspSetOperPassword方法 ............................................................................... 10
3.4.8 OnQryMoney方法 ................................................................................................ 11
3.4.9 OnRtnMoney方法................................................................................................. 13
3.4.10 OnRspCashOperQry方法 ................................................................................... 13
3.4.11 OnRspCashAdjustQry方法................................................................................. 15
3.4.12 OnRspOrderInsert方法 ....................................................................................... 16
3.4.13 OnRspOrderModify方法 .................................................................................... 17
3.4.14 OnRspOrderDelete方法...................................................................................... 17
3.4.15 OnRspQryOrder方法.......................................................................................... 18
3.4.16 OnRspHistOrderQry方法 ................................................................................... 19
3.4.17 OnRtnOrderState方法......................................................................................... 20
3.4.18 OnRtnOrderInfo方法.......................................................................................... 21
3.4.19 OnRspMatchQry方法 ......................................................................................... 22
3.4.20 OnRtnMatchState方法........................................................................................ 23
3.4.21 OnRtnMatchInfo方法 ......................................................................................... 24
3.4.22 OnRspHistMatchQry方法................................................................................... 25
3.4.23 OnQryHold方法.................................................................................................. 26
3.4.24 OnRtnHold方法.................................................................................................. 27
3.4.25 OnQryExchangeState方法.................................................................................. 27
3.4.26 OnRtnExchangeState方法 .................................................................................. 28
3.4.27 OnQryCommodity方法....................................................................................... 29
3.4.28 OnQryContract方法............................................................................................ 30
3.4.29 OnQryClient方法................................................................................................ 31
3.4.30 OnRspHistCashOperQry方法............................................................................. 31
3.4.31 OnRspHistCashAdjustQry方法 .......................................................................... 32
3.4.32 OnRspAuthClient方法........................................................................................ 34
3.4.33 OnRspQryCurrency方法..................................................................................... 34
3.4.34 OnRtnExchangeRateMod方法............................................................................ 35
第 1页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
3.4.35 OnRtnOrderRemove方法 ................................................................................... 36
3.4.36 OnRtnMatchRemove方法................................................................................... 36
3.4.37 OnRtnCommodityState方法 ............................................................................... 37
3.4.38 OnRtnContractAdd方法 ..................................................................................... 37
3.5 IEsunnyTradeApi接口 ..................................................................................................... 38
3.5.1 SetSpi方法 ............................................................................................................ 38
3.5.2 Free方法................................................................................................................ 39
3.5.3 GetErrcodeDesc方法 ............................................................................................ 39
3.5.4 Open方法.............................................................................................................. 39
3.5.5 Close方法.............................................................................................................. 40
3.5.6 IsOpen方法........................................................................................................... 40
3.5.7 Login方法 ............................................................................................................. 40
3.5.8 LogOut方法 .......................................................................................................... 41
3.5.9 SetPassword方法 .................................................................................................. 42
3.5.10 SetOperPassword方法 ........................................................................................ 43
3.5.11 QryClients方法 ................................................................................................... 43
3.5.12 QryMoney方法 ................................................................................................... 43
3.5.13 QryOrder方法 ..................................................................................................... 43
3.5.14 QryMatch方法 .................................................................................................... 44
3.5.15 QryHold方法 ...................................................................................................... 45
3.5.16 QryExchangeState方法....................................................................................... 46
3.5.17 QryCommodity方法 ........................................................................................... 46
3.5.18 QryContract方法................................................................................................. 47
3.5.19 OrderInsert方法 .................................................................................................. 48
3.5.20 OrderModify方法 ............................................................................................... 49
3.5.21 OrderDelete方法................................................................................................. 49
3.5.22 QryHistOrder方法............................................................................................... 50
3.5.23 QryHistMatch方法.............................................................................................. 50
3.5.24 QryCashOpera方法............................................................................................. 51
3.5.25 QryCachAdjust方法............................................................................................ 52
3.5.26 QryHistCashOpera方法...................................................................................... 52
3.5.27 QryHistCachAdjust方法..................................................................................... 53
3.5.28 AuthClient方法 ................................................................................................... 53
3.5.29 QryCurrency方法................................................................................................ 54
3.5.30 GetCertCodeExpireDate方法.............................................................................. 54
3.6 extern "C"部分............................................................................................................. 55
3.6.1 GetEsunnyForeignApiVersion方法 ...................................................................... 55
3.6.2 CreateEsunnyForeignTradeApi方法..................................................................... 55
3.6.3 DelEsunnyForeignTradeApi方法 ......................................................................... 56
4开发示例..................................................................................................................................... 56
第 2页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
1系统简介
API介绍
易盛公司的交易行情系统都是开放的平台。易盛为每个平台都专门提供了接
入API(Application Programming Interface,应用程序编程接口),开发者可以
利用这些API,开发更适合自身业务需求的子系统。通过这些自我开发系统和易
盛后台服务的无缝链接,满足个性化交易需求。
交易API包括报单,改单,撤单,查询客户资金,查询客户委托,查询客户
成交,查询成交,查询持仓,查询出入金,查询资金调整等功能。
该API包含以下7个文件:
文件名
版本
V1.0
V1.0
V1.0
V1.0
V1.0
V1.0
V1.0
文件大小
9KB
文件描述
定义API的错误代码
定义API所用到的数据结构
定义API所用的数据类型
交易接口头文件
EsForeignApiErrCode.h
EsForeignApiStruct.h
EsForeignApiType.h
EsunnyForeignApi.h
ForeignTradeApi.dll
ForeignTradeApi.lib
ForeignTradeApi.pdb
26KB
31KB
30KB
127KB
3KB
动态链接库
导入库
1371KB
程序调试数据库
第 3页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
2 体系结构
2.1 API架构
易盛国际金融衍生品交易分析系统 API是通过向交易员提供一组函数,可以
向交易后台发送数据或报送请求,再由交易后台返回或推送相关的数据信息,其
基本架构如下:
下面是 API的基本处理逻辑:
第 4页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
2.2授权
为提高 API权限控制,必须申请得到相关的授权码,通过认证之后开发商才允许
进行 API连接。并且可以在外盘系统的柜台下,有客户 API授权管理,可以对 API用
户进行增加,修改,删除和查询操作。
详细申请流程可参考 API申请流程文档。
第 5页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
3 开发接口
3.1 初始化阶段
在正式使用 API功能之前,需要对交易 API进行初始化。
初始化操作包括:
1,CreateEsunnyForeignTradeApi创建一个交易 API实例。
2,SetSpi设置回调数据接口。
3,Open连接交易服务器
4,IsOpen获取是否与交易服务器建立连接
5,Login登陆交易服务器,完成初始化阶段。
3.2 功能调用阶段
在功能调用阶段,用户可以通过 API,向易盛后台发送报单,改单,撤
单,查询客户资金,查询客户委托,查询客户成交,查询成交,查询持仓,
查询出入金,查询资金调整等请求,并获得相应的应答。
3.3 授权码
用户在创建 API实例的时候,传入申请的授权码之后,还需要在柜台配
置一下对应的明文编号,才能正常登陆。
3.4 IEsunnyTradeSpi接口
IEsunnyTradeSpi接口实现了时间通知接口。用户必须派生 IEsunnyTradeSpi
接口,编写事件处理方法来处理感兴趣的事件。具体的结构定义,类型定义和错
误码参见 EsForeignApiStruct.h,EsForeignApiType.h和 EsForeignApiErrCode.h这
三个头文件。
第 6页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
3.4.1 OnOpen方法
与服务器建立连接时调用,此时还未登陆。
函数原形:
void __cdecl OnOpen();
参数:无
返回值: void
3.4.2 OnClose() 方法
与服务器断开连接时调用
函数原形:
void __cdecl OnClose();
参数:无
返回值:无
3.4.3 OnLogin方法
发送 Login登陆成功时收到服务器登陆响应调用
函数原形:
void __cdecl OnLogin(const TEsLoginRspField* rsp , int errCode , const
int iReqID);
参数:
rsp :
返回用户登录信息的地址
登录应答结构
struct TEsLoginRspField
{
//是否 CA认证
TIsCaLoginType
IsCaLogin;
第 7页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
//是否强制修改密码
TIsForcePasswordType
//登录号
IsForcePwd;
TLoginNoType
LoginNo;
//登录端帐号简称
TLoginNameType
LoginName;
//客户预留信息,客户自己识别后台系统
TReservedInfoType
//上次登录时间
TDateTimeType
//上次登出时间
TDateTimeType
//上次登录 ip
ReservedInfo;
LastLoginDateTime;
LastLogoutDateTime;
LastLoginIp;
TIpType
//上次登录 port
TPortType
LastLoginPort;
LastLoginMachineInfo;
ServerDateTime;
//上次登录机器信息
TMachineInfoType
//系统当前时间(客户端校时)
TDateTimeType
};
errCode:
返回的错误代码,当 errCode=0,表示登陆成功(详细可查错误代码
表)。
iReqID:
返回用户登录请求的 ID,对应发送请求的 ID。
返回值:
无
3.4.4 OnInitFinished方法
发送 Login成功后,收到 OnLogin应答成功后收到初始化操作完成。所
有的业务操作需要在本响应 errCode为 0(成功)后可进行
函数原形:
void __cdecl OnInitFinished(int errCode);
参数:
第 8页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
errCode返回初始化过程中的错误码(详细可查错误代码表)。
返回值:
无
3.4.5 OnLogOut方法
收到登出应答调用
函数原形:
void __cdecl OnLogOut(int errCode , const int iReqID);
参数:
errCode :
返回登出过程的错误码,当 errCode等于 0的时候,表示正常退出。
iReqID :
返回用户登出请求的 ID,对应发送请求的 ID。
返回值:
无
3.4.6 OnRspSetPassword方法
修改客户密码时调用
函数原形:
void __cdecl OnRspSetPassword(const TEsClientPasswordModifyRspField*
rsp ,int errCode , const int iReqID);
参数:
rsp :
返回信息包括客户号和修改的密码类型,其中密码类型包含修改的密码
是交易密码,行情密码,还是认证密码。
客户密码修改应答结构
struct TEsClientPasswordModifyRspField
第 9页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
{
//客户号
TClientNoType
//密码类型
TPasswordTypeType
};
ClientNo;
PasswordType;
errCode :
返回修改密码时的错误码,当 errCode等于 0的时候,表示修改成功。
iReqID :
返回用户登出请求的 ID,对应发送请求的 ID。
返回值:
无
3.4.7 OnRspSetOperPassword方法
修改操作员密码时应答
函数原形:
void __cdecl OnRspSetOperPassword(const TEsOperatorPasswordModifyRspField* rsp,
int errCode, const int iReqID);
参数:
rsp:
返回操作员号
操作员密码修改应答结构
struct TEsOperatorPasswordModifyRspField
{
//操作员号
TOperatorNoType
OperatorNo;
第 10页共 62页
易盛国际金融衍生品交易分析系统
API使用说明
};
errCode :
返回修改密码时的错误码,当 errCode等于 0的时候,表示修改成功。
iReqID :
返回用户登出请求的 ID,对应发送请求的 ID。
返回值:
无
3.4.8 OnQryMoney方法
资金查询的应答,可以用来获得对应客户号下的今资金,今权益,今可
提,手续费,保证金和出入金等资金状况。
函数原形:
void
__cdecl
OnQryMoney(const
TEsMoneyQryRspField*
rsp,
TEsIsLastType islast, int errCode, const int iReqID);
参数:
rsp:
查询完成时,指针为空,未完成时包含查询结果。
资金查询应答结构
struct TEsMoneyQryRspField
{
TClientNoType
ClientNo;
CurrencyNo;
YAvailable;
YCanCashOut;
YMoney;
//客户号
TCurrencyNoType
TMoneyValueType
TMoneyValueType
TM
展开阅读全文