如何解决For 循环从字典中返回 0
我想计算所有门票的协整。
所以我们从股票 A 开始,然后计算与股票 B、C、D、E 等的协整。
然后我们从股票 B 开始,它与股票 C、D、E 等进行协整
但是它返回 0 的循环。错误是什么?
导入数据
tickets = ['MMM','ABT','ABBV','ABMD','ACN','ATVI','ADBE','AMD']
data = {tick: yf.download(tick,start = "2017-06-14",end = "2021-06-14",interval="1d")['Adj Close'] for tick in tickets}
制作循环
lista = []
comprimento = len(tickets)
for i in range(0,comprimento):
print("Ticket a ser analisado: " + str(tickets[i]))
for j in range(i+1,comprimento):
cointeracao = coint(data[i],data[j])
if cointeracao[1] < 0.05:
lista.append((tickets[i],tickets[j]))
print(lista)
lista
错误:
KeyError Traceback (most recent call last)
<ipython-input-131-f15c6a752928> in <module>
7 for j in range(i+1,comprimento):
8
----> 9 cointeracao = coint(data[i],data[j])
10 if cointeracao[1] < 0.05:
11 lista.append((tickets[i],tickets[j]))
KeyError: 0
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。