如何解决使用python获取列表附带的数据?
使用 python,我从服务器获得如下列表。但是当我想在“for”循环中返回它时,它给了我一个列表错误。我该如何解决这个问题?
所以总而言之,我想在下面的“for”循环中访问传入的“klines”中的“Open,Close”等数据。
Traceback (most recent call last):
File "C:\Users\winuser\Desktop\proje\Python Projects\main.py",line 53,in <module>
if is_bullish_engulfing(candle=klines,index=i):
File "C:\Users\winuser\Desktop\proje\Python Projects\main.py",line 21,in is_bullish_engulfing
current_candle = candle(index)
TypeError: 'list' object is not callable
from binance.client import Client
import time
class BinanceConnection:
def __init__(self,file):
self.connect(file)
def connect(self,file):
lines = [line.rstrip('\n') for line in open(file)]
key = lines[0]
secret = lines[1]
self.client = Client(key,secret)
def is_bearish_candlestick(candle):
return candle['Close'] < candle['Open']
def is_bullish_engulfing(candle,index):
current_candle = candle(index)
prevIoUs_candle = candle(index-1)
if is_bearish_candlestick(prevIoUs_candle) \
and current_candle['Close'] > prevIoUs_candle['Open'] and current_candle['Open'] < prevIoUs_candle['Close']:
return True
return False
if __name__ == '__main__':
filename = 'credentials.txt'
connection = BinanceConnection(filename)
symbol = 'ADAUSDT'
interval = '1m'
limit = 100
while True:
time.sleep(10)
try:
klines = connection.client.get_klines(symbol=symbol,interval=interval,limit=limit)
except Exception as exp:
print(exp.status_code,flush=True)
print(exp.message,flush=True)
open = [float(entry[1]) for entry in klines]
high = [float(entry[2]) for entry in klines]
low = [float(entry[3]) for entry in klines]
close = [float(entry[4]) for entry in klines]
for i in range(1,len(klines)):
if is_bullish_engulfing(candle=klines,index=i):
print("{} it is a bullish engulfing".format(klines[i]['Date']))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。