Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split adjustments have not been applied to data on many exchanges #93

Open
stephenrs opened this issue Jan 25, 2025 · 0 comments
Open

Comments

@stephenrs
Copy link

stephenrs commented Jan 25, 2025

Since the original issue I reported this on was closed (#92) without being addressed, I've opened a new issue.

For clarity, this issue is regarding a major systemic problem that affects many symbols across many exchanges. It is not limited to the small number of examples I have provided below.

Split adjustments are not being applied to symbol data, and the split data that is returned from the fundamentals API is deeply flawed. So, the pricing data that Twelvedata provides is becoming increasingly corrupt and unusable as time passes. This is a serious problem, so I would very much appreciate a serious and professional response.

This issue is directly related to this package and the API in general because:

  1. The API includes an “adjust” parameter (accessible via TDClient.time_series()) which should return split-adjusted data as requested, however, it does not.
  2. The /splits endpoint (accessible via TDClient.get_splits(symbol, exchange, country, type)) should return information to enable customers to apply split adjustments themselves, but the data returned from the endpoint is profoundly incorrect and/or incomplete in most cases, so it is impossible to use it to apply split adjustments to unadjusted data.

I have been in contact with customer support since October 2024 and after ignoring me for 3 months, they have now finally responded with this:

“Regarding your last email, I have spoken to the engineering team and we cannot fix irregularities in that particular data. Sorry about that.”

This response seems to focus on a few symbols and completely ignores the larger systemic problem. So, please confirm whether or not Twelvedata is able to provide split-adjusted data.

It's a simple and direct question, so I would appreciate a simple and direct answer.

The sooner you provide a definitive response to this the sooner we can all stop wasting time accomplishing nothing. Please forgive my directness, but I have been waiting almost 4 months for you to address this serious problem in a professional and direct manner.

This is the original issue report:

I have sent the below message to customer support several times over the past 2 months, but I still have not received any reply. So, I thought I would try to get some information here on Github.

The data for many symbols on several exchanges has not had split adjustments applied. For example, unfortunately, the data for some of the most actively traded stocks on the NSE, BSE, Tadawul, SET, and MYX exchanges is unusable because it has not been split-adjusted.

Here are examples from each of these exchanges, but there are many stocks that need split adjustments applied:

https://api.twelvedata.com/time_series?symbol=NESTLEIND&interval=1day&outputsize=5000&start_date=2014-04-14 18:30:25.820000+00:00&end_date=2024-11-19 18:30:25.820000+00:00&dp=5&timezone=UTC&order=asc&prepost=false&mic_code=XNSE&format=JSON&apikey=API_KEY

https://api.twelvedata.com/time_series?symbol=RELIANCE&interval=1day&outputsize=5000&start_date=2014-04-14 18:46:13.789000+00:00&end_date=2024-11-19 18:46:13.789000+00:00&dp=5&timezone=UTC&order=asc&prepost=false&mic_code=XBOM&format=JSON&apikey=API_KEY

https://api.twelvedata.com/time_series?symbol=6020&interval=1day&outputsize=5000&start_date=1970-05-18 07:00:00+00:00&end_date=2001-11-19 07:00:00+00:00&dp=5&timezone=UTC&order=asc&prepost=false&mic_code=XSAU&format=JSON&apikey=API_KEY

https://api.twelvedata.com/time_series?symbol=BTS&interval=1day&outputsize=5000&start_date=1970-08-13 03:12:51.579000+00:00&end_date=2024-11-20 03:12:51.579000+00:00&dp=5&timezone=UTC&order=asc&prepost=false&mic_code=XBKK&format=JSON&apikey=API_KEY

https://api.twelvedata.com/time_series?symbol=0251&interval=1day&outputsize=5000&start_date=1970-05-07 03:15:17.166000+00:00&end_date=2024-11-20 03:15:17.166000+00:00&dp=5&timezone=UTC&order=asc&prepost=false&mic_code=XKLS&format=JSON&apikey=API_KEY

Please don’t ask for API calls for all of the stocks that need to be adjusted for splits because it’s not possible for me to find all of them.

Stock splits are happening all the time, so if you guys are not applying the splits to the data, your dataset just gets less useful and less valuable every day, unfortunately.

So, please let me know whether or not you plan to clean up the data and apply the split adjustments for the exchanges I mentioned or any of the many others that require adjustments to be applied.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant