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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → [求助]求判断当前时间为该品种的交易时间的代码逻辑

   

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


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

主题:[求助]求判断当前时间为该品种的交易时间的代码逻辑

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


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
[求助]求判断当前时间为该品种的交易时间的代码逻辑  发帖心情 Post By:2018/1/25 10:58:28 [只看该作者]

如题,此前我用的是

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


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2018/1/25 11:01:22 [只看该作者]

如题,此前我用的是
set rptdata=marketdata.GetReportData("AG","SQ")
(cdate(date&" "&time)-marketdata.GetMarketInfo("AG","SQ").timezoneconver(rptdata.Date,1))*24*60*60<10
来判断,最近不知为何这个值(cdate(date&" "&time)-marketdata.GetMarketInfo("AG","SQ").timezoneconver(rptdata.Date,1))*24*60*60都超过10了

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2018/1/25 14:08:47 [只看该作者]

ti = FormatDateTime(cdate(date&" "&time),4)
cond1= hour(ti)-hour(FormatDateTime(marketdata.GetMarketInfo("AG","SQ").timezoneconver(rptdata.Date,1),4))=0
cond2 = minute(ti)-minute(FormatDateTime(marketdata.GetMarketInfo("AG","SQ").timezoneconver(rptdata.Date,1),4))<10

日期时间不能直接加减吧,这样转换看下呢


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


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2018/1/25 14:12:53 [只看该作者]

你这里用的是相差的小时数以及分钟数,我用的是相差的秒数。

但为什么以前相差在10秒以内,现在都超过10秒了?

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2018/1/25 14:37:58 [只看该作者]

second就可以控制秒数了,日期加时间格式不是随便直接加减的

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


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2018/1/25 14:40:05 [只看该作者]

先不管这个问题。为何秒数相差原来在10秒以内的,现在都变成10几秒了?

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2018/1/25 14:45:22 [只看该作者]

set rptdata = marketdata.GetReportData("AG00","SQ")
'application.MsgOut rptdata.Date
ti = cdate(date&" "&time)
b = marketdata.GetMarketInfo("AG00","SQ").timezoneconver(rptdata.Date,1)

application.MsgOut (ti-b)

你这样去输出调试下呢


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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2018/1/25 14:46:44 [只看该作者]

我这边输出是这个值

1.15740695036948E-05

并没有发现有问题啊


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


加好友 发短信 ateam
等级:论坛游侠 帖子:414 积分:0 威望:0 精华:0 注册:2016/12/8 10:33:23
  发帖心情 Post By:2018/1/25 15:05:39 [只看该作者]

我开多个终端,最近发现,这个值(cdate(date&" "&time)-marketdata.GetMarketInfo("AG","SQ").timezoneconver(rptdata.Date,1))*24*60*60会超过10,但以前是不会的

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


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2018/1/26 9:53:29 [只看该作者]

那您看下ti还有行情的时间转换后的值都是多少呢?

这点简单的调试我想还是很容易输出的


 回到顶部
总数 15 1 2 下一页