CTP爬坑指北(五)
2023-05-14 14:58:39 来源:哔哩哔哩
众所周知,天下大坑共一石,CTP独占八斗。进行CTP开发时,里面需要注意的地方比较多。今天给大家聊一聊CTP中暗藏的一些坑,让新手避开陷阱。
(资料图片)
01
报单时的开平方向TThostFtdcCombOffsetFlagType和投机套保TThostFtdcCombHedgeFlagType,怎么填?
TThostFtdcCombOffsetFlagType是一个数组,元素值的类型为TThostFtdcOffsetFlagType。在最开始的设计中,单腿合约交易只需要填[0]位,组合合约交易时各分腿的开平标志从[0]开始,每个元素对应一条分腿,暂定为5位,当时市场上最长的组合合约为3条腿。但在后来的设计中,所有类型的合约都只需要填[0]位即可,因此把它当作TThostFtdcOffsetFlagType来处理就好。
与此类似的,组合投机套保标志CombHedgeFlag在设计之初也是为了处理组合套利合约而设计的多位,但现在也是只需要把它当作TThostFtdcHedgeFlagType,填[0]位就好。
示例:
CThostFtdcInputOrderFieldord = { 0 };
ord.CombOffsetFlag[0] = THOST_FTDC_OF_Close; // 平仓
ord.CombHedgeFlag[0] = THOST_FTDC_HF_Speculation; // 投机
02
API是否多线程安全的(linux以及windows平台)?
API和SPI是不同的线程,API可以同时被多个线程调用,也就是大家所说的线程安全性。这些特性和平台无关。因此,API是线程安全的,可以在多个线程调用API的接口函数。
03
投资者结算结果确认是什么意思?有什么用?
投资者在登录后首先需要确认(英文Confirm)自己的结算单(英文SettlementInfo,即账单),表示认可经纪商提供的交易结果,结算单确认后才可以进行交易操作。
终端可以使用ReqSettlementInfoConfirm请求确认结算单,请求时只需要填写经纪公司代码BrokerID和投资者代码InvestorID。
怎么查结算单内容呢?
查询结算单使用ReqQrySettlementInfo,若不填日期,则表示取上一交易日结算单,结算单内容的文本(Content)较长,会通过多条返回,需要自行拼接。拼接时注意中文编码的问题,见:结算单中有乱码?
那么,如何知道自己今天有没有确认过结算单呢?
使用ReqQrySettlementInfoConfirm可以查询当天客户结算单的确认情况,无记录返回(可能返回空指针)表示当天未确认结算单,为避免客户当天多次登陆多次重复确认结算单,建议在确认前先查询当天是否已经确认,如果客户已经确认过则不需要再次重复确认。
这里以快期2软件为例,来看看它是怎么处理确认结算的流程的。
打开快期2之后,由于我这个账户今天还没有确认过结算单,所以ReqQrySettlementInfoConfirm查询结算单确认情况发现,今天还没有确认过,所以快期软件执行ReqQrySettlementInfo查结算单,并将查询返回的结算单内容展示出来。如果在展示出来的结算单确认页面这里点击“确认”按钮,则会发送确认的命令ReqSettlementInfoConfirm。
如果对结算单有异议,则点击“取消”,点击后会退出软件。
如果打开软件时,我这个账户今天已经确认过结算单,那么软件ReqQrySettlementInfoConfirm查询结算单确认情况就会发现,今天已经确认过了,无需再次确认,所以就不会去执行ReqQrySettlementInfo查结算单以及展示,即跳过后续的步骤,可正常使用软件交易。
流程图如下:
04
结算单可以自动解析么?格式是怎样的?
各个期货公司的结算单内容有一些小差别,但总的差别不大,而且格式是长期不变的。如果仔细研究,是可以实现自动解析的,从而从结算单中提取(历史)成交记录等。
这里提供一个通用的产生结算单的格式化的文件(有部分删改,某一个资管平台即是通过这个文件产生的结算单),以帮助大家解析,具体的使用方法就见仁见智了。
settlement_header2=_ 制表时间 Creation Date:%8s
settlement_header3=_----------------------------------------------------------------------------------------------------
settlement_header4=_ 交易结算单(盯市) Settlement Statement(MTM)
settlement_header5=_客户号 Client ID: %-16s客户名称 Client Name:%s
settlement_header6=_日期 Date:%8s
settlement_header7=_
settlement_header8=_
settlement_header9=_
settlement_header10=_
settlement_account_summary1=_ 资金状况 币种:人民币 Account Summary Currency:CNY
settlement_account_summary2=_----------------------------------------------------------------------------------------------------
settlement_account_summary3=_期初结存 Balance b/f: %13.2f 基础保证金 Initial Margin: %13.2f
settlement_account_summary4=_出 入 金 Deposit/Withdrawal: %13.2f 期末结存 Balance c/f: %13.2f
settlement_account_summary5=_平仓盈亏 Realized P/L: %13.2f 质 押 金 Pledge Amount: %13.2f
settlement_account_summary6=_持仓盯市盈亏 MTM P/L: %13.2f 客户权益 Client Equity:: %13.2f
settlement_account_summary7=_期权执行盈亏 Exercise P/L: %13.2f 货币质押保证金占用 FX Pledge Occ.:%13.2f
settlement_account_summary8=_手 续 费 Commission: %13.2f 保证金占用 Margin Occupied: %13.2f
settlement_account_summary9=_行权手续费 Exercise Fee: %13.2f 交割保证金 Delivery Margin: %13.2f
settlement_account_summary10=_交割手续费 Delivery Fee: %13.2f 多头期权市值 Market value(long): %13.2f
settlement_account_summary11=_货币质入 New FX Pledge: %13.2f 空头期权市值 Market value(short): %13.2f
settlement_account_summary12=_货币质出 FX Redemption: %13.2f 市值权益 Market value(equity): %13.2f
settlement_account_summary13=_质押变化金额 Chg in Pledge Amt: %13.2f 可用资金 Fund Avail.: %13.2f
settlement_account_summary14=_权利金收入 Premium received: %13.2f 风 险 度 Risk Degree: %13.2f%%
settlement_account_summary17=_
settlement_deposit_withdrawal_head1=_ 出入金明细 Deposit/Withdrawal
settlement_deposit_withdrawal_head2=_----------------------------------------------------------------------------------------------------------------
settlement_deposit_withdrawal_head3=_|发生日期| 出入金类型 | 入金 | 出金 | 说明 |
settlement_deposit_withdrawal_head4=_| Date | Type | Deposit | Withdrawal | Note |
settlement_deposit_withdrawal_head5=_----------------------------------------------------------------------------------------------------------------
settlement_deposit_withdrawal_single_record1=_|%-8s|出入金 |%16.2f|%16.2f|%-42s|
settlement_deposit_withdrawal_end1=_----------------------------------------------------------------------------------------------------------------
settlement_deposit_withdrawal_end2=_|共%4d条| |%16.2f|%16.2f| |
settlement_deposit_withdrawal_end3=_----------------------------------------------------------------------------------------------------------------
settlement_deposit_withdrawal_end4=_出入金---Deposit/Withdrawal 银期转账---Bank-Futures Transfer 银期换汇---Bank-Futures FX Exchange
settlement_deposit_withdrawal_end5=_
settlement_trade_head1=_ 成交记录 Transaction Record
settlement_trade_head2=_---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_trade_head3=_|成交日期| 交易所 | 品种 | 合约 |买/卖| 投/保 | 成交价 | 手数 | 成交额 | 开平 | 手续费 | 平仓盈亏 | 权利金收支 | 成交序号 |
settlement_trade_head4=_| Date |Exchange| Product | Instrument | B/S | S/H | Price | Lots | Turnover | O/C | Fee |Realized P/L|Premium Received/Paid| Trans.No. |
settlement_trade_head5=_---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_trade_single_record1=_|%-8s|%-8s|%-18s| %-11s|%-5s|投 |%10.3f|%6d|%12.2f|%-18s|%10.2f|%12.2f| 0.00|%-12s|
settlement_trade_end1=_---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_trade_end2=_|共%4d条| | | | | |%6d|%12.2f| |%10.2f|%12.2f| 0.00| |
settlement_trade_end3=_---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_trade_end4=_能源中心---INE 上期所---SHFE 中金所---CFFEX 大商所---DCE 郑商所---CZCE
settlement_trade_end5=_买---Buy 卖---Sell
settlement_trade_end6=_投---Speculation 保---Hedge 套---Arbitrage 般---General
settlement_trade_end7=_开---Open 平---Close 平今---Close Today 强平---Forced Liquidation 平昨---Close Prev. 强减---Forced Reduction 本地强平---Local Forced Liquidation
settlement_trade_end8=_
settlement_position_closed_head1=_ 平仓明细 Position Closed
settlement_position_closed_head2=_----------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_closed_head3=_| 平仓日期 | 交易所 | 品种 | 合约 |开仓日期 |买/卖| 手数 | 开仓价 | 昨结算 | 成交价 | 平仓盈亏 | 权利金收支 |
settlement_position_closed_head4=_|Close Date|Exchange| Product | Instrument |Open Date| B/S | Lots |Pos. Open Price| Prev. Sttl |Trans. Price|Realized P/L|Premium Received/Paid|
settlement_position_closed_head5=_----------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_closed_single_record1=_|%-10s|%-8s|%-18s|%-16s|%-9s|%-5s|%10d|%15.3f|%16.3f|%12.3f|%12.2f| 0.000|
settlement_position_closed_end1=_----------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_closed_end2=_|共%6d条| | | | | |%10d| | | |%12.2f| 0.00|
settlement_position_closed_end3=_----------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_closed_end4=_能源中心---INE 上期所---SHFE 中金所---CFFEX 大商所---DCE 郑商所---CZCE
settlement_position_closed_end5=_买---Buy 卖---Sell
settlement_position_closed_end6=_
settlement_position_detail_head1=_ 持仓明细 Positions Detail
settlement_position_detail_head2=_-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_detail_head3=_| 交易所 | 品种 | 合约 |开仓日期 | 投/保 |买/卖|持仓量 | 开仓价 | 昨结算 | 结算价 | 浮动盈亏 | 盯市盈亏 | 保证金 | 期权市值 |
settlement_position_detail_head4=_|Exchange| Product | Instrument |Open Date| S/H | B/S |Positon|Pos. Open Price| Prev. Sttl |Settlement Price| Accum. P/L | MTM P/L | Margin | Market Value(Options)|
settlement_position_detail_head5=_-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_detail_single_record1=_|%-8s|%-18s| %-11s|%9s|投 |%-5s|%7d|%15.3f|%16.3f|%16.3f|%12.2f|%11.2f|%11.2f| 0.00|
settlement_position_detail_end1=_-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_detail_end2=_|共%4d条| | | | | |%7d| | | |%12.2f|%11.2f|%11.2f| 0.00|
settlement_position_detail_end3=_-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_detail_end4=_能源中心---INE 上期所---SHFE 中金所---CFFEX 大商所---DCE 郑商所---CZCE
settlement_position_detail_end5=_买---Buy 卖---Sell
settlement_position_detail_end6=_投---Speculation 保---Hedge 套---Arbitrage 般---General
settlement_position_detail_end7=_
settlement_position_head1=_ 持仓汇总 Positions
settlement_position_head2=_------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_head3=_| 品种 | 合约 | 买持 | 买均价 | 卖持 | 卖均价 | 昨结算 | 今结算 |持仓盯市盈亏| 保证金占用 | 投/保 | 多头期权市值 | 空头期权市值 |
settlement_position_head4=_| Product | Instrument | Long Pos. |Avg Buy Price| Short Pos. |Avg Sell Price|Prev. Sttl|Sttl Today| MTM P/L |Margin Occupied| S/H |Market Value(Long)|Market Value(Short)|
settlement_position_head5=_------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_single_record1=_|%-18s|%-16s|%13d|%13.3f|%14d|%14.3f|%10.3f|%10.3f|%12.2f|%15.2f|投 | 0.00| 0.00|
settlement_position_end1=_------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_end2=_|共%6d条 | |%13d| |%14d| | | |%12.2f|%15.2f| | 0.00| 0.00|
settlement_position_end3=_------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
settlement_position_end4=_
settlement_position_end5=_
settlement_position_end6=_
settlement_position_end7=_
settlement_position_end8=_
关键词:
为你推荐
-
CTP爬坑指北(五)
-
消息!赛格电脑城今天营业吗_赛格电脑城
-
全球热点!乳腺全切术后注意事项_乳腺切除后要注意什么
-
不愧是世界弹!防弹少年团《The Planet》获67个国家及地区一位-速看料
-
护心导演回应点赞拉踩长月烬明微博:抱歉手滑了
-
word编号后空格太大如何解决(word编号后空格太大)
-
每日头条!火字旁加个亘是什么字怎么读_火字旁加个亘是什么字
-
世界观焦点:复合词和派生词的区别_复合词
-
针对华南云南等地较强降雨部署防汛工作 环球今亮点
-
今日pardon的英语怎么读音_pardon英语怎么读|每日头条
-
【世界独家】20寸照片是多少厘米乘多少厘米_20寸照片是多少厘米
-
天天最资讯丨8999元起!索尼Xperia 1 V开启预售:搭载双层晶体管像素传感器
-
归途很远 祖国很近——中国公民撤离苏丹纪实
-
天天日报丨彩弹射击、紧急救护……贵阳市新世界学校学生和警营教官一起度过美好周末
-
拜泉县 深化县校合作 促进乡村振兴-热头条
-
橙子互动聘任范永良为公司董事会秘书 2022上半年公司亏损10.72万-环球速讯
-
上古战龙极品性格_上古战龙-环球滚动
-
两岸学者在上海呼吁共同寻找和平解决方案 独家
-
王清宪与高迎欣举行工作会谈
-
天天动态:大反转,梅西昔日死敌罕见发声!令球王欣慰,大巴黎双标引起公愤
推荐内容
- CTP爬坑指北(五)
- 消息!赛格电脑城今天营业吗_赛格电脑城
- 全球热点!乳腺全切术后注意事项_乳腺切除后要注
- 不愧是世界弹!防弹少年团《The Planet》获67个
- 护心导演回应点赞拉踩长月烬明微博:抱歉手滑了
- word编号后空格太大如何解决(word编号后空格太大)
- 每日头条!火字旁加个亘是什么字怎么读_火字旁加个
- 世界观焦点:复合词和派生词的区别_复合词
- 针对华南云南等地较强降雨部署防汛工作 环球今亮点
- 今日pardon的英语怎么读音_pardon英语怎么读|每日头条
- 【世界独家】20寸照片是多少厘米乘多少厘米_20寸
- 天天最资讯丨8999元起!索尼Xperia 1 V开启预售
- 归途很远 祖国很近——中国公民撤离苏丹纪实
- 天天日报丨彩弹射击、紧急救护……贵阳市新世界学
- 拜泉县 深化县校合作 促进乡村振兴-热头条
- 橙子互动聘任范永良为公司董事会秘书 2022上半年
- 上古战龙极品性格_上古战龙-环球滚动
- 两岸学者在上海呼吁共同寻找和平解决方案 独家
- 王清宪与高迎欣举行工作会谈
- 天天动态:大反转,梅西昔日死敌罕见发声!令球王
- “寻味苏州”美食节送出“尝鲜大礼”,邀您品味“
- 【天天快播报】图片报:极端罗马球迷向药厂球迷投
- 当前聚焦:好政策,利好大市场
- 全球微动态丨忘川彼岸歌词表达了什么意思_忘川彼
- 什么叫女人味-什么叫女弟-全球速讯
- 天天新资讯:有史以来最大宇宙爆炸揭示
- 下周新股申购一览(5月15日~5月19日)
- 世界即时:立体桌面斗恶龙!创意AR立体桌上游戏颠
- 世界今亮点!怎么查工商注册名字重名_如何在网上
- 外交部:敦促七国集团停止搞封闭排他“小圈子”
- 观天下·美国枪患丨多少芝加哥人经历过枪支暴力?
- 滚动:这个护士节,她们走进社区为居民送去暖心服
- 崔东树:今年我国新能源车市场需求持续恢复 4月
- 6种名副其实的夏日之花|即时
- 重庆姐弟坠亡案维持死刑原判,生母陈美霖:“这还
- 世界报道:杜兰特的“抱团”又一次失败!太阳惨败
- 【全球报资讯】中视传媒涨停
- 当前头条:淄博市推出2023年上半年见习岗位414个
- 世界新动态:国网重庆信通公司完成数据分析服务目
- 三星推动五月更新到Galaxy S21 FE与S20 FE等
油气
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10