crypticorn 2.16.0__py3-none-any.whl → 2.17.0rc2__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.
- crypticorn/__init__.py +2 -2
- crypticorn/auth/client/api/admin_api.py +415 -13
- crypticorn/auth/client/api/auth_api.py +2622 -113
- crypticorn/auth/client/api/service_api.py +258 -7
- crypticorn/auth/client/api/user_api.py +2485 -270
- crypticorn/auth/client/api/wallet_api.py +1518 -77
- crypticorn/auth/client/models/create_api_key_request.py +2 -1
- crypticorn/auth/client/models/get_api_keys200_response_inner.py +2 -1
- crypticorn/auth/client/rest.py +23 -4
- crypticorn/auth/main.py +8 -5
- crypticorn/client.py +227 -59
- crypticorn/common/__init__.py +1 -0
- crypticorn/common/metrics.py +18 -0
- crypticorn/common/middleware.py +46 -0
- crypticorn/common/pagination.py +137 -18
- crypticorn/common/router/admin_router.py +12 -2
- crypticorn/common/utils.py +2 -1
- crypticorn/common/warnings.py +7 -0
- crypticorn/hive/client/api/admin_api.py +1234 -51
- crypticorn/hive/client/api/data_api.py +517 -13
- crypticorn/hive/client/api/models_api.py +1657 -83
- crypticorn/hive/client/api/status_api.py +415 -13
- crypticorn/hive/client/models/api_error_identifier.py +1 -1
- crypticorn/hive/client/rest.py +23 -4
- crypticorn/hive/main.py +99 -25
- crypticorn/klines/client/api/admin_api.py +1234 -51
- crypticorn/klines/client/api/change_in_timeframe_api.py +278 -7
- crypticorn/klines/client/api/funding_rates_api.py +324 -7
- crypticorn/klines/client/api/ohlcv_data_api.py +399 -7
- crypticorn/klines/client/api/status_api.py +415 -13
- crypticorn/klines/client/api/symbols_api.py +225 -7
- crypticorn/klines/client/api/udf_api.py +1393 -120
- crypticorn/klines/client/models/api_error_identifier.py +3 -1
- crypticorn/klines/client/rest.py +23 -4
- crypticorn/klines/main.py +89 -12
- crypticorn/metrics/client/api/admin_api.py +1234 -51
- crypticorn/metrics/client/api/exchanges_api.py +1405 -140
- crypticorn/metrics/client/api/indicators_api.py +640 -13
- crypticorn/metrics/client/api/logs_api.py +305 -7
- crypticorn/metrics/client/api/marketcap_api.py +1240 -60
- crypticorn/metrics/client/api/markets_api.py +352 -7
- crypticorn/metrics/client/api/quote_currencies_api.py +237 -7
- crypticorn/metrics/client/api/status_api.py +415 -13
- crypticorn/metrics/client/api/tokens_api.py +400 -13
- crypticorn/metrics/client/configuration.py +4 -2
- crypticorn/metrics/client/rest.py +23 -4
- crypticorn/metrics/main.py +113 -19
- crypticorn/pay/client/api/admin_api.py +1720 -126
- crypticorn/pay/client/api/now_payments_api.py +1013 -42
- crypticorn/pay/client/api/payments_api.py +580 -13
- crypticorn/pay/client/api/products_api.py +915 -25
- crypticorn/pay/client/api/status_api.py +415 -13
- crypticorn/pay/client/configuration.py +2 -2
- crypticorn/pay/client/models/api_error_identifier.py +7 -7
- crypticorn/pay/client/models/scope.py +1 -0
- crypticorn/pay/client/rest.py +23 -4
- crypticorn/pay/main.py +10 -6
- crypticorn/trade/client/__init__.py +2 -1
- crypticorn/trade/client/api/__init__.py +0 -1
- crypticorn/trade/client/api/admin_api.py +1718 -123
- crypticorn/trade/client/api/api_keys_api.py +1596 -103
- crypticorn/trade/client/api/bots_api.py +1106 -47
- crypticorn/trade/client/api/exchanges_api.py +592 -19
- crypticorn/trade/client/api/notifications_api.py +1340 -112
- crypticorn/trade/client/api/orders_api.py +240 -7
- crypticorn/trade/client/api/status_api.py +415 -13
- crypticorn/trade/client/api/strategies_api.py +1170 -69
- crypticorn/trade/client/api/trading_actions_api.py +650 -19
- crypticorn/trade/client/models/__init__.py +2 -0
- crypticorn/trade/client/models/exchange.py +6 -1
- crypticorn/trade/client/models/exchange_key_balance.py +111 -0
- crypticorn/trade/client/models/futures_balance.py +27 -25
- crypticorn/trade/client/models/spot_balance.py +110 -0
- crypticorn/trade/client/models/strategy.py +5 -3
- crypticorn/trade/client/models/strategy_create.py +6 -4
- crypticorn/trade/client/models/strategy_exchange_info.py +16 -4
- crypticorn/trade/client/models/strategy_update.py +2 -2
- crypticorn/trade/client/rest.py +23 -4
- crypticorn/trade/main.py +15 -12
- {crypticorn-2.16.0.dist-info → crypticorn-2.17.0rc2.dist-info}/METADATA +65 -20
- {crypticorn-2.16.0.dist-info → crypticorn-2.17.0rc2.dist-info}/RECORD +85 -83
- crypticorn/trade/client/api/futures_trading_panel_api.py +0 -1285
- {crypticorn-2.16.0.dist-info → crypticorn-2.17.0rc2.dist-info}/WHEEL +0 -0
- {crypticorn-2.16.0.dist-info → crypticorn-2.17.0rc2.dist-info}/entry_points.txt +0 -0
- {crypticorn-2.16.0.dist-info → crypticorn-2.17.0rc2.dist-info}/licenses/LICENSE +0 -0
- {crypticorn-2.16.0.dist-info → crypticorn-2.17.0rc2.dist-info}/top_level.txt +0 -0
@@ -25,6 +25,24 @@ from crypticorn.metrics.client.api_client import ApiClient, RequestSerialized
|
|
25
25
|
from crypticorn.metrics.client.api_response import ApiResponse
|
26
26
|
from crypticorn.metrics.client.rest import RESTResponseType
|
27
27
|
|
28
|
+
# Import async_to_sync for sync methods
|
29
|
+
try:
|
30
|
+
from asgiref.sync import async_to_sync
|
31
|
+
|
32
|
+
_HAS_ASGIREF = True
|
33
|
+
except ImportError:
|
34
|
+
_HAS_ASGIREF = False
|
35
|
+
|
36
|
+
def async_to_sync(async_func):
|
37
|
+
"""Fallback decorator that raises an error if asgiref is not available."""
|
38
|
+
|
39
|
+
def wrapper(*args, **kwargs):
|
40
|
+
raise ImportError(
|
41
|
+
"asgiref is required for sync methods. Install with: pip install asgiref"
|
42
|
+
)
|
43
|
+
|
44
|
+
return wrapper
|
45
|
+
|
28
46
|
|
29
47
|
class IndicatorsApi:
|
30
48
|
"""NOTE: This class is auto generated by OpenAPI Generator
|
@@ -33,13 +51,189 @@ class IndicatorsApi:
|
|
33
51
|
Do not edit the class manually.
|
34
52
|
"""
|
35
53
|
|
36
|
-
def __init__(self, api_client=None) -> None:
|
54
|
+
def __init__(self, api_client=None, is_sync: bool = False) -> None:
|
37
55
|
if api_client is None:
|
38
56
|
api_client = ApiClient.get_default()
|
39
57
|
self.api_client = api_client
|
58
|
+
self.is_sync = is_sync
|
40
59
|
|
41
60
|
@validate_call
|
42
|
-
|
61
|
+
def get_ker_indicator(
|
62
|
+
self,
|
63
|
+
symbol: Annotated[
|
64
|
+
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
65
|
+
],
|
66
|
+
market: Annotated[
|
67
|
+
Optional[MarketType], Field(description="Market. Defaults to futures.")
|
68
|
+
] = None,
|
69
|
+
period: Annotated[
|
70
|
+
Optional[StrictInt], Field(description="KER indicator period")
|
71
|
+
] = None,
|
72
|
+
timestamp: Annotated[
|
73
|
+
Optional[StrictInt],
|
74
|
+
Field(description="Timestamp for which to fetch KER indicator"),
|
75
|
+
] = None,
|
76
|
+
_request_timeout: Union[
|
77
|
+
None,
|
78
|
+
Annotated[StrictFloat, Field(gt=0)],
|
79
|
+
Tuple[
|
80
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
81
|
+
],
|
82
|
+
] = None,
|
83
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
84
|
+
_content_type: Optional[StrictStr] = None,
|
85
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
86
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
87
|
+
) -> Dict[str, object]:
|
88
|
+
"""Get Ker Indicator
|
89
|
+
|
90
|
+
This method can work in both sync and async modes based on the is_sync flag.
|
91
|
+
"""
|
92
|
+
if self.is_sync:
|
93
|
+
return self._get_ker_indicator_sync(
|
94
|
+
symbol=symbol,
|
95
|
+
market=market,
|
96
|
+
period=period,
|
97
|
+
timestamp=timestamp,
|
98
|
+
_request_timeout=_request_timeout,
|
99
|
+
_request_auth=_request_auth,
|
100
|
+
_content_type=_content_type,
|
101
|
+
_headers=_headers,
|
102
|
+
_host_index=_host_index,
|
103
|
+
)
|
104
|
+
|
105
|
+
else:
|
106
|
+
return self._get_ker_indicator_async(
|
107
|
+
symbol=symbol,
|
108
|
+
market=market,
|
109
|
+
period=period,
|
110
|
+
timestamp=timestamp,
|
111
|
+
_request_timeout=_request_timeout,
|
112
|
+
_request_auth=_request_auth,
|
113
|
+
_content_type=_content_type,
|
114
|
+
_headers=_headers,
|
115
|
+
_host_index=_host_index,
|
116
|
+
)
|
117
|
+
|
118
|
+
@validate_call
|
119
|
+
def get_ker_indicator_with_http_info(
|
120
|
+
self,
|
121
|
+
symbol: Annotated[
|
122
|
+
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
123
|
+
],
|
124
|
+
market: Annotated[
|
125
|
+
Optional[MarketType], Field(description="Market. Defaults to futures.")
|
126
|
+
] = None,
|
127
|
+
period: Annotated[
|
128
|
+
Optional[StrictInt], Field(description="KER indicator period")
|
129
|
+
] = None,
|
130
|
+
timestamp: Annotated[
|
131
|
+
Optional[StrictInt],
|
132
|
+
Field(description="Timestamp for which to fetch KER indicator"),
|
133
|
+
] = None,
|
134
|
+
_request_timeout: Union[
|
135
|
+
None,
|
136
|
+
Annotated[StrictFloat, Field(gt=0)],
|
137
|
+
Tuple[
|
138
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
139
|
+
],
|
140
|
+
] = None,
|
141
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
142
|
+
_content_type: Optional[StrictStr] = None,
|
143
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
144
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
145
|
+
) -> ApiResponse[Dict[str, object]]:
|
146
|
+
"""Get Ker Indicator with HTTP info
|
147
|
+
|
148
|
+
This method can work in both sync and async modes based on the is_sync flag.
|
149
|
+
"""
|
150
|
+
if self.is_sync:
|
151
|
+
return self._get_ker_indicator_sync_with_http_info(
|
152
|
+
symbol=symbol,
|
153
|
+
market=market,
|
154
|
+
period=period,
|
155
|
+
timestamp=timestamp,
|
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_ker_indicator_async_with_http_info(
|
165
|
+
symbol=symbol,
|
166
|
+
market=market,
|
167
|
+
period=period,
|
168
|
+
timestamp=timestamp,
|
169
|
+
_request_timeout=_request_timeout,
|
170
|
+
_request_auth=_request_auth,
|
171
|
+
_content_type=_content_type,
|
172
|
+
_headers=_headers,
|
173
|
+
_host_index=_host_index,
|
174
|
+
)
|
175
|
+
|
176
|
+
@validate_call
|
177
|
+
def get_ker_indicator_without_preload_content(
|
178
|
+
self,
|
179
|
+
symbol: Annotated[
|
180
|
+
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
181
|
+
],
|
182
|
+
market: Annotated[
|
183
|
+
Optional[MarketType], Field(description="Market. Defaults to futures.")
|
184
|
+
] = None,
|
185
|
+
period: Annotated[
|
186
|
+
Optional[StrictInt], Field(description="KER indicator period")
|
187
|
+
] = None,
|
188
|
+
timestamp: Annotated[
|
189
|
+
Optional[StrictInt],
|
190
|
+
Field(description="Timestamp for which to fetch KER indicator"),
|
191
|
+
] = None,
|
192
|
+
_request_timeout: Union[
|
193
|
+
None,
|
194
|
+
Annotated[StrictFloat, Field(gt=0)],
|
195
|
+
Tuple[
|
196
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
197
|
+
],
|
198
|
+
] = None,
|
199
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
200
|
+
_content_type: Optional[StrictStr] = None,
|
201
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
202
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
203
|
+
) -> RESTResponseType:
|
204
|
+
"""Get Ker Indicator without preloading content
|
205
|
+
|
206
|
+
This method can work in both sync and async modes based on the is_sync flag.
|
207
|
+
"""
|
208
|
+
if self.is_sync:
|
209
|
+
return self._get_ker_indicator_sync_without_preload_content(
|
210
|
+
symbol=symbol,
|
211
|
+
market=market,
|
212
|
+
period=period,
|
213
|
+
timestamp=timestamp,
|
214
|
+
_request_timeout=_request_timeout,
|
215
|
+
_request_auth=_request_auth,
|
216
|
+
_content_type=_content_type,
|
217
|
+
_headers=_headers,
|
218
|
+
_host_index=_host_index,
|
219
|
+
)
|
220
|
+
|
221
|
+
else:
|
222
|
+
return self._get_ker_indicator_async_without_preload_content(
|
223
|
+
symbol=symbol,
|
224
|
+
market=market,
|
225
|
+
period=period,
|
226
|
+
timestamp=timestamp,
|
227
|
+
_request_timeout=_request_timeout,
|
228
|
+
_request_auth=_request_auth,
|
229
|
+
_content_type=_content_type,
|
230
|
+
_headers=_headers,
|
231
|
+
_host_index=_host_index,
|
232
|
+
)
|
233
|
+
|
234
|
+
# Private async implementation methods
|
235
|
+
@validate_call
|
236
|
+
async def _get_ker_indicator_async(
|
43
237
|
self,
|
44
238
|
symbol: Annotated[
|
45
239
|
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
@@ -124,7 +318,7 @@ class IndicatorsApi:
|
|
124
318
|
).data
|
125
319
|
|
126
320
|
@validate_call
|
127
|
-
async def
|
321
|
+
async def _get_ker_indicator_async_with_http_info(
|
128
322
|
self,
|
129
323
|
symbol: Annotated[
|
130
324
|
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
@@ -204,12 +398,11 @@ class IndicatorsApi:
|
|
204
398
|
)
|
205
399
|
await response_data.read()
|
206
400
|
return self.api_client.response_deserialize(
|
207
|
-
response_data=response_data,
|
208
|
-
response_types_map=_response_types_map,
|
401
|
+
response_data=response_data, response_types_map=_response_types_map
|
209
402
|
)
|
210
403
|
|
211
404
|
@validate_call
|
212
|
-
async def
|
405
|
+
async def _get_ker_indicator_async_without_preload_content(
|
213
406
|
self,
|
214
407
|
symbol: Annotated[
|
215
408
|
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
@@ -287,7 +480,131 @@ class IndicatorsApi:
|
|
287
480
|
response_data = await self.api_client.call_api(
|
288
481
|
*_param, _request_timeout=_request_timeout
|
289
482
|
)
|
290
|
-
return response_data
|
483
|
+
return response_data
|
484
|
+
|
485
|
+
# Private sync implementation methods
|
486
|
+
@validate_call
|
487
|
+
def _get_ker_indicator_sync(
|
488
|
+
self,
|
489
|
+
symbol: Annotated[
|
490
|
+
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
491
|
+
],
|
492
|
+
market: Annotated[
|
493
|
+
Optional[MarketType], Field(description="Market. Defaults to futures.")
|
494
|
+
] = None,
|
495
|
+
period: Annotated[
|
496
|
+
Optional[StrictInt], Field(description="KER indicator period")
|
497
|
+
] = None,
|
498
|
+
timestamp: Annotated[
|
499
|
+
Optional[StrictInt],
|
500
|
+
Field(description="Timestamp for which to fetch KER indicator"),
|
501
|
+
] = None,
|
502
|
+
_request_timeout: Union[
|
503
|
+
None,
|
504
|
+
Annotated[StrictFloat, Field(gt=0)],
|
505
|
+
Tuple[
|
506
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
507
|
+
],
|
508
|
+
] = None,
|
509
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
510
|
+
_content_type: Optional[StrictStr] = None,
|
511
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
512
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
513
|
+
) -> Dict[str, object]:
|
514
|
+
"""Synchronous version of get_ker_indicator"""
|
515
|
+
return async_to_sync(self._get_ker_indicator_async)(
|
516
|
+
symbol=symbol,
|
517
|
+
market=market,
|
518
|
+
period=period,
|
519
|
+
timestamp=timestamp,
|
520
|
+
_request_timeout=_request_timeout,
|
521
|
+
_request_auth=_request_auth,
|
522
|
+
_content_type=_content_type,
|
523
|
+
_headers=_headers,
|
524
|
+
_host_index=_host_index,
|
525
|
+
)
|
526
|
+
|
527
|
+
@validate_call
|
528
|
+
def _get_ker_indicator_sync_with_http_info(
|
529
|
+
self,
|
530
|
+
symbol: Annotated[
|
531
|
+
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
532
|
+
],
|
533
|
+
market: Annotated[
|
534
|
+
Optional[MarketType], Field(description="Market. Defaults to futures.")
|
535
|
+
] = None,
|
536
|
+
period: Annotated[
|
537
|
+
Optional[StrictInt], Field(description="KER indicator period")
|
538
|
+
] = None,
|
539
|
+
timestamp: Annotated[
|
540
|
+
Optional[StrictInt],
|
541
|
+
Field(description="Timestamp for which to fetch KER indicator"),
|
542
|
+
] = None,
|
543
|
+
_request_timeout: Union[
|
544
|
+
None,
|
545
|
+
Annotated[StrictFloat, Field(gt=0)],
|
546
|
+
Tuple[
|
547
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
548
|
+
],
|
549
|
+
] = None,
|
550
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
551
|
+
_content_type: Optional[StrictStr] = None,
|
552
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
553
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
554
|
+
) -> ApiResponse[Dict[str, object]]:
|
555
|
+
"""Synchronous version of get_ker_indicator_with_http_info"""
|
556
|
+
return async_to_sync(self._get_ker_indicator_async_with_http_info)(
|
557
|
+
symbol=symbol,
|
558
|
+
market=market,
|
559
|
+
period=period,
|
560
|
+
timestamp=timestamp,
|
561
|
+
_request_timeout=_request_timeout,
|
562
|
+
_request_auth=_request_auth,
|
563
|
+
_content_type=_content_type,
|
564
|
+
_headers=_headers,
|
565
|
+
_host_index=_host_index,
|
566
|
+
)
|
567
|
+
|
568
|
+
@validate_call
|
569
|
+
def _get_ker_indicator_sync_without_preload_content(
|
570
|
+
self,
|
571
|
+
symbol: Annotated[
|
572
|
+
StrictStr, Field(description="Symbol to fetch KER indicator for")
|
573
|
+
],
|
574
|
+
market: Annotated[
|
575
|
+
Optional[MarketType], Field(description="Market. Defaults to futures.")
|
576
|
+
] = None,
|
577
|
+
period: Annotated[
|
578
|
+
Optional[StrictInt], Field(description="KER indicator period")
|
579
|
+
] = None,
|
580
|
+
timestamp: Annotated[
|
581
|
+
Optional[StrictInt],
|
582
|
+
Field(description="Timestamp for which to fetch KER indicator"),
|
583
|
+
] = None,
|
584
|
+
_request_timeout: Union[
|
585
|
+
None,
|
586
|
+
Annotated[StrictFloat, Field(gt=0)],
|
587
|
+
Tuple[
|
588
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
589
|
+
],
|
590
|
+
] = None,
|
591
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
592
|
+
_content_type: Optional[StrictStr] = None,
|
593
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
594
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
595
|
+
) -> RESTResponseType:
|
596
|
+
"""Synchronous version of get_ker_indicator_without_preload_content"""
|
597
|
+
return async_to_sync(self._get_ker_indicator_async_without_preload_content)(
|
598
|
+
symbol=symbol,
|
599
|
+
market=market,
|
600
|
+
period=period,
|
601
|
+
timestamp=timestamp,
|
602
|
+
_request_timeout=_request_timeout,
|
603
|
+
_request_auth=_request_auth,
|
604
|
+
_content_type=_content_type,
|
605
|
+
_headers=_headers,
|
606
|
+
_host_index=_host_index,
|
607
|
+
)
|
291
608
|
|
292
609
|
def _get_ker_indicator_serialize(
|
293
610
|
self,
|
@@ -361,7 +678,188 @@ class IndicatorsApi:
|
|
361
678
|
)
|
362
679
|
|
363
680
|
@validate_call
|
364
|
-
|
681
|
+
def get_sma_indicator(
|
682
|
+
self,
|
683
|
+
symbol: Annotated[
|
684
|
+
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
685
|
+
],
|
686
|
+
market: Annotated[
|
687
|
+
Optional[MarketType],
|
688
|
+
Field(description="The market type to use for the SMA indicator"),
|
689
|
+
] = None,
|
690
|
+
period: Annotated[
|
691
|
+
Optional[StrictInt],
|
692
|
+
Field(description="The period to use for the SMA indicator"),
|
693
|
+
] = None,
|
694
|
+
timestamp: Annotated[
|
695
|
+
Optional[StrictInt],
|
696
|
+
Field(description="The timestamp for which to fetch the SMA indicator"),
|
697
|
+
] = None,
|
698
|
+
_request_timeout: Union[
|
699
|
+
None,
|
700
|
+
Annotated[StrictFloat, Field(gt=0)],
|
701
|
+
Tuple[
|
702
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
703
|
+
],
|
704
|
+
] = None,
|
705
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
706
|
+
_content_type: Optional[StrictStr] = None,
|
707
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
708
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
709
|
+
) -> Dict[str, object]:
|
710
|
+
"""Get Sma Indicator
|
711
|
+
|
712
|
+
This method can work in both sync and async modes based on the is_sync flag.
|
713
|
+
"""
|
714
|
+
if self.is_sync:
|
715
|
+
return self._get_sma_indicator_sync(
|
716
|
+
symbol=symbol,
|
717
|
+
market=market,
|
718
|
+
period=period,
|
719
|
+
timestamp=timestamp,
|
720
|
+
_request_timeout=_request_timeout,
|
721
|
+
_request_auth=_request_auth,
|
722
|
+
_content_type=_content_type,
|
723
|
+
_headers=_headers,
|
724
|
+
_host_index=_host_index,
|
725
|
+
)
|
726
|
+
|
727
|
+
else:
|
728
|
+
return self._get_sma_indicator_async(
|
729
|
+
symbol=symbol,
|
730
|
+
market=market,
|
731
|
+
period=period,
|
732
|
+
timestamp=timestamp,
|
733
|
+
_request_timeout=_request_timeout,
|
734
|
+
_request_auth=_request_auth,
|
735
|
+
_content_type=_content_type,
|
736
|
+
_headers=_headers,
|
737
|
+
_host_index=_host_index,
|
738
|
+
)
|
739
|
+
|
740
|
+
@validate_call
|
741
|
+
def get_sma_indicator_with_http_info(
|
742
|
+
self,
|
743
|
+
symbol: Annotated[
|
744
|
+
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
745
|
+
],
|
746
|
+
market: Annotated[
|
747
|
+
Optional[MarketType],
|
748
|
+
Field(description="The market type to use for the SMA indicator"),
|
749
|
+
] = None,
|
750
|
+
period: Annotated[
|
751
|
+
Optional[StrictInt],
|
752
|
+
Field(description="The period to use for the SMA indicator"),
|
753
|
+
] = None,
|
754
|
+
timestamp: Annotated[
|
755
|
+
Optional[StrictInt],
|
756
|
+
Field(description="The timestamp for which to fetch the SMA indicator"),
|
757
|
+
] = None,
|
758
|
+
_request_timeout: Union[
|
759
|
+
None,
|
760
|
+
Annotated[StrictFloat, Field(gt=0)],
|
761
|
+
Tuple[
|
762
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
763
|
+
],
|
764
|
+
] = None,
|
765
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
766
|
+
_content_type: Optional[StrictStr] = None,
|
767
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
768
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
769
|
+
) -> ApiResponse[Dict[str, object]]:
|
770
|
+
"""Get Sma Indicator with HTTP info
|
771
|
+
|
772
|
+
This method can work in both sync and async modes based on the is_sync flag.
|
773
|
+
"""
|
774
|
+
if self.is_sync:
|
775
|
+
return self._get_sma_indicator_sync_with_http_info(
|
776
|
+
symbol=symbol,
|
777
|
+
market=market,
|
778
|
+
period=period,
|
779
|
+
timestamp=timestamp,
|
780
|
+
_request_timeout=_request_timeout,
|
781
|
+
_request_auth=_request_auth,
|
782
|
+
_content_type=_content_type,
|
783
|
+
_headers=_headers,
|
784
|
+
_host_index=_host_index,
|
785
|
+
)
|
786
|
+
|
787
|
+
else:
|
788
|
+
return self._get_sma_indicator_async_with_http_info(
|
789
|
+
symbol=symbol,
|
790
|
+
market=market,
|
791
|
+
period=period,
|
792
|
+
timestamp=timestamp,
|
793
|
+
_request_timeout=_request_timeout,
|
794
|
+
_request_auth=_request_auth,
|
795
|
+
_content_type=_content_type,
|
796
|
+
_headers=_headers,
|
797
|
+
_host_index=_host_index,
|
798
|
+
)
|
799
|
+
|
800
|
+
@validate_call
|
801
|
+
def get_sma_indicator_without_preload_content(
|
802
|
+
self,
|
803
|
+
symbol: Annotated[
|
804
|
+
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
805
|
+
],
|
806
|
+
market: Annotated[
|
807
|
+
Optional[MarketType],
|
808
|
+
Field(description="The market type to use for the SMA indicator"),
|
809
|
+
] = None,
|
810
|
+
period: Annotated[
|
811
|
+
Optional[StrictInt],
|
812
|
+
Field(description="The period to use for the SMA indicator"),
|
813
|
+
] = None,
|
814
|
+
timestamp: Annotated[
|
815
|
+
Optional[StrictInt],
|
816
|
+
Field(description="The timestamp for which to fetch the SMA indicator"),
|
817
|
+
] = None,
|
818
|
+
_request_timeout: Union[
|
819
|
+
None,
|
820
|
+
Annotated[StrictFloat, Field(gt=0)],
|
821
|
+
Tuple[
|
822
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
823
|
+
],
|
824
|
+
] = None,
|
825
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
826
|
+
_content_type: Optional[StrictStr] = None,
|
827
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
828
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
829
|
+
) -> RESTResponseType:
|
830
|
+
"""Get Sma Indicator without preloading content
|
831
|
+
|
832
|
+
This method can work in both sync and async modes based on the is_sync flag.
|
833
|
+
"""
|
834
|
+
if self.is_sync:
|
835
|
+
return self._get_sma_indicator_sync_without_preload_content(
|
836
|
+
symbol=symbol,
|
837
|
+
market=market,
|
838
|
+
period=period,
|
839
|
+
timestamp=timestamp,
|
840
|
+
_request_timeout=_request_timeout,
|
841
|
+
_request_auth=_request_auth,
|
842
|
+
_content_type=_content_type,
|
843
|
+
_headers=_headers,
|
844
|
+
_host_index=_host_index,
|
845
|
+
)
|
846
|
+
|
847
|
+
else:
|
848
|
+
return self._get_sma_indicator_async_without_preload_content(
|
849
|
+
symbol=symbol,
|
850
|
+
market=market,
|
851
|
+
period=period,
|
852
|
+
timestamp=timestamp,
|
853
|
+
_request_timeout=_request_timeout,
|
854
|
+
_request_auth=_request_auth,
|
855
|
+
_content_type=_content_type,
|
856
|
+
_headers=_headers,
|
857
|
+
_host_index=_host_index,
|
858
|
+
)
|
859
|
+
|
860
|
+
# Private async implementation methods
|
861
|
+
@validate_call
|
862
|
+
async def _get_sma_indicator_async(
|
365
863
|
self,
|
366
864
|
symbol: Annotated[
|
367
865
|
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
@@ -448,7 +946,7 @@ class IndicatorsApi:
|
|
448
946
|
).data
|
449
947
|
|
450
948
|
@validate_call
|
451
|
-
async def
|
949
|
+
async def _get_sma_indicator_async_with_http_info(
|
452
950
|
self,
|
453
951
|
symbol: Annotated[
|
454
952
|
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
@@ -530,12 +1028,11 @@ class IndicatorsApi:
|
|
530
1028
|
)
|
531
1029
|
await response_data.read()
|
532
1030
|
return self.api_client.response_deserialize(
|
533
|
-
response_data=response_data,
|
534
|
-
response_types_map=_response_types_map,
|
1031
|
+
response_data=response_data, response_types_map=_response_types_map
|
535
1032
|
)
|
536
1033
|
|
537
1034
|
@validate_call
|
538
|
-
async def
|
1035
|
+
async def _get_sma_indicator_async_without_preload_content(
|
539
1036
|
self,
|
540
1037
|
symbol: Annotated[
|
541
1038
|
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
@@ -615,7 +1112,137 @@ class IndicatorsApi:
|
|
615
1112
|
response_data = await self.api_client.call_api(
|
616
1113
|
*_param, _request_timeout=_request_timeout
|
617
1114
|
)
|
618
|
-
return response_data
|
1115
|
+
return response_data
|
1116
|
+
|
1117
|
+
# Private sync implementation methods
|
1118
|
+
@validate_call
|
1119
|
+
def _get_sma_indicator_sync(
|
1120
|
+
self,
|
1121
|
+
symbol: Annotated[
|
1122
|
+
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
1123
|
+
],
|
1124
|
+
market: Annotated[
|
1125
|
+
Optional[MarketType],
|
1126
|
+
Field(description="The market type to use for the SMA indicator"),
|
1127
|
+
] = None,
|
1128
|
+
period: Annotated[
|
1129
|
+
Optional[StrictInt],
|
1130
|
+
Field(description="The period to use for the SMA indicator"),
|
1131
|
+
] = None,
|
1132
|
+
timestamp: Annotated[
|
1133
|
+
Optional[StrictInt],
|
1134
|
+
Field(description="The timestamp for which to fetch the SMA indicator"),
|
1135
|
+
] = None,
|
1136
|
+
_request_timeout: Union[
|
1137
|
+
None,
|
1138
|
+
Annotated[StrictFloat, Field(gt=0)],
|
1139
|
+
Tuple[
|
1140
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
1141
|
+
],
|
1142
|
+
] = None,
|
1143
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
1144
|
+
_content_type: Optional[StrictStr] = None,
|
1145
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
1146
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
1147
|
+
) -> Dict[str, object]:
|
1148
|
+
"""Synchronous version of get_sma_indicator"""
|
1149
|
+
return async_to_sync(self._get_sma_indicator_async)(
|
1150
|
+
symbol=symbol,
|
1151
|
+
market=market,
|
1152
|
+
period=period,
|
1153
|
+
timestamp=timestamp,
|
1154
|
+
_request_timeout=_request_timeout,
|
1155
|
+
_request_auth=_request_auth,
|
1156
|
+
_content_type=_content_type,
|
1157
|
+
_headers=_headers,
|
1158
|
+
_host_index=_host_index,
|
1159
|
+
)
|
1160
|
+
|
1161
|
+
@validate_call
|
1162
|
+
def _get_sma_indicator_sync_with_http_info(
|
1163
|
+
self,
|
1164
|
+
symbol: Annotated[
|
1165
|
+
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
1166
|
+
],
|
1167
|
+
market: Annotated[
|
1168
|
+
Optional[MarketType],
|
1169
|
+
Field(description="The market type to use for the SMA indicator"),
|
1170
|
+
] = None,
|
1171
|
+
period: Annotated[
|
1172
|
+
Optional[StrictInt],
|
1173
|
+
Field(description="The period to use for the SMA indicator"),
|
1174
|
+
] = None,
|
1175
|
+
timestamp: Annotated[
|
1176
|
+
Optional[StrictInt],
|
1177
|
+
Field(description="The timestamp for which to fetch the SMA indicator"),
|
1178
|
+
] = None,
|
1179
|
+
_request_timeout: Union[
|
1180
|
+
None,
|
1181
|
+
Annotated[StrictFloat, Field(gt=0)],
|
1182
|
+
Tuple[
|
1183
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
1184
|
+
],
|
1185
|
+
] = None,
|
1186
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
1187
|
+
_content_type: Optional[StrictStr] = None,
|
1188
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
1189
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
1190
|
+
) -> ApiResponse[Dict[str, object]]:
|
1191
|
+
"""Synchronous version of get_sma_indicator_with_http_info"""
|
1192
|
+
return async_to_sync(self._get_sma_indicator_async_with_http_info)(
|
1193
|
+
symbol=symbol,
|
1194
|
+
market=market,
|
1195
|
+
period=period,
|
1196
|
+
timestamp=timestamp,
|
1197
|
+
_request_timeout=_request_timeout,
|
1198
|
+
_request_auth=_request_auth,
|
1199
|
+
_content_type=_content_type,
|
1200
|
+
_headers=_headers,
|
1201
|
+
_host_index=_host_index,
|
1202
|
+
)
|
1203
|
+
|
1204
|
+
@validate_call
|
1205
|
+
def _get_sma_indicator_sync_without_preload_content(
|
1206
|
+
self,
|
1207
|
+
symbol: Annotated[
|
1208
|
+
StrictStr, Field(description="Symbol to fetch SMA indicator for")
|
1209
|
+
],
|
1210
|
+
market: Annotated[
|
1211
|
+
Optional[MarketType],
|
1212
|
+
Field(description="The market type to use for the SMA indicator"),
|
1213
|
+
] = None,
|
1214
|
+
period: Annotated[
|
1215
|
+
Optional[StrictInt],
|
1216
|
+
Field(description="The period to use for the SMA indicator"),
|
1217
|
+
] = None,
|
1218
|
+
timestamp: Annotated[
|
1219
|
+
Optional[StrictInt],
|
1220
|
+
Field(description="The timestamp for which to fetch the SMA indicator"),
|
1221
|
+
] = None,
|
1222
|
+
_request_timeout: Union[
|
1223
|
+
None,
|
1224
|
+
Annotated[StrictFloat, Field(gt=0)],
|
1225
|
+
Tuple[
|
1226
|
+
Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
|
1227
|
+
],
|
1228
|
+
] = None,
|
1229
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
1230
|
+
_content_type: Optional[StrictStr] = None,
|
1231
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
1232
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
1233
|
+
) -> RESTResponseType:
|
1234
|
+
"""Synchronous version of get_sma_indicator_without_preload_content"""
|
1235
|
+
return async_to_sync(self._get_sma_indicator_async_without_preload_content)(
|
1236
|
+
symbol=symbol,
|
1237
|
+
market=market,
|
1238
|
+
period=period,
|
1239
|
+
timestamp=timestamp,
|
1240
|
+
_request_timeout=_request_timeout,
|
1241
|
+
_request_auth=_request_auth,
|
1242
|
+
_content_type=_content_type,
|
1243
|
+
_headers=_headers,
|
1244
|
+
_host_index=_host_index,
|
1245
|
+
)
|
619
1246
|
|
620
1247
|
def _get_sma_indicator_serialize(
|
621
1248
|
self,
|