0

我使用Binance.Net作为 Binance API 包装器,最近我遇到了DateTime.AddSeconds.

以下代码应该在最后一个订单之前找到蜡烛。

// OpenTime and CloseTime are both DateTime
var openTime = lastOrder.OpenTime; // 10:50:00
var closeTime = lastOrder.CloseTime; // 10:54:59

// It should return 10:55:00 - 10:50:00 = 5 minutes
// The reason I'm doing this is because I don't know the exact interval my bot is working with.
// What I know is the OpenTime (begin) and CloseTime (end).
var difference = closeTime.AddSeconds(1) - openTime; // closeTime.AddSeconds(1) doesn't work

var dateTime = openTime - difference; // 10:50:00 - 00:05:00.9990000 = 10:39:99

// 10:39:99 is an invalid startTime/endTime
var kline = _client.GetKlines(symbol, interval, startTime: dateTime, endTime: dateTime, limit: 1).Data;

问题:

问题是它.AddSeconds(1)实际上并没有增加那一秒,因此_client.GetKlines失败了。

我不知道是否有更好的方法可以在 Binance 的 API 中获取上一个蜡烛,但如果有,我会接受它作为解决方案。

问题视觉表示:

在此处输入图像描述

编辑:

解决它!当我检查 DateTime 属性时,我意识到我错过了 CloseTime 属性中的毫秒数。所以最终,这是一个错误的计算。而不是.AddSeconds(1),我做到了.AddMiliseconds(1)

4

0 回答 0