Skip to content

Conversation

@escargatoiresnailbot
Copy link
Contributor

@escargatoiresnailbot escargatoiresnailbot bot commented Oct 28, 2025

This PR contains the following updates:

Package Change Age Confidence
tastytrade (changelog) ==9.11 -> ==11.0.4 age confidence

Release Notes

tastyware/tastytrade (tastytrade)

v11.0.4: tastyware/tastytrade:v11.0.4

Compare Source

What's Changed

  • Add external_identifier field to NewOrder and PlacedOrder classes by @​markudevelop in #​290
  • Fix #​291 caused by sandbox environment not accepting versioning headers

New Contributors

Full Changelog: tastyware/tastytrade@v11.0.3...v11.0.4

v11.0.3: tastyware/tastytrade:v11.0.3

Compare Source

What's Changed

  • Type correction in PlacedOrder by @​quantx-heiko in #​286
    Fixes bug where any call to replace_order would fail. Likely caused by pydantic or API changes.

Full Changelog: tastyware/tastytrade@v11.0.2...v11.0.3

v11.0.2: tastyware/tastytrade:v11.0.2

Compare Source

What's Changed

  • Fix bug with tastytrade.metrics.get_risk_free_rate

Full Changelog: tastyware/tastytrade@v11.0.1...v11.0.2

v11.0.1: tastyware/tastytrade:v11.0.1

Compare Source

What's Changed

  • fix a small bug caused by pagination info not always present in JSON response

Full Changelog: tastyware/tastytrade@v11.0.0...v11.0.1

v11.0.0: tastyware/tastytrade:v11.0.0

Compare Source

What's Changed

  • remove username/password auth by @​Graeme22 in #​270
    Per Tastytrade docs, username/password authentication is scheduled for removal, so it has been removed here. OAuth is now the only way to authenticate to the API, and the Session class is now what used to be called OAuthSession. To authenticate you must create an OAuth application and save the refresh token and client secret. This process is documented here.
  • Python 3.9 support is now dropped as it has reached end-of-life. It's no longer in CI and Python 3.10's typing features (such as bool | None instead of Optional[bool]) are now present across the SDK.
  • The experimental backtesting module has been removed as it didn't provide much utility as part of the SDK.
  • Added docs example for a cryptocurrency order
  • More endpoints now support pagination, as documented in Tastytrade developer docs and the SDK docs
  • All endpoints now use the API's new versioning header, so breaking changes to the API won't affect the SDK

Full Changelog: tastyware/tastytrade@v10.3.0...v11.0.0

v10.3.0: tastyware/tastytrade:v10.3.0

Compare Source

