Из того, что вы показали нам здесь. мне кажется, что логика c вашего кода не зависит от самих акций, поэтому данные, которые вы получаете в data3
, просто не содержат данных для одной из компаний, которую вы хотите отслеживать.
В приведенном ниже коде вы дважды просматриваете одни и те же данные (close
) без каких-либо условий, чтобы сопоставить их с акциями, поскольку data3 - это всего лишь .tail()
подмножество data2
.
data2 = data.DataReader(data1, 'yahoo', start_date, end_date)
data3 = data2.tail(200)
close = data3['Close']
for stock in data1:
for close_price in close :
print(close_price)
вместо этого вы сначала хотели бы создать закрытие для каждой из акций:
close = {}
for stock in data1:
# a filter method stub that has to be implemented based on your data
close[stock] = filter_data2_by_stock(stock)
, отфильтровав данные по акциям, вы наверняка получите акцию, которой вы являетесь искать вместо того, что входит в хвост вашего data2
набора данных.
затем вы проследите через эти отфильтрованные данные, чтобы получить значения закрытия для вашей акции как
for stock in data1:
for close_price in close[stock] :
print(close_price)