欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 怎么判断某个合约是否已启用?

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4698人关注过本帖树形打印复制链接

主题:怎么判断某个合约是否已启用?

帅哥哟,离线,有人找我吗?
guotx2010
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
怎么判断某个合约是否已启用?  发帖心情 Post By:2012/2/16 10:44:11    Post IP:58.60.37.231[只看该作者]

我同时交易两个合约,如IF02,IF03,当主力合约变为IF03时,交易IF03,IF04这时有一个问题,那就是IF04还没有生效,是用什么函数判断这个合约是否已经启用了?

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
阿火
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 原leevolvo
等级:版主 帖子:2160 积分:10563 威望:0 精华:11 注册:2010/11/3 11:21:19
  发帖心情 Post By:2012/2/16 10:52:45    Post IP:120.42.45.130[只看该作者]

人工判断。或者判断日期是否为currentdate


 回到顶部
帅哥哟,离线,有人找我吗?
guotx2010
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2012/2/16 11:15:12    Post IP:58.60.37.231[只看该作者]

我现在的思路是判断当前是星期几,如果主力合约月份>当前月份,并且今天是周4或者周5,就不交易,因为远月合约还没有启用。

这样有一个问题,那就是本月第4个星期的周4、周5也不会交易,而那时远月合约已经启用了。

 


 回到顶部
帅哥哟,离线,有人找我吗?
阿火
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 原leevolvo
等级:版主 帖子:2160 积分:10563 威望:0 精华:11 注册:2010/11/3 11:21:19
  发帖心情 Post By:2012/2/16 13:06:49    Post IP:120.42.45.130[只看该作者]

那么麻烦干嘛

有交易的话,date的值就会等于currentdate ,这个方法可以吧。


 回到顶部
帅哥哟,离线,有人找我吗?
guotx2010
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蜘蛛侠 帖子:1366 积分:5210 威望:0 精华:7 注册:2010/12/11 18:00:33
  发帖心情 Post By:2012/2/16 22:32:31    Post IP:183.39.146.0[只看该作者]

我是用后台策略,监控的品种始终是IF00,如果按照你说的使用Date和CurrentDate比较,始终是相等的,就分不出远月合约是否已经启用了。

这种情况只在周4、周5出现,像今天是周4,IF主力合约已经换成了IF03,这时IF04还没有启用,要等到下周1才会启用,所以针对主力合约的

下一个月的交易就会“找不到合约”。

 

我现在的解决办法是:

使用VBA来解决这个问题,使用reportdata.LastOI来取出IF04的昨天成交量,如果等于0,说明IF04还没有启用,然后保存到全局变量中,

策略中使用extgbdata取出这个变量,如果变量的值等于0,就退出,这样就可以避免下单错误了。

 


 回到顶部