tradingapi 0.3.7__tar.gz → 0.3.8__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 (32) hide show
  1. {tradingapi-0.3.7 → tradingapi-0.3.8}/PKG-INFO +1 -1
  2. {tradingapi-0.3.7 → tradingapi-0.3.8}/pyproject.toml +1 -1
  3. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/fivepaisa.py +12 -0
  4. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi.egg-info/PKG-INFO +1 -1
  5. {tradingapi-0.3.7 → tradingapi-0.3.8}/README.md +0 -0
  6. {tradingapi-0.3.7 → tradingapi-0.3.8}/setup.cfg +0 -0
  7. {tradingapi-0.3.7 → tradingapi-0.3.8}/tests/test_calculate_delta_realtime_quotes.py +0 -0
  8. {tradingapi-0.3.7 → tradingapi-0.3.8}/tests/test_find_option_with_delta.py +0 -0
  9. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/__init__.py +0 -0
  10. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/allocation.py +0 -0
  11. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/attribution.py +0 -0
  12. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/broker_base.py +0 -0
  13. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/config/commissions_20241216.yaml +0 -0
  14. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/config/config_sample.yaml +0 -0
  15. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/config.py +0 -0
  16. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/dhan.py +0 -0
  17. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/error_handling.py +0 -0
  18. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/exceptions.py +0 -0
  19. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/flattrade.py +0 -0
  20. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/globals.py +0 -0
  21. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/icicidirect.py +0 -0
  22. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/icicidirect_generate_session.py +0 -0
  23. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/market_data_exchanges.py +0 -0
  24. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/proxy_utils.py +0 -0
  25. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/shoonya.py +0 -0
  26. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/span.py +0 -0
  27. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi/utils.py +0 -0
  28. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi.egg-info/SOURCES.txt +0 -0
  29. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi.egg-info/dependency_links.txt +0 -0
  30. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi.egg-info/entry_points.txt +0 -0
  31. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi.egg-info/requires.txt +0 -0
  32. {tradingapi-0.3.7 → tradingapi-0.3.8}/tradingapi.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tradingapi
3
- Version: 0.3.7
3
+ Version: 0.3.8
4
4
  Summary: Trade integration with brokers
5
5
  Author-email: Pankaj Sharma <sharma.pankaj.kumar@gmail.com>
6
6
  License-Expression: MIT
@@ -28,7 +28,7 @@ packages = ["tradingapi"]
28
28
 
29
29
  [project]
30
30
  name = "tradingapi"
31
- version = "0.3.7"
31
+ version = "0.3.8"
32
32
  description = "Trade integration with brokers"
33
33
  readme = "README.md"
34
34
  license = "MIT"
@@ -3625,6 +3625,14 @@ class FivePaisa(BrokerBase):
3625
3625
 
3626
3626
  return None, tick_exchange
3627
3627
 
3628
+ def is_market_feed_payload(data):
3629
+ """True for MarketFeedV3 tick objects; false for trade/order pushes (ReqType) and subscribe acks."""
3630
+ if not isinstance(data, dict):
3631
+ return False
3632
+ if data.get("ReqType"):
3633
+ return False
3634
+ return any(k in data for k in ("Token", "LastRate", "BidRate", "TickDt"))
3635
+
3628
3636
  def map_to_price(json_data):
3629
3637
  """Map JSON data to Price object."""
3630
3638
  try:
@@ -3666,12 +3674,16 @@ class FivePaisa(BrokerBase):
3666
3674
  json_data = json.loads(data_str)
3667
3675
  if isinstance(json_data, list):
3668
3676
  for tick_data in json_data:
3677
+ if not is_market_feed_payload(tick_data):
3678
+ continue
3669
3679
  price = map_to_price(tick_data)
3670
3680
  if price is not None:
3671
3681
  self._last_stream_tick_ts = time.time()
3672
3682
  if price is not None and ext_callback:
3673
3683
  ext_callback(price)
3674
3684
  elif isinstance(json_data, dict):
3685
+ if not is_market_feed_payload(json_data):
3686
+ return
3675
3687
  price = map_to_price(json_data)
3676
3688
  if price is not None:
3677
3689
  self._last_stream_tick_ts = time.time()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tradingapi
3
- Version: 0.3.7
3
+ Version: 0.3.8
4
4
  Summary: Trade integration with brokers
5
5
  Author-email: Pankaj Sharma <sharma.pankaj.kumar@gmail.com>
6
6
  License-Expression: MIT
File without changes
File without changes