What's Changed

  • Add open-interest to MarketData by @​rcapozzi in #​260
  • OAuth updates by @​Graeme22 in a4b83ff
    • Adds a new function, login(), which allows for generating an initial refresh token to build an OAuth app. Uses Python's built-in HTTP server module, so no new dependencies are required!
    • Users are now encouraged to use OAuth instead of username/password authentication for better security
    • Adds OAuth-related docs section
    • Fixes bug where the direction property in the backtest module changed from "buy" and "sell" to "long" and "short" on the API side
    • Streamers now default the dxfeed_tos_compliant property to True, since functionality has improved greatly for the API-facing streamers
    • OAuth sessions can now be used with the streamer
    • OAuthSession.refresh() now refreshes streamer tokens as well if necessary
    • Rare garbage collection-related bug prevented in streamer disconnect callback
    • OAuthSession is now covered by tests
    • JSONDecodeError now handled cleanly in validate_response() (fiixes #​261)

New Contributors

Full Changelog: tastyware/tastytrade@v10.2.3...v10.3.0

v10.2.3: tastyware/tastytrade:v10.2.3

Compare Source

What's Changed

Full Changelog: tastyware/tastytrade@v10.2.2...v10.2.3

New Sponsors

A special thanks to @​pangyuteng for contributing to the ongoing development of the SDK!

v10.2.2: tastyware/tastytrade:v10.2.2

Compare Source

What's Changed

  • enforce isort, strict typing (+mypy) by @​Graeme22 in #​251
    • isort now implemented across library + enforced for new code
    • now using pyright strict typing
    • mypy added as secondary type checker (also on strict mode) to ensure types work well for all users, regardless of type checker

Full Changelog: tastyware/tastytrade@v10.2.1...v10.2.2

v10.2.1: tastyware/tastytrade:v10.2.1

Compare Source

What's Changed

  • Fixes a bug with some futures options (eg /ZN) where dates had a format that pydantic couldn't parse

Full Changelog: tastyware/tastytrade@v10.2.0...v10.2.1

v10.2.0: tastyware/tastytrade:v10.2.0

Compare Source

What's Changed

  • Catch the WebSocket ConnectionClosedError by @​quantx-heiko in #​242
    This PR adds disconnect callbacks to the streamers, allowing for executing arbitrary code when the websocket disconnects. This is distinct from the reconnect callback, since the reconnect callback only fires once the connection is re-established, but the disconnect callback fires right away.
    async def disconnect_callback(streamer: DXLinkStreamer):
        print("Disconnected!")
        
    async with DXLinkStreamer(session, disconnect_fn=disconnect_callback) as streamer: ...
  • handling rare exceptions in the heartbeat methods for aesthetic reasons
  • fixes #​244 by adding new AlertStreamer type. Also, if new types are discovered in the future, they will be non-fatal for better stability.

New Contributors

Full Changelog: tastyware/tastytrade@v10.1.1...v10.2.0

v10.1.1: tastyware/tastytrade:v10.1.1

Compare Source

What's Changed

  • Fixes #​239
  • Renames tastytrade.order.TradeableTastytradeJsonDataclass to TradeableTastytradeData

Full Changelog: tastyware/tastytrade@v10.1.0...v10.1.1

v10.1.0: tastyware/tastytrade:v10.1.0

Compare Source

What's Changed

  • add market data endpoints by @​Graeme22 in #​237
    Tastytrade recently added very useful new endpoints for fetching market data without using the streamer. This is great for many scenarios where you just want to grab prices once, rather than listen to them continually. This PR adds them to the SDK:
    from tastytrade.market_data import get_market_data
    from tastytrade.order import InstrumentType
    data = get_market_data(session, "SPY", InstrumentType.EQUITY)
    This data contains tons of useful information, like quotes, last trade price, and OHLC prices for the day! It can also be fetched for multiple symbols at once:
    from tastytrade.market_data import get_market_data_by_type
    data = get_market_data_by_type(
         session,
         indices=["SPX", "VIX"],
         cryptocurrencies=["ETH/USD", "BTC/USD"],
         equities=["SPLG", "SPY"],
         futures=["/MCLG6", "/MCLF6"],
         future_options=["./MCLM5MW2K5 250509C62.5", "./MCLM5MW2K5 250509P65.75"],
         options=["SPLG  250516C00048000", "SPLG  250516P00054000"],
    )
  • adds new backtesting-related endpoints from API docs:
    • cancel: cancels a running backtest
    • delete: deletes an active backtesting session
    • get: fetches a past backtest by ID
    • available_parameters: gets a list of valid symbols and dates for backtests
  • adds get_futures_holidays to tastytrade.market_sessions for futures exchange calendars
  • Renames heavily used internal class TastytradeJsonDataclass to TastytradeData
  • __str__ and __repr__ for all Pydantic models now don't print fields that are None by default, making for cleaner debugging

Full Changelog: tastyware/tastytrade@v10.0.1...v10.1.0

v10.0.1: tastyware/tastytrade:v10.0.1

Compare Source

What's Changed

  • Documentation switched to material theme from mkdocs
  • Adds PyPI trove classifiers

Full Changelog: tastyware/tastytrade@v10.0.0...v10.0.1

v10.0.0: tastyware/tastytrade:v10.0.0

Compare Source

What's Changed

  • overload to simplify classmethods by @​Graeme22 in #​230
    Previously, classmethods were overly verbose, leading to patterns like this:

    from tastytrade import Account
    account = Account.get_account(session, "5WX01234")
    accounts = Account.get_accounts(session)

    This release changes naming conventions across all Pydantic models to use a shortened name which combines the single and multiple fetches into a single, overloaded function:

    from tastytrade import Account
    account = Account.get(session, "5WX01234")
    accounts = Account.get(session)

    This preserves type hints thanks to typing.overload, where the return type is inferred from the number of arguments.
    Here's a list of classes affected by this change by module:

    • tastytrade.account: Account
    • tastytrade.instruments: Cryptocurrency, Equity, Option, NestedOptionChain, FutureProduct, Future, FutureOptionProduct, FutureOption, Warrant, NestedFutureOptionChain
    • tastytrade.watchlists: PrivateWatchlist, PublicWatchlist (previously Watchlist)
  • Watchlist split into two subclasses, PrivateWatchlist and PublicWatchlist

  • switch to Semantic Versioning

  • AlertStreamer now works with OAuthSession

Full Changelog: tastyware/tastytrade@v9.13...v10.0.0

v9.13: tastyware/tastytrade:v9.13

Compare Source

What's Changed

  • Fixes bug with certification session which prevents creation in v9.12

Full Changelog: tastyware/tastytrade@v9.12...v9.13

v9.12: tastyware/tastytrade:v9.12

Compare Source

What's Changed

  • NestedOptionChain.deliverables is now optional, as sandbox sessions often don't include it
  • Add session token and streamer token expiration information to session
  • Better error handling and reconnection callbacks in streamer

Full Changelog: tastyware/tastytrade@v9.11...v9.12


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@escargatoiresnailbot escargatoiresnailbot bot added dependencies Pull requests that update a dependency file renovate labels Oct 28, 2025
@escargatoiresnailbot escargatoiresnailbot bot force-pushed the renovate/tastytrade-11.x branch 3 times, most recently from ae0c18d to c9f661f Compare November 2, 2025 20:00
@escargatoiresnailbot escargatoiresnailbot bot force-pushed the renovate/tastytrade-11.x branch from c9f661f to f8da128 Compare November 5, 2025 02:29
@escargatoiresnailbot escargatoiresnailbot bot changed the title chore(deps): update dependency tastytrade to v11 fix(deps): update dependency tastytrade to v11 Nov 5, 2025
@escargatoiresnailbot escargatoiresnailbot bot force-pushed the renovate/tastytrade-11.x branch 9 times, most recently from 001128c to 0af3bb9 Compare November 12, 2025 02:00
@escargatoiresnailbot escargatoiresnailbot bot force-pushed the renovate/tastytrade-11.x branch 3 times, most recently from d4e6796 to 4cdcbd3 Compare November 17, 2025 21:00
@escargatoiresnailbot escargatoiresnailbot bot force-pushed the renovate/tastytrade-11.x branch 2 times, most recently from 30ca743 to 9b54047 Compare December 3, 2025 20:01
@escargatoiresnailbot escargatoiresnailbot bot force-pushed the renovate/tastytrade-11.x branch from 9b54047 to 3b32c4a Compare December 9, 2025 00:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file renovate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant