RomelTorres / alpha_vantage

A python wrapper for Alpha Vantage API for financial data.
MIT License
4.3k stars 741 forks source link

Refactoring of internal APIs and adding LISTING_STATUS function #297

Closed dhoeppe closed 3 years ago

dhoeppe commented 3 years ago

This is my first major open source contribution to a project, so please forgive me if there are flaws.

I basically wanted to add support for the LISTING_STATUS function of the AlphaVantage API. Due to the fact that the API returns the data of this function as CSV only it was required to override the output_format specified at object instantiation.

I tried using the existing decorator, but these were, to my knowledge, unfit to accept arguments. It was therefore required to create decorator classes that are able to accept arguments. As I had no experience with this library I refactored large parts of it while doing so.

Related issues would be: #290, #287, #283, #269, #260

A short overview of what was done:

I hope this gives a good overview of the changes. Please don't hesitate to ask any questions.

dhoeppe commented 3 years ago

Any new information regarding the processing of this pull request?

I have published the fixes together with support for rate limiting on PyPI until this PR is processed further, check out this repository for more information.

AlphaVantageSupport commented 3 years ago

@dhoeppe , thanks for your time and contribution! Unfortunately, the build failed after merging the pull request and we had to revert the merge. Below is the build detail:

https://travis-ci.org/github/RomelTorres/alpha_vantage/builds/774491793

We would appreciate it if you could address the build issues - feel free to submit a new pull request. Thank you!