CTP: 找ActionDay 和TradingDay说点事

      CTP是我们喜闻乐见的期货接口,现在证券行业也开始学习或模仿CTP接口标准了。
      客观地说,CTP是目前国内水平最高的接口,也给行业的发展带来的革命性的影响。但由于多种原因,还有一些我们感觉不太正常的地方。如ExchangeID,在行情中,这个字段可能为空,也可能有赋值;但在委托(order)和成交回报(trade)中,就会认真赋值;当然,区别比较大的有如,ActionDay 和TradingDay ,作为今天重点问题进行说明。这二者在几大商品交易所中,标准不一,语义不清,让人伤神。
      按个人初步理解,ActionDay更多理解成发生在哪个自然日,而TradingDay更多的理解成交易所划分在哪个结算日。(说明,非官方理解,可能有误!)但,在CTP中,这个理解好象很难完整统一地进行解释,让人费解。
      应该说,这种区别是在二个层次上的。
(一)各交易所中夜盘行情的区别
     以下是我打的行情数据文件Log,可以看出,在这天的夜市中,大商所的品种(i,p)和上期所(rb)以及郑商所(TA)不一样。我们找了几个时段的行情数据,来看看,说明,TradeDay为CTP中的TradingDay字段。

    另外,可以看到,在行情中,ExchangeID是空的,只有在委托和成交回报中的才有赋值的。


(1)在24:00之前,三交易所行情数据:(说明:郑交所23:30夜市收盘,不跨夜。)

      周一晚:大商所的ActionDay 提前一天,郑商所的TradingDay晚了一天,上期所的正常!
2015-01-26 21:01:15,245 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150127 TradeDay:20150127 ExchangeID:
2015-01-26 21:01:15,261 [5] INFO  StrategyTrading.Logger  - instrument:ru1505 ActionDay:20150126 TradeDay:20150127 ExchangeID:
2015-01-26 21:01:15,589 [5] INFO  StrategyTrading.Logger  - instrument:TA505 ActionDay:20150126 TradeDay:20150126 ExchangeID:
2015-01-26 21:02:15,227 [5] INFO  StrategyTrading.Logger  - instrument:RM505 ActionDay:20150126 TradeDay:20150126 ExchangeID:

      周二晚:大商所的ActionDay 提前一天,郑商所的TradingDay晚了一天,上期所的正常!
2015-01-27 21:01:13,142 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150127 TradeDay:20150128 ExchangeID:
2015-01-27 21:02:13,093 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150128 TradeDay:20150128 ExchangeID:
2015-01-27 21:02:13,124 [5] INFO  StrategyTrading.Logger  - instrument:RM505 ActionDay:20150127 TradeDay:20150127 ExchangeID:
2015-01-27 21:02:13,124 [5] INFO  StrategyTrading.Logger  - instrument:TA505 ActionDay:20150127 TradeDay:20150127 ExchangeID:


     周三晚:大商所的ActionDay 提前一天,郑商所的TradingDay晚了一天,上期所的正常!

2015-01-28 21:38:18,630 [5] INFO  StrategyTrading.Logger  - instr:p1505 TICKTIME:21:38:07, lastPrice:4806 ActionDay:20150129 Volume:19998 TradingDay:20150129
2015-01-28 21:38:18,661 [5] INFO  StrategyTrading.Logger  - instr:TA505 TICKTIME:21:38:07, lastPrice:4644 ActionDay:20150128 Volume:142864 TradingDay:20150128
2015-01-28 21:38:18,661 [5] INFO  StrategyTrading.Logger  - instr:RM505 TICKTIME:21:38:07, lastPrice:2115 ActionDay:20150128 Volume:315672 TradingDay:20150128
2015-01-28 21:38:18,661 [5] INFO  StrategyTrading.Logger  - instr:rb1505 TICKTIME:21:38:07, lastPrice:2474 ActionDay:20150128 Volume:337626 TradingDay:20150129
  周四晚:大商所的ActionDay 提前一天,郑商所的TradingDay晚了一天,上期所的正常!

