crypticorn 2.17.0rc6__py3-none-any.whl → 2.18.0__py3-none-any.whl

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 (78) hide show
  1. crypticorn/auth/client/api/admin_api.py +2 -0
  2. crypticorn/auth/client/api/auth_api.py +1417 -545
  3. crypticorn/auth/client/api/service_api.py +4 -0
  4. crypticorn/auth/client/api/user_api.py +4 -0
  5. crypticorn/auth/client/api/wallet_api.py +4 -0
  6. crypticorn/auth/client/api_client.py +5 -0
  7. crypticorn/auth/client/configuration.py +2 -2
  8. crypticorn/auth/client/models/add_wallet_request.py +1 -1
  9. crypticorn/auth/client/models/authorize_user_request.py +1 -1
  10. crypticorn/auth/client/models/create_api_key_request.py +3 -3
  11. crypticorn/auth/client/models/create_user_request.py +1 -1
  12. crypticorn/auth/client/models/get_api_keys200_response_inner.py +3 -3
  13. crypticorn/auth/client/models/list_wallets200_response_balances_inner_sale_round.py +1 -1
  14. crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet.py +1 -1
  15. crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet_vesting_wallets_inner.py +1 -1
  16. crypticorn/auth/client/models/list_wallets200_response_data_inner.py +1 -1
  17. crypticorn/auth/client/models/logout_default_response.py +1 -1
  18. crypticorn/auth/client/models/oauth_callback200_response_user.py +1 -1
  19. crypticorn/auth/client/models/refresh_token_info200_response_user_session.py +1 -1
  20. crypticorn/auth/client/models/rotate_tokens200_response.py +1 -1
  21. crypticorn/auth/client/models/token_info200_response.py +1 -1
  22. crypticorn/auth/client/models/update_user_request.py +1 -1
  23. crypticorn/auth/client/models/user_by_username200_response.py +1 -1
  24. crypticorn/auth/client/models/verify200_response.py +1 -1
  25. crypticorn/auth/client/models/verify_email200_response_auth.py +1 -1
  26. crypticorn/auth/client/models/verify_email200_response_auth_auth.py +1 -1
  27. crypticorn/auth/client/models/whoami200_response.py +1 -1
  28. crypticorn/common/__init__.py +11 -11
  29. crypticorn/common/auth.py +109 -57
  30. crypticorn/common/decorators.py +1 -1
  31. crypticorn/common/enums.py +1 -0
  32. crypticorn/common/errors.py +7 -21
  33. crypticorn/common/exceptions.py +33 -17
  34. crypticorn/common/logging.py +5 -4
  35. crypticorn/common/metrics.py +17 -5
  36. crypticorn/common/middleware.py +61 -12
  37. crypticorn/common/mixins.py +2 -1
  38. crypticorn/common/pagination.py +3 -2
  39. crypticorn/common/router/admin_router.py +17 -6
  40. crypticorn/common/router/status_router.py +3 -29
  41. crypticorn/common/utils.py +6 -6
  42. crypticorn/common/warnings.py +1 -0
  43. crypticorn/dex/client/api/admin_api.py +3 -0
  44. crypticorn/dex/client/api/signals_api.py +27 -23
  45. crypticorn/dex/client/api/status_api.py +3 -0
  46. crypticorn/dex/client/api_client.py +5 -0
  47. crypticorn/dex/client/configuration.py +2 -2
  48. crypticorn/dex/client/models/exception_detail.py +1 -1
  49. crypticorn/dex/client/models/paginated_response_signal_with_token.py +1 -1
  50. crypticorn/dex/client/models/signal_overview_stats.py +4 -2
  51. crypticorn/dex/client/models/signal_volume.py +4 -4
  52. crypticorn/dex/client/models/signal_with_token.py +2 -2
  53. crypticorn/dex/client/models/token_detail.py +1 -1
  54. crypticorn/klines/main.py +1 -1
  55. crypticorn/metrics/main.py +1 -1
  56. crypticorn/trade/client/__init__.py +1 -7
  57. crypticorn/trade/client/api/admin_api.py +0 -402
  58. crypticorn/trade/client/api/trading_actions_api.py +86 -315
  59. crypticorn/trade/client/models/__init__.py +1 -7
  60. crypticorn/trade/client/models/actions_count.py +88 -0
  61. crypticorn/trade/client/models/api_error_identifier.py +1 -0
  62. crypticorn/trade/client/models/exchange_key.py +1 -1
  63. crypticorn/trade/client/models/exchange_key_balance.py +1 -1
  64. crypticorn/trade/client/models/execution_ids.py +1 -1
  65. crypticorn/trade/client/models/notification_create.py +1 -1
  66. crypticorn/trade/client/models/post_futures_action.py +1 -1
  67. crypticorn/trade/client/models/spot_balance.py +6 -7
  68. crypticorn/trade/client/models/tpsl.py +4 -19
  69. crypticorn/trade/client/models/tpsl_create.py +6 -19
  70. {crypticorn-2.17.0rc6.dist-info → crypticorn-2.18.0.dist-info}/METADATA +1 -1
  71. {crypticorn-2.17.0rc6.dist-info → crypticorn-2.18.0.dist-info}/RECORD +75 -77
  72. crypticorn/trade/client/models/paginated_response_union_futures_trading_action_spot_trading_action.py +0 -141
  73. crypticorn/trade/client/models/paginated_response_union_futures_trading_action_spot_trading_action_data_inner.py +0 -165
  74. crypticorn/trade/client/models/spot_trading_action.py +0 -207
  75. {crypticorn-2.17.0rc6.dist-info → crypticorn-2.18.0.dist-info}/WHEEL +0 -0
  76. {crypticorn-2.17.0rc6.dist-info → crypticorn-2.18.0.dist-info}/entry_points.txt +0 -0
  77. {crypticorn-2.17.0rc6.dist-info → crypticorn-2.18.0.dist-info}/licenses/LICENSE +0 -0
  78. {crypticorn-2.17.0rc6.dist-info → crypticorn-2.18.0.dist-info}/top_level.txt +0 -0
@@ -14,6 +14,7 @@ Do not edit the class manually.
14
14
 
15
15
 
16
16
  # import models into model package
17
+ from crypticorn.trade.client.models.actions_count import ActionsCount
17
18
  from crypticorn.trade.client.models.api_error_identifier import ApiErrorIdentifier
18
19
  from crypticorn.trade.client.models.api_error_level import ApiErrorLevel
19
20
  from crypticorn.trade.client.models.api_error_type import ApiErrorType
@@ -48,16 +49,9 @@ from crypticorn.trade.client.models.paginated_response_futures_trading_action im
48
49
  from crypticorn.trade.client.models.paginated_response_order import (
49
50
  PaginatedResponseOrder,
50
51
  )
51
- from crypticorn.trade.client.models.paginated_response_union_futures_trading_action_spot_trading_action import (
52
- PaginatedResponseUnionFuturesTradingActionSpotTradingAction,
53
- )
54
- from crypticorn.trade.client.models.paginated_response_union_futures_trading_action_spot_trading_action_data_inner import (
55
- PaginatedResponseUnionFuturesTradingActionSpotTradingActionDataInner,
56
- )
57
52
  from crypticorn.trade.client.models.pn_l import PnL
58
53
  from crypticorn.trade.client.models.post_futures_action import PostFuturesAction
59
54
  from crypticorn.trade.client.models.spot_balance import SpotBalance
60
- from crypticorn.trade.client.models.spot_trading_action import SpotTradingAction
61
55
  from crypticorn.trade.client.models.spot_trading_action_create import (
62
56
  SpotTradingActionCreate,
63
57
  )
