quantplay 2.0.58__tar.gz → 2.0.59__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.
- {quantplay-2.0.58 → quantplay-2.0.59}/PKG-INFO +1 -1
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/broker_factory.py +4 -4
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/flattrade.py +3 -3
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/shoonya.py +3 -5
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay.egg-info/PKG-INFO +1 -1
- {quantplay-2.0.58 → quantplay-2.0.59}/setup.py +1 -1
- {quantplay-2.0.58 → quantplay-2.0.59}/README.md +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/pyproject.toml +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/aliceblue.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/angelone.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/auto_login/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/auto_login/aliceblue.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/dhan.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/finvasia_utils/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/finvasia_utils/fa_noren.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/five_paisa.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/ft_utils/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/ft_utils/flattrade_utils.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/ft_utils/ft_noren.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/generics/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/generics/broker.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/iifl_xts.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/kite_utils.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/kotak.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/motilal.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/noren.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/uplink/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/uplink/uplink_utils.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/upstox.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/xts.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/xts_utils/Connect.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/xts_utils/Exception.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/xts_utils/InteractiveSocketClient.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/xts_utils/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/broker/zerodha.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/exception/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/exception/exceptions.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/model/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/model/broker.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/model/generics.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/model/instrument_data.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/model/order_event.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/py.typed +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/utils/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/utils/caching.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/utils/constant.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/utils/exchange.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/utils/number_utils.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/utils/pickle_utils.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/utils/selenium_utils.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/wrapper/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/wrapper/aws/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay/wrapper/aws/s3.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay.egg-info/SOURCES.txt +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay.egg-info/dependency_links.txt +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay.egg-info/requires.txt +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/quantplay.egg-info/top_level.txt +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/setup.cfg +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/tests/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/tests/conftest.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/tests/wrapper/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/tests/wrapper/aws/__init__.py +0 -0
- {quantplay-2.0.58 → quantplay-2.0.59}/tests/wrapper/aws/s3_test.py +0 -0
|
@@ -91,7 +91,7 @@ broker_required_args = {
|
|
|
91
91
|
|
|
92
92
|
broker_generate_args = {
|
|
93
93
|
Broker.ZERODHA: set(["user_id", "api_key", "api_secret"]),
|
|
94
|
-
Broker.FLATTRADE: set(["user_id" "api_secret", "password", "
|
|
94
|
+
Broker.FLATTRADE: set(["user_id" "api_secret", "password", "totp", "api_key"]),
|
|
95
95
|
Broker.IIFL_XTS: set(["api_key", "api_secret", "md_api_key", "md_api_secret"]),
|
|
96
96
|
Broker.MOTILAL: set(["user_id", "password", "api_key", "two_fa", "totp"]),
|
|
97
97
|
Broker.ALICEBLUE: set(["user_id", "api_key"]),
|
|
@@ -110,7 +110,7 @@ broker_generate_args = {
|
|
|
110
110
|
),
|
|
111
111
|
Broker.ANGELONE: set(["user_id", "api_key", "mpin", "totp"]),
|
|
112
112
|
Broker.FINVASIA: set(
|
|
113
|
-
["api_secret", "imei", "password", "
|
|
113
|
+
["api_secret", "imei", "password", "totp", "user_id", "vendor_code"]
|
|
114
114
|
),
|
|
115
115
|
Broker.UPSTOX: set(["user_id", "access_token"]),
|
|
116
116
|
Broker.KOTAK: set(
|
|
@@ -241,7 +241,7 @@ class BrokerFactory:
|
|
|
241
241
|
api_secret=broker_data["api_secret"],
|
|
242
242
|
imei=broker_data["imei"],
|
|
243
243
|
password=broker_data["password"],
|
|
244
|
-
|
|
244
|
+
totp=broker_data["totp_key"],
|
|
245
245
|
user_id=broker_data["user_id"],
|
|
246
246
|
vendor_code=broker_data["vendor_code"],
|
|
247
247
|
load_instrument=False,
|
|
@@ -255,7 +255,7 @@ class BrokerFactory:
|
|
|
255
255
|
user_id=broker_data["user_id"],
|
|
256
256
|
api_secret=broker_data["api_secret"],
|
|
257
257
|
password=broker_data["password"],
|
|
258
|
-
|
|
258
|
+
totp=broker_data["totp_key"],
|
|
259
259
|
api_key=broker_data["api_key"],
|
|
260
260
|
load_instrument=False,
|
|
261
261
|
)
|
|
@@ -17,7 +17,7 @@ class FlatTrade(Noren):
|
|
|
17
17
|
order_updates: Queue[OrderUpdateEvent] | None = None,
|
|
18
18
|
api_secret: str | None = None,
|
|
19
19
|
password: str | None = None,
|
|
20
|
-
|
|
20
|
+
totp: str | None = None,
|
|
21
21
|
user_id: str | None = None,
|
|
22
22
|
user_token: str | None = None,
|
|
23
23
|
api_key: str | None = None,
|
|
@@ -33,11 +33,11 @@ class FlatTrade(Noren):
|
|
|
33
33
|
if user_token and user_id:
|
|
34
34
|
self.api.set_session(userid=user_id, usertoken=user_token)
|
|
35
35
|
|
|
36
|
-
elif user_id and password and
|
|
36
|
+
elif user_id and password and totp and api_key and api_secret:
|
|
37
37
|
token = self.login(
|
|
38
38
|
user_id=user_id,
|
|
39
39
|
password=password,
|
|
40
|
-
totp_key=
|
|
40
|
+
totp_key=totp,
|
|
41
41
|
api_key=api_key,
|
|
42
42
|
api_secret=api_secret,
|
|
43
43
|
)
|
|
@@ -16,7 +16,7 @@ class FinvAsia(Noren):
|
|
|
16
16
|
api_secret: str | None = None,
|
|
17
17
|
imei: str | None = None,
|
|
18
18
|
password: str | None = None,
|
|
19
|
-
|
|
19
|
+
totp: str | None = None,
|
|
20
20
|
user_id: str | None = None,
|
|
21
21
|
vendor_code: str | None = None,
|
|
22
22
|
user_token: str | None = None,
|
|
@@ -37,10 +37,8 @@ class FinvAsia(Noren):
|
|
|
37
37
|
"email": None,
|
|
38
38
|
"uname": None,
|
|
39
39
|
}
|
|
40
|
-
elif
|
|
41
|
-
|
|
42
|
-
):
|
|
43
|
-
totp = pyotp.TOTP(totp_key).now()
|
|
40
|
+
elif user_id and password and totp and vendor_code and api_secret and imei:
|
|
41
|
+
totp = pyotp.TOTP(totp).now()
|
|
44
42
|
response = self.login(
|
|
45
43
|
user_id=user_id,
|
|
46
44
|
password=password,
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|