quantplay 2.1.41__tar.gz → 2.1.44__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 (84) hide show
  1. {quantplay-2.1.41 → quantplay-2.1.44}/PKG-INFO +1 -1
  2. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/ft_utils/flattrade_utils.py +12 -5
  3. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/kite_utils.py +2 -0
  4. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/kotak.py +13 -2
  5. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay.egg-info/PKG-INFO +1 -1
  6. {quantplay-2.1.41 → quantplay-2.1.44}/setup.py +1 -1
  7. {quantplay-2.1.41 → quantplay-2.1.44}/README.md +0 -0
  8. {quantplay-2.1.41 → quantplay-2.1.44}/pyproject.toml +0 -0
  9. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/__init__.py +0 -0
  10. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/__init__.py +0 -0
  11. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/aliceblue.py +0 -0
  12. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/angelone.py +0 -0
  13. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/auto_login/__init__.py +0 -0
  14. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/auto_login/aliceblue.py +0 -0
  15. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/breeze/__init__.py +0 -0
  16. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/breeze/breeze_utils.py +0 -0
  17. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/broker_factory.py +0 -0
  18. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/dhan.py +0 -0
  19. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/finvasia_utils/__init__.py +0 -0
  20. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/finvasia_utils/fa_noren.py +0 -0
  21. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/five_paisa.py +0 -0
  22. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/flattrade.py +0 -0
  23. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/ft_utils/__init__.py +0 -0
  24. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/ft_utils/ft_noren.py +0 -0
  25. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/generics/__init__.py +0 -0
  26. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/generics/broker.py +0 -0
  27. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/icici_direct.py +0 -0
  28. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/iifl_xts.py +0 -0
  29. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/jainam_xts.py +0 -0
  30. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/kotak_utils/__init__.py +0 -0
  31. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/kotak_utils/kotak_ws.py +0 -0
  32. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/kotak_utils/kotak_ws_lib.py +0 -0
  33. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/motilal.py +0 -0
  34. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/noren.py +0 -0
  35. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/shoonya.py +0 -0
  36. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/uplink/__init__.py +0 -0
  37. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/uplink/uplink_utils.py +0 -0
  38. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/upstox.py +0 -0
  39. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts.py +0 -0
  40. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts_utils/Connect.py +0 -0
  41. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts_utils/Exception.py +0 -0
  42. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts_utils/InteractiveSocketClient.py +0 -0
  43. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts_utils/__init__.py +0 -0
  44. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts_utils_v2/ConnectV2.py +0 -0
  45. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts_utils_v2/InteractiveSocketClientV2.py +0 -0
  46. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/xts_utils_v2/__init__.py +0 -0
  47. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/broker/zerodha.py +0 -0
  48. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/core/__init__.py +0 -0
  49. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/core/strategy.py +0 -0
  50. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/exception/__init__.py +0 -0
  51. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/exception/exceptions.py +0 -0
  52. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/indicator/__init__.py +0 -0
  53. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/indicator/iv.py +0 -0
  54. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/model/__init__.py +0 -0
  55. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/model/broker.py +0 -0
  56. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/model/broker_response.py +0 -0
  57. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/model/generics.py +0 -0
  58. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/model/instrument_data.py +0 -0
  59. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/model/order_event.py +0 -0
  60. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/py.typed +0 -0
  61. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/strategy/__init__.py +0 -0
  62. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/strategy/iv_spike.py +0 -0
  63. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/strategy/obuy.py +0 -0
  64. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/utils/__init__.py +0 -0
  65. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/utils/caching.py +0 -0
  66. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/utils/constant.py +0 -0
  67. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/utils/exchange.py +0 -0
  68. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/utils/number_utils.py +0 -0
  69. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/utils/pickle_utils.py +0 -0
  70. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/utils/selenium_utils.py +0 -0
  71. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/wrapper/__init__.py +0 -0
  72. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/wrapper/aws/__init__.py +0 -0
  73. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/wrapper/aws/s3.py +0 -0
  74. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay/wrapper/redis.py +0 -0
  75. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay.egg-info/SOURCES.txt +0 -0
  76. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay.egg-info/dependency_links.txt +0 -0
  77. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay.egg-info/requires.txt +0 -0
  78. {quantplay-2.1.41 → quantplay-2.1.44}/quantplay.egg-info/top_level.txt +0 -0
  79. {quantplay-2.1.41 → quantplay-2.1.44}/setup.cfg +0 -0
  80. {quantplay-2.1.41 → quantplay-2.1.44}/tests/__init__.py +0 -0
  81. {quantplay-2.1.41 → quantplay-2.1.44}/tests/conftest.py +0 -0
  82. {quantplay-2.1.41 → quantplay-2.1.44}/tests/wrapper/__init__.py +0 -0
  83. {quantplay-2.1.41 → quantplay-2.1.44}/tests/wrapper/aws/__init__.py +0 -0
  84. {quantplay-2.1.41 → quantplay-2.1.44}/tests/wrapper/aws/s3_test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: quantplay
