Binance1HourMissingdata
创始人
2024-12-17 21:30:49
0

在Python中使用Binance API时,有时候会遇到一些数据丢失的情况。其中,可能出现的一种情况是无法获取某个小时的K线数据。这种情况通常出现在数据刚刚被写入API中,但尚未被完全处理或者索引。为了解决这个问题,可以使用以下代码示例:

from binance.client import Client
from datetime import datetime, timedelta

api_key = 'your_api_key'
api_secret = 'your_api_secret'
client = Client(api_key, api_secret)

symbol = 'BTCUSDT'
interval = Client.KLINE_INTERVAL_1HOUR
end_time = datetime.utcnow() - timedelta(hours=1)    # 设置数据结束时间为当前时间的前一个小时
start_time = end_time - timedelta(days=1)    # 设置数据开始时间为1天前

# 通过循环来确保每个小时都能够获取数据
delta = timedelta(hours=1)
while start_time < end_time:
    klines = client.get_historical_klines(symbol, interval, start_time.strftime("%Y-%m-%d %H:%M:%S"), end_time.strftime("%Y-%m-%d %H:%M:%S"))
    for kline in klines:
        # 处理K线数据
        pass
    start_time += delta

这段代码通过循环来轮询每个小时的数据,并确保能够获取该小时的K线数据。如果数据仍然不可用,则等待一段时间后再次尝试获取数据。

相关内容

热门资讯

Android Recycle... 要在Android RecyclerView中实现滑动卡片效果,可以按照以下步骤进行操作:首先,在项...
安装apache-beam==... 出现此错误可能是因为用户的Python版本太低,而apache-beam==2.34.0需要更高的P...
Android - 无法确定任... 这个错误通常发生在Android项目中,表示编译Debug版本的Java代码时出现了依赖关系问题。下...
Android - NDK 预... 在Android NDK的构建过程中,LOCAL_SRC_FILES只能包含一个项目。如果需要在ND...
Akka生成Actor问题 在Akka框架中,可以使用ActorSystem对象生成Actor。但是,当我们在Actor类中尝试...
Agora-RTC-React... 出现这个错误原因是因为在 React 组件中使用,import AgoraRTC from “ago...
Alertmanager在pr... 首先,在Prometheus配置文件中,确保Alertmanager URL已正确配置。例如:ale...
Aksnginxdomainb... 在AKS集群中,可以使用Nginx代理服务器实现根据域名进行路由。以下是具体步骤:部署Nginx i...
AddSingleton在.N... 在C#中创建Singleton对象通常是通过私有构造函数和静态属性来实现,例如:public cla...
Alertmanager中的基... Alertmanager中可以使用repeat_interval选项指定在一个告警重复发送前必须等待...