@@ -0,0 +1,88 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Trading API
5
+
6
+ API for automated trading and exchange interface. This API is used to trade on the exchange and manage bots, API keys, orders, and more.
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt
21
+ from typing import Any, ClassVar, Dict, List
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+
26
+ class ActionsCount(BaseModel):
27
+ """
28
+ The number of actions for a user by day
29
+ """ # noqa: E501
30
+
31
+ timestamp: StrictInt = Field(
32
+ description="Timestamp of the latest action for the day"
33
+ )
34
+ count: StrictInt = Field(description="The number of actions for the day")
35
+ __properties: ClassVar[List[str]] = ["timestamp", "count"]
36
+
37
+ model_config = ConfigDict(
38
+ populate_by_name=True,
39
+ validate_assignment=True,
40
+ protected_namespaces=(),
41
+ )
42
+
43
+ def to_str(self) -> str:
44
+ """Returns the string representation of the model using alias"""
45
+ return pprint.pformat(self.model_dump(by_alias=True))
46
+
47
+ def to_json(self) -> str:
48
+ """Returns the JSON representation of the model using alias"""
49
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
50
+ return json.dumps(self.to_dict())
51
+
52
+ @classmethod
53
+ def from_json(cls, json_str: str) -> Optional[Self]:
54
+ """Create an instance of ActionsCount from a JSON string"""
55
+ return cls.from_dict(json.loads(json_str))
56
+
57
+ def to_dict(self) -> Dict[str, Any]:
58
+ """Return the dictionary representation of the model using alias.
59
+
60
+ This has the following differences from calling pydantic's
61
+ `self.model_dump(by_alias=True)`:
62
+
63
+ * `None` is only added to the output dict for nullable fields that
64
+ were set at model initialization. Other fields with value `None`
65
+ are ignored.
66
+ """
67
+ excluded_fields: Set[str] = set([])
68
+
69
+ _dict = self.model_dump(
70
+ by_alias=True,
71
+ exclude=excluded_fields,
72
+ exclude_none=True,
73
+ )
74
+ return _dict
75
+
76
+ @classmethod
77
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
78
+ """Create an instance of ActionsCount from a dict"""
79
+ if obj is None:
80
+ return None
81
+
82
+ if not isinstance(obj, dict):
83
+ return cls.model_validate(obj)
84
+
85
+ _obj = cls.model_validate(
86
+ {"timestamp": obj.get("timestamp"), "count": obj.get("count")}
87
+ )
88
+ return _obj
@@ -65,6 +65,7 @@ class ApiErrorIdentifier(str, Enum):
65
65
  INSUFFICIENT_MARGIN = "insufficient_margin"
66
66
  INSUFFICIENT_SCOPES = "insufficient_scopes"
67
67
  INVALID_API_KEY = "invalid_api_key"
68
+ INVALID_BASIC_AUTH = "invalid_basic_auth"
68
69
  INVALID_BEARER = "invalid_bearer"
69
70
  INVALID_DATA = "invalid_data"
70
71
  INVALID_DATA_RESPONSE = "invalid_data_response"
@@ -26,7 +26,7 @@ from typing_extensions import Self
26
26
 
27
27
  class ExchangeKey(BaseModel):
28
28
  """
29
- Exchange key model not containing sensitive information for read operations.
29
+ Exchange API key model without sensitive credentials for safe read operations.
30
30
  """ # noqa: E501
31
31
 
32
32
  user_id: StrictStr = Field(description="UID for the user")
@@ -27,7 +27,7 @@ from typing_extensions import Self
27
27
 
28
28
  class ExchangeKeyBalance(BaseModel):
29
29
  """
30
- ExchangeKeyBalance
30
+ Balance information for an exchange API key including futures and spot balances.
31
31
  """ # noqa: E501
32
32
 
33
33
  api_key_id: StrictStr = Field(description="API key ID.")
@@ -25,7 +25,7 @@ from typing_extensions import Self
25
25
 
26
26
  class ExecutionIds(BaseModel):
27
27
  """
28
- ExecutionIds
28
+ Execution IDs for trading actions including main order and stop loss/take profit orders.
29
29
  """ # noqa: E501
30
30
 
31
31
  main: StrictStr = Field(description="Main execution ID.")
@@ -28,7 +28,7 @@ from typing_extensions import Self
28
28
 
29
29
  class NotificationCreate(BaseModel):
30
30
  """
31
- Notification model for create operations.
31
+ Notification model for creating new system alerts and messages.
32
32
  """ # noqa: E501
33
33
 
34
34
  viewed: Optional[StrictBool] = Field(
@@ -26,7 +26,7 @@ from typing_extensions import Self
26
26
 
27
27
  class PostFuturesAction(BaseModel):
28
28
  """
29
- PostFuturesAction
29
+ The response when posting a futures action
30
30
  """ # noqa: E501
31
31
 
32
32
  id: StrictStr = Field(description="Action ID.")
@@ -36,7 +36,9 @@ class SpotBalance(BaseModel):
36
36
  frozen: Union[StrictFloat, StrictInt] = Field(
37
37
  description="Frozen funds not available for use"
38
38
  )
39
- allocated: Optional[Union[StrictFloat, StrictInt]] = None
39
+ allocated: Optional[Union[StrictFloat, StrictInt]] = Field(
40
+ default=0, description="Allocated balance for bots. Added on runtime."
41
+ )
40
42
  __properties: ClassVar[List[str]] = [
41
43
  "asset",
42
44
  "balance",
@@ -82,11 +84,6 @@ class SpotBalance(BaseModel):
82
84
  exclude=excluded_fields,
83
85
  exclude_none=True,
84
86
  )
85
- # set to None if allocated (nullable) is None
86
- # and model_fields_set contains the field
87
- if self.allocated is None and "allocated" in self.model_fields_set:
88
- _dict["allocated"] = None
89
-
90
87
  return _dict
91
88
 
92
89
  @classmethod
@@ -104,7 +101,9 @@ class SpotBalance(BaseModel):
104
101
  "balance": obj.get("balance"),
105
102
  "available": obj.get("available"),
106
103
  "frozen": obj.get("frozen"),
107
- "allocated": obj.get("allocated"),
104
+ "allocated": (
105
+ obj.get("allocated") if obj.get("allocated") is not None else 0
106
+ ),
108
107
  }
109
108
  )
110
109
  return _obj
@@ -28,18 +28,14 @@ class TPSL(BaseModel):
28
28
  Runtime fields for take profit and stop loss
29
29
  """ # noqa: E501
30
30
 
31
- price_delta: Optional[StrictStr] = None
32
- price: Optional[StrictStr] = None
31
+ price_delta: StrictStr = Field(
32
+ description="The price delta to calculate the limit price from the current market price, e.g. 1.01 for a TP of 1% on long"
33
+ )
33
34
  allocation: StrictStr = Field(
34
35
  description="Percentage of the open order to sell. All allocations must sum up to 1. Use this allocation again when closing the order."
35
36
  )
36
37
  execution_id: Optional[StrictStr] = None
37
- __properties: ClassVar[List[str]] = [
38
- "price_delta",
39
- "price",
40
- "allocation",
41
- "execution_id",
42
- ]
38
+ __properties: ClassVar[List[str]] = ["price_delta", "allocation", "execution_id"]
43
39
 
44
40
  model_config = ConfigDict(
45
41
  populate_by_name=True,
@@ -78,16 +74,6 @@ class TPSL(BaseModel):
78
74
  exclude=excluded_fields,
79
75
  exclude_none=True,
80
76
  )
81
- # set to None if price_delta (nullable) is None
82
- # and model_fields_set contains the field
83
- if self.price_delta is None and "price_delta" in self.model_fields_set:
84
- _dict["price_delta"] = None
85
-
86
- # set to None if price (nullable) is None
87
- # and model_fields_set contains the field
88
- if self.price is None and "price" in self.model_fields_set:
89
- _dict["price"] = None
90
-
91
77
  # set to None if execution_id (nullable) is None
92
78
  # and model_fields_set contains the field
93
79
  if self.execution_id is None and "execution_id" in self.model_fields_set:
@@ -107,7 +93,6 @@ class TPSL(BaseModel):
107
93
  _obj = cls.model_validate(
108
94
  {
109
95
  "price_delta": obj.get("price_delta"),
110
- "price": obj.get("price"),
111
96
  "allocation": obj.get("allocation"),
112
97
  "execution_id": obj.get("execution_id"),
113
98
  }
@@ -18,7 +18,7 @@ import re # noqa: F401
18
18
  import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
- from typing import Any, ClassVar, Dict, List, Optional
21
+ from typing import Any, ClassVar, Dict, List
22
22
  from typing import Optional, Set
23
23
  from typing_extensions import Self
24
24
 
@@ -28,12 +28,13 @@ class TPSLCreate(BaseModel):
28
28
  Model for take profit and stop loss
29
29
  """ # noqa: E501
30
30
 
