1、CTP API兼容

CTP柜台升级为穿透式版本后,只能使用6.3.15版本及后续版本API才能登陆上。为了强制客户使用最新穿透式API,如果客户使用API版本与CTP柜台不一致,将不会回调OnFrontConnected。目前一共有三类CTP API:旧生产版(6.3.11_20180109及以前);穿透式评测版(6.3.13_20181119);穿透式生产版(6.3.15_20190220)。

API实例调用Init后没有任何反应或者没有OnFrontConnected回调,先检查网络链路是否畅通,再检查API版本是否正确,连生产或者SimNow必须是6.3.15版本API,版本不正确将没有回调。

2、行情订阅问题

行情订阅成功但无行情数据推送。首先确保是否订阅成功。CTP无论订阅什么合约id,都会返回"CTP:No Error",但只有填对合约编码才有相应行情。因此,需要对合约代码进行检查,检查编码是否正确,国内五大期货交易所对合约命名格式并不统一,中金所采用大写+4个数字;检查订阅合约是否过期,过期合约将不会推送行情。

3、CTP行情tick数据

CTP提供的实时tick数据不是真正的tick数据。tick数据是指市场上的逐笔数据,例如一笔委托会产生一笔行情,一笔成交也会产生一笔行情。目前国内期货交易所不支持推送逐笔行情数据,只推送切片(快照)数据。切片数据是指将一定时间内的逐笔数据统一成一个快照发出,一般是1秒2笔。

4、TradingDay和ActionDay

在CTP中,TradingDay表示交易日,ActionDay表示当前实际日期。期货交易分为日夜盘,TradingDay和ActionDay在日盘是一致的,但在夜盘有区别,因为当天夜盘属于下一个交易日。

5、非交易时段收到行情

日盘盘前可能会收到行情,因为CTP日盘起动时会重演夜盘流水,所以有可能会将夜盘行情再推送一遍。日盘结束后也会收到行情,是交易所结算完成发出的行情,结算价字段是当日结算价,一般推送时间在3点~3点半。建议按照交易时间过滤掉非盘中行情,以免影响交易逻辑。

6、组合合约行情

CTP不会计算组合合约行情,只转发交易所行情,所以要看交易所推不推。如果直接以组合合约号订阅行情,郑商所和大商所都会推,但比实际情况下少不少,所以建议订阅各个单腿合约行情,计算价差自己得到组合行情。

7、当前切片成交量

Volume字段是累计成交量,是交易日内的累计成交量。如需要当前切片内的成交量,需要用当前切片的字段值减去上个切片相应值,差额即是当前切片内成交量。

9、UpdateMillisec

上期/能源/中金三个交易所会出现0和500两种值,大商所值是切片时真实毫秒时间,郑州该值都是0。

10、无效行情数据

行情数据中常看到有数值是1.7976931348623157e+308,是double类型的上限值,在CTP内部表示无效值。例如盘中本次结算价字段SettlementPrice即为无效值。

11、CTP网络连接问题

CTP API底层如果检测到客户端与CTP前置网络断开时会回调到API的SPI函数OnFrontDisconnected。SPI中OnFrontDisconnected函数nReason参数含义如下:

0x1001 网络读失败

0x1002 网络写失败

0x2001 接收心跳超时

0x2002 发送心跳失败

0x2003 收到错误报文

0x1001转成十进制即是4097,0x2001转成十进制即是8193。

CTP要求API版本和后台版本一致才有正确onfrontconnected回调。CTP API版本不兼容会不停地回调OnFrontDisconnected或输出Decrypt handshake data failed或没有任何反应。

所以先检查API版本是否正确,可以调用函数GetApiVersion输出当前API版本。

12、撤单

CTP不支持批量撤单。CTP API中ReqBatchOrderAction表示批量撤单请求,目前支持大商所支持,而且只有做市商客户才能用。

为了防止盘口愰骗,各期货交易所都将频繁撤单列入异常交易管理规范。目前上期所明确规定单个合约撤单数不能超过500笔,但CTP内并没有该项风控,建议策略自行加入风控。FAK和FOK撤单不计入合约撤单限制,所以如果策略可能会有大量撤单,建议使用FOK和FAK报单。

13、订单索引

CTP API实例每次连接服务器时,最大报单引用(MaxOrderRef)都是从1开始的, CTP中FrontID + SessionID + OrderRef可以唯一索引一笔订单,当FrontID + SessionID变更后MaxOrderRef将重置。

