ranaroussi / yfinance

Download market data from Yahoo! Finance's API

Home Page:https://aroussi.com/post/python-yahoo-finance

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

latest version 0.2.38 have so many errors on get_earnings_dates() return data

billionpan2020 opened this issue · comments

Describe bug

I always use yfinance Reported EPS data do stock analysis. I found the incompatible errors in the lastest version of get_earnings_dates() return data. It organize and return the quarterly eps data clean and accurate on the whole in the past, but the behavior of this version changed, and raise some logical errors that I can not handle and filtered with additional code in my software.

Simple code that reproduces your problem

stock = yf.Ticker('BMO')
quarterly_earnings = stock.get_earnings_dates(limit=40)
quarterly_earnings

Debug log

There is not a syntax error, it is just a logical issue that should be handled before return the final result of this method. the following attachment is the return values when I run the above sample code in jupyter notebook. the issue show up clearly after the date 2023-12-01. between the date 2024-01-30 and 2024-04-16, the data is just such a mess.

please see the attachment.
running result

Bad data proof

No response

yfinance version

0.2.38

Python version

No response

Operating system

No response

Does Yahoo website have different data?

ok, that seems it is not a error in function behavior, but that recent data on the website make the usage of it impossible.
In the past, there is only one eps data each quarter on the whole, however when you look at the recent data after 2024-12-01, you can not know which data belong to which quarter and which data is the right number

It seems like the bug also occurs for other companies. For instance, NVIDIA also seems to have the wrong data: https://finance.yahoo.com/calendar/earnings?symbol=NVDA