CTP开发爬坑指北(八)

CTP开发中有很多需要注意的小细节,稍有不慎就会出问题,不然,轻则表现与预期不符,重则程序崩溃影响策略盈利。本系列将容易遇到的坑列出来,以供开发时参考,如有疑义之处,欢迎指正。

欢迎加入QQ群736174420,一起交流讨论CTP开发!~

01

"强平"是啥?

强平也叫强制平仓,又称被斩仓、被砍仓、爆仓。是指在某些特殊条件下,投资者保证金账户中的客户权益为负值的情形。期货公司在通知投资者后,如果在规定期限内投资者没有主动平仓,则期货公司会将投资者的持仓强制平仓,直到投资者的账户的权益变为正数。

简单地说,就是账户里的可用资金不够了,变成了负数,不得不平仓来增加可用资金。另一个常见场景则是自然人持有(不合法数量的)商品期货持仓进入交割月了。

值得一提的是,无论是强平还是强减,这些订单都需要进入交易所撮合队列进行撮合的,而不是期货公司大手一挥直接将你的持仓给砍掉。例如下图中,这个强平订单也在撮合中一直未成交。

图1 未成交的强平订单

CTP中我们是可以在下单时设置为强平标志(UserForceClose)的,也能正常撮合成交,但是期货公司不会允许这样,因为可能这和他们对客户的强平操作产生矛盾,导致他们无法区分强平订单的来源,所以期货公司一般会提醒你不要使用强平标志。

如果产生了强平订单,则可以从报单回报中的ForceCloseReason查看强平原因。

/
///TFtdcForceCloseReasonType是一个强平原因类型
/
///非强平
#define THOST_FTDC_FCC_NotForceClose '0'
///资金不足
#define THOST_FTDC_FCC_LackDeposit '1'
///客户超仓
#define THOST_FTDC_FCC_ClientOverPositionLimit '2'
///会员超仓
#define THOST_FTDC_FCC_MemberOverPositionLimit '3'
///持仓非整数倍
#define THOST_FTDC_FCC_NotMultiple '4'
///违规
#define THOST_FTDC_FCC_Violation '5'
///其它
#define THOST_FTDC_FCC_Other '6'
///自然人临近交割
#define THOST_FTDC_FCC_PersonDeliv '7'

typedef char TThostFtdcForceCloseReasonType;


///报单 (报单回报中的数据类型)
struct CThostFtdcOrderField
{
// ...
    ///强平原因
    TThostFtdcForceCloseReasonType	ForceCloseReason;
// ...
}

同时, 开平方向(TThostFtdcOffsetFlagType)中也有一种是强平(THOST_FTDC_OF_ForceClose),这种订单我们是无法主动报入的,会被CTP或交易所拒单。

报入 "强平"开平方向的订单

图2 SimNow中报入 "强平"(THOST_FTDC_OF_ForceClose)开平方向的订单被拒单

祝大家不会遇到强平

02

CTP能交易股票期权么?

当然可以!

可以参考笔者此前的关于期权的文章:

CTP API期权与期货的区别小结-CSDN博客文章浏览阅读1k次,点赞18次,收藏13次。使用CTP期货期权和股票期权的API接口,不止可以交易期货,还可以交易沪铜、豆粕等商品期权和沪深300等金融期权。这里小小地总结一下CTP中期权与期货的区别之处,希望可以帮助到要用CTP API对接期权交易的同学。https://blog.csdn.net/baidu_37097818/article/details/137345621CTP分成期货期权股票期权两个版本,


前者期货期权版本号目前是v6.*.*(例如v6.6.9),能交易6个期货交易所的所有期货和期权,其中就包括所有商品期权,以及中金所IO(沪深300股指期权),MO(中证1000股指期权),HO(上证50股指期权)这三个股指期权

绝大多数期货公司都支持CTP期货期权柜台。

关键词: 商品, 股指, 期货


而后者股票期权版本的CTP,版本号目前是v3.*.*(例如v3.7.0),实际上只能交易沪深两个证券交易所的股票ETF期权合约,比如以华夏上证50ETF(基金代码510050)为标的物的各种期权。

这种期权的标的物是ETF股票。ETF是一种基金,类似于股票,可以在交易所内直接交易。

股票ETF期权为投资者提供了稀有的做空股票和ETF的工具,同时是"T+0"交易,因此热度一直不低。


不像港股里面有"个股期权",如腾讯港股(00700.HK)的股票期权,目前沪深交易所里还没有个股的期权(也就是说目前只有ETF基金的期权)。未来如果上市 个股期权 的话(比如贵州茅台的期权?),那么后者股票期权版本的CTP API也是能够交易它的。

目前支持CTP交易股票期权的期货公司不太多,只有二十多家,可以就支持情况咨询期货公司。同时,需要在期货公司再开股票期权的账户。

关键词: 个股, 股票, ETF, 基金

股指期权 股票期权

期货期权和股票期权大PK
期货期权PK项目股票期权
6个期货交易所交易所沪深2个证券交易所
商品期权 和 股指期权交易品种个股期权(目前还没有) 和 ETF期权
期货标的物个股 或 ETF基金

商品期权: 实物交割

股指期权: 现金交割

交割方式实物交割(即买入或卖出ETF基金)
欧式和美式期权都有期货类型美式期权

商品期权:10万元以上

股指期权:50万元以上

交易门槛

(账户资金)

50万元以上
期货公司在哪开户证券公司 或 期货公司
基本都支持CTP交易期货公司支持情况二十多家支持CTP交易

与标的物期货相同

(可能有夜盘)

交易时间段与标的物股票和ETF相同
T+0交易日期类型

T+0

(标的物ETF是T+1)

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CTP(中国金融期货交易所)是国内比较重要的期货交易平台,目前已经成为了全球最大的期货市场之一。对于高频交易者来说,CTP是一个非常重要的平台,因为它提供了高效、稳定的交易接口。 以下是一些CTP高频开发教程: 1. CTP官方文档:在开始进行CTP高频开发之前,建议您先熟悉CTP的官方文档。这些文档包括CTP API接口文档、CTP交易规则、CTP交易指南等。这些文档可以帮助您了解CTP的基本知识和API的使用方法。 2. CTP开发环境配置:在开始开发之前,需要安装CTP开发环境。CTP提供了多种语言的API接口,包括C++、Python、Java等。根据您的编程语言选择相应的API接口,并按照官方文档进行环境配置。 3. CTP高频交易策略开发:在掌握CTP的基本知识和API接口之后,可以开始进行高频交易策略的开发。高频交易策略的开发需要考虑到市场行情、交易规则、风险控制等多方面因素。可以参考一些已有的交易策略,并进行优化和改进。 4. CTP高频交易系统搭建:在开发完高频交易策略之后,需要将其部署到一个稳定的交易系统中。可以使用一些流行的开源框架,如vnpy、pyctp等,进行高频交易系统的搭建。 5. CTP高频交易系统测试与优化:在完成交易系统的搭建之后,需要进行一些测试和优化工作。测试可以包括回测、实盘测试等。通过优化,可以提高交易系统的效率和稳定性。 以上是CTP高频开发的一些基本教程,希望能对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值