Skip to content

Releases: ymyke/tessa

Update yfinance, python, improve rate limiting

16 Jan 09:50

Choose a tag to compare

  • Require Python 3.10+ (drop 3.9 support)
  • Require yfinance >=0.2.58 for curl_cffi (fixes Yahoo rate limiting)
  • Update dependencies: pendulum >=3.0, pycoingecko >=3.0, seaborn >=0.12
  • Fix infinite retry loop when rate limited (add max_tries check)
  • Catch yfinance YFRateLimitError and convert to RateLimitHitError
  • Replace deprecated raise_errors param with yf.config setting
  • Convert Yahoo caching test to mocked unit test (faster, more reliable)
  • Fix pyproject.toml section name typo
  • Update documentation

v0.9.0

14 Mar 08:53

Choose a tag to compare

  • Deactivate disfunctional yahoo search and warn as not implemented.
  • Make coingecko work properly again:
    • Retrieve 365 days of historical data only, since this is what the public api allows.
    • Introduce new exception in cases where the limit is exceeded.
  • Make price_point more robust by raising ValueError if requested date and available date are more than max_date_deviation_days apart.

v0.8.1

16 Oct 14:12

Choose a tag to compare

  • Update README
  • Expose/raise all yfinance exceptions, fix #19

Support for Python 3.10!

27 Jun 12:22

Choose a tag to compare

What's Changed

  • Remove some dev dependencies to prevent readline issue with Python 3.10 on Windows
  • Python-latest by @DouweM in #15

New Contributors

Full Changelog: v0.7.1...v0.8.0

Fix a couple of minor issues

27 Jun 10:56

Choose a tag to compare

v0.7.1

Bump version

Handle rate limiting (error 429) in coingecko source

21 May 16:12

Choose a tag to compare

The coingecko source will now by default retry (applying exponential back-off) when it encounters a 429.

Make data retrieval more persistent

03 Apr 08:49

Choose a tag to compare

  • Add and use get_price_history_bruteforcefully. It ignores certain server-side error conditions and simply retries data retrieval a number of times. This helps to automatically work around intermittent issues with the underlying APIs.
  • Improve lru_cache wrapper in order to expose get_price_history's signature.

Use yfinance's new metadata feature to substantially improve performance

02 Jan 20:13

Choose a tag to compare

  • Use of new metadata feature in yfinance massively speeds up price retrieval because the currency can now be retrieved via the history's metadata instead of additional calls to the Yahoo API.
  • yfinance made timezones more accurate. Adjusted a number of tests accordingly.
  • Fixes #13
  • Fixes #14 (and similar issues)
  • Requires update to yfinance >=v0.2.3

Major updates: remove broken investpy, add yfinance, add symbols interface, improve search, improve codebase in general

30 Sep 08:54

Choose a tag to compare

  • Remove investpy because it is no longer working, see
    alvarobartt/investpy#600 and
    alvarobartt/investpy#610
  • Add yfinance / Yahoo Finance support instead(simplifying a
    number of things in the interfaces such as type_, country
    and _querytype).
  • Add the symbol functionality/interface, namely new classes
    Symbol and SymbolCollection.
  • Revamp search interface, now supports filtering and
    bucketizing, returns Symbol objects. See new
    SearchResult class for more information.
  • Add much more comprehensive documentation.
  • Revamp folder structure.
  • Encapsulate everything related to sources in new Source
    class. All symbols have a source attribute now.
    (source attribute is roughly a replacement for the old
    type_ attribute.)
  • Signatures of most/all price_* functions changed.
  • Add a number of types such as SourceType,
    PriceHistory, or PricePoint to make the code clearer
    and help with autocomplete suggestions in the IDE.

Increase investing timeout to 2 seconds

03 Jul 12:36

Choose a tag to compare

Their rate limiting seems to have become more sensitive lately, triggering 429s with a 1 second timeout.