【问题标题】:Interpret Timestamp value from Binance in R解释 R 中 Binance 的时间戳值
【发布时间】:2018-06-29 17:05:34
【问题描述】:

我正在使用 R 中的Binance APIs。有人提到所有时间和时间戳都以毫秒为单位。当我通过 GET 命令从 httr 包中检索 R 中的订单列表时,我得到以下格式的时间:-

[1] 1.530289e+12 1.530289e+12 1.530289e+12 1.530290e+12 1.530290e+12

[1] 1530289083143 1530289248074 1530289249920 1530290497231 1530290498147

您能否告诉我如何以实时或日期时间格式解释它,例如:2018-6-29 16:24:35.555

非常感谢

【问题讨论】:

    标签: r api datetime timestamp binance


    【解决方案1】:

    as.POSIXct() 计算从纪元(1970 年 1 月 1 日)开始的秒数,但您从币安获得的响应以毫秒为单位。因此,一旦您请求了时间戳,您必须将其从毫秒转换为秒才能将其更改为日期时间格式。

    我在下面分解它。函数getTimestamp() 只是向币安请求时间戳。

    timestamp_request <- getTimestamp()
    
    timestamp <- as.numeric(timestamp_request) / 1000
    
    date_time <- as.POSIXct(timestamp, origin = "1970-01-01", tz = "GMT")
    
    print(timestamp_request)
    
    print(timestamp)
    
    print(date_time)
    

    打印出每一步的结果,

    > print(timestamp_request)
    [1] "1648640978297"
    > 
    > print(timestamp)
    [1] 1648640978
    > 
    > print(date_time)
    [1] "2022-03-30 11:32:49 GMT"
    

    【讨论】:

      【解决方案2】:

      这将为您提供日期、时间等,以秒而不是毫秒为单位。 如果您需要知道毫秒数,则必须稍作更改:

      Binance_Time_Stamp_Converted = datetime.datetime.fromtimestamp(Binance_Time_Stamp/1000).strftime('%Y-%m-%d %H:%M:%S')
      pprint.pprint (Binance_Time_Stamp_Converted)
      

      【讨论】:

        猜你喜欢
        • 2011-09-01
        • 1970-01-01
        • 2021-06-12
        • 2016-02-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-25
        相关资源
        最近更新 更多