06.API Changelog 4.1版本
[4.1.770] - 20230511¶
支持的交易所:上期所、能源中心、中金所、广期所、大商所
兼容级别:推荐更新
修复
- [通用] 修复连续快速报单场景下,可能出现预冻结/释放乱序而引起资金计算错误的问题;
[4.1.760] - 20230412¶
支持的交易所:上期所、能源中心、中金所、广期所、大商所
兼容级别:推荐更新
新增
- [通用] 增加日志启用/禁用接口
setXTFLogEnabled()
;
修复
- [广期所/大商所] 修复广期所和大商所的行权仓位数据冻结错误;
改进
- [通用] 同步最新错误码表;
[4.1.755] - 20230322¶
提示
需交易商品期权业务的客户请升级到该版本。
支持的交易所:上期所、能源中心、中金所、广期所、大商所
兼容级别:推荐更新
新增
- [通用]支持上期所、能源中心、中金所、广期所、大商所商品期权交易业务,3.3版本API不支持该功能;
- [通用]支持上期所、能源中心、中金所、广期所、大商所商品期权行权、对冲类业务,3.3版本API不支持该功能;
- [通用]报单状态增加
XTF_OS_Received
,表示柜台收到报单请求并已通过柜台风控。此状态在交易所接受报单XTF_OS_Accepted
状态之前到达,API版本需4.1.755及以上,柜台版本需Release-001及以上,3.3版本及旧4.1版本API将不会收到该回调; - [通用]支持期权占用保证金计算价格类型同步柜台设为MAX(昨结算价,最新价);
- [广期所/大商所]支持期权组合持仓优惠保证金业务;
修复
- [通用]修复stop调用之后没有onStop回调的问题;
- [通用]修复Example中
std::map
迭代器在撤单时可能失效的问题; - [通用]修复
Oracle Linux 8.3
版本编译遇到的兼容性问题; - [中金所]修复报单价计算期权保证金时,老仓的保证金按照报单价计算的问题,改成按照昨结算价计算老仓的保证金;
改进
- [通用]改进看穿式硬盘序列号读取方式,解决部分特殊场景采集异常的问题;
- [通用]单精度浮点数改成双精度浮点数,防止资金计算时精度丢失;
- [通用]完善示例代码:example03增加预热报单的构造和发送;example06修复状态判断的逻辑错误;
- [通用]XTFDataStruct.h文件定义的由API内部创建的数据结构对象中,增加用户可自定义的数据变量,以方便用户存储关联的临时数据;
- [通用]增加合约交易所保证金率的推送;
- [通用]报单和成交流水本地存储优化,增加预分配功能,减少运行时期间的动态分配;
- [通用]文档增加行权和对冲部分;
- [通用]完善快速入门手册的报单回报流程描述;
[4.1.692] - 20230214¶
提示
需交易大商所业务的客户请升级到该版本。
支持的交易所:上期所、能源中心、中金所、广期所、大商所
兼容级别:推荐更新
新增
- 日志默认写入当前目录的子目录
xtf-api-log/
; - 修复广期所和大商所手续费计算与柜台存在偏差的问题;
- Release版本增加Info级别的日志记录;
- 报撤单接口增加多线程工作模式,在配置文件增加配置选项
ORDER_MT_ENABLED=true
可以启用多线程报单功能。默认为单线程报撤单,不启用多线程模式;
修复
- 修复UDP通信打开失败后,无法自动重连的问题;
- 修复禁用资金和仓位计算场景下,设置交易所特性没有空指针保护的问题;
改进
- 撤单时间交易所暂不支持,当报单状态为撤销时,使用最后一次更新时间来标记撤单时间;
- 合约状态常量增加
TransactionMatchPause | TransactionTradePause | Alarm
的定义; - 增加限制登录的错误码:2022;
- 风控事件结构体字段从
investorID
修改为accountID
,大小为20字节; - 删除未使用的接口
getXTFLoginPacket
;
[4.1.656] - 20230117¶
支持的交易所:上期所、能源中心、中金所、广期所
兼容级别:推荐更新
修复
- 修复上期中金冻结保证金与柜台计算不一致的问题;
- 修复持仓组合与拆组合导致的资金计算问题;
改进
- 优化使用手册文档;
- 规范错误码的定义;
- 发送TCP查询请求数据时增加多线程同步机制,以防数据交替发送造成异常;
- 增加在双交易所场景下的exchangeid空指针保护;
[4.1.629] - 20221219¶
提示
需使用广期所组合持仓与资金本地计算的客户请升级到该版本。
支持的交易所:上期所、能源中心、中金所、广期所
兼容级别:推荐更新
新增
- 提供资金同步接口
syncFunds()
,接口默认超时时间50ms(由于该功能是阻塞查询,推荐本地无法接入行情的客户使用); - XTFAccount结构体增加交割保证金字段;
- 中金期权空头保证金增加根据最新价和昨结算价的较大值来计算;
- 中金期权空头冻结保证金增加根据最新价和昨结算价的较大值来计算;
- 新增创建预热报单接口
buildWarmOrder()
; - 增加昨日余额字段,与静态权益区分;
- 组合持仓结构体XTFCombPosition增加组合对冲标志字段combHedgeFlag;
修复
- 修改最后一笔流水数据History标记错误的问题;
- 修复FAK报单当MinVolume>1时,返回InsertType类型有误的问题;
- 修复柜台重新启动,API出现两次onStart()的问题;
- 修复网络异常中断情况下,onStop()没有通知的问题;
- 修复API本地缓存数据异常导致的崩溃问题;
改进
- 优化登录流程对AccountID的校验处理;
- 增加报单接口
多线程不安全
的注释说明;
[4.1.586] - 20221122¶
注意
必须在柜台升级完成后同步升级此版本。客户更新so库与头文件重新编译即可。
支持的交易所:上期所、能源中心、中金所
兼容级别:强制更新
新增
- 推送柜台配置的交易所特性参数;
- 增加对柜台版本的校验,对于版本号过低的柜台,提示不兼容;
- 账户字段扩展为20字节,详细变更如下: XTFAccountID类型从16字节变更为20字节; XTFAccount结构体需要关注一下对accountID的处理; 其他的结构体暂不涉及改动;
- 增加组合合约查询接口;
- 增加组合持仓查询接口;
- 增加交易流水的日志记录功能;
- 快速入门手册增加事件序列图,说明API各事件的触发顺序;
修复
- 修改报单出现无效合约时出现的访问非法;
- 修复中金所期权计算使用的手续费率错误问题;
- 修复中金所资金计算少了现货期权的问题;
- 修复柜台清流启动时本地报单编号处理冲突的问题;
- 修复中金所资金计算期权保证金买平时未释放的问题;
- 修复中金所资金期权计算平今手续费时,没有区分多空今仓数量的问题;
- 修复双交易所场景下计算昨持仓占用保证金错误的问题;
- 修复无法通过本地报单编号撤销乱序场景历史报单的问题;
- 修复某些场景下API登录柜台获取不到MAC地址和IP地址的问题;
- 修复大批量报单流水场景下登录可能超时的问题;
- 修复部分内存泄漏的问题;
- 修复使用带参数的login()接口登录时返回失败的问题;
- 修复getConfig接口在连续调用后使用printf格式化时可能存在string内存复用的问题;
- 报单响应和报单回报如果接收乱序,则不再通知用户Accepted该状态的事件;
- 修复报单响应和报单回报乱序时,重复创建报单对象的问题(需要用户确保交易日内LocalOrderID唯一,重复时API的按localOrderID撤单和getOrder()功能存在异常);
- 修复多点登录,子账户同步报单字段错误的问题;
- 报单插入错误回报处理时,如果报单合约不存在,关联的合约指针对象为空。修复此场景下查询时出现的异常问题;
- 修复报单在不可撤销状态下依然可以发送撤单请求的问题;
- 修复错单回报
是否历史流水
字段未赋值问题,优化报单回报和成交回报是否历史流水
字段,onLoadFinished()接口调用之前都赋值为true,之后都赋值为false; - 修复使用手册缺失图片的问题,并提供PDF版本的使用手册;
- 修复配置文件DOS格式兼容性问题;
优化
- 日出流水数据推送处理优化,兼容未知消息类型的数据报处理;
[4.1.492] - 20221017¶
支持的交易所:上期所、能源中心
新增
- 增加示例代码Example04,演示了如何不使用配置文件的方式创建和配置API参数;
修复
- 修复冻结手续费计算时的手续费率错误问题;
[4.1.486] - 20221013¶
优化
- 报单插入错误回报处理优化:收到非本API报单(或协议报单)的报单插入错误回报时,自动创建XTFOrder对象,并通知用户接口;
[4.1.479] - 20221011¶
新增
- 持仓结构体XTFPosition增加今持仓量字段todayPosition;
优化
- UDP预热报单优化;
[4.1.475] - 20221010¶
新增
- 增加协议方式报单的示例代码Example03,演示了如何使用API登录柜台以及使用协议方式发送报撤单;
- 合约结构体XTFInstrument增加期权类型字段XTFOptionsType,增加获取期权对应的基础合约的接口getUnderlyingInstrument();
[4.1.471] - 20221008¶
优化
- 合约结构体XTFInstrument中的expireDate字段,从int改成字符数组类型;
[4.1.468] - 20220930¶
修复
- 登录时偶现应答无法收到的问题;
- 修复报单响应和报单回报乱序时,出现realChannelID字段值不一致的问题;
[4.1.465] - 20220929¶
新增
- 增加错误码查询接口,支持错误消息内容的中英文版本;
- makeXTFApi()接口允许配置文件路径为空,启动API之前,通过API的setConfig()接口来设置参数;
优化
- 优化资金和仓位计算;
- XTFOrder结构体中的realChannelID字段默认为0xFF,表示无效值。当收到非0xFF时,表示realChannelI字段有效;
修复
- 修复XTFOrder报单状态乱序的问题,将报单状态的顺序进行检测和约束;避免报单状态可能
先进入Queuing、PartTraded或者AllTraded,再进入Accepted状态
。 - 修复同一API实例多次登录登出时偶先的崩溃问题;
[4.1.454] - 20220927¶
新增
- 数据回报处理线程增加开关配置项TCP_WORKER_BUSY_LOOP_ENABLED,如果配置为false,则不启用BusyLoop运行模式,以降低CPU核的负载。默认为true,表示启用BusyLoop运行模式。
- XTFExchange增加字段标记是否支持席位编号IP地址查询,如果支持IP地址查询,则可以通过getChannelIP()和getChannelIPByID()接口查询IP地址。
- XTFAccount增加最近一次本地撤单编号lastActionOrderID。
修复
- 修复裸协议报单无法收到OnRsp事件的问题。
[4.1.445] - 20220921¶
新增
- XTFInputOrder增加minVolume字段;
- XTFOrder增加orderMinVolume字段;
[4.1.441] - 20220920¶
新增
- 柜台在交易时段发生重启的通知接口
onServerReboot()
; - 柜台在交易时段如果发生重启,API中断后会自动重连;
- 重新连接后,API会清空上一次登录的所有数据,并重新从柜台加载数据;
- 由于API的本地数据发生了变化,因此所有外部使用的指针数据会失效,用户需要在收到onReboot事件后,清理上一次的所有数据指针。此刻这些数据指针依然有效,当onReboot事件处理之后,数据指针将会失效。
[4.1.437] - 20220919¶
新增
- 配置文件标注线程的BusyLoop模式;
- XTFExchange增加tradingDay字段;
- XTFAccount增加lastLocalOrderID字段;
优化
- 完善LocalOrderID的注释说明;
[4.1.430] - 20220916¶
优化
- 时间字段从整型改成字符串类型,报单增加插入日期、更新时间、撤单时间;
- 撤单时间字段交易所暂不支持,使用最后一次更新时间来标记撤单时间;
- 收到错误的数据包后,断开TCP连接;
- 行情结构体未使用的字段标记说明;
- XTFAccount接口功能添加注释说明;
- xtf_trader_api.config TCP接收线程注释修改为回报处理线程;
- 完善看穿式监管信息采集,如果发生错误则禁止登录;
[4.1.425] - 20220915¶
优化
- XTFOrder启用insertTime字段;
- XTFOrderFilter和XTFTradeFilter增加时间字段含义的说明;
[4.1.414] - 20220913¶
修复
- 修复没有席位时无法获得交易所ID字符串的问题;
- 修复realChannelID查询为0的问题;
- onBookUpdate接口参数由引用对象改成指针对象;
[4.1.411] - 20220909¶
新增
- 新增onCancelOrder接口专门用于处理撤单回报的场景;
优化
- onOrder接口去掉actionCode参数,移入XTFOrder结构体内部;去掉XTFError参数,改成errorCode;调整参数顺序和个数;
删除
- 删除onOrder接口里撤单的相关通知;
[4.1.398] - 20220907¶
优化
- Example01-演示API登录登出和报单撤单功能;
- Example02-演示使用一个简单策略基于行情驱动进行报撤单功能;
[4.1.395] - 20220906¶
新增
- 按条件查询报单数据的接口
findOrders()
; - 按条件查询成交数据
findTrades()
;
优化
- 优化预热功能以提高穿透性能;
- 优化API接口方法的注释说明;
修复
- 修复login()接口登录失败的问题;
- 修复部分报单回报没有通知回调的问题;
[4.1.376] - 20220831¶
新增
- 按柜台流水号撤销报单;
- 按柜台流水号批量撤销报单;
[4.1.372] - 20220830¶
新增
- 初始版本功能发布。