我试图从binance的每日kline数据中找到最高的每日高点。我能够用这段代码API调用列表列表
client.get_historical_klines('maticbtc', Client.KLINE_INTERVAL_1DAY, "2 days ago UTC")
输出是以“开盘”“高”“低”“收盘”“成交量”格式列出的每日历史价格
[[1599264000000,
'0.00000185',
'0.00000192',
'0.00000171',
'0.00000177',
'208963036.00000000',
1599350399999,
'377.04825679',
14595,
'82785887.00000000',
'150.17277108',
'0'],
[1599350400000,
'0.00000177',
'0.00000185',
'0.00000170',
'0.00000182',
'114643846.00000000',
1599436799999,
'204.99814224',
9620,
'55503278.00000000',
'99.62131279',
'0']]
我想在此列表中找到最高的“高”值。我目前能够使用以下代码引用单个每日“高”值:
client.get_historical_klines('maticbtc', Client.KLINE_INTERVAL_1DAY, "30 days ago UTC")[0][2]
输出:
0.00000192
谢谢你的建议
您提供的示例不是列表,而是列表列表:
一般来说,“最高”值就是最大值。因此,在此类列表中查找最大值的代码为:
但有一件事很奇怪:API的返回数据您不会收到数字值列表,而是混合类型的数据记录。幸运的是,二进制文件提供了您要查找的值的信息:它似乎是第三个值。(请参阅:https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md#klinecandlestick-data)我不清楚为什么将此值作为字符串返回
因此,您的代码是:
一个小细节:下次你提问时,请提供你正在使用的模块的信息。在其他情况下,此信息可能非常重要!(幸好这里不是。)
请记住,我无法测试上面的代码,因为很遗憾,您没有提供一个我可以构建的工作示例。因此,请自己测试一下。如果您遇到任何错误,请随时在我的回答中添加评论,如果有任何进一步的问题,我将尝试解决
假设您在名为
values
的变量中有如上所述的数据如果需要
values
的每个子列表中第三个元素的最大值(由于不想进行字符串比较而转换为float),可以执行以下操作,例如:相关问题 更多 >
编程相关推荐