以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  时间转换  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=86162)

--  作者:deni977
--  发布时间:2015/10/14 11:42:22
--  时间转换

Set MarketInfo = marketdata.GetMarketInfo("cl00","nm")
 Application.MsgOut MarketInfo.TimeZoneConver(Now,1)  \'1金字塔时区时间转北京时间

 

结果:

2015-10-14 17:39:49

 

为什么不是当前的北京时间:2015-10-14 11:39:49   ????????


 


--  作者:deni977
--  发布时间:2015/10/14 11:44:09
--  

数据时区设置是:

 

交易所/金字塔时区(推荐)


--  作者:王锋
--  发布时间:2015/10/14 11:47:03
--  
你用NOW这个函数本身就是北京时间的,你要用一个具体的金字塔时间才能有效进行转换的
--  作者:deni977
--  发布时间:2015/10/14 11:53:15
--  

原来如此!

 

再问,如何获得当前K线的交易所时间?VBA里面的time也是系统时间


--  作者:王锋
--  发布时间:2015/10/14 11:55:02
--  

你的描述不清楚,建议再详细描述


--  作者:deni977
--  发布时间:2015/10/14 12:01:26
--  

1、数据时区设置为:交易所/金字塔时区

2、窗格显示在1分钟K线下,时间是交易所时间

3、我的问题:如何用VBA获得对应每一根K线的时间?然后转换为北京时间?    (前提:不能更改X坐标为自然日坐标)

 


--  作者:deni977
--  发布时间:2015/10/14 12:05:10
--  

或者在PEL中,

 

TIMEZONECONVER( ) 这个是将北京时间转换为交易所时间,能否反过来?将交易所时间转换为北京时间?


--  作者:王锋
--  发布时间:2015/10/14 12:23:43
--  

Sub Test()
   \' 得到框架名称为"Technic",窗格名称为"Main"的窗格对象
Set Grid = Technic.GetGridByName("Main")

\'得到该窗格所对应的对象
Set History = Grid.GetHistoryData()
Set Market = Grid.GetMarketinfo()

\'打印最后一天的日期时间
mydate = History.date(History.Count-1)
msgbox mydate

\'打印转化后的北京时间
msgbox Market.TimeZoneConver(mydate,1)

End Sub


--  作者:deni977
--  发布时间:2015/10/14 12:27:53
--  

非常感谢!

 

没想到是Date包括了时间,原来以为是Date只有日期。