3
- Version: 2.1.41
3
+ Version: 2.1.44
4
4
  Summary: This python package will be stored in AWS CodeArtifact
5
5
  Home-page:
6
6
  Author:
@@ -76,22 +76,29 @@ class FlatTradeUtils:
76
76
  "user blocked due to multiple wrong attempts",
77
77
  ]:
78
78
  raise InvalidArgumentException(
79
- f"Flattrade Login Failed: {error_message}"
79
+ f"Flattrade Login Failed : {error_message}"
80
80
  )
81
81
 
82
82
  except Exception as e:
83
- Constants.logger.info(f"Flattrade Error: {e}")
84
83
  traceback.print_exc()
85
84
  raise TokenException(str(e))
86
85
 
87
86
  finally:
88
- Constants.logger.info(f"Flattrade Error : {error_message}")
89
- raise TokenException(f"Flattrade Error : {error_message}")
87
+ if error_message not in [
88
+ "Invalid Input : Wrong Password",
89
+ "RESETPASSWORD",
90
+ "Invalid API key",
91
+ "Invalid Input : User Blocked due to multiple wrong attempts",
92
+ "",
93
+ ]:
94
+ Constants.logger.info(f"Flattrade error : {error_message}")
95
+
96
+ raise TokenException(f"Flattrade error : {error_message}")
90
97
 
91
98
  try:
92
99
  request_token = url.split("code=")[1].split("&")[0]
93
100
  except Exception as e:
94
- Constants.logger.info(f"Flattrade Error for {url}")
101
+ Constants.logger.info(f"Flattrade error for {url}")
95
102
  traceback.print_exc()
96
103
  raise TokenException(str(e))
97
104
 
@@ -107,6 +107,8 @@ class KiteUtils:
107
107
 
108
108
  url = driver.current_url
109
109
  print("got kite url {}".format(url))
110
+
111
+ # TODO: Index Error
110
112
  request_token = url.split("token=")[1].split("&")[0]
111
113
 
112
114
  driver.close()
@@ -236,8 +236,15 @@ class Kotak(Broker):
236
236
  def orders(self, tag: str | None = None, add_ltp: bool = True) -> pl.DataFrame:
237
237
  orders_resp = self.request("order_book")
238
238
 
239
- if orders_resp["stat"] == "Not_Ok" and orders_resp["errMsg"] == "No Data":
239
+ if orders_resp.get("error", None) is not None:
240
+ raise BrokerException(f"Kotak Error : {orders_resp['error']}")
241
+
242
+ if (
243
+ orders_resp.get("stat", "Not_Ok") == "Not_Ok"
244
+ and orders_resp["errMsg"] == "No Data"
245
+ ):
240
246
  return pl.DataFrame(schema=self.orders_schema)
247
+
241
248
  orders_df = pl.DataFrame(orders_resp["data"])
242
249
  if "rejRsn" not in orders_df.columns:
243
250
  orders_df = orders_df.with_columns(pl.lit("").alias("rejRsn"))
@@ -816,8 +823,12 @@ class Kotak(Broker):
816
823
  Constants.logger.error(resp.text) # type:ignore
817
824
  try:
818
825
  response = json.loads(resp.text) # type:ignore
826
+
827
+ if "error" in response:
828
+ raise BrokerException(f"Kotak Error : {response['error']}")
829
+
819
830
  if "errMsg" in response:
820
- raise BrokerException(f"Kotak error: {response['errMsg']}")
831
+ raise BrokerException(f"Kotak Error : {response['errMsg']}")
821
832
  except BrokerException:
822
833
  raise
823
834
  except Exception:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: quantplay
3
- Version: 2.1.41
3
+ Version: 2.1.44
4
4
  Summary: This python package will be stored in AWS CodeArtifact
5
5
  Home-page:
6
6
  Author:
@@ -21,7 +21,7 @@ requirements = [
21
21
  setup(
22
22
  name="quantplay",
23
23
  long_description=Path("README.md").read_text(),
24
- version="2.1.41",
24
+ version="2.1.44",
25
25
  setup_requires=["pytest-runner"],
26
26
  install_requires=requirements,
27
27
  tests_require=[],
File without changes
File without changes
File without changes
File without changes
File without changes