首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >报价器之间的时区转换(第3部分)

报价器之间的时区转换(第3部分)
EN

Stack Overflow用户
提问于 2020-06-08 01:31:48
回答 1查看 73关注 0票数 0

正如Dennis T在answer to Timezone convertion between tickers中提到的,

我们可以使用security()函数来获取另一个时区的时间。

现在我试着从两个不同的时区获取时间。

股票代码CL1!在纽约纳斯达克( Nymex )进行交易,交易时区为UTC-4

股票代码ES1!在芝加哥的CME交易,交易时区为UTC-5

我们可以从符号信息中看到

为了可视化这种时差,我创建了一个小脚本来绘制两个时区的时间。

代码语言:javascript
复制
//@version=4
study("Nymex-CME times", shorttitle="Time")

time_cl1 = security("CL1!", timeframe.period, time(timeframe.period), gaps=barmerge.gaps_on) // UTC-4 Nymex
time_es1 = security("ES1!", timeframe.period, time(timeframe.period), gaps=barmerge.gaps_on) // UTC-5 CME

plot(time_cl1, "time_cl1", color.blue)
plot(time_es1, "time_es1", color.red)

由于两个股票行情都是在相隔1小时的时区交易的,所以我预计会看到1小时的时差。

然而,令我惊讶的是,这两个时代总是完全相同的。

我不明白这一点。

不是应该有1个小时的差异吗?

EN

回答 1

Stack Overflow用户

发布于 2020-06-08 06:09:58

time()是交易所时区中的时间,当通过security()查看时,还将取决于每个报价器的条形如何相互映射。此外,这两个市场的开盘/收盘时间都有一个小时的增量。

在这里,我们获取Unix时间,然后在图表的时区上下文中将其转换为小时:

代码语言:javascript
复制
//@version=4
study("Nymex-CME times", shorttitle="Time")

time_cl1 = security("CL1!", timeframe.period, timestamp(year, month, dayofmonth, hour, minute, second), gaps=barmerge.gaps_on) // UTC-4 Nymex
time_es1 = security("ES1!", timeframe.period, timestamp(year, month, dayofmonth, hour, minute, second), gaps=barmerge.gaps_on) // UTC-5 CME

hour_cl1 = hour(security("CL1!", timeframe.period, timestamp(year, month, dayofmonth, hour, minute, second), gaps=barmerge.gaps_on)) // UTC-4 Nymex
hour_es1 = hour(security("ES1!", timeframe.period, timestamp(year, month, dayofmonth, hour, minute, second), gaps=barmerge.gaps_on)) // UTC-5 CME

plot(time_cl1, "time_cl1", color.blue)
plot(time_es1, "time_es1", color.red)

plot(hour_cl1, "hour_cl1", color.blue)
plot(hour_es1, "hour_es1", color.red)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62249159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档