31
- price_delta: Optional[StrictStr] = None
32
- price: Optional[StrictStr] = None
31
+ price_delta: StrictStr = Field(
32
+ description="The price delta to calculate the limit price from the current market price, e.g. 1.01 for a TP of 1% on long"
33
+ )
33
34
  allocation: StrictStr = Field(
34
35
  description="Percentage of the open order to sell. All allocations must sum up to 1. Use this allocation again when closing the order."
35
36
  )
36
- __properties: ClassVar[List[str]] = ["price_delta", "price", "allocation"]
37
+ __properties: ClassVar[List[str]] = ["price_delta", "allocation"]
37
38
 
38
39
  model_config = ConfigDict(
39
40
  populate_by_name=True,
@@ -72,16 +73,6 @@ class TPSLCreate(BaseModel):
72
73
  exclude=excluded_fields,
73
74
  exclude_none=True,
74
75
  )
75
- # set to None if price_delta (nullable) is None
76
- # and model_fields_set contains the field
77
- if self.price_delta is None and "price_delta" in self.model_fields_set:
78
- _dict["price_delta"] = None
79
-
80
- # set to None if price (nullable) is None
81
- # and model_fields_set contains the field
82
- if self.price is None and "price" in self.model_fields_set:
83
- _dict["price"] = None
84
-
85
76
  return _dict
86
77
 
87
78
  @classmethod
@@ -94,10 +85,6 @@ class TPSLCreate(BaseModel):
94
85
  return cls.model_validate(obj)
95
86
 
96
87
  _obj = cls.model_validate(
97
- {
98
- "price_delta": obj.get("price_delta"),
99
- "price": obj.get("price"),
100
- "allocation": obj.get("allocation"),
101
- }
88
+ {"price_delta": obj.get("price_delta"), "allocation": obj.get("allocation")}
102
89
  )
103
90
  return _obj
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crypticorn
3
- Version: 2.17.0rc6
3
+ Version: 2.18.0
4
4
  Summary: Maximise Your Crypto Trading Profits with Machine Learning
5
5
  Author-email: Crypticorn <timon@crypticorn.com>
6
6
  License-Expression: MIT
@@ -3,58 +3,58 @@ crypticorn/client.py,sha256=lZTWzXrmw1l-NOqn49jAvyyNSb3rp2u8iCZFjxNSpws,11210
3
3
  crypticorn/auth/__init__.py,sha256=JAl1tBLK9pYLr_-YKaj581c-c94PWLoqnatTIVAVvMM,81
4
4
  crypticorn/auth/main.py,sha256=NOkw7SVzLdKD_9LDB_2Ln8Whr8irA5BsmkAIe56sITY,1256
5
5
  crypticorn/auth/client/__init__.py,sha256=do16xS84uXvVoJuWERjb9RwlOaLy4UF4uKBZWczFC3c,5291
6
- crypticorn/auth/client/api_client.py,sha256=akFVlyGnHKY3xKsihD8Ahe2sciRhWbg_PhIqEqNcXJg,26767
6
+ crypticorn/auth/client/api_client.py,sha256=YumNsoI1ROiukpmDloiSfy7ZTd207khTmNLa7Dien5o,26888
7
7
  crypticorn/auth/client/api_response.py,sha256=WhxwYDSMm6wPixp9CegO8dJzjFxDz3JF1yCq9s0ZqKE,639
8
- crypticorn/auth/client/configuration.py,sha256=hsdlmSIReQLV_-IlrOOZ7zI3XJ_8IrnkjWvNcKIBH18,18054
8
+ crypticorn/auth/client/configuration.py,sha256=eBiet9rc3ok09IltEbCX14DhQGEOc0_sPHrRLKNSmCo,18034
9
9
  crypticorn/auth/client/exceptions.py,sha256=h0Uf70boJaADhffgwDC5bXtOneCeiRyaxWZXgE8OlgM,6393
10
10
  crypticorn/auth/client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  crypticorn/auth/client/rest.py,sha256=ug6xOI_h_Ci1uHsKu8QmbSeCxPNOD-4wrTwVaS3Vauk,7842
12
12
  crypticorn/auth/client/api/__init__.py,sha256=c-MlPvmOXSsk_ragrcUe8WkOuCPTTpJ8maSp2sER0EU,339
13
- crypticorn/auth/client/api/admin_api.py,sha256=yWnMEQRfO06VotzgizwUuq-TRYsMpfj4eCPkugtrA5k,35967
14
- crypticorn/auth/client/api/auth_api.py,sha256=fEYgO8iUFGZR7lGE3GJckmblo0ipfiE83WVu3KWMPwM,214974
15
- crypticorn/auth/client/api/service_api.py,sha256=YFRZpOphVUi2aA0FdhP-xjpiGTQGpUwWWDDhOaAr7gU,21513
16
- crypticorn/auth/client/api/user_api.py,sha256=g7mfbRudnRZza0iavTZ4xOL3xJMeJGdyD6uzMj42w-M,195293
17
- crypticorn/auth/client/api/wallet_api.py,sha256=ARUXWc6zWNLdH2D2Ztm-yIz7D5Ho4MsbRudqwDIxzyg,122576
13
+ crypticorn/auth/client/api/admin_api.py,sha256=KXwnuM8KZ45m3TpNvIfWqmY2-hXgiHovj97o3akqn9o,36007
14
+ crypticorn/auth/client/api/auth_api.py,sha256=VUyKm4YSOIpDgsLvGIvMn7H4HwR4eyRByH1fUhpXzaw,248667
15
+ crypticorn/auth/client/api/service_api.py,sha256=RhqwHPw1gKdQ5s1ILKd8WbsIRR5sCQb0BVMj1lhxYZk,21635
16
+ crypticorn/auth/client/api/user_api.py,sha256=PZ4fvXa6aLniZna90yI1uRwTkbli6WK24qDWjOcGC3U,195420
17
+ crypticorn/auth/client/api/wallet_api.py,sha256=BlJWGbIDVceo_qh8Q_iA3AnP2FBmuM6_MbtbawVELGY,122734
18
18
  crypticorn/auth/client/models/__init__.py,sha256=Y6t08mCcqpV7B1OIUZ5Vb5sgtr0s9sGy-0bhSh0DEgM,4383
19
19
  crypticorn/auth/client/models/add_wallet200_response.py,sha256=orw50N1bfr7qg9N8e73VmsvulFvBN0-8PMaR0ze79ks,2539
20
- crypticorn/auth/client/models/add_wallet_request.py,sha256=mia47jCNkFAhZdoUsnz-CxhFU80epCqWgm_pnfxSprE,3174
20
+ crypticorn/auth/client/models/add_wallet_request.py,sha256=lap0RG_tbW6wq2RHlgUNugI4s0lQq50OO0tXOvK637I,3184
21
21
  crypticorn/auth/client/models/authorize_user200_response.py,sha256=fstTaffARzCe7woPYBuDqxzn-YYl1K1q4yQObGaXpq8,3361
22
22
  crypticorn/auth/client/models/authorize_user200_response_auth.py,sha256=OQzmKNICdr7tHrlhEDIxagDZx7XuW8VO2U3OMsWIJOA,3208
23
- crypticorn/auth/client/models/authorize_user_request.py,sha256=qDEjEXNsfuO9yk8Q-SgfNpE3wbUz_pbfdm3m6KOW5n8,3195
23
+ crypticorn/auth/client/models/authorize_user_request.py,sha256=o_1Ms6npD_1dJQ6aYshEk9JPV7JIkmAmuRawDDPUoTc,3205
24
24
  crypticorn/auth/client/models/create_api_key200_response.py,sha256=UGjZwITv2EdS7bbt55D0w2an6_uO4u6gYr-GihL9m80,2459
25
- crypticorn/auth/client/models/create_api_key_request.py,sha256=2SfBa5hXEMxSTG1GUzmKjTKMgxNgKXZvIuLIK-77qdo,5675
26
- crypticorn/auth/client/models/create_user_request.py,sha256=c7fq2OS146400r97OqeS4w9-X6NhQmHxJ6JHoF_LWYM,2956
27
- crypticorn/auth/client/models/get_api_keys200_response_inner.py,sha256=ETof5ySPyVKVyBH6Fkd6QSf03n9trlf7QBApf6uNIXU,6063
25
+ crypticorn/auth/client/models/create_api_key_request.py,sha256=t8QqB6gNDeTUrG68TWTqcbZ_gOdQeZLR1u_og4p_hHk,5687
26
+ crypticorn/auth/client/models/create_user_request.py,sha256=IyIlwn1F9arWEPrZRlL4ZmJOKOIRuxpe0gWodmxKuDk,2966
27
+ crypticorn/auth/client/models/get_api_keys200_response_inner.py,sha256=BlRZsegCpKkPewyN8pDVpPd3N_7P4z41kNPHso429sU,6075
28
28
  crypticorn/auth/client/models/list_wallets200_response.py,sha256=G2LQiThhtynkuDGFvIs-BowR38ut7cRbIeCzK4wMnPw,4732
29
29
  crypticorn/auth/client/models/list_wallets200_response_balances_inner.py,sha256=acTJa8B5U8j3_wS1TUYXnprptqF_T4dlV-wVaQ5ZXig,4023
30
- crypticorn/auth/client/models/list_wallets200_response_balances_inner_sale_round.py,sha256=f2LkgZrX4WuhH1RRN3noz9qyK1j1mqkMJzlh0AJcEOc,3593
31
- crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet.py,sha256=pAAUQd2t52dWsRJm6zKd5iybmbJahSyfQJMOwD1Rqbk,6078
32
- crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet_vesting_wallets_inner.py,sha256=7971e5G1sdlbMzK4x-9neG-zQzTXuyScgxETMPkQXXo,6609
33
- crypticorn/auth/client/models/list_wallets200_response_data_inner.py,sha256=2TcCxgu3kCUu5xJM2IZUIDQoWII5iN15ZfX23-q3WBc,2951
30
+ crypticorn/auth/client/models/list_wallets200_response_balances_inner_sale_round.py,sha256=KrCHFXXfc6U61nDFsq26gRtQQnc2_tSjL2fwQOnBfzI,3603
31
+ crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet.py,sha256=TzkG_MjbKVEr9vWjxQEsUhKX6bTqL0uBkXKQ78k31-A,6088
32
+ crypticorn/auth/client/models/list_wallets200_response_balances_inner_wallet_vesting_wallets_inner.py,sha256=PDrcXkFMXVv20n9RWzeIo84eYNSErzIwqbnLCzZ_pwc,6619
33
+ crypticorn/auth/client/models/list_wallets200_response_data_inner.py,sha256=jU8F7s4UaIYMRZr6YOVaUlY5AP6FlLYVxJsjdg9y8ao,2961
34
34
  crypticorn/auth/client/models/list_wallets200_response_user_value.py,sha256=GxjIR4LsAquzeTbRs9HM-Kd0SV2VYQuetjGM59UuA_o,3821
35
- crypticorn/auth/client/models/logout_default_response.py,sha256=xsO4QxWcBk6pbfBIFGavS0pzUADixp9UFtKk2bhjzo0,3365
35
+ crypticorn/auth/client/models/logout_default_response.py,sha256=CgxopP7vaACZXM0jfH3SULrrwDL4CN603-1euO8dM8c,3375
36
36
  crypticorn/auth/client/models/logout_default_response_issues_inner.py,sha256=Z8Tf60jyEzsgIgP7T9k8wmXmeYwRTIiJpDwa3JL5SGs,2467
37
37
  crypticorn/auth/client/models/oauth_callback200_response.py,sha256=vGPI-8re_1NDgH55WiZD09b4sP4q0N9b2lh4xUw1uis,3416
38
- crypticorn/auth/client/models/oauth_callback200_response_user.py,sha256=EGoE8EcdPP-uvivPaUBo0WaaBFnB7npHJRZk5_q7YQE,2988
38
+ crypticorn/auth/client/models/oauth_callback200_response_user.py,sha256=YncwfKBFSEULtLI8sJhd-d8u2bnWRC_o7VRpUI8Kn7Q,2998
39
39
  crypticorn/auth/client/models/refresh_token_info200_response.py,sha256=PP_dDiAkZbcnGeCea9laUhjKofBrfUrhyMDWLQZWCQY,3062
40
- crypticorn/auth/client/models/refresh_token_info200_response_user_session.py,sha256=eIB57zuRLEZ1dc3ZmUNbJVH9_M7p9xzYPVC4stQZ0Ow,3440
40
+ crypticorn/auth/client/models/refresh_token_info200_response_user_session.py,sha256=-hlOJn3XZXF1bDHYn2dTxmEZ-zuFJ_b9ZYi1xm1gmWQ,3450
41
41
  crypticorn/auth/client/models/resend_verification_email_request.py,sha256=eoQD4xhOjZblz3JSvamnM0f0ALuk94HhmIqXUCK0KmI,2526
42
42
  crypticorn/auth/client/models/revoke_user_tokens_request.py,sha256=lOA-0n9HBz9AsxGuoBuT2Axkhb9X4Ff8RkytUf583_s,2459
43
- crypticorn/auth/client/models/rotate_tokens200_response.py,sha256=G_BbMLajjbvoHoeYChraszNXdnZh7lTRgTWeUie5Z9A,3524
44
- crypticorn/auth/client/models/token_info200_response.py,sha256=YvMhkkeleVrefYKwUbsPTv0bUxc2ZZphsz9KzJnXfh4,2942
43
+ crypticorn/auth/client/models/rotate_tokens200_response.py,sha256=LhSgnQfdCqtxmpIM8oWN8KyFM0bnUeA3y7cMiEwZ2Go,3534
44
+ crypticorn/auth/client/models/token_info200_response.py,sha256=KFwn4oVmBR5JbwIGk0VXu0Vh9JCTRbBBmpqRXrjpWb0,2952
45
45
  crypticorn/auth/client/models/unlink_wallet_request.py,sha256=dzYVVANju72DrzQSuKqGHpBv9V4Yv1wl7S42YqzFL98,2395
46
- crypticorn/auth/client/models/update_user_request.py,sha256=IsS_Lz_n4Le0FHptSAibumNpn70UWGp-RJ5fmcBA_os,2816
47
- crypticorn/auth/client/models/user_by_username200_response.py,sha256=vCaF_LYGkJ8aDD_MdVsApaiB1SZfeLSIfw55CR8rMXk,2708
46
+ crypticorn/auth/client/models/update_user_request.py,sha256=eHXaMbXbM5YofcN5cl0fl7C-FBGqOpnS7ZzhEOoR7Ig,2826
47
+ crypticorn/auth/client/models/user_by_username200_response.py,sha256=JZDEm8P_bnuR6kPFEBTGpisXhEvNYjV8nTibDLXCBKs,2718
48
48
  crypticorn/auth/client/models/user_reset_password_request.py,sha256=9fkUUIpLyvk3YeWcvWL4DWidzenH1mss3L54J3kThuk,2638
49
49
  crypticorn/auth/client/models/user_set_password_request.py,sha256=OSaIKJ_4EcwXvV-chXbRypD8dujMt08slP_CxPWEtiM,2640
50
- crypticorn/auth/client/models/verify200_response.py,sha256=-syeJEOA0Piipry1YkZHQt0TziMxur9fy6GEiuJO-QY,3812
50
+ crypticorn/auth/client/models/verify200_response.py,sha256=qNZ2ytBJ6ShX-EEB6h6CbwWbgVW8cTj7f1NKKgjoZYo,3822
51
51
  crypticorn/auth/client/models/verify_email200_response.py,sha256=NyhA3kn7lhYsjujdtHdZEjeYTQ0BuVu277twqnYTN5A,3345
52
- crypticorn/auth/client/models/verify_email200_response_auth.py,sha256=q5rdav5da3Iee_tLlmBuI_-i4r-GhJPRdL9ng58058w,3217
53
- crypticorn/auth/client/models/verify_email200_response_auth_auth.py,sha256=pq_DlBxx7Hi8DY6Rja3lw3Bx8kgUtx_KMROYTXOjpqk,3864
52
+ crypticorn/auth/client/models/verify_email200_response_auth.py,sha256=BmH0ZD7zrlZ6uwb1aBjQXCMnFcWtByTtHrFRBAVcUew,3227
53
+ crypticorn/auth/client/models/verify_email200_response_auth_auth.py,sha256=BNfpNWk0kLFc3oUjCIEv-S3R8J20dJbGCsniouK_c4U,3874
54
54
  crypticorn/auth/client/models/verify_email_request.py,sha256=W_X14qdTADduVwY4wxSNBPrHHDuiJinD0-sjyP1fkhg,2444
55
55
  crypticorn/auth/client/models/verify_wallet_request.py,sha256=gFKkFXi6b45aUfyklFeHKNJVLxYXE3wR3PvF3JVI4Po,2671
56
56
  crypticorn/auth/client/models/wallet_verified200_response.py,sha256=IXhtaD0CC6Jp9ZG6sgyRg-beIzrhFDuF_bQYOjNMdY0,2445
57
- crypticorn/auth/client/models/whoami200_response.py,sha256=1Vk_UpuzqSVRWpiqyAhEJFHih5_xjB2lWDf6C3w4hgY,3189
57
+ crypticorn/auth/client/models/whoami200_response.py,sha256=-Kj3fB4lgNaa8v_LTertjxXahBYtTpTIXkBha9MhA1o,3199
58
58
  crypticorn/cli/__init__.py,sha256=5qIQ_WXKSoJk3tGU6n0XwmSX8a2cDRSM6dncaU1qOZ4,123
59
59
  crypticorn/cli/__main__.py,sha256=q_3MdBGUJPukr_xexup3TICf8kLL7Tp4JxLWB5XCESs,303
60
60
  crypticorn/cli/init.py,sha256=Ubu0eOwUqVweb4EzqsceV4K5VMN2qz6_Riy9h2Pjb64,4099
@@ -67,51 +67,51 @@ crypticorn/cli/templates/auth.py,sha256=i27-Ts-Eiyv6_WRshOp7NV5OYUNbw2-kiN5Ll0k2
67
67
  crypticorn/cli/templates/dependabot.yml,sha256=ct5ieB8KAV1KLzoYKUNm6dZ9wKG_P_JQHgRjZUfT54w,861
68
68
  crypticorn/cli/templates/merge-env.sh,sha256=BNPrDTihII0yG2gehBkWwWj0GqHmb6xwmrAgwFpl8dA,554
69
69
  crypticorn/cli/templates/ruff.yml,sha256=gWicFFTzC4nToSmRkIIGipos8CZ447YG0kebBCJhtJE,319
70
- crypticorn/common/__init__.py,sha256=3nv8Kfuqh15s9oTIqMQtDAqKGGNVC4BVHlHQFDmfg8I,792
70
+ crypticorn/common/__init__.py,sha256=Ji71ZLWE5jiCsDlBye5RLAesiYTu6-p-E9F1P6jg6bw,792
71
71
  crypticorn/common/ansi_colors.py,sha256=-tMlUTE8NI7TPv7uj0kGRe-SI2hGaUNPKBFI_dfiZy0,1392
72
- crypticorn/common/auth.py,sha256=7sVhccm9BPTWlSpJMcArZbZRLezHOxo6EHcXx8wdr_I,10939
73
- crypticorn/common/decorators.py,sha256=pmnGYCIrLv59wZkDbvPyK9NJmgPJWW74LXTdIWSjOkY,1063
74
- crypticorn/common/enums.py,sha256=0XYjK9sPbZpsUtu2chZIVnk6Tj3a_fFcDht7tRuvSDw,1334
75
- crypticorn/common/errors.py,sha256=klC3tpMzJPVWqGzvXHGLSTxKd-BLHuNJvhXReVIxdVU,30454
76
- crypticorn/common/exceptions.py,sha256=4oT58wcL9zQuqYU8op_36uZ1Kzt7JRCccu-o_usgqtU,6392
77
- crypticorn/common/logging.py,sha256=n-qaYreRNFVAFRUd91hzYoaTExNLysd9cgEXm-v6eJY,4440
78
- crypticorn/common/metrics.py,sha256=lqE09izxRnvvET-wG2Py0zQHOYqa_aWohdhaOniqPgY,440
79
- crypticorn/common/middleware.py,sha256=Kv81rLxECEetQeTd6uM45ppeYa2uUjSzFQFvkm7WibE,2560
80
- crypticorn/common/mixins.py,sha256=l7XQrBISaee6fDZXy96k0HnQ18XYocjTUXlNpVxhaOY,2206
72
+ crypticorn/common/auth.py,sha256=bbHmNPUVWtT5w5g5m1KKiHj63f1HHbyprR8HLQHe0no,13116
73
+ crypticorn/common/decorators.py,sha256=chsbF27_q3hC0egBaZLfv2vcqUcBSfQXRkLi3Ewb-20,1063
74
+ crypticorn/common/enums.py,sha256=hhx9O7Viz3g9zzFAM-cSQCNEbq91tWq8pgR_kWwx2AM,1335
75
+ crypticorn/common/errors.py,sha256=qHbJu0rp_jSpWpw6hA-59WWh0HAnbfdbX7iaW1dIERM,30137
76
+ crypticorn/common/exceptions.py,sha256=b4wuGZhLWinzhEx1xC0AJ28GzkWgQMGMKbhBIdv38FE,6634
77
+ crypticorn/common/logging.py,sha256=iN8XzI5O5PVpmfR0wemMmMhx7M4pUzpR1fYeM2M585U,4441
78
+ crypticorn/common/metrics.py,sha256=aIQnHbw64oGk4PFjQibKHTuJv1ObQfCTS1SmIsHkmVc,713
79
+ crypticorn/common/middleware.py,sha256=RlQJSnuPz61V8n7esv2d2C5GYTwiw1f1PSVi9GMJlIk,3760
80
+ crypticorn/common/mixins.py,sha256=z1a4sAVjD5peg3VVFjZdpAbtvtfEmszRssIafh-wctE,2207
81
81
  crypticorn/common/openapi.py,sha256=D8bCpCVVzYQptHrJ7SYOgCxI3R_d0cjW9KMOBq-x0xk,279
82
- crypticorn/common/pagination.py,sha256=IJc7fLkRYAXl3_s7Dqphj98HbtIkbYvbqPRFXPUljTA,11431
82
+ crypticorn/common/pagination.py,sha256=06shym28tfD-Cc9EPk2W7K2GHqUj2Kk4ShQ0BrKCDWY,11432
83
83
  crypticorn/common/scopes.py,sha256=2ZouiZn3pZ14ShcWdRnM_D9OLreI-FwYC9kQ0jYF7gQ,2903
84
84
  crypticorn/common/urls.py,sha256=v23H2gevTNZ6HMRXDPiuc8znBbNdNqj0JTAdm5Hhms8,1223
85
- crypticorn/common/utils.py,sha256=LcWudhcjZtULg87yYghh5muTYdHvk3UmkEAXmX7xgLk,3073
86
- crypticorn/common/warnings.py,sha256=Ho2XmjsXbR0_8kTADG5PweWqOlrKlRwOr6Df-RKxDiU,3084
87
- crypticorn/common/router/admin_router.py,sha256=190ikRy0lMTR1rq2Oywutuq1qQzL6X1yI-xZut11jMo,3740
88
- crypticorn/common/router/status_router.py,sha256=ETsrcR1p8Nnien5g6LnBXO575yZxM-LeUtLI5FqW8a0,2381
85
+ crypticorn/common/utils.py,sha256=mB99vDFovnGdOL8JlOiyFzdpppT33VlGUO8-7iauWXw,3073
86
+ crypticorn/common/warnings.py,sha256=ErEB108UVZgV5ykSuFkjQgDTb9sb_T9yKq-h753Kw64,3085
87
+ crypticorn/common/router/admin_router.py,sha256=R9_9DAxMcw5Lq7Ze-ttPyfYZxqwpmXfqYPhg2lQ_Yfg,4092
88
+ crypticorn/common/router/status_router.py,sha256=tqrTXq4ZWCxiTXinQoK-2tadWu2jUFzzzkN_Dft0P8g,1084
89
89
  crypticorn/dex/__init__.py,sha256=9_mqFYSxgg17HU0yDXiKyle7sfa625wC4qPQU_FPZ4k,110
90
90
  crypticorn/dex/main.py,sha256=7XOaSmtuSDu1qqSrIFgRdMze566cZgBhgr7Chm5iAsE,66
91
91
  crypticorn/dex/client/__init__.py,sha256=UubUEV0qetNHNMa_sx1RfD0WAWxB9bATH1zQUDevmnM,1923
92
- crypticorn/dex/client/api_client.py,sha256=6Er5JRSE2Dcgd2ZGes-7PWKgU8tLRgzMiDuaG4Ww1wE,26710
92
+ crypticorn/dex/client/api_client.py,sha256=-mCAmXo_Y9ly6U3oRLYYg7eYJQ4u8a1lcDNMJJENqgk,26831
93
93
  crypticorn/dex/client/api_response.py,sha256=WhxwYDSMm6wPixp9CegO8dJzjFxDz3JF1yCq9s0ZqKE,639
94
- crypticorn/dex/client/configuration.py,sha256=HqALiar1rPaHDruY6Zua8EF96AAmKijgsQ4-bmpYF4Y,19071
94
+ crypticorn/dex/client/configuration.py,sha256=pjA7PzZGWsGNjg1NIXXwHUI0LTmC7Iq9G-0J2Hh6GX4,19091
95
95
  crypticorn/dex/client/exceptions.py,sha256=Rm1EFvbfF9FZxuJumHyrVeM8Lq6RDbt4UbdH3vAQfz8,6342
96
96
  crypticorn/dex/client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
97
97
  crypticorn/dex/client/rest.py,sha256=g6cohvNxRr0DmRpcfBHb531B_CkwrnzWtnB165SKL3E,7790
98
98
  crypticorn/dex/client/api/__init__.py,sha256=wqmeM2qBGx24nEjcZXn0T3b9097o5bAGLqaXgboveOo,224
99
- crypticorn/dex/client/api/admin_api.py,sha256=yL4T-zO3glZQd2bdqeINI2Ca8dZ7QOtuQeE33A1ykc0,117864
100
- crypticorn/dex/client/api/signals_api.py,sha256=MRynbcAdBUlTba82LUOjoRrhDr6ziJoSOKqbyU-2Tpk,69584
101
- crypticorn/dex/client/api/status_api.py,sha256=LcGA3t4fOXKfrffPbikHFovi8rVxfxRzsom4opoM16U,33209
99
+ crypticorn/dex/client/api/admin_api.py,sha256=Ps9FO2fRhNbaBGgFErtfKybUFT8MOoDpePRQ_xyw_W4,118035
100
+ crypticorn/dex/client/api/signals_api.py,sha256=7j1OwFNLg_bH1gicyzMPFy0lUK942gXvRtuInJW-Qnk,70467
101
+ crypticorn/dex/client/api/status_api.py,sha256=kT7CeOajfFXvf93taLbPVe_piPWYMmJOd6FwnMcd0fc,33301
102
102
  crypticorn/dex/client/models/__init__.py,sha256=67WSKhqP8qmk1VySujCASn3ykE-t447E_YOaFUY4xNE,1139
103
103
  crypticorn/dex/client/models/api_error_identifier.py,sha256=6eRZpEcRDXa0E0-DbHkaAXyoqNH1tMoVa4RooQzgPp4,5159
104
104
  crypticorn/dex/client/models/api_error_level.py,sha256=fe1A9w0vbrxP6PRlAqUCip5zTdrTkS3baEXY80bqeqE,693
105
105
  crypticorn/dex/client/models/api_error_type.py,sha256=_F-bHXFeSXtMA1oHHpQxKYh1jHZuQJp-QQog9mV9m1Q,732
106
- crypticorn/dex/client/models/exception_detail.py,sha256=Eh-arulMlS_2KuxiLUy-YRAECPh7XXEEqYkRDpE8Dzc,3752
106
+ crypticorn/dex/client/models/exception_detail.py,sha256=kQjO9J8DnQcD1yZzGtH3WIwdiq0eA-gF3BEgSJdqCUY,3762
107
107
  crypticorn/dex/client/models/log_level.py,sha256=JKJU8vV8hcOO-Z97Q4RBgW5nxKesb7doVAIx1xfc2Lw,690
108
- crypticorn/dex/client/models/paginated_response_signal_with_token.py,sha256=vFobtorGNLpjtEtzqQXiPPPqPivOrEmDyBWjr-_10fI,4321
108
+ crypticorn/dex/client/models/paginated_response_signal_with_token.py,sha256=8y1TPNL8ydMslWLxGtFKHSt1Rta1jQ4QSq7Jh9QTdPc,4331
109
109
  crypticorn/dex/client/models/risk.py,sha256=VV7FYJ8G9GTBdTQXY5CaSiTsHnDs69L7o75OeYKBiec,2501
110
- crypticorn/dex/client/models/signal_overview_stats.py,sha256=WCy0wNuvu5_PEhFF_dgtfdvbPjn3m3yDWenXINUzbBk,5340
111
- crypticorn/dex/client/models/signal_volume.py,sha256=BcW-_nY5bCuzwEVS6Vs8-L01BTOb20_976PtEv8QO5o,2395
112
- crypticorn/dex/client/models/signal_with_token.py,sha256=kZKTKwnh-vTwQ-4HHppSsKdyu86D_5aUNENn3p1_59k,5577
110
+ crypticorn/dex/client/models/signal_overview_stats.py,sha256=2aO4xgGnwlKsbI3aHLmqwXAdscnXpPtuQCQQ_FHxHGU,5381
111
+ crypticorn/dex/client/models/signal_volume.py,sha256=8CmHljMsvVhlDIh0sF9W-uuDfTTHuDbhiBrQvV5YWQA,2520
112
+ crypticorn/dex/client/models/signal_with_token.py,sha256=3SuUVAqhNhh7JaE8c2nHosFN6pBygr_ybSHcsulC2cc,5621
113
113
  crypticorn/dex/client/models/token_data.py,sha256=SpJchn5VgjkblJJL9EWSXqRq8FWyP4DMDuSR4X4zQ4I,4097
114
- crypticorn/dex/client/models/token_detail.py,sha256=Ivt_A8rCkQK7WPUh4RhdZ02rSWIvqbY5mzleyCm8zXk,3589
114
+ crypticorn/dex/client/models/token_detail.py,sha256=3OPcybzP8oRv3L9R7f4CRhlUWd1-8THhLc7PoaScQRs,3599
115
115
  crypticorn/hive/__init__.py,sha256=hRfTlEzEql4msytdUC_04vfaHzVKG5CGZle1M-9QFgY,81
116
116
  crypticorn/hive/main.py,sha256=js63_J-Tvg1loyXxY9rmVGIak2slq3m4kmT4gOy-mWU,5589
117
117
  crypticorn/hive/utils.py,sha256=SI8vtY3KSK8N2zc-Z2vIXDxPM_yGNNMqOCplhQYyg8Y,2038
@@ -152,7 +152,7 @@ crypticorn/hive/client/models/target.py,sha256=otOJK8s5WVUen6J1AQZpRiD330RIpaJU6
152
152
  crypticorn/hive/client/models/target_info.py,sha256=Ix4X14RHhTnPKDa0wZHAYH142CgF-TMocTAsZECjmtI,3367
153
153
  crypticorn/hive/client/models/target_type.py,sha256=FUMaEFkPM7EvStPJE1auimDJ9mxDf6pbsFf-dF3coGw,684
154
154
  crypticorn/klines/__init__.py,sha256=9UUW013uZ5x4evz5zRUxbNid-6O9WAPPYvPZIHpAwms,87
155
- crypticorn/klines/main.py,sha256=hDEQx3UsmS3m0rHDQ6SAB-yMmiqzZLJIAPx_U8a5EJQ,6147
155
+ crypticorn/klines/main.py,sha256=2xq6BWcnsdGQSO_HtMJoceoPxE5JSPvY6ZiwXhkKWs0,6153
156
156
  crypticorn/klines/client/__init__.py,sha256=KAwR6kMFkKap_1Un_HsT8LqYLsTIKUNIJe9JI6Acprg,2792
157
157
  crypticorn/klines/client/api_client.py,sha256=xvuY8Rqdm_UXjYhIWOeIzVxd_qCT-Q4OTtcp8GDXqN0,26804
158
158
  crypticorn/klines/client/api_response.py,sha256=WhxwYDSMm6wPixp9CegO8dJzjFxDz3JF1yCq9s0ZqKE,639
@@ -189,7 +189,7 @@ crypticorn/klines/client/models/symbol_type.py,sha256=uOEqlQJ714fa0SEYOxzCOx9cG-
189
189
  crypticorn/klines/client/models/timeframe.py,sha256=bSZJz3Q78V1RAnm3ZDtGBzFOnDKE3Pc5A0eP3ky3KaI,760
190
190
  crypticorn/klines/client/models/udf_config.py,sha256=U6ADEijacTkw_mTEnlJ0N_nGt8hu0TpDjaPkvyPrqtI,5142
191
191
  crypticorn/metrics/__init__.py,sha256=t7FrHV5PaVTka90eIxDgOaWvOiyznSStcUanSbLov2o,126
192
- crypticorn/metrics/main.py,sha256=zbG-bH6iY7oTJjbP6VFvwYeusbf6HwKoEo2Z1cKEQwY,7679
192
+ crypticorn/metrics/main.py,sha256=b_PrPG-Wn-ymzG5PVTYsgZ7sCXuTBmf5UIIXcvZebnU,7685
193
193
  crypticorn/metrics/client/__init__.py,sha256=bu9LdJkG7vljgmLVKhoSY08ooOuEo0AhoHt7-zDVyek,2720
194
194
  crypticorn/metrics/client/api_client.py,sha256=xRImGDnEopsLF3pqyesOCD5kUYRiuvLC4q7j8vDAwt0,26813
195
195
  crypticorn/metrics/client/api_response.py,sha256=WhxwYDSMm6wPixp9CegO8dJzjFxDz3JF1yCq9s0ZqKE,639
@@ -256,7 +256,7 @@ crypticorn/pay/client/models/scope.py,sha256=2FYPRBuFMEsz-gwdYaKSZNSNW1iliJIwiLY
256
256
  crypticorn/pay/client/models/subscription.py,sha256=mkSaNn4bXIGRPCsGxwDoPjvhXYhgCFaeZhmeAASNSf4,3140
257
257
  crypticorn/trade/__init__.py,sha256=QzScH9n-ly3QSaBSpPP7EqYwhdzDqYCZJs0-AhEhrsY,84
258
258
  crypticorn/trade/main.py,sha256=j-sWkCScyHe1aVeXeb37xbW3FULuvaUSivUUSdsSdqg,1576
259
- crypticorn/trade/client/__init__.py,sha256=1VV3nYEqhVtagKXGbvB4Zw31KqLy46p0t3ndfM-l0_E,4969
259
+ crypticorn/trade/client/__init__.py,sha256=zNvo-PD1mbF96GzxdZ9kpv5brdNDSm8oW2Z0IvZGWeU,4578
260
260
  crypticorn/trade/client/api_client.py,sha256=jcNo7CbwCmLd1whXXVnkH378MWnw_wlKzJ07L4RpCog,26966
261
261
  crypticorn/trade/client/api_response.py,sha256=WhxwYDSMm6wPixp9CegO8dJzjFxDz3JF1yCq9s0ZqKE,639
262
262
  crypticorn/trade/client/configuration.py,sha256=n_ENslVAtUf3FN7XiNYBHFdeg-qhia8wSzWhBkMN3p0,19198
@@ -264,7 +264,7 @@ crypticorn/trade/client/exceptions.py,sha256=SpFrOXW6rxrh-VqnH7rt7uBrJCKdCgR8Ywk
264
264
  crypticorn/trade/client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
265
265
  crypticorn/trade/client/rest.py,sha256=nVyhZrONq1kRHqodmHcOYxCMf5LgSKdjMzVMqt-uTQo,7915
266
266
  crypticorn/trade/client/api/__init__.py,sha256=4K_FMAIeWRivGFNavL4mKo4gr8hLewE5vxRWBHkwPYo,638
267
- crypticorn/trade/client/api/admin_api.py,sha256=r_Oq7et1Qowxxk7aLUpOn5Ss39HPFfkcbERXxWeqE6I,118166
267
+ crypticorn/trade/client/api/admin_api.py,sha256=696bfJ8NEi-S4HkTuLYlehv8pMJRk3k2I6am6juwa8o,102500
268
268
  crypticorn/trade/client/api/api_keys_api.py,sha256=vPo7q6uQEzuCyKgq6-4ak4sCccwYunOS5e_itTp0aKg,113404
269
269
  crypticorn/trade/client/api/bots_api.py,sha256=5kfrNcq3uP2Fy8G9fmzJHYT5EYhXSdQVMsPMnPTCxio,340833
270
270
  crypticorn/trade/client/api/exchanges_api.py,sha256=pnzUlA-NyUQEGGo7YndncEPMvmHQgtkoAjmF09uB66o,49731
@@ -272,9 +272,10 @@ crypticorn/trade/client/api/notifications_api.py,sha256=kLKz2bWVJbm8mnsysN9IS1y1
272
272
  crypticorn/trade/client/api/orders_api.py,sha256=poYLSKBJKlQxcuwO4l-IE7ZZQ3H5AO_f4BBCgKJ6RvU,24298
273
273
  crypticorn/trade/client/api/status_api.py,sha256=bdMvb-MgIhSZI_mXZGmTS8vMJK9jDLeLKQcedNAC5sg,33430
274
274
  crypticorn/trade/client/api/strategies_api.py,sha256=46jCcwoRvy7bnPXzO-a4CXCETTqSe4LIbC6wH-T4XYY,92548
275
- crypticorn/trade/client/api/trading_actions_api.py,sha256=d27uxiL4DmKiWKpOH5xf-nqoYLJFvnU9Aw5JEW-KCTg,70298
276
- crypticorn/trade/client/models/__init__.py,sha256=qujts1TRDUG7GVvMvaEKUPM9iIf6cQeqEOWTCxNtids,3753
277
- crypticorn/trade/client/models/api_error_identifier.py,sha256=vOnj2swcFn3qU5brKTmd4BJEOkBLaeE07iMzLnFLogE,5282
275
+ crypticorn/trade/client/api/trading_actions_api.py,sha256=id_aPAikN-bgTQKBDuWf5rZ6n3K2uTJzQNZOuF7TBEA,61306
276
+ crypticorn/trade/client/models/__init__.py,sha256=FzIs1l3zST-aRec3Kl71CT9RIrPMMxL-_qA8xCunOX0,3362
277
+ crypticorn/trade/client/models/actions_count.py,sha256=_j5HtqnOO8LRLZGeo5E4jDxJYv5U6UiUbbdsGRJn1zo,2717
278
+ crypticorn/trade/client/models/api_error_identifier.py,sha256=GIkvSuGOUAoe96jSUN0ll_tlAZrkgIBgH82HzAyqLso,5328
278
279
  crypticorn/trade/client/models/api_error_level.py,sha256=8Sau6q3K29fg-EIGnex0yrw7gXJZLmyGTicYIXcehmY,816
279
280
  crypticorn/trade/client/models/api_error_type.py,sha256=34NBgCP296pQx8doVpeqlhopPfBfRH1I-135YVtN19Y,855
280
281
  crypticorn/trade/client/models/bot.py,sha256=_RqQVQoR1Zzz8thpWClt8a7KXOGVGfY8GFjooW3vHXQ,5208
@@ -283,11 +284,11 @@ crypticorn/trade/client/models/bot_status.py,sha256=Yga6SVNHBOcJhBENCWi7I12aSBhM
283
284
  crypticorn/trade/client/models/bot_update.py,sha256=X2QDpheQBgRPDujo6WSne3I6iuJZx5n8KQQiJPWXnD8,4092
284
285
  crypticorn/trade/client/models/exception_detail.py,sha256=mW4Zxb1KtRMboZDupnhGpkiYHi1e2JE_j3qewgTwfbc,3891
285
286
  crypticorn/trade/client/models/exchange.py,sha256=0n80AU21SdEOPCST4wha97ATmDO4JQM0-TPrpDxPsZw,1008
286
- crypticorn/trade/client/models/exchange_key.py,sha256=aGyEDANSuxUdKFWTnNDi2HvAh7a-tHrx3Xi2uaT8Jig,3814
287
- crypticorn/trade/client/models/exchange_key_balance.py,sha256=h0jjPkfJSTm5mI2Ubg4YbmhiT5nQ1rHZSJkY6hrdQI8,3776
287
+ crypticorn/trade/client/models/exchange_key.py,sha256=1iLgYstNlinHXlyBgbo-wwn8uM92LT6eZnIEkXANgTQ,3816
288
+ crypticorn/trade/client/models/exchange_key_balance.py,sha256=H9J7zirXgM0UDE9n0QclFRFOdWjLibFG0SgN14a_aiI,3838
288
289
  crypticorn/trade/client/models/exchange_key_create.py,sha256=z9JPkdUs7J4u8y8pYhbyD5tDebERXR3rN420oLwA9Eo,4052
289
290
  crypticorn/trade/client/models/exchange_key_update.py,sha256=ZOhmHkHOPnGvyTfTTmsq6vkL_av-LsjObpi6h9XLsGI,4359
290
- crypticorn/trade/client/models/execution_ids.py,sha256=0MHzL43PX-aMjKxCkcLTPbszG5q0KruZPwlColEZW58,2963
291
+ crypticorn/trade/client/models/execution_ids.py,sha256=YYI6a1ZBTDIMoH0lTWyLgcuvUv3mMrT1j6Bc2eGsxAI,3039
291
292
  crypticorn/trade/client/models/futures_balance.py,sha256=jcf6q51Gyh80rgN6aNwHANwo3BcbO6uiqK9hEoEw0d4,4101
292
293
  crypticorn/trade/client/models/futures_trading_action.py,sha256=5zGeKBTwHsHC3aQkM7fDE98yH__bC9kw-PtALhrumKI,8551
293
294
  crypticorn/trade/client/models/futures_trading_action_create.py,sha256=Aho_Do2h-Wegaq-tCWJGD3kRpueISnfkdp5c9KvTi9A,8149
@@ -295,30 +296,27 @@ crypticorn/trade/client/models/log_level.py,sha256=Fv2WlajyWZTiXBRNyFQ1x0xqh5nrz
295
296
  crypticorn/trade/client/models/margin_mode.py,sha256=kG1ElFka5OYQI6YQOH1JhGY3qo-ZQhdMTqIYDpqPlgs,777
296
297
  crypticorn/trade/client/models/market_type.py,sha256=OkEE5lAPw2FAudw_98BLcyglEXQhb2uhFeP82W7WFPM,755
297
298
  crypticorn/trade/client/models/notification.py,sha256=-9WexTaSUG4Zm5bKGnsMmr0wk_j2sC5sadODoQ4pAHo,5050
298
- crypticorn/trade/client/models/notification_create.py,sha256=feo6q97UiUmTLjtbTWAUm0_F3hHZz8FQtZHxxlm2sJE,4383
299
+ crypticorn/trade/client/models/notification_create.py,sha256=Ym4jlLxl3XbyG6mr2gsFppVn7qsfTVVlAvHk-7V0k3Q,4405
299
300
  crypticorn/trade/client/models/notification_update.py,sha256=WNAspKUBObmQsZuNwCXst6hFv2GcF8X5h6II8BVdwYE,3668
300
301
  crypticorn/trade/client/models/order.py,sha256=AQu1qV9GkbLqckgY8AW9m_hd6YDpStAIFJCEUmMewZw,11883
301
302
  crypticorn/trade/client/models/order_status.py,sha256=dQkbXtPSW4bVGQOVL0M9-Q_fMpAUa4v3uwuuUwXNcnY,852
302
303
  crypticorn/trade/client/models/orders_count.py,sha256=tsuSLfvTKQWBXNI7JFsQWPFiJ3W9UulmhM4UyY3rPhw,2711
303
304
  crypticorn/trade/client/models/paginated_response_futures_trading_action.py,sha256=uXVYFGG9644-fbOCZ4vuZ_aC39I2uLpi45Npc1K3wOY,4496
304
305
  crypticorn/trade/client/models/paginated_response_order.py,sha256=72dxbKwd_cqFJ3Un2IONwSF---YjhktaVVGh1bGc4Ew,4374
305
- crypticorn/trade/client/models/paginated_response_union_futures_trading_action_spot_trading_action.py,sha256=qBRaGmmRqwmBdm2Bo-pJZSGVM2TlY1unmOBWO_G_4HQ,4917
306
- crypticorn/trade/client/models/paginated_response_union_futures_trading_action_spot_trading_action_data_inner.py,sha256=cgPfLMFcc2fOkyVojSyiXb55lgnE1yxUA80W4g1HrD4,5757
307
306
  crypticorn/trade/client/models/pn_l.py,sha256=dfHDd6mK_TA935f3gboNIWl_gu355cjfWoQT0cv55pM,3070
308
- crypticorn/trade/client/models/post_futures_action.py,sha256=KBI3lPayQQNfQP8Attow9tkuo9zimJk19cKQQb9JK-w,3123
309
- crypticorn/trade/client/models/spot_balance.py,sha256=8W4IH-E1zq0gklVsAAT2h8mXV58_BGcOmZzvyaQucGY,3495
310
- crypticorn/trade/client/models/spot_trading_action.py,sha256=YXIw0wT-1iCWxzYuwke00xSo3q6Fh1Vp3MBF2SCcGoM,7899
307
+ crypticorn/trade/client/models/post_futures_action.py,sha256=A6cWbtpr_Y2Pu23ca8d2aJ-nLclgwa_zX6ruCm5v1os,3148
308
+ crypticorn/trade/client/models/spot_balance.py,sha256=16xCpKT682xlwIqxg0B7Pemlk05F-lfWOUP1fFCO4Q0,3446
311
309
  crypticorn/trade/client/models/spot_trading_action_create.py,sha256=g6Puv6BTLhgtTYqeE-QhC9WqM4wfoNQOLFsqEXZC0aQ,7494
312
310
  crypticorn/trade/client/models/strategy.py,sha256=_tQjpaCYK_UJhKoDGKwsvRiBvz1RMySf0x-JlV5S_wk,6490
313
311
  crypticorn/trade/client/models/strategy_create.py,sha256=j27UPNgL1GCJx2qRAHCJz5dVgpqco0VZSU3Pmg7LI0o,5967
314
312
  crypticorn/trade/client/models/strategy_exchange_info.py,sha256=1O03TWw-mRdvJKbH4a3qtqeuRKJpwduk1bcMrQRKkgs,3260
315
313
  crypticorn/trade/client/models/strategy_update.py,sha256=hoZTORJ3puMY5WbQQw2n77GfKkDEA5Eu2CAYfIgemqQ,5696
316
- crypticorn/trade/client/models/tpsl.py,sha256=iuHwBxHaUdtJn7NhcTE6Skzv4nmoSF8jEnf7_bTglwk,3730
317
- crypticorn/trade/client/models/tpsl_create.py,sha256=nX4i2BGWv5rmu3SLgRngfvEMFOWa3CIy0G3fyoxI-e4,3351
314
+ crypticorn/trade/client/models/tpsl.py,sha256=hb1XeYPWlw039N2lh7T0Sb96baClOsedzHZbx0ZF4T0,3300
315
+ crypticorn/trade/client/models/tpsl_create.py,sha256=OCpR1bGXczrb1Yxa9pFVCC_jJgvly3XYnIYCzt9ADGA,2903
318
316
  crypticorn/trade/client/models/trading_action_type.py,sha256=BysUEOl85zs79EA2zOcDN1EExcpQdABaJ4Jz08_z8VU,857
319
- crypticorn-2.17.0rc6.dist-info/licenses/LICENSE,sha256=HonAVvzFXkP2C1d7D3ByIKPwjGH8NcHTAQvKH7uvOHQ,1856
320
- crypticorn-2.17.0rc6.dist-info/METADATA,sha256=rHq8w0k7ZIShJAPch2houkaZgqApT_HnttaXUrIHLK0,11712
321
- crypticorn-2.17.0rc6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
322
- crypticorn-2.17.0rc6.dist-info/entry_points.txt,sha256=d_xHsGvUTebPveVUK0SrpDFQ5ZRSjlI7lNCc11sn2PM,59
323
- crypticorn-2.17.0rc6.dist-info/top_level.txt,sha256=EP3NY216qIBYfmvGl0L2Zc9ItP0DjGSkiYqd9xJwGcM,11
324
- crypticorn-2.17.0rc6.dist-info/RECORD,,
317
+ crypticorn-2.18.0.dist-info/licenses/LICENSE,sha256=HonAVvzFXkP2C1d7D3ByIKPwjGH8NcHTAQvKH7uvOHQ,1856
318
+ crypticorn-2.18.0.dist-info/METADATA,sha256=xi5ALyKiT6y4xISoseP6-L1MJ5MDDuvt5IXk2VKVXO0,11709
319
+ crypticorn-2.18.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
320
+ crypticorn-2.18.0.dist-info/entry_points.txt,sha256=d_xHsGvUTebPveVUK0SrpDFQ5ZRSjlI7lNCc11sn2PM,59
321
+ crypticorn-2.18.0.dist-info/top_level.txt,sha256=EP3NY216qIBYfmvGl0L2Zc9ItP0DjGSkiYqd9xJwGcM,11
322
+ crypticorn-2.18.0.dist-info/RECORD,,