转换Binance交易时间戳出错:年份显示2052而非2022求助
问题解决:Binance交易时间转换年份错误
问题出在你额外指定了origin=pd.Timestamp('2000-01-01')参数。Binance API返回的time字段是基于1970-01-01(Unix纪元)的毫秒时间戳,你强制让转换从2000年开始计算,等于把实际时间往后多推了30年(2000-1970),自然2022就变成了2052。
直接修改代码去掉origin参数即可:
trades = pd.DataFrame(binance_client.get_my_trades(symbol='ADAUSDT')) # 去掉origin参数,使用默认的Unix纪元起始点 trades['time'] = pd.to_datetime(trades["time"], unit="ms") # 如果需要指定CSV输出的日期格式,可以加date_format参数 trades.to_csv('your_trades.csv', date_format='%d/%m/%Y %I:%M:%S %p')
验证下:转换后的time列就会显示正确的2022年日期,其余时分秒信息也会和原始数据匹配。
内容的提问来源于stack exchange,提问作者Eduardo Gonzalez
相关产品推荐
相关产品推荐

