yfinance 找不到股票收盘价

问题描述 投票:0回答:1

这段代码以前运行良好,可以找到每个股票的收盘价。 现在,所有代码均返回“未找到价格数据,代码可能已除名 (1d 2024-02-01 -> 2024-02-01)” 有人遇到过这个问题吗

不存在任何错误,我在 29 号运行它,没有问题

xlxs 文件只是一个包含巴西股票代码的列,仅此而已。

import openpyxl
import yfinance as yf

file_path ="C:\\Users\\carol\\PycharmProjects\\EXTRATOS\\DOCS\\Fechamento_02_02.xlsx"

workbook = openpyxl.load_workbook(file_path)
sheet = workbook.active

data = '2024-01-29'

for row in range(2, sheet.max_row + 1):
    ticker = sheet.cell(row=row, column=1).value
    if ticker:
        ticker_completo = f"{ticker}.SA"
        print(ticker_completo)

        ativo = yf.Ticker(ticker_completo)
        historico = ativo.history(start=data, end=data)

        preco_fechamento = historico['Close'].iloc[0] if not 
historico.empty else 'N/A'

        sheet.cell(row=row, column=2).value = preco_fechamento

workbook.save(file_path)
python finance yahoo-finance yfinance
1个回答
0
投票

我稍微简化了你的代码并使用了股票作为例子:

import yfinance as yf

start_date = '2024-01-24'
#end_date = '2024-01-29'
end_date = '2024-02-01'

ticker = "AMZN"
#ticker = "AAPL"
active = yf.Ticker(ticker)
result = active.history(start=start_date, end=end_date)

print(result)

如果您使用较晚的结束日期,例如‘2024-02-01’,它有效,并且还包含 1 月 29 日的数据。但是,如果我使用“2024-01-29”,我会得到与您相同的错误。我猜这可能是雅虎财经的问题。但也许有人有另一个想法。

© www.soinside.com 2019 - 2024. All rights reserved.