以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  [求助]求判断当前时间为该品种的交易时间的代码逻辑  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=161286)

--  作者:michaelyjy
--  发布时间:2018/1/25 10:58:28
--  [求助]求判断当前时间为该品种的交易时间的代码逻辑
如题,此前我用的是
--  作者:michaelyjy
--  发布时间: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
--  发布时间: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
--  发布时间:2018/1/25 14:12:53
--  
你这里用的是相差的小时数以及分钟数,我用的是相差的秒数。

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

--  作者:yukizzc
--  发布时间:2018/1/25 14:37:58
--  
second就可以控制秒数了,日期加时间格式不是随便直接加减的
--  作者:michaelyjy
--  发布时间:2018/1/25 14:40:05
--  
先不管这个问题。为何秒数相差原来在10秒以内的,现在都变成10几秒了?
--  作者:yukizzc
--  发布时间: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
--  发布时间:2018/1/25 14:46:44
--  

我这边输出是这个值

1.15740695036948E-05

并没有发现有问题啊


--  作者:michaelyjy
--  发布时间:2018/1/25 15:05:39
--  
我开多个终端,最近发现,这个值(cdate(date&" "&time)-marketdata.GetMarketInfo("AG","SQ").timezoneconver(rptdata.Date,1))*24*60*60会超过10,但以前是不会的
--  作者:yukizzc
--  发布时间:2018/1/26 9:53:29
--  

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

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