2015-01-29 22:54:07,959 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150130 TradeDay:20150130 ExchangeID:
2015-01-29 22:54:08,521 [5] INFO  StrategyTrading.Logger  - instrument:RM505 ActionDay:20150129 TradeDay:20150129 ExchangeID:
2015-01-29 22:54:08,521 [5] INFO  StrategyTrading.Logger  - instrument:TA505 ActionDay:20150129 TradeDay:20150129 ExchangeID:
2015-01-29 22:54:08,568 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150129 TradeDay:20150130 ExchangeID:

  周五晚:大商所的ActionDay 提前三天,郑商所的TradingDay晚了3天,上期所的正常!
2015-01-30 21:02:06,425 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150130 TradeDay:20150202 ExchangeID:
2015-01-30 21:03:06,080 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150202 TradeDay:20150202 ExchangeID:
2015-01-30 21:03:06,361 [5] INFO  StrategyTrading.Logger  - instrument:RM505 ActionDay:20150130 TradeDay:20150130 ExchangeID:
2015-01-30 21:03:06,361 [5] INFO  StrategyTrading.Logger  - instrument:TA505 ActionDay:20150130 TradeDay:20150130 ExchangeID:


(2)24:00分之后,上期和大商所行情,郑交所只交易至当晚23:30分所以无数据。
      周一晚:(时间段:周一晚至周二凌晨):

2015-02-10 00:18:27,156 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150210 TradeDay:20150210 ExchangeID:
2015-02-10 00:19:21,288 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150210 TradeDay:20150210 ExchangeID:

     周二晚:(时间段:周二晚至周三凌晨):

2015-01-28 00:22:13,102 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150128 TradeDay:20150128 ExchangeID:
2015-01-28 00:22:21,885 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150128 TradeDay:20150128 ExchangeID:

    周三晚:(时间段:周三晚至周四凌晨):
2015-01-29 00:01:17,849 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150129 TradeDay:20150129 ExchangeID:
2015-01-29 00:02:10,452 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150129 TradeDay:20150129 ExchangeID:

     周四晚:(时间段:周四晚至周五凌晨):

2015-01-30 00:15:10,191 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150130 TradeDay:20150130 ExchangeID:
2015-01-30 00:16:08,567 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150130 TradeDay:20150130 ExchangeID:

     周五晚:(时间段:周五晚至周六凌晨):

2015-01-31 00:21:06,405 [5] INFO  StrategyTrading.Logger  - instrument:rb1505 ActionDay:20150131 TradeDay:20150202 ExchangeID:
2015-01-31 00:22:07,136 [5] INFO  StrategyTrading.Logger  - instrument:p1505 ActionDay:20150202 TradeDay:20150202 ExchangeID:

  (3) 日盘:三个交易所都相同

    一方面,各交易所之间可能存在一定的区别,另外,交易所随着跨夜也会存在变化。
    当然,可以看出,CTP在日盘上,行情的数据都是正常的,全部相同。所以,夜盘对系统和平台的变化那还是相当大的。
    我用C#代码总结一下规律:(待验证)
           if (dayNightStatus == EnumMarketDayNightStatus.NightMarket  )
            {
                if (exeID == EnumExchangeID.大商所 ) 
                {
                    if (TickTime.DayOfWeek == DayOfWeek.Monday)
                    {
                        cTickTime = TickTime.AddDays(-3);
                    }
                    else
                    {
                        cTickTime = TickTime.AddDays(-1);
                    }
                }
                else  
                {
                    if (TickTime.DayOfWeek == DayOfWeek.Saturday)
                    {
                        cTickTime = TickTime.AddDays(2);
                    }
                }

(二)行情和成交回报上的区别     
     以TradingDay为例,比如,在2015-1-13日,夜市,如果你有成交,你就会发现,上期所和郑商所的TradingDay和行情数据中的TradingDay是不一样的,更准确地说,是成交回报中是准确的。
  这种问题,如果你不深入了解到交易层次,恐怕无法了解这其中的水有多深。你在行情切分,在仓位归属等上可能会犯许多错误。总之,事事不能想当然!!!

     希望写此文,能够提醒自己和大家,处处无小事!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值