tastytrade 11.0.2__tar.gz → 11.0.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. {tastytrade-11.0.2 → tastytrade-11.0.3}/PKG-INFO +1 -1
  2. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/__init__.py +1 -1
  3. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/order.py +2 -2
  4. tastytrade-11.0.3/tmp.py +32 -0
  5. {tastytrade-11.0.2 → tastytrade-11.0.3}/.github/CONTRIBUTING.md +0 -0
  6. {tastytrade-11.0.2 → tastytrade-11.0.3}/.github/FUNDING.yml +0 -0
  7. {tastytrade-11.0.2 → tastytrade-11.0.3}/.github/pull_request_template.md +0 -0
  8. {tastytrade-11.0.2 → tastytrade-11.0.3}/.github/workflows/python-app.yml +0 -0
  9. {tastytrade-11.0.2 → tastytrade-11.0.3}/.github/workflows/python-publish-test.yml +0 -0
  10. {tastytrade-11.0.2 → tastytrade-11.0.3}/.github/workflows/python-publish.yml +0 -0
  11. {tastytrade-11.0.2 → tastytrade-11.0.3}/.gitignore +0 -0
  12. {tastytrade-11.0.2 → tastytrade-11.0.3}/.python-version +0 -0
  13. {tastytrade-11.0.2 → tastytrade-11.0.3}/.readthedocs.yaml +0 -0
  14. {tastytrade-11.0.2 → tastytrade-11.0.3}/LICENSE +0 -0
  15. {tastytrade-11.0.2 → tastytrade-11.0.3}/Makefile +0 -0
  16. {tastytrade-11.0.2 → tastytrade-11.0.3}/README.md +0 -0
  17. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/Makefile +0 -0
  18. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/account-streamer.rst +0 -0
  19. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/accounts.rst +0 -0
  20. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/account.rst +0 -0
  21. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/dxfeed.rst +0 -0
  22. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/instruments.rst +0 -0
  23. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/market-data.rst +0 -0
  24. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/market-sessions.rst +0 -0
  25. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/metrics.rst +0 -0
  26. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/order.rst +0 -0
  27. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/search.rst +0 -0
  28. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/session.rst +0 -0
  29. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/streamer.rst +0 -0
  30. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/utils.rst +0 -0
  31. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/api/watchlists.rst +0 -0
  32. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/conf.py +0 -0
  33. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/data-streamer.rst +0 -0
  34. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/img/netliq.png +0 -0
  35. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/index.rst +0 -0
  36. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/installation.rst +0 -0
  37. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/instruments.rst +0 -0
  38. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/make.bat +0 -0
  39. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/market-data.rst +0 -0
  40. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/market-sessions.rst +0 -0
  41. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/orders.rst +0 -0
  42. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/sessions.rst +0 -0
  43. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/sync-async.rst +0 -0
  44. {tastytrade-11.0.2 → tastytrade-11.0.3}/docs/watchlists.rst +0 -0
  45. {tastytrade-11.0.2 → tastytrade-11.0.3}/pyproject.toml +0 -0
  46. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/account.py +0 -0
  47. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/__init__.py +0 -0
  48. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/candle.py +0 -0
  49. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/event.py +0 -0
  50. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/greeks.py +0 -0
  51. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/profile.py +0 -0
  52. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/quote.py +0 -0
  53. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/summary.py +0 -0
  54. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/theoprice.py +0 -0
  55. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/timeandsale.py +0 -0
  56. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/trade.py +0 -0
  57. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/dxfeed/underlying.py +0 -0
  58. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/instruments.py +0 -0
  59. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/market_data.py +0 -0
  60. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/market_sessions.py +0 -0
  61. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/metrics.py +0 -0
  62. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/oauth.py +0 -0
  63. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/py.typed +0 -0
  64. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/search.py +0 -0
  65. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/session.py +0 -0
  66. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/streamer.py +0 -0
  67. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/utils.py +0 -0
  68. {tastytrade-11.0.2 → tastytrade-11.0.3}/tastytrade/watchlists.py +0 -0
  69. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/__init__.py +0 -0
  70. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/conftest.py +0 -0
  71. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_account.py +0 -0
  72. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_dxfeed.py +0 -0
  73. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_instruments.py +0 -0
  74. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_market_data.py +0 -0
  75. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_market_sessions.py +0 -0
  76. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_metrics.py +0 -0
  77. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_search.py +0 -0
  78. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_session.py +0 -0
  79. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_streamer.py +0 -0
  80. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_utils.py +0 -0
  81. {tastytrade-11.0.2 → tastytrade-11.0.3}/tests/test_watchlists.py +0 -0
  82. {tastytrade-11.0.2 → tastytrade-11.0.3}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tastytrade
3
- Version: 11.0.2
3
+ Version: 11.0.3
4
4
  Summary: An unofficial, sync/async SDK for Tastytrade!
5
5
  Project-URL: Homepage, https://github.com/tastyware/tastytrade
6
6
  Project-URL: Documentation, https://tastyworks-api.rtfd.io
@@ -4,7 +4,7 @@ API_URL = "https://api.tastyworks.com"
4
4
  API_VERSION = "20251101"
5
5
  CERT_URL = "https://api.cert.tastyworks.com"
6
6
  VAST_URL = "https://vast.tastyworks.com"
7
- VERSION = "11.0.2"
7
+ VERSION = "11.0.3"
8
8
 
9
9
  __version__ = VERSION
10
10
  version_str: str = f"tastyware/tastytrade:v{VERSION}"
@@ -316,8 +316,8 @@ class PlacedOrder(TastytradeData):
316
316
  cancelled_at: datetime | None = None
317
317
  cancel_user_id: str | None = None
318
318
  cancel_username: str | None = None
319
- replacing_order_id: str | None = None
320
- replaces_order_id: str | None = None
319
+ replacing_order_id: int | None = None
320
+ replaces_order_id: int | None = None
321
321
  in_flight_at: datetime | None = None
322
322
  live_at: datetime | None = None
323
323
  received_at: datetime | None = None
@@ -0,0 +1,32 @@
1
+ import asyncio
2
+ import os
3
+ from datetime import date, datetime, time
4
+
5
+ import pandas as pd
6
+
7
+ from tastytrade import Session
8
+ from tastytrade.dxfeed.candle import Candle
9
+ from tastytrade.streamer import DXLinkStreamer
10
+ from tastytrade.utils import TZ
11
+
12
+ session = Session(os.environ["TT_SECRET"], os.environ["TT_REFRESH"])
13
+
14
+
15
+ async def main():
16
+ async with DXLinkStreamer(session) as streamer:
17
+ start_time = datetime.combine(date(2025, 11, 7), time(9, 30), tzinfo=TZ)
18
+ ts = round(start_time.timestamp() * 1000)
19
+ await streamer.subscribe_candle(["DIA"], "5s", start_time=start_time)
20
+ candles: list[Candle] = []
21
+ async for candle in streamer.listen(Candle):
22
+ candles.append(candle)
23
+ if candle.time <= ts:
24
+ break
25
+ candles.sort(key=lambda c: c.time)
26
+ df = pd.DataFrame([c.model_dump() for c in candles])
27
+ df = df[["time", "open", "high", "low", "close"]]
28
+ print(df)
29
+
30
+
31
+ if __name__ == "__main__":
32
+ asyncio.run(main())
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes