crypticorn 2.16.0__py3-none-any.whl → 2.17.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 (164) hide show
  1. crypticorn/__init__.py +2 -2
  2. crypticorn/auth/client/api/admin_api.py +397 -13
  3. crypticorn/auth/client/api/auth_api.py +3610 -341
  4. crypticorn/auth/client/api/service_api.py +249 -7
  5. crypticorn/auth/client/api/user_api.py +2295 -179
  6. crypticorn/auth/client/api/wallet_api.py +1468 -81
  7. crypticorn/auth/client/configuration.py +2 -2
  8. crypticorn/auth/client/models/create_api_key_request.py +2 -1
  9. crypticorn/auth/client/models/get_api_keys200_response_inner.py +2 -1
  10. crypticorn/auth/client/rest.py +23 -4
  11. crypticorn/auth/main.py +8 -5
  12. crypticorn/cli/init.py +1 -1
  13. crypticorn/cli/templates/.env.docker.temp +3 -0
  14. crypticorn/cli/templates/.env.example.temp +4 -0
  15. crypticorn/cli/templates/Dockerfile +5 -2
  16. crypticorn/client.py +226 -59
  17. crypticorn/common/__init__.py +1 -0
  18. crypticorn/common/auth.py +45 -14
  19. crypticorn/common/decorators.py +1 -2
  20. crypticorn/common/enums.py +0 -2
  21. crypticorn/common/errors.py +10 -0
  22. crypticorn/common/metrics.py +30 -0
  23. crypticorn/common/middleware.py +94 -1
  24. crypticorn/common/pagination.py +252 -20
  25. crypticorn/common/router/admin_router.py +2 -2
  26. crypticorn/common/router/status_router.py +40 -2
  27. crypticorn/common/scopes.py +2 -2
  28. crypticorn/common/warnings.py +7 -0
  29. crypticorn/dex/__init__.py +6 -0
  30. crypticorn/dex/client/__init__.py +49 -0
  31. crypticorn/dex/client/api/__init__.py +6 -0
  32. crypticorn/dex/client/api/admin_api.py +2986 -0
  33. crypticorn/dex/client/api/signals_api.py +1798 -0
  34. crypticorn/dex/client/api/status_api.py +892 -0
  35. crypticorn/dex/client/api_client.py +758 -0
  36. crypticorn/dex/client/api_response.py +20 -0
  37. crypticorn/dex/client/configuration.py +620 -0
  38. crypticorn/dex/client/exceptions.py +220 -0
  39. crypticorn/dex/client/models/__init__.py +30 -0
  40. crypticorn/dex/client/models/api_error_identifier.py +121 -0
  41. crypticorn/dex/client/models/api_error_level.py +37 -0
  42. crypticorn/dex/client/models/api_error_type.py +37 -0
  43. crypticorn/dex/client/models/exception_detail.py +117 -0
  44. crypticorn/dex/client/models/log_level.py +38 -0
  45. crypticorn/dex/client/models/paginated_response_signal_with_token.py +134 -0
  46. crypticorn/dex/client/models/risk.py +86 -0
  47. crypticorn/dex/client/models/signal_overview_stats.py +158 -0
  48. crypticorn/dex/client/models/signal_volume.py +84 -0
  49. crypticorn/dex/client/models/signal_with_token.py +163 -0
  50. crypticorn/dex/client/models/token_data.py +127 -0
  51. crypticorn/dex/client/models/token_detail.py +116 -0
  52. crypticorn/dex/client/py.typed +0 -0
  53. crypticorn/dex/client/rest.py +217 -0
  54. crypticorn/dex/main.py +1 -0
  55. crypticorn/hive/client/api/admin_api.py +1173 -47
  56. crypticorn/hive/client/api/data_api.py +499 -17
  57. crypticorn/hive/client/api/models_api.py +1595 -87
  58. crypticorn/hive/client/api/status_api.py +397 -16
  59. crypticorn/hive/client/api_client.py +0 -5
  60. crypticorn/hive/client/models/api_error_identifier.py +1 -1
  61. crypticorn/hive/client/models/coin_info.py +1 -1
  62. crypticorn/hive/client/models/exception_detail.py +1 -1
  63. crypticorn/hive/client/models/target_info.py +1 -1
  64. crypticorn/hive/client/rest.py +23 -4
  65. crypticorn/hive/main.py +99 -25
  66. crypticorn/hive/utils.py +2 -2
  67. crypticorn/klines/client/api/admin_api.py +1173 -47
  68. crypticorn/klines/client/api/change_in_timeframe_api.py +269 -11
  69. crypticorn/klines/client/api/funding_rates_api.py +315 -11
  70. crypticorn/klines/client/api/ohlcv_data_api.py +390 -11
  71. crypticorn/klines/client/api/status_api.py +397 -16
  72. crypticorn/klines/client/api/symbols_api.py +216 -11
  73. crypticorn/klines/client/api/udf_api.py +1268 -51
  74. crypticorn/klines/client/api_client.py +0 -5
  75. crypticorn/klines/client/models/api_error_identifier.py +3 -1
  76. crypticorn/klines/client/models/exception_detail.py +1 -1
  77. crypticorn/klines/client/models/ohlcv.py +1 -1
  78. crypticorn/klines/client/models/symbol_group.py +1 -1
  79. crypticorn/klines/client/models/udf_config.py +1 -1
  80. crypticorn/klines/client/rest.py +23 -4
  81. crypticorn/klines/main.py +89 -12
  82. crypticorn/metrics/client/api/admin_api.py +1173 -47
  83. crypticorn/metrics/client/api/exchanges_api.py +1370 -145
  84. crypticorn/metrics/client/api/indicators_api.py +622 -17
  85. crypticorn/metrics/client/api/logs_api.py +296 -11
  86. crypticorn/metrics/client/api/marketcap_api.py +1207 -67
  87. crypticorn/metrics/client/api/markets_api.py +343 -11
  88. crypticorn/metrics/client/api/quote_currencies_api.py +228 -11
  89. crypticorn/metrics/client/api/status_api.py +397 -16
  90. crypticorn/metrics/client/api/tokens_api.py +382 -15
  91. crypticorn/metrics/client/api_client.py +0 -5
  92. crypticorn/metrics/client/configuration.py +4 -2
  93. crypticorn/metrics/client/models/exception_detail.py +1 -1
  94. crypticorn/metrics/client/models/exchange_mapping.py +1 -1
  95. crypticorn/metrics/client/models/marketcap_ranking.py +1 -1
  96. crypticorn/metrics/client/models/marketcap_symbol_ranking.py +1 -1
  97. crypticorn/metrics/client/models/ohlcv.py +1 -1
  98. crypticorn/metrics/client/rest.py +23 -4
  99. crypticorn/metrics/main.py +113 -19
  100. crypticorn/pay/client/api/admin_api.py +1585 -57
  101. crypticorn/pay/client/api/now_payments_api.py +961 -39
  102. crypticorn/pay/client/api/payments_api.py +562 -17
  103. crypticorn/pay/client/api/products_api.py +880 -30
  104. crypticorn/pay/client/api/status_api.py +397 -16
  105. crypticorn/pay/client/api_client.py +0 -5
  106. crypticorn/pay/client/configuration.py +2 -2
  107. crypticorn/pay/client/models/api_error_identifier.py +7 -7
  108. crypticorn/pay/client/models/exception_detail.py +1 -1
  109. crypticorn/pay/client/models/now_create_invoice_req.py +1 -1
  110. crypticorn/pay/client/models/now_create_invoice_res.py +1 -1
  111. crypticorn/pay/client/models/product.py +1 -1
  112. crypticorn/pay/client/models/product_create.py +1 -1
  113. crypticorn/pay/client/models/product_update.py +1 -1
  114. crypticorn/pay/client/models/scope.py +1 -0
  115. crypticorn/pay/client/rest.py +23 -4
  116. crypticorn/pay/main.py +10 -6
  117. crypticorn/trade/client/__init__.py +11 -1
  118. crypticorn/trade/client/api/__init__.py +0 -1
  119. crypticorn/trade/client/api/admin_api.py +1184 -55
  120. crypticorn/trade/client/api/api_keys_api.py +1678 -162
  121. crypticorn/trade/client/api/bots_api.py +7563 -187
  122. crypticorn/trade/client/api/exchanges_api.py +565 -19
  123. crypticorn/trade/client/api/notifications_api.py +1290 -116
  124. crypticorn/trade/client/api/orders_api.py +393 -55
  125. crypticorn/trade/client/api/status_api.py +397 -13
  126. crypticorn/trade/client/api/strategies_api.py +1133 -77
  127. crypticorn/trade/client/api/trading_actions_api.py +786 -65
  128. crypticorn/trade/client/models/__init__.py +11 -0
  129. crypticorn/trade/client/models/actions_count.py +88 -0
  130. crypticorn/trade/client/models/api_error_identifier.py +1 -0
  131. crypticorn/trade/client/models/bot.py +7 -18
  132. crypticorn/trade/client/models/bot_create.py +17 -1
  133. crypticorn/trade/client/models/bot_update.py +17 -1
  134. crypticorn/trade/client/models/exchange.py +6 -1
  135. crypticorn/trade/client/models/exchange_key.py +1 -1
  136. crypticorn/trade/client/models/exchange_key_balance.py +111 -0
  137. crypticorn/trade/client/models/exchange_key_create.py +17 -1
  138. crypticorn/trade/client/models/exchange_key_update.py +17 -1
  139. crypticorn/trade/client/models/execution_ids.py +1 -1
  140. crypticorn/trade/client/models/futures_balance.py +27 -25
  141. crypticorn/trade/client/models/notification.py +17 -1
  142. crypticorn/trade/client/models/notification_create.py +18 -2
  143. crypticorn/trade/client/models/notification_update.py +17 -1
  144. crypticorn/trade/client/models/orders_count.py +88 -0
  145. crypticorn/trade/client/models/paginated_response_futures_trading_action.py +134 -0
  146. crypticorn/trade/client/models/paginated_response_order.py +134 -0
  147. crypticorn/trade/client/models/pn_l.py +95 -0
  148. crypticorn/trade/client/models/post_futures_action.py +1 -1
  149. crypticorn/trade/client/models/spot_balance.py +109 -0
  150. crypticorn/trade/client/models/strategy.py +22 -4
  151. crypticorn/trade/client/models/strategy_create.py +23 -5
  152. crypticorn/trade/client/models/strategy_exchange_info.py +16 -4
  153. crypticorn/trade/client/models/strategy_update.py +19 -3
  154. crypticorn/trade/client/models/tpsl.py +4 -19
  155. crypticorn/trade/client/models/tpsl_create.py +6 -19
  156. crypticorn/trade/client/rest.py +23 -4
  157. crypticorn/trade/main.py +15 -12
  158. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/METADATA +65 -20
  159. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/RECORD +163 -128
  160. crypticorn/trade/client/api/futures_trading_panel_api.py +0 -1285
  161. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/WHEEL +0 -0
  162. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/entry_points.txt +0 -0
  163. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/licenses/LICENSE +0 -0
  164. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/top_level.txt +0 -0
@@ -16,8 +16,6 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
16
  from typing import Any, Dict, List, Optional, Tuple, Union
17
17
  from typing_extensions import Annotated
18
18
 
19
- from pydantic import StrictInt, StrictStr
20
- from typing import Any, List, Optional
21
19
  from crypticorn.klines.client.models.ohlcv import OHLCV
22
20
  from crypticorn.klines.client.models.resolution import Resolution
23
21
  from crypticorn.klines.client.models.search_symbol import SearchSymbol
@@ -29,6 +27,24 @@ from crypticorn.klines.client.api_client import ApiClient, RequestSerialized
29
27
  from crypticorn.klines.client.api_response import ApiResponse
30
28
  from crypticorn.klines.client.rest import RESTResponseType
31
29
 
30
+ # Import async_to_sync for sync methods
31
+ try:
32
+ from asgiref.sync import async_to_sync
33
+
34
+ _HAS_ASGIREF = True
35
+ except ImportError:
36
+ _HAS_ASGIREF = False
37
+
38
+ def async_to_sync(async_func):
39
+ """Fallback decorator that raises an error if asgiref is not available."""
40
+
41
+ def wrapper(*args, **kwargs):
42
+ raise ImportError(
43
+ "asgiref is required for sync methods. Install with: pip install asgiref"
44
+ )
45
+
46
+ return wrapper
47
+
32
48
 
33
49
  class UDFApi:
34
50
  """NOTE: This class is auto generated by OpenAPI Generator
@@ -37,13 +53,126 @@ class UDFApi:
37
53
  Do not edit the class manually.
38
54
  """
39
55
 
40
- def __init__(self, api_client=None) -> None:
56
+ def __init__(self, api_client=None, is_sync: bool = False) -> None:
41
57
  if api_client is None:
42
58
  api_client = ApiClient.get_default()
43
59
  self.api_client = api_client
60
+ self.is_sync = is_sync
61
+
62
+ @validate_call
63
+ def get_symbol(
64
+ self,
65
+ symbol: StrictStr,
66
+ _request_timeout: Union[
67
+ None,
68
+ Annotated[StrictFloat, Field(gt=0)],
69
+ Tuple[
70
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
71
+ ],
72
+ ] = None,
73
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
74
+ _content_type: Optional[StrictStr] = None,
75
+ _headers: Optional[Dict[StrictStr, Any]] = None,
76
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
77
+ ) -> SymbolInfo:
78
+ """Get Symbol"""
79
+ if self.is_sync:
80
+ return self._get_symbol_sync(
81
+ symbol=symbol,
82
+ _request_timeout=_request_timeout,
83
+ _request_auth=_request_auth,
84
+ _content_type=_content_type,
85
+ _headers=_headers,
86
+ _host_index=_host_index,
87
+ )
88
+
89
+ else:
90
+ return self._get_symbol_async(
91
+ symbol=symbol,
92
+ _request_timeout=_request_timeout,
93
+ _request_auth=_request_auth,
94
+ _content_type=_content_type,
95
+ _headers=_headers,
96
+ _host_index=_host_index,
97
+ )
98
+
99
+ @validate_call
100
+ def get_symbol_with_http_info(
101
+ self,
102
+ symbol: StrictStr,
103
+ _request_timeout: Union[
104
+ None,
105
+ Annotated[StrictFloat, Field(gt=0)],
106
+ Tuple[
107
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
108
+ ],
109
+ ] = None,
110
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
111
+ _content_type: Optional[StrictStr] = None,
112
+ _headers: Optional[Dict[StrictStr, Any]] = None,
113
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
114
+ ) -> ApiResponse[SymbolInfo]:
115
+ """Get Symbol with HTTP info"""
116
+ if self.is_sync:
117
+ return self._get_symbol_sync_with_http_info(
118
+ symbol=symbol,
119
+ _request_timeout=_request_timeout,
120
+ _request_auth=_request_auth,
121
+ _content_type=_content_type,
122
+ _headers=_headers,
123
+ _host_index=_host_index,
124
+ )
125
+
126
+ else:
127
+ return self._get_symbol_async_with_http_info(
128
+ symbol=symbol,
129
+ _request_timeout=_request_timeout,
130
+ _request_auth=_request_auth,
131
+ _content_type=_content_type,
132
+ _headers=_headers,
133
+ _host_index=_host_index,
134
+ )
135
+
136
+ @validate_call
137
+ def get_symbol_without_preload_content(
138
+ self,
139
+ symbol: StrictStr,
140
+ _request_timeout: Union[
141
+ None,
142
+ Annotated[StrictFloat, Field(gt=0)],
143
+ Tuple[
144
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
145
+ ],
146
+ ] = None,
147
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
148
+ _content_type: Optional[StrictStr] = None,
149
+ _headers: Optional[Dict[StrictStr, Any]] = None,
150
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
151
+ ) -> RESTResponseType:
152
+ """Get Symbol without preloading content"""
153
+ if self.is_sync:
154
+ return self._get_symbol_sync_without_preload_content(
155
+ symbol=symbol,
156
+ _request_timeout=_request_timeout,
157
+ _request_auth=_request_auth,
158
+ _content_type=_content_type,
159
+ _headers=_headers,
160
+ _host_index=_host_index,
161
+ )
162
+
163
+ else:
164
+ return self._get_symbol_async_without_preload_content(
165
+ symbol=symbol,
166
+ _request_timeout=_request_timeout,
167
+ _request_auth=_request_auth,
168
+ _content_type=_content_type,
169
+ _headers=_headers,
170
+ _host_index=_host_index,
171
+ )
44
172
 
173
+ # Private async implementation methods
45
174
  @validate_call
46
- async def get_symbol(
175
+ async def _get_symbol_async(
47
176
  self,
48
177
  symbol: StrictStr,
49
178
  _request_timeout: Union[
@@ -106,7 +235,7 @@ class UDFApi:
106
235
  ).data
107
236
 
108
237
  @validate_call
109
- async def get_symbol_with_http_info(
238
+ async def _get_symbol_async_with_http_info(
110
239
  self,
111
240
  symbol: StrictStr,
112
241
  _request_timeout: Union[
@@ -164,12 +293,11 @@ class UDFApi:
164
293
  )
165
294
  await response_data.read()
166
295
  return self.api_client.response_deserialize(
167
- response_data=response_data,
168
- response_types_map=_response_types_map,
296
+ response_data=response_data, response_types_map=_response_types_map
169
297
  )
170
298
 
171
299
  @validate_call
172
- async def get_symbol_without_preload_content(
300
+ async def _get_symbol_async_without_preload_content(
173
301
  self,
174
302
  symbol: StrictStr,
175
303
  _request_timeout: Union[
@@ -225,7 +353,86 @@ class UDFApi:
225
353
  response_data = await self.api_client.call_api(
226
354
  *_param, _request_timeout=_request_timeout
227
355
  )
228
- return response_data.response
356
+ return response_data
357
+
358
+ # Private sync implementation methods
359
+ @validate_call
360
+ def _get_symbol_sync(
361
+ self,
362
+ symbol: StrictStr,
363
+ _request_timeout: Union[
364
+ None,
365
+ Annotated[StrictFloat, Field(gt=0)],
366
+ Tuple[
367
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
368
+ ],
369
+ ] = None,
370
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
371
+ _content_type: Optional[StrictStr] = None,
372
+ _headers: Optional[Dict[StrictStr, Any]] = None,
373
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
374
+ ) -> SymbolInfo:
375
+ """Synchronous version of get_symbol"""
376
+ return async_to_sync(self._get_symbol_async)(
377
+ symbol=symbol,
378
+ _request_timeout=_request_timeout,
379
+ _request_auth=_request_auth,
380
+ _content_type=_content_type,
381
+ _headers=_headers,
382
+ _host_index=_host_index,
383
+ )
384
+
385
+ @validate_call
386
+ def _get_symbol_sync_with_http_info(
387
+ self,
388
+ symbol: StrictStr,
389
+ _request_timeout: Union[
390
+ None,
391
+ Annotated[StrictFloat, Field(gt=0)],
392
+ Tuple[
393
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
394
+ ],
395
+ ] = None,
396
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
397
+ _content_type: Optional[StrictStr] = None,
398
+ _headers: Optional[Dict[StrictStr, Any]] = None,
399
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
400
+ ) -> ApiResponse[SymbolInfo]:
401
+ """Synchronous version of get_symbol_with_http_info"""
402
+ return async_to_sync(self._get_symbol_async_with_http_info)(
403
+ symbol=symbol,
404
+ _request_timeout=_request_timeout,
405
+ _request_auth=_request_auth,
406
+ _content_type=_content_type,
407
+ _headers=_headers,
408
+ _host_index=_host_index,
409
+ )
410
+
411
+ @validate_call
412
+ def _get_symbol_sync_without_preload_content(
413
+ self,
414
+ symbol: StrictStr,
415
+ _request_timeout: Union[
416
+ None,
417
+ Annotated[StrictFloat, Field(gt=0)],
418
+ Tuple[
419
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
420
+ ],
421
+ ] = None,
422
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
423
+ _content_type: Optional[StrictStr] = None,
424
+ _headers: Optional[Dict[StrictStr, Any]] = None,
425
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
426
+ ) -> RESTResponseType:
427
+ """Synchronous version of get_symbol_without_preload_content"""
428
+ return async_to_sync(self._get_symbol_async_without_preload_content)(
429
+ symbol=symbol,
430
+ _request_timeout=_request_timeout,
431
+ _request_auth=_request_auth,
432
+ _content_type=_content_type,
433
+ _headers=_headers,
434
+ _host_index=_host_index,
435
+ )
229
436
 
230
437
  def _get_symbol_serialize(
231
438
  self,
@@ -284,7 +491,119 @@ class UDFApi:
284
491
  )
285
492
 
286
493
  @validate_call
287
- async def get_symbol_info(
494
+ def get_symbol_info(
495
+ self,
496
+ group: StrictStr,
497
+ _request_timeout: Union[
498
+ None,
499
+ Annotated[StrictFloat, Field(gt=0)],
500
+ Tuple[
501
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
502
+ ],
503
+ ] = None,
504
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
505
+ _content_type: Optional[StrictStr] = None,
506
+ _headers: Optional[Dict[StrictStr, Any]] = None,
507
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
508
+ ) -> SymbolGroup:
509
+ """Get Symbol Info"""
510
+ if self.is_sync:
511
+ return self._get_symbol_info_sync(
512
+ group=group,
513
+ _request_timeout=_request_timeout,
514
+ _request_auth=_request_auth,
515
+ _content_type=_content_type,
516
+ _headers=_headers,
517
+ _host_index=_host_index,
518
+ )
519
+
520
+ else:
521
+ return self._get_symbol_info_async(
522
+ group=group,
523
+ _request_timeout=_request_timeout,
524
+ _request_auth=_request_auth,
525
+ _content_type=_content_type,
526
+ _headers=_headers,
527
+ _host_index=_host_index,
528
+ )
529
+
530
+ @validate_call
531
+ def get_symbol_info_with_http_info(
532
+ self,
533
+ group: StrictStr,
534
+ _request_timeout: Union[
535
+ None,
536
+ Annotated[StrictFloat, Field(gt=0)],
537
+ Tuple[
538
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
539
+ ],
540
+ ] = None,
541
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
542
+ _content_type: Optional[StrictStr] = None,
543
+ _headers: Optional[Dict[StrictStr, Any]] = None,
544
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
545
+ ) -> ApiResponse[SymbolGroup]:
546
+ """Get Symbol Info with HTTP info"""
547
+ if self.is_sync:
548
+ return self._get_symbol_info_sync_with_http_info(
549
+ group=group,
550
+ _request_timeout=_request_timeout,
551
+ _request_auth=_request_auth,
552
+ _content_type=_content_type,
553
+ _headers=_headers,
554
+ _host_index=_host_index,
555
+ )
556
+
557
+ else:
558
+ return self._get_symbol_info_async_with_http_info(
559
+ group=group,
560
+ _request_timeout=_request_timeout,
561
+ _request_auth=_request_auth,
562
+ _content_type=_content_type,
563
+ _headers=_headers,
564
+ _host_index=_host_index,
565
+ )
566
+
567
+ @validate_call
568
+ def get_symbol_info_without_preload_content(
569
+ self,
570
+ group: StrictStr,
571
+ _request_timeout: Union[
572
+ None,
573
+ Annotated[StrictFloat, Field(gt=0)],
574
+ Tuple[
575
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
576
+ ],
577
+ ] = None,
578
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
579
+ _content_type: Optional[StrictStr] = None,
580
+ _headers: Optional[Dict[StrictStr, Any]] = None,
581
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
582
+ ) -> RESTResponseType:
583
+ """Get Symbol Info without preloading content"""
584
+ if self.is_sync:
585
+ return self._get_symbol_info_sync_without_preload_content(
586
+ group=group,
587
+ _request_timeout=_request_timeout,
588
+ _request_auth=_request_auth,
589
+ _content_type=_content_type,
590
+ _headers=_headers,
591
+ _host_index=_host_index,
592
+ )
593
+
594
+ else:
595
+ return self._get_symbol_info_async_without_preload_content(
596
+ group=group,
597
+ _request_timeout=_request_timeout,
598
+ _request_auth=_request_auth,
599
+ _content_type=_content_type,
600
+ _headers=_headers,
601
+ _host_index=_host_index,
602
+ )
603
+
604
+ # Private async implementation methods
605
+ @validate_call
606
+ async def _get_symbol_info_async(
288
607
  self,
289
608
  group: StrictStr,
290
609
  _request_timeout: Union[
@@ -349,7 +668,7 @@ class UDFApi:
349
668
  ).data
350
669
 
351
670
  @validate_call
352
- async def get_symbol_info_with_http_info(
671
+ async def _get_symbol_info_async_with_http_info(
353
672
  self,
354
673
  group: StrictStr,
355
674
  _request_timeout: Union[
@@ -409,12 +728,11 @@ class UDFApi:
409
728
  )
410
729
  await response_data.read()
411
730
  return self.api_client.response_deserialize(
412
- response_data=response_data,
413
- response_types_map=_response_types_map,
731
+ response_data=response_data, response_types_map=_response_types_map
414
732
  )
415
733
 
416
734
  @validate_call
417
- async def get_symbol_info_without_preload_content(
735
+ async def _get_symbol_info_async_without_preload_content(
418
736
  self,
419
737
  group: StrictStr,
420
738
  _request_timeout: Union[
@@ -472,7 +790,86 @@ class UDFApi:
472
790
  response_data = await self.api_client.call_api(
473
791
  *_param, _request_timeout=_request_timeout
474
792
  )
475
- return response_data.response
793
+ return response_data
794
+
795
+ # Private sync implementation methods
796
+ @validate_call
797
+ def _get_symbol_info_sync(
798
+ self,
799
+ group: StrictStr,
800
+ _request_timeout: Union[
801
+ None,
802
+ Annotated[StrictFloat, Field(gt=0)],
803
+ Tuple[
804
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
805
+ ],
806
+ ] = None,
807
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
808
+ _content_type: Optional[StrictStr] = None,
809
+ _headers: Optional[Dict[StrictStr, Any]] = None,
810
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
811
+ ) -> SymbolGroup:
812
+ """Synchronous version of get_symbol_info"""
813
+ return async_to_sync(self._get_symbol_info_async)(
814
+ group=group,
815
+ _request_timeout=_request_timeout,
816
+ _request_auth=_request_auth,
817
+ _content_type=_content_type,
818
+ _headers=_headers,
819
+ _host_index=_host_index,
820
+ )
821
+
822
+ @validate_call
823
+ def _get_symbol_info_sync_with_http_info(
824
+ self,
825
+ group: StrictStr,
826
+ _request_timeout: Union[
827
+ None,
828
+ Annotated[StrictFloat, Field(gt=0)],
829
+ Tuple[
830
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
831
+ ],
832
+ ] = None,
833
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
834
+ _content_type: Optional[StrictStr] = None,
835
+ _headers: Optional[Dict[StrictStr, Any]] = None,
836
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
837
+ ) -> ApiResponse[SymbolGroup]:
838
+ """Synchronous version of get_symbol_info_with_http_info"""
839
+ return async_to_sync(self._get_symbol_info_async_with_http_info)(
840
+ group=group,
841
+ _request_timeout=_request_timeout,
842
+ _request_auth=_request_auth,
843
+ _content_type=_content_type,
844
+ _headers=_headers,
845
+ _host_index=_host_index,
846
+ )
847
+
848
+ @validate_call
849
+ def _get_symbol_info_sync_without_preload_content(
850
+ self,
851
+ group: StrictStr,
852
+ _request_timeout: Union[
853
+ None,
854
+ Annotated[StrictFloat, Field(gt=0)],
855
+ Tuple[
856
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
857
+ ],
858
+ ] = None,
859
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
860
+ _content_type: Optional[StrictStr] = None,
861
+ _headers: Optional[Dict[StrictStr, Any]] = None,
862
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
863
+ ) -> RESTResponseType:
864
+ """Synchronous version of get_symbol_info_without_preload_content"""
865
+ return async_to_sync(self._get_symbol_info_async_without_preload_content)(
866
+ group=group,
867
+ _request_timeout=_request_timeout,
868
+ _request_auth=_request_auth,
869
+ _content_type=_content_type,
870
+ _headers=_headers,
871
+ _host_index=_host_index,
872
+ )
476
873
 
477
874
  def _get_symbol_info_serialize(
478
875
  self,
@@ -531,7 +928,110 @@ class UDFApi:
531
928
  )
532
929
 
533
930
  @validate_call
534
- async def get_udf_config(
931
+ def get_udf_config(
932
+ self,
933
+ _request_timeout: Union[
934
+ None,
935
+ Annotated[StrictFloat, Field(gt=0)],
936
+ Tuple[
937
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
938
+ ],
939
+ ] = None,
940
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
941
+ _content_type: Optional[StrictStr] = None,
942
+ _headers: Optional[Dict[StrictStr, Any]] = None,
943
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
944
+ ) -> UDFConfig:
945
+ """Get Config"""
946
+ if self.is_sync:
947
+ return self._get_udf_config_sync(
948
+ _request_timeout=_request_timeout,
949
+ _request_auth=_request_auth,
950
+ _content_type=_content_type,
951
+ _headers=_headers,
952
+ _host_index=_host_index,
953
+ )
954
+
955
+ else:
956
+ return self._get_udf_config_async(
957
+ _request_timeout=_request_timeout,
958
+ _request_auth=_request_auth,
959
+ _content_type=_content_type,
960
+ _headers=_headers,
961
+ _host_index=_host_index,
962
+ )
963
+
964
+ @validate_call
965
+ def get_udf_config_with_http_info(
966
+ self,
967
+ _request_timeout: Union[
968
+ None,
969
+ Annotated[StrictFloat, Field(gt=0)],
970
+ Tuple[
971
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
972
+ ],
973
+ ] = None,
974
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
975
+ _content_type: Optional[StrictStr] = None,
976
+ _headers: Optional[Dict[StrictStr, Any]] = None,
977
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
978
+ ) -> ApiResponse[UDFConfig]:
979
+ """Get Config with HTTP info"""
980
+ if self.is_sync:
981
+ return self._get_udf_config_sync_with_http_info(
982
+ _request_timeout=_request_timeout,
983
+ _request_auth=_request_auth,
984
+ _content_type=_content_type,
985
+ _headers=_headers,
986
+ _host_index=_host_index,
987
+ )
988
+
989
+ else:
990
+ return self._get_udf_config_async_with_http_info(
991
+ _request_timeout=_request_timeout,
992
+ _request_auth=_request_auth,
993
+ _content_type=_content_type,
994
+ _headers=_headers,
995
+ _host_index=_host_index,
996
+ )
997
+
998
+ @validate_call
999
+ def get_udf_config_without_preload_content(
1000
+ self,
1001
+ _request_timeout: Union[
1002
+ None,
1003
+ Annotated[StrictFloat, Field(gt=0)],
1004
+ Tuple[
1005
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1006
+ ],
1007
+ ] = None,
1008
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1009
+ _content_type: Optional[StrictStr] = None,
1010
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1011
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1012
+ ) -> RESTResponseType:
1013
+ """Get Config without preloading content"""
1014
+ if self.is_sync:
1015
+ return self._get_udf_config_sync_without_preload_content(
1016
+ _request_timeout=_request_timeout,
1017
+ _request_auth=_request_auth,
1018
+ _content_type=_content_type,
1019
+ _headers=_headers,
1020
+ _host_index=_host_index,
1021
+ )
1022
+
1023
+ else:
1024
+ return self._get_udf_config_async_without_preload_content(
1025
+ _request_timeout=_request_timeout,
1026
+ _request_auth=_request_auth,
1027
+ _content_type=_content_type,
1028
+ _headers=_headers,
1029
+ _host_index=_host_index,
1030
+ )
1031
+
1032
+ # Private async implementation methods
1033
+ @validate_call
1034
+ async def _get_udf_config_async(
535
1035
  self,
536
1036
  _request_timeout: Union[
537
1037
  None,
@@ -590,7 +1090,7 @@ class UDFApi:
590
1090
  ).data
591
1091
 
592
1092
  @validate_call
593
- async def get_udf_config_with_http_info(
1093
+ async def _get_udf_config_async_with_http_info(
594
1094
  self,
595
1095
  _request_timeout: Union[
596
1096
  None,
@@ -644,12 +1144,11 @@ class UDFApi:
644
1144
  )
645
1145
  await response_data.read()
646
1146
  return self.api_client.response_deserialize(
647
- response_data=response_data,
648
- response_types_map=_response_types_map,
1147
+ response_data=response_data, response_types_map=_response_types_map
649
1148
  )
650
1149
 
651
1150
  @validate_call
652
- async def get_udf_config_without_preload_content(
1151
+ async def _get_udf_config_async_without_preload_content(
653
1152
  self,
654
1153
  _request_timeout: Union[
655
1154
  None,
@@ -701,7 +1200,80 @@ class UDFApi:
701
1200
  response_data = await self.api_client.call_api(
702
1201
  *_param, _request_timeout=_request_timeout
703
1202
  )
704
- return response_data.response
1203
+ return response_data
1204
+
1205
+ # Private sync implementation methods
1206
+ @validate_call
1207
+ def _get_udf_config_sync(
1208
+ self,
1209
+ _request_timeout: Union[
1210
+ None,
1211
+ Annotated[StrictFloat, Field(gt=0)],
1212
+ Tuple[
1213
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1214
+ ],
1215
+ ] = None,
1216
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1217
+ _content_type: Optional[StrictStr] = None,
1218
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1219
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1220
+ ) -> UDFConfig:
1221
+ """Synchronous version of get_udf_config"""
1222
+ return async_to_sync(self._get_udf_config_async)(
1223
+ _request_timeout=_request_timeout,
1224
+ _request_auth=_request_auth,
1225
+ _content_type=_content_type,
1226
+ _headers=_headers,
1227
+ _host_index=_host_index,
1228
+ )
1229
+
1230
+ @validate_call
1231
+ def _get_udf_config_sync_with_http_info(
1232
+ self,
1233
+ _request_timeout: Union[
1234
+ None,
1235
+ Annotated[StrictFloat, Field(gt=0)],
1236
+ Tuple[
1237
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1238
+ ],
1239
+ ] = None,
1240
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1241
+ _content_type: Optional[StrictStr] = None,
1242
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1243
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1244
+ ) -> ApiResponse[UDFConfig]:
1245
+ """Synchronous version of get_udf_config_with_http_info"""
1246
+ return async_to_sync(self._get_udf_config_async_with_http_info)(
1247
+ _request_timeout=_request_timeout,
1248
+ _request_auth=_request_auth,
1249
+ _content_type=_content_type,
1250
+ _headers=_headers,
1251
+ _host_index=_host_index,
1252
+ )
1253
+
1254
+ @validate_call
1255
+ def _get_udf_config_sync_without_preload_content(
1256
+ self,
1257
+ _request_timeout: Union[
1258
+ None,
1259
+ Annotated[StrictFloat, Field(gt=0)],
1260
+ Tuple[
1261
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1262
+ ],
1263
+ ] = None,
1264
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1265
+ _content_type: Optional[StrictStr] = None,
1266
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1267
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1268
+ ) -> RESTResponseType:
1269
+ """Synchronous version of get_udf_config_without_preload_content"""
1270
+ return async_to_sync(self._get_udf_config_async_without_preload_content)(
1271
+ _request_timeout=_request_timeout,
1272
+ _request_auth=_request_auth,
1273
+ _content_type=_content_type,
1274
+ _headers=_headers,
1275
+ _host_index=_host_index,
1276
+ )
705
1277
 
706
1278
  def _get_udf_config_serialize(
707
1279
  self,
@@ -755,7 +1327,155 @@ class UDFApi:
755
1327
  )
756
1328
 
757
1329
  @validate_call
758
- async def get_udf_history(
1330
+ def get_udf_history(
1331
+ self,
1332
+ symbol: StrictStr,
1333
+ resolution: Resolution,
1334
+ var_from: StrictInt,
1335
+ to: StrictInt,
1336
+ countback: Optional[StrictInt] = None,
1337
+ _request_timeout: Union[
1338
+ None,
1339
+ Annotated[StrictFloat, Field(gt=0)],
1340
+ Tuple[
1341
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1342
+ ],
1343
+ ] = None,
1344
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1345
+ _content_type: Optional[StrictStr] = None,
1346
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1347
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1348
+ ) -> OHLCV:
1349
+ """Get History"""
1350
+ if self.is_sync:
1351
+ return self._get_udf_history_sync(
1352
+ symbol=symbol,
1353
+ resolution=resolution,
1354
+ var_from=var_from,
1355
+ to=to,
1356
+ countback=countback,
1357
+ _request_timeout=_request_timeout,
1358
+ _request_auth=_request_auth,
1359
+ _content_type=_content_type,
1360
+ _headers=_headers,
1361
+ _host_index=_host_index,
1362
+ )
1363
+
1364
+ else:
1365
+ return self._get_udf_history_async(
1366
+ symbol=symbol,
1367
+ resolution=resolution,
1368
+ var_from=var_from,
1369
+ to=to,
1370
+ countback=countback,
1371
+ _request_timeout=_request_timeout,
1372
+ _request_auth=_request_auth,
1373
+ _content_type=_content_type,
1374
+ _headers=_headers,
1375
+ _host_index=_host_index,
1376
+ )
1377
+
1378
+ @validate_call
1379
+ def get_udf_history_with_http_info(
1380
+ self,
1381
+ symbol: StrictStr,
1382
+ resolution: Resolution,
1383
+ var_from: StrictInt,
1384
+ to: StrictInt,
1385
+ countback: Optional[StrictInt] = None,
1386
+ _request_timeout: Union[
1387
+ None,
1388
+ Annotated[StrictFloat, Field(gt=0)],
1389
+ Tuple[
1390
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1391
+ ],
1392
+ ] = None,
1393
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1394
+ _content_type: Optional[StrictStr] = None,
1395
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1396
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1397
+ ) -> ApiResponse[OHLCV]:
1398
+ """Get History with HTTP info"""
1399
+ if self.is_sync:
1400
+ return self._get_udf_history_sync_with_http_info(
1401
+ symbol=symbol,
1402
+ resolution=resolution,
1403
+ var_from=var_from,
1404
+ to=to,
1405
+ countback=countback,
1406
+ _request_timeout=_request_timeout,
1407
+ _request_auth=_request_auth,
1408
+ _content_type=_content_type,
1409
+ _headers=_headers,
1410
+ _host_index=_host_index,
1411
+ )
1412
+
1413
+ else:
1414
+ return self._get_udf_history_async_with_http_info(
1415
+ symbol=symbol,
1416
+ resolution=resolution,
1417
+ var_from=var_from,
1418
+ to=to,
1419
+ countback=countback,
1420
+ _request_timeout=_request_timeout,
1421
+ _request_auth=_request_auth,
1422
+ _content_type=_content_type,
1423
+ _headers=_headers,
1424
+ _host_index=_host_index,
1425
+ )
1426
+
1427
+ @validate_call
1428
+ def get_udf_history_without_preload_content(
1429
+ self,
1430
+ symbol: StrictStr,
1431
+ resolution: Resolution,
1432
+ var_from: StrictInt,
1433
+ to: StrictInt,
1434
+ countback: Optional[StrictInt] = None,
1435
+ _request_timeout: Union[
1436
+ None,
1437
+ Annotated[StrictFloat, Field(gt=0)],
1438
+ Tuple[
1439
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1440
+ ],
1441
+ ] = None,
1442
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1443
+ _content_type: Optional[StrictStr] = None,
1444
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1445
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1446
+ ) -> RESTResponseType:
1447
+ """Get History without preloading content"""
1448
+ if self.is_sync:
1449
+ return self._get_udf_history_sync_without_preload_content(
1450
+ symbol=symbol,
1451
+ resolution=resolution,
1452
+ var_from=var_from,
1453
+ to=to,
1454
+ countback=countback,
1455
+ _request_timeout=_request_timeout,
1456
+ _request_auth=_request_auth,
1457
+ _content_type=_content_type,
1458
+ _headers=_headers,
1459
+ _host_index=_host_index,
1460
+ )
1461
+
1462
+ else:
1463
+ return self._get_udf_history_async_without_preload_content(
1464
+ symbol=symbol,
1465
+ resolution=resolution,
1466
+ var_from=var_from,
1467
+ to=to,
1468
+ countback=countback,
1469
+ _request_timeout=_request_timeout,
1470
+ _request_auth=_request_auth,
1471
+ _content_type=_content_type,
1472
+ _headers=_headers,
1473
+ _host_index=_host_index,
1474
+ )
1475
+
1476
+ # Private async implementation methods
1477
+ @validate_call
1478
+ async def _get_udf_history_async(
759
1479
  self,
760
1480
  symbol: StrictStr,
761
1481
  resolution: Resolution,
@@ -834,7 +1554,7 @@ class UDFApi:
834
1554
  ).data
835
1555
 
836
1556
  @validate_call
837
- async def get_udf_history_with_http_info(
1557
+ async def _get_udf_history_async_with_http_info(
838
1558
  self,
839
1559
  symbol: StrictStr,
840
1560
  resolution: Resolution,
@@ -908,12 +1628,11 @@ class UDFApi:
908
1628
  )
909
1629
  await response_data.read()
910
1630
  return self.api_client.response_deserialize(
911
- response_data=response_data,
912
- response_types_map=_response_types_map,
1631
+ response_data=response_data, response_types_map=_response_types_map
913
1632
  )
914
1633
 
915
1634
  @validate_call
916
- async def get_udf_history_without_preload_content(
1635
+ async def _get_udf_history_async_without_preload_content(
917
1636
  self,
918
1637
  symbol: StrictStr,
919
1638
  resolution: Resolution,
@@ -985,22 +1704,125 @@ class UDFApi:
985
1704
  response_data = await self.api_client.call_api(
986
1705
  *_param, _request_timeout=_request_timeout
987
1706
  )
988
- return response_data.response
1707
+ return response_data
989
1708
 
990
- def _get_udf_history_serialize(
1709
+ # Private sync implementation methods
1710
+ @validate_call
1711
+ def _get_udf_history_sync(
991
1712
  self,
992
- symbol,
993
- resolution,
994
- var_from,
995
- to,
996
- countback,
997
- _request_auth,
998
- _content_type,
999
- _headers,
1000
- _host_index,
1001
- ) -> RequestSerialized:
1713
+ symbol: StrictStr,
1714
+ resolution: Resolution,
1715
+ var_from: StrictInt,
1716
+ to: StrictInt,
1717
+ countback: Optional[StrictInt] = None,
1718
+ _request_timeout: Union[
1719
+ None,
1720
+ Annotated[StrictFloat, Field(gt=0)],
1721
+ Tuple[
1722
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1723
+ ],
1724
+ ] = None,
1725
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1726
+ _content_type: Optional[StrictStr] = None,
1727
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1728
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1729
+ ) -> OHLCV:
1730
+ """Synchronous version of get_udf_history"""
1731
+ return async_to_sync(self._get_udf_history_async)(
1732
+ symbol=symbol,
1733
+ resolution=resolution,
1734
+ var_from=var_from,
1735
+ to=to,
1736
+ countback=countback,
1737
+ _request_timeout=_request_timeout,
1738
+ _request_auth=_request_auth,
1739
+ _content_type=_content_type,
1740
+ _headers=_headers,
1741
+ _host_index=_host_index,
1742
+ )
1002
1743
 
1003
- _host = None
1744
+ @validate_call
1745
+ def _get_udf_history_sync_with_http_info(
1746
+ self,
1747
+ symbol: StrictStr,
1748
+ resolution: Resolution,
1749
+ var_from: StrictInt,
1750
+ to: StrictInt,
1751
+ countback: Optional[StrictInt] = None,
1752
+ _request_timeout: Union[
1753
+ None,
1754
+ Annotated[StrictFloat, Field(gt=0)],
1755
+ Tuple[
1756
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1757
+ ],
1758
+ ] = None,
1759
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1760
+ _content_type: Optional[StrictStr] = None,
1761
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1762
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1763
+ ) -> ApiResponse[OHLCV]:
1764
+ """Synchronous version of get_udf_history_with_http_info"""
1765
+ return async_to_sync(self._get_udf_history_async_with_http_info)(
1766
+ symbol=symbol,
1767
+ resolution=resolution,
1768
+ var_from=var_from,
1769
+ to=to,
1770
+ countback=countback,
1771
+ _request_timeout=_request_timeout,
1772
+ _request_auth=_request_auth,
1773
+ _content_type=_content_type,
1774
+ _headers=_headers,
1775
+ _host_index=_host_index,
1776
+ )
1777
+
1778
+ @validate_call
1779
+ def _get_udf_history_sync_without_preload_content(
1780
+ self,
1781
+ symbol: StrictStr,
1782
+ resolution: Resolution,
1783
+ var_from: StrictInt,
1784
+ to: StrictInt,
1785
+ countback: Optional[StrictInt] = None,
1786
+ _request_timeout: Union[
1787
+ None,
1788
+ Annotated[StrictFloat, Field(gt=0)],
1789
+ Tuple[
1790
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1791
+ ],
1792
+ ] = None,
1793
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1794
+ _content_type: Optional[StrictStr] = None,
1795
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1796
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1797
+ ) -> RESTResponseType:
1798
+ """Synchronous version of get_udf_history_without_preload_content"""
1799
+ return async_to_sync(self._get_udf_history_async_without_preload_content)(
1800
+ symbol=symbol,
1801
+ resolution=resolution,
1802
+ var_from=var_from,
1803
+ to=to,
1804
+ countback=countback,
1805
+ _request_timeout=_request_timeout,
1806
+ _request_auth=_request_auth,
1807
+ _content_type=_content_type,
1808
+ _headers=_headers,
1809
+ _host_index=_host_index,
1810
+ )
1811
+
1812
+ def _get_udf_history_serialize(
1813
+ self,
1814
+ symbol,
1815
+ resolution,
1816
+ var_from,
1817
+ to,
1818
+ countback,
1819
+ _request_auth,
1820
+ _content_type,
1821
+ _headers,
1822
+ _host_index,
1823
+ ) -> RequestSerialized:
1824
+
1825
+ _host = None
1004
1826
 
1005
1827
  _collection_formats: Dict[str, str] = {}
1006
1828
 
@@ -1064,7 +1886,119 @@ class UDFApi:
1064
1886
  )
1065
1887
 
1066
1888
  @validate_call
1067
- async def options_handler(
1889
+ def options_handler(
1890
+ self,
1891
+ path: StrictStr,
1892
+ _request_timeout: Union[
1893
+ None,
1894
+ Annotated[StrictFloat, Field(gt=0)],
1895
+ Tuple[
1896
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1897
+ ],
1898
+ ] = None,
1899
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1900
+ _content_type: Optional[StrictStr] = None,
1901
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1902
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1903
+ ) -> object:
1904
+ """Options Handler"""
1905
+ if self.is_sync:
1906
+ return self._options_handler_sync(
1907
+ path=path,
1908
+ _request_timeout=_request_timeout,
1909
+ _request_auth=_request_auth,
1910
+ _content_type=_content_type,
1911
+ _headers=_headers,
1912
+ _host_index=_host_index,
1913
+ )
1914
+
1915
+ else:
1916
+ return self._options_handler_async(
1917
+ path=path,
1918
+ _request_timeout=_request_timeout,
1919
+ _request_auth=_request_auth,
1920
+ _content_type=_content_type,
1921
+ _headers=_headers,
1922
+ _host_index=_host_index,
1923
+ )
1924
+
1925
+ @validate_call
1926
+ def options_handler_with_http_info(
1927
+ self,
1928
+ path: StrictStr,
1929
+ _request_timeout: Union[
1930
+ None,
1931
+ Annotated[StrictFloat, Field(gt=0)],
1932
+ Tuple[
1933
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1934
+ ],
1935
+ ] = None,
1936
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1937
+ _content_type: Optional[StrictStr] = None,
1938
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1939
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1940
+ ) -> ApiResponse[object]:
1941
+ """Options Handler with HTTP info"""
1942
+ if self.is_sync:
1943
+ return self._options_handler_sync_with_http_info(
1944
+ path=path,
1945
+ _request_timeout=_request_timeout,
1946
+ _request_auth=_request_auth,
1947
+ _content_type=_content_type,
1948
+ _headers=_headers,
1949
+ _host_index=_host_index,
1950
+ )
1951
+
1952
+ else:
1953
+ return self._options_handler_async_with_http_info(
1954
+ path=path,
1955
+ _request_timeout=_request_timeout,
1956
+ _request_auth=_request_auth,
1957
+ _content_type=_content_type,
1958
+ _headers=_headers,
1959
+ _host_index=_host_index,
1960
+ )
1961
+
1962
+ @validate_call
1963
+ def options_handler_without_preload_content(
1964
+ self,
1965
+ path: StrictStr,
1966
+ _request_timeout: Union[
1967
+ None,
1968
+ Annotated[StrictFloat, Field(gt=0)],
1969
+ Tuple[
1970
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1971
+ ],
1972
+ ] = None,
1973
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1974
+ _content_type: Optional[StrictStr] = None,
1975
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1976
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1977
+ ) -> RESTResponseType:
1978
+ """Options Handler without preloading content"""
1979
+ if self.is_sync:
1980
+ return self._options_handler_sync_without_preload_content(
1981
+ path=path,
1982
+ _request_timeout=_request_timeout,
1983
+ _request_auth=_request_auth,
1984
+ _content_type=_content_type,
1985
+ _headers=_headers,
1986
+ _host_index=_host_index,
1987
+ )
1988
+
1989
+ else:
1990
+ return self._options_handler_async_without_preload_content(
1991
+ path=path,
1992
+ _request_timeout=_request_timeout,
1993
+ _request_auth=_request_auth,
1994
+ _content_type=_content_type,
1995
+ _headers=_headers,
1996
+ _host_index=_host_index,
1997
+ )
1998
+
1999
+ # Private async implementation methods
2000
+ @validate_call
2001
+ async def _options_handler_async(
1068
2002
  self,
1069
2003
  path: StrictStr,
1070
2004
  _request_timeout: Union[
@@ -1128,7 +2062,7 @@ class UDFApi:
1128
2062
  ).data
1129
2063
 
1130
2064
  @validate_call
1131
- async def options_handler_with_http_info(
2065
+ async def _options_handler_async_with_http_info(
1132
2066
  self,
1133
2067
  path: StrictStr,
1134
2068
  _request_timeout: Union[
@@ -1187,12 +2121,11 @@ class UDFApi:
1187
2121
  )
1188
2122
  await response_data.read()
1189
2123
  return self.api_client.response_deserialize(
1190
- response_data=response_data,
1191
- response_types_map=_response_types_map,
2124
+ response_data=response_data, response_types_map=_response_types_map
1192
2125
  )
1193
2126
 
1194
2127
  @validate_call
1195
- async def options_handler_without_preload_content(
2128
+ async def _options_handler_async_without_preload_content(
1196
2129
  self,
1197
2130
  path: StrictStr,
1198
2131
  _request_timeout: Union[
@@ -1249,7 +2182,86 @@ class UDFApi:
1249
2182
  response_data = await self.api_client.call_api(
1250
2183
  *_param, _request_timeout=_request_timeout
1251
2184
  )
1252
- return response_data.response
2185
+ return response_data
2186
+
2187
+ # Private sync implementation methods
2188
+ @validate_call
2189
+ def _options_handler_sync(
2190
+ self,
2191
+ path: StrictStr,
2192
+ _request_timeout: Union[
2193
+ None,
2194
+ Annotated[StrictFloat, Field(gt=0)],
2195
+ Tuple[
2196
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2197
+ ],
2198
+ ] = None,
2199
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2200
+ _content_type: Optional[StrictStr] = None,
2201
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2202
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2203
+ ) -> object:
2204
+ """Synchronous version of options_handler"""
2205
+ return async_to_sync(self._options_handler_async)(
2206
+ path=path,
2207
+ _request_timeout=_request_timeout,
2208
+ _request_auth=_request_auth,
2209
+ _content_type=_content_type,
2210
+ _headers=_headers,
2211
+ _host_index=_host_index,
2212
+ )
2213
+
2214
+ @validate_call
2215
+ def _options_handler_sync_with_http_info(
2216
+ self,
2217
+ path: StrictStr,
2218
+ _request_timeout: Union[
2219
+ None,
2220
+ Annotated[StrictFloat, Field(gt=0)],
2221
+ Tuple[
2222
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2223
+ ],
2224
+ ] = None,
2225
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2226
+ _content_type: Optional[StrictStr] = None,
2227
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2228
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2229
+ ) -> ApiResponse[object]:
2230
+ """Synchronous version of options_handler_with_http_info"""
2231
+ return async_to_sync(self._options_handler_async_with_http_info)(
2232
+ path=path,
2233
+ _request_timeout=_request_timeout,
2234
+ _request_auth=_request_auth,
2235
+ _content_type=_content_type,
2236
+ _headers=_headers,
2237
+ _host_index=_host_index,
2238
+ )
2239
+
2240
+ @validate_call
2241
+ def _options_handler_sync_without_preload_content(
2242
+ self,
2243
+ path: StrictStr,
2244
+ _request_timeout: Union[
2245
+ None,
2246
+ Annotated[StrictFloat, Field(gt=0)],
2247
+ Tuple[
2248
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2249
+ ],
2250
+ ] = None,
2251
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2252
+ _content_type: Optional[StrictStr] = None,
2253
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2254
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2255
+ ) -> RESTResponseType:
2256
+ """Synchronous version of options_handler_without_preload_content"""
2257
+ return async_to_sync(self._options_handler_async_without_preload_content)(
2258
+ path=path,
2259
+ _request_timeout=_request_timeout,
2260
+ _request_auth=_request_auth,
2261
+ _content_type=_content_type,
2262
+ _headers=_headers,
2263
+ _host_index=_host_index,
2264
+ )
1253
2265
 
1254
2266
  def _options_handler_serialize(
1255
2267
  self,
@@ -1306,7 +2318,128 @@ class UDFApi:
1306
2318
  )
1307
2319
 
1308
2320
  @validate_call
1309
- async def search_symbols(
2321
+ def search_symbols(
2322
+ self,
2323
+ query: StrictStr,
2324
+ limit: Optional[StrictInt] = None,
2325
+ _request_timeout: Union[
2326
+ None,
2327
+ Annotated[StrictFloat, Field(gt=0)],
2328
+ Tuple[
2329
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2330
+ ],
2331
+ ] = None,
2332
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2333
+ _content_type: Optional[StrictStr] = None,
2334
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2335
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2336
+ ) -> List[SearchSymbol]:
2337
+ """Search Symbols"""
2338
+ if self.is_sync:
2339
+ return self._search_symbols_sync(
2340
+ query=query,
2341
+ limit=limit,
2342
+ _request_timeout=_request_timeout,
2343
+ _request_auth=_request_auth,
2344
+ _content_type=_content_type,
2345
+ _headers=_headers,
2346
+ _host_index=_host_index,
2347
+ )
2348
+
2349
+ else:
2350
+ return self._search_symbols_async(
2351
+ query=query,
2352
+ limit=limit,
2353
+ _request_timeout=_request_timeout,
2354
+ _request_auth=_request_auth,
2355
+ _content_type=_content_type,
2356
+ _headers=_headers,
2357
+ _host_index=_host_index,
2358
+ )
2359
+
2360
+ @validate_call
2361
+ def search_symbols_with_http_info(
2362
+ self,
2363
+ query: StrictStr,
2364
+ limit: Optional[StrictInt] = None,
2365
+ _request_timeout: Union[
2366
+ None,
2367
+ Annotated[StrictFloat, Field(gt=0)],
2368
+ Tuple[
2369
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2370
+ ],
2371
+ ] = None,
2372
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2373
+ _content_type: Optional[StrictStr] = None,
2374
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2375
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2376
+ ) -> ApiResponse[List[SearchSymbol]]:
2377
+ """Search Symbols with HTTP info"""
2378
+ if self.is_sync:
2379
+ return self._search_symbols_sync_with_http_info(
2380
+ query=query,
2381
+ limit=limit,
2382
+ _request_timeout=_request_timeout,
2383
+ _request_auth=_request_auth,
2384
+ _content_type=_content_type,
2385
+ _headers=_headers,
2386
+ _host_index=_host_index,
2387
+ )
2388
+
2389
+ else:
2390
+ return self._search_symbols_async_with_http_info(
2391
+ query=query,
2392
+ limit=limit,
2393
+ _request_timeout=_request_timeout,
2394
+ _request_auth=_request_auth,
2395
+ _content_type=_content_type,
2396
+ _headers=_headers,
2397
+ _host_index=_host_index,
2398
+ )
2399
+
2400
+ @validate_call
2401
+ def search_symbols_without_preload_content(
2402
+ self,
2403
+ query: StrictStr,
2404
+ limit: Optional[StrictInt] = None,
2405
+ _request_timeout: Union[
2406
+ None,
2407
+ Annotated[StrictFloat, Field(gt=0)],
2408
+ Tuple[
2409
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2410
+ ],
2411
+ ] = None,
2412
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2413
+ _content_type: Optional[StrictStr] = None,
2414
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2415
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2416
+ ) -> RESTResponseType:
2417
+ """Search Symbols without preloading content"""
2418
+ if self.is_sync:
2419
+ return self._search_symbols_sync_without_preload_content(
2420
+ query=query,
2421
+ limit=limit,
2422
+ _request_timeout=_request_timeout,
2423
+ _request_auth=_request_auth,
2424
+ _content_type=_content_type,
2425
+ _headers=_headers,
2426
+ _host_index=_host_index,
2427
+ )
2428
+
2429
+ else:
2430
+ return self._search_symbols_async_without_preload_content(
2431
+ query=query,
2432
+ limit=limit,
2433
+ _request_timeout=_request_timeout,
2434
+ _request_auth=_request_auth,
2435
+ _content_type=_content_type,
2436
+ _headers=_headers,
2437
+ _host_index=_host_index,
2438
+ )
2439
+
2440
+ # Private async implementation methods
2441
+ @validate_call
2442
+ async def _search_symbols_async(
1310
2443
  self,
1311
2444
  query: StrictStr,
1312
2445
  limit: Optional[StrictInt] = None,
@@ -1374,7 +2507,7 @@ class UDFApi:
1374
2507
  ).data
1375
2508
 
1376
2509
  @validate_call
1377
- async def search_symbols_with_http_info(
2510
+ async def _search_symbols_async_with_http_info(
1378
2511
  self,
1379
2512
  query: StrictStr,
1380
2513
  limit: Optional[StrictInt] = None,
@@ -1437,12 +2570,11 @@ class UDFApi:
1437
2570
  )
1438
2571
  await response_data.read()
1439
2572
  return self.api_client.response_deserialize(
1440
- response_data=response_data,
1441
- response_types_map=_response_types_map,
2573
+ response_data=response_data, response_types_map=_response_types_map
1442
2574
  )
1443
2575
 
1444
2576
  @validate_call
1445
- async def search_symbols_without_preload_content(
2577
+ async def _search_symbols_async_without_preload_content(
1446
2578
  self,
1447
2579
  query: StrictStr,
1448
2580
  limit: Optional[StrictInt] = None,
@@ -1503,7 +2635,92 @@ class UDFApi:
1503
2635
  response_data = await self.api_client.call_api(
1504
2636
  *_param, _request_timeout=_request_timeout
1505
2637
  )
1506
- return response_data.response
2638
+ return response_data
2639
+
2640
+ # Private sync implementation methods
2641
+ @validate_call
2642
+ def _search_symbols_sync(
2643
+ self,
2644
+ query: StrictStr,
2645
+ limit: Optional[StrictInt] = None,
2646
+ _request_timeout: Union[
2647
+ None,
2648
+ Annotated[StrictFloat, Field(gt=0)],
2649
+ Tuple[
2650
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2651
+ ],
2652
+ ] = None,
2653
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2654
+ _content_type: Optional[StrictStr] = None,
2655
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2656
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2657
+ ) -> List[SearchSymbol]:
2658
+ """Synchronous version of search_symbols"""
2659
+ return async_to_sync(self._search_symbols_async)(
2660
+ query=query,
2661
+ limit=limit,
2662
+ _request_timeout=_request_timeout,
2663
+ _request_auth=_request_auth,
2664
+ _content_type=_content_type,
2665
+ _headers=_headers,
2666
+ _host_index=_host_index,
2667
+ )
2668
+
2669
+ @validate_call
2670
+ def _search_symbols_sync_with_http_info(
2671
+ self,
2672
+ query: StrictStr,
2673
+ limit: Optional[StrictInt] = None,
2674
+ _request_timeout: Union[
2675
+ None,
2676
+ Annotated[StrictFloat, Field(gt=0)],
2677
+ Tuple[
2678
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2679
+ ],
2680
+ ] = None,
2681
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2682
+ _content_type: Optional[StrictStr] = None,
2683
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2684
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2685
+ ) -> ApiResponse[List[SearchSymbol]]:
2686
+ """Synchronous version of search_symbols_with_http_info"""
2687
+ return async_to_sync(self._search_symbols_async_with_http_info)(
2688
+ query=query,
2689
+ limit=limit,
2690
+ _request_timeout=_request_timeout,
2691
+ _request_auth=_request_auth,
2692
+ _content_type=_content_type,
2693
+ _headers=_headers,
2694
+ _host_index=_host_index,
2695
+ )
2696
+
2697
+ @validate_call
2698
+ def _search_symbols_sync_without_preload_content(
2699
+ self,
2700
+ query: StrictStr,
2701
+ limit: Optional[StrictInt] = None,
2702
+ _request_timeout: Union[
2703
+ None,
2704
+ Annotated[StrictFloat, Field(gt=0)],
2705
+ Tuple[
2706
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2707
+ ],
2708
+ ] = None,
2709
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2710
+ _content_type: Optional[StrictStr] = None,
2711
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2712
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2713
+ ) -> RESTResponseType:
2714
+ """Synchronous version of search_symbols_without_preload_content"""
2715
+ return async_to_sync(self._search_symbols_async_without_preload_content)(
2716
+ query=query,
2717
+ limit=limit,
2718
+ _request_timeout=_request_timeout,
2719
+ _request_auth=_request_auth,
2720
+ _content_type=_content_type,
2721
+ _headers=_headers,
2722
+ _host_index=_host_index,
2723
+ )
1507
2724
 
1508
2725
  def _search_symbols_serialize(
1509
2726
  self,