Hello CTP(六)——CTP API问题汇总相关推荐

  1. ctp java_CTP API 开发之二 :制作CTP java版 API

    目前上期技术CTP系统提供的API版本是C++版本 SWIG是一个能将C/C++接口转换为其他语言的工具,目前可以支持Python,Java,R等语言. 本文主要介绍Windows 32/64位平台下 ...

  2. JavaScript一些常用 API整理汇总

    JavaScript一些常用 API整理汇总 Array new Set() 数组去重 const arr = [3,4,4,5,4,6,5,7]; console.log(new Set(arr)) ...

  3. 前端常用免费API接口汇总

    平台 阿里云市场 https://market.aliyun.com/data 聚合数据 https://www.juhe.cn/docs 进制数据 https://www.binstd.com/ 小 ...

  4. ctp java_上期CTP 封装JAVA API window Swig

    1 首先在http://www.sfit.com.cn/5_2_DocumentDown.htm 下载CTP  后得到下面这些文件 2 我们选用32位版本20160606_tradeapi_windo ...

  5. API大全 汇总(转载)

    API是获取网络服务最便捷的方式,合理地使用API开发项目可以大大提高开发效率,把精力都集中在程序的业务逻辑之上,避免重复造轮子.推荐给大家个人觉得很赞的第三方API(资源整合自网络).文章分为天气查 ...

  6. OpenGL API - 笔记汇总

    这里只会记录一些使用到的API汇总. OpenGL 红宝书第9版的我也买了一本,但觉得这书买得不值. 主要我们要查找API什么的,没有电子版直接输入API名称定为的快. 如果你用书去翻的话,只能慢慢的 ...

  7. PHP链接ctp接口,CTP接口穿透式监管升级后对外接入地址变更,适用SIMNOW 模拟账户...

    关于SIMNOW老账户穿透式监管接入授权码和APPID 下周SIMNOW升级到看穿式后,老账户统一APPID为simnow_client_test,认证码为0000000000000000(16个0) ...

  8. python随机图片api_【python】7个随机二次元图片api接口汇总(附网页调用示例)...

    1. 韩小韩API 1.1. 接口文档 1.2. 请求地址 1.3. 请求方式 get 1.4. 请求参数 字段类型描述returnstr响应数据格式,可选json 1.5. 示例代码 import ...

  9. Zookeeper C API 指南六(异步 API 介绍)

    转载地址:https://www.cnblogs.com/haippy/archive/2013/02/21/2920426.html 上一讲<Zookeeper C API 指南五(同步 AP ...

最新文章

  1. urlScan 配置阻止sql注入
  2. Openfire及Spark配置(Mac)
  3. dreamweaver 疑问
  4. 使用OData API批量删除Marketing Cloud里的contact
  5. d3.js 教程 模仿echarts折线图
  6. 由B+树看MySQL索引结构
  7. JavaScript(五):变量的作用域
  8. [转]《编程之道》(很老的一篇文章)
  9. I. 知识图谱 应用案例 --- 百度
  10. Matpower疑惑解答
  11. word中的特殊文本符号
  12. 2022年南京大学计算机考研复试考什么|考研复试时间
  13. 如何解决selenium与firefox版本不匹配的问题
  14. PDF怎么转图片?建议收藏这些方法
  15. Ubuntu 编译最新LLVM套件:LLVM 16.0
  16. 【presto】presto 查询hive分桶表问题
  17. SpringBoot中@Pattern注解对时间格式校验
  18. Android7.1.1新增Shortcuts快捷方式,让App更加快捷方便
  19. 计算机酷睿处理器排行,2018电脑英特尔处理器排名(cpu性能天梯图)
  20. ssm+vue基本微信小程序的校园二手商城系统 计算机毕业设计

热门文章

  1. C# .Net Framework、.Net Core和.Net Standard的区别
  2. 计算机系统导论+2018,2018年计算机科学导论(董荣胜)4.ppt
  3. 喜迎华诞,openEuler 22.09 正式发布,与1265名开发者共建面向数字基础设施的开源操作系统
  4. 关于安卓手机开机自启动APP无法成功的问题
  5. 设置或解除ie,firefox,chrome为默认浏览器
  6. Array.from和Array.of的用法
  7. mac技巧|文件管理方法分享
  8. Android 手机铃声
  9. 一个函数是周期函数,那么一定有最小正周期吗?不一定
  10. 第一章:带你探寻微机系统奇经八脉!