architect-py 3.2.2__py3-none-any.whl → 5.0.0b2__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.
- architect_py/__init__.py +15 -2
- architect_py/async_client.py +1060 -643
- architect_py/client.py +25 -26
- architect_py/client_interface.py +63 -0
- architect_py/common_types/__init__.py +6 -0
- architect_py/common_types/order_dir.py +91 -0
- architect_py/common_types/scalars.py +25 -0
- architect_py/common_types/tradable_product.py +59 -0
- architect_py/graphql_client/__init__.py +2 -0
- architect_py/graphql_client/client.py +3 -6
- architect_py/graphql_client/enums.py +5 -0
- architect_py/graphql_client/fragments.py +3 -6
- architect_py/graphql_client/get_fills_query.py +2 -1
- architect_py/graphql_client/search_symbols_query.py +2 -1
- architect_py/graphql_client/subscribe_orderflow.py +2 -1
- architect_py/graphql_client/subscribe_trades.py +2 -1
- architect_py/grpc/__init__.py +143 -0
- architect_py/grpc/client.py +94 -0
- architect_py/{grpc_client → grpc/models}/Accounts/AccountsRequest.py +6 -3
- architect_py/{grpc_client → grpc/models}/Accounts/AccountsResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Accounts/__init__.py +1 -1
- architect_py/grpc/models/Algo/AlgoOrder.py +114 -0
- architect_py/grpc/models/Algo/AlgoOrderRequest.py +46 -0
- architect_py/grpc/models/Algo/AlgoOrdersRequest.py +72 -0
- architect_py/grpc/models/Algo/AlgoOrdersResponse.py +27 -0
- architect_py/grpc/models/Algo/CreateAlgoOrderRequest.py +56 -0
- architect_py/grpc/models/Algo/PauseAlgoRequest.py +42 -0
- architect_py/grpc/models/Algo/PauseAlgoResponse.py +20 -0
- architect_py/grpc/models/Algo/StartAlgoRequest.py +42 -0
- architect_py/grpc/models/Algo/StartAlgoResponse.py +20 -0
- architect_py/grpc/models/Algo/StopAlgoRequest.py +42 -0
- architect_py/grpc/models/Algo/StopAlgoResponse.py +20 -0
- architect_py/{grpc_client → grpc/models}/Algo/__init__.py +1 -1
- architect_py/grpc/models/Auth/CreateJwtRequest.py +47 -0
- architect_py/grpc/models/Auth/CreateJwtResponse.py +23 -0
- architect_py/{grpc_client/Cpty → grpc/models/Auth}/__init__.py +1 -1
- architect_py/grpc/models/Boss/DepositsRequest.py +40 -0
- architect_py/grpc/models/Boss/DepositsResponse.py +27 -0
- architect_py/grpc/models/Boss/RqdAccountStatisticsRequest.py +42 -0
- architect_py/grpc/models/Boss/RqdAccountStatisticsResponse.py +25 -0
- architect_py/grpc/models/Boss/StatementUrlRequest.py +40 -0
- architect_py/grpc/models/Boss/StatementUrlResponse.py +23 -0
- architect_py/grpc/models/Boss/StatementsRequest.py +40 -0
- architect_py/grpc/models/Boss/StatementsResponse.py +27 -0
- architect_py/grpc/models/Boss/WithdrawalsRequest.py +40 -0
- architect_py/grpc/models/Boss/WithdrawalsResponse.py +27 -0
- architect_py/{grpc_client/Folio → grpc/models/Boss}/__init__.py +1 -1
- architect_py/grpc/models/Core/ConfigRequest.py +37 -0
- architect_py/grpc/models/Core/ConfigResponse.py +25 -0
- architect_py/grpc/models/Core/__init__.py +2 -0
- architect_py/{grpc_client → grpc/models}/Cpty/CptyRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Cpty/CptyResponse.py +3 -3
- architect_py/{grpc_client → grpc/models}/Cpty/CptyStatus.py +1 -1
- architect_py/{grpc_client → grpc/models}/Cpty/CptyStatusRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Cpty/CptysRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Cpty/CptysResponse.py +1 -1
- architect_py/grpc/models/Cpty/__init__.py +2 -0
- architect_py/{grpc_client → grpc/models}/Folio/AccountHistoryRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Folio/AccountHistoryResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Folio/AccountSummariesRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Folio/AccountSummariesResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Folio/AccountSummary.py +1 -1
- architect_py/{grpc_client → grpc/models}/Folio/AccountSummaryRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Folio/HistoricalFillsRequest.py +7 -4
- architect_py/{grpc_client → grpc/models}/Folio/HistoricalFillsResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Folio/HistoricalOrdersRequest.py +3 -3
- architect_py/{grpc_client → grpc/models}/Folio/HistoricalOrdersResponse.py +1 -1
- architect_py/grpc/models/Folio/__init__.py +2 -0
- architect_py/{grpc_client → grpc/models}/Health/HealthCheckRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Health/HealthCheckResponse.py +1 -1
- architect_py/grpc/models/Health/__init__.py +2 -0
- architect_py/{grpc_client → grpc/models}/Marketdata/Candle.py +1 -1
- architect_py/{grpc_client → grpc/models}/Marketdata/HistoricalCandlesRequest.py +11 -8
- architect_py/{grpc_client → grpc/models}/Marketdata/HistoricalCandlesResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Marketdata/L1BookSnapshot.py +52 -5
- architect_py/{grpc_client → grpc/models}/Marketdata/L1BookSnapshotRequest.py +8 -3
- architect_py/{grpc_client → grpc/models}/Marketdata/L1BookSnapshotsRequest.py +6 -3
- architect_py/{grpc_client → grpc/models}/Marketdata/L2BookSnapshot.py +1 -1
- architect_py/{grpc_client → grpc/models}/Marketdata/L2BookSnapshotRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/Liquidation.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/MarketStatus.py +1 -1
- architect_py/{grpc_client → grpc/models}/Marketdata/MarketStatusRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeCandlesRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeCurrentCandlesRequest.py +3 -4
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeL1BookSnapshotsRequest.py +6 -3
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeL2BookUpdatesRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeLiquidationsRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeManyCandlesRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeTickersRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/SubscribeTradesRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/Ticker.py +1 -1
- architect_py/{grpc_client → grpc/models}/Marketdata/TickerRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/TickersRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Marketdata/TickersResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Marketdata/Trade.py +2 -2
- architect_py/grpc/models/Marketdata/__init__.py +2 -0
- architect_py/grpc/models/Oms/Cancel.py +90 -0
- architect_py/{grpc_client → grpc/models}/Oms/CancelAllOrdersRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Oms/CancelAllOrdersResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Oms/CancelOrderRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Oms/OpenOrdersRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Oms/OpenOrdersResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Oms/Order.py +6 -13
- architect_py/{grpc_client → grpc/models}/Oms/PendingCancelsRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Oms/PendingCancelsResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Oms/PlaceOrderRequest.py +16 -23
- architect_py/grpc/models/Oms/__init__.py +2 -0
- architect_py/grpc/models/OptionsMarketdata/OptionsChain.py +30 -0
- architect_py/grpc/models/OptionsMarketdata/OptionsChainGreeks.py +30 -0
- architect_py/grpc/models/OptionsMarketdata/OptionsChainGreeksRequest.py +47 -0
- architect_py/grpc/models/OptionsMarketdata/OptionsChainRequest.py +45 -0
- architect_py/grpc/models/OptionsMarketdata/OptionsExpirations.py +29 -0
- architect_py/grpc/models/OptionsMarketdata/OptionsExpirationsRequest.py +42 -0
- architect_py/grpc/models/OptionsMarketdata/__init__.py +2 -0
- architect_py/{grpc_client → grpc/models}/Orderflow/DropcopyRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Orderflow/OrderflowRequest.py +1 -1
- architect_py/{grpc_client → grpc/models}/Orderflow/SubscribeOrderflowRequest.py +2 -2
- architect_py/grpc/models/Orderflow/__init__.py +2 -0
- architect_py/grpc/models/Symbology/DownloadProductCatalogRequest.py +42 -0
- architect_py/grpc/models/Symbology/DownloadProductCatalogResponse.py +27 -0
- architect_py/grpc/models/Symbology/ExecutionInfoRequest.py +47 -0
- architect_py/grpc/models/Symbology/ExecutionInfoResponse.py +27 -0
- architect_py/{grpc_client → grpc/models}/Symbology/PruneExpiredSymbolsRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Symbology/PruneExpiredSymbolsResponse.py +1 -1
- architect_py/{grpc_client → grpc/models}/Symbology/SubscribeSymbology.py +1 -1
- architect_py/{grpc_client → grpc/models}/Symbology/SymbologyRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Symbology/SymbologySnapshot.py +7 -2
- architect_py/{grpc_client → grpc/models}/Symbology/SymbologyUpdate.py +9 -2
- architect_py/{grpc_client → grpc/models}/Symbology/SymbolsRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Symbology/SymbolsResponse.py +1 -1
- architect_py/grpc/models/Symbology/UploadProductCatalogRequest.py +49 -0
- architect_py/grpc/models/Symbology/UploadProductCatalogResponse.py +20 -0
- architect_py/{grpc_client → grpc/models}/Symbology/UploadSymbologyRequest.py +2 -2
- architect_py/{grpc_client → grpc/models}/Symbology/UploadSymbologyResponse.py +1 -1
- architect_py/grpc/models/Symbology/__init__.py +2 -0
- architect_py/grpc/models/__init__.py +2 -0
- architect_py/{grpc_client → grpc/models}/definitions.py +690 -841
- architect_py/grpc/resolve_endpoint.py +70 -0
- architect_py/{grpc_client/grpc_server.py → grpc/server.py} +9 -6
- architect_py/grpc/utils.py +32 -0
- architect_py/internal_utils/__init__.py +0 -0
- architect_py/internal_utils/no_pandas.py +3 -0
- architect_py/tests/conftest.py +91 -87
- architect_py/tests/test_book_building.py +49 -50
- architect_py/tests/test_marketdata.py +168 -0
- architect_py/tests/test_order_entry.py +37 -0
- architect_py/tests/test_orderflow.py +41 -0
- architect_py/tests/test_portfolio_management.py +23 -0
- architect_py/tests/test_rounding.py +28 -28
- architect_py/tests/test_symbology.py +37 -30
- architect_py/utils/nearest_tick.py +2 -5
- architect_py/utils/nearest_tick_2.py +1 -2
- architect_py/utils/orderbook.py +35 -0
- architect_py/utils/pandas.py +44 -0
- architect_py/utils/price_bands.py +0 -3
- architect_py/utils/symbol_parsing.py +29 -0
- architect_py-5.0.0b2.dist-info/METADATA +123 -0
- architect_py-5.0.0b2.dist-info/RECORD +214 -0
- {architect_py-3.2.2.dist-info → architect_py-5.0.0b2.dist-info}/WHEEL +2 -1
- architect_py-5.0.0b2.dist-info/top_level.txt +4 -0
- examples/__init__.py +0 -0
- examples/book_subscription.py +52 -0
- examples/candles.py +30 -0
- examples/common.py +116 -0
- examples/external_cpty.py +77 -0
- examples/funding_rate_mean_reversion_algo.py +186 -0
- examples/order_sending.py +91 -0
- examples/stream_l1_marketdata.py +25 -0
- examples/stream_l2_marketdata.py +38 -0
- examples/trades.py +21 -0
- examples/tutorial_async.py +86 -0
- examples/tutorial_sync.py +95 -0
- scripts/generate_functions_md.py +166 -0
- scripts/generate_sync_interface.py +226 -0
- scripts/postprocess_grpc.py +604 -0
- scripts/preprocess_grpc_schema.py +708 -0
- templates/exceptions.py +83 -0
- templates/juniper_base_client.py +371 -0
- architect_py/client_protocol.py +0 -53
- architect_py/grpc_client/Algo/AlgoOrderForTwapAlgo.py +0 -61
- architect_py/grpc_client/Algo/CreateAlgoOrderRequestForTwapAlgo.py +0 -59
- architect_py/grpc_client/Algo/ModifyAlgoOrderRequestForTwapAlgo.py +0 -45
- architect_py/grpc_client/Health/__init__.py +0 -2
- architect_py/grpc_client/Marketdata/__init__.py +0 -2
- architect_py/grpc_client/Oms/Cancel.py +0 -42
- architect_py/grpc_client/Oms/__init__.py +0 -2
- architect_py/grpc_client/Orderflow/__init__.py +0 -2
- architect_py/grpc_client/Symbology/__init__.py +0 -2
- architect_py/grpc_client/__init__.py +0 -2
- architect_py/grpc_client/grpc_client.py +0 -413
- architect_py/scalars.py +0 -172
- architect_py/tests/test_accounts.py +0 -31
- architect_py/tests/test_client.py +0 -29
- architect_py/tests/test_grpc_client.py +0 -30
- architect_py/tests/test_order_sending.py +0 -65
- architect_py/tests/test_snapshots.py +0 -52
- architect_py/tests/test_subscriptions.py +0 -126
- architect_py-3.2.2.dist-info/METADATA +0 -191
- architect_py-3.2.2.dist-info/RECORD +0 -148
- /architect_py/{grpc_client → grpc/models}/Marketdata/ArrayOfL1BookSnapshot.py +0 -0
- /architect_py/{grpc_client → grpc/models}/Marketdata/L2BookUpdate.py +0 -0
- /architect_py/{grpc_client → grpc/models}/Marketdata/TickerUpdate.py +0 -0
- /architect_py/{grpc_client → grpc/models}/Orderflow/Dropcopy.py +0 -0
- /architect_py/{grpc_client → grpc/models}/Orderflow/Orderflow.py +0 -0
- {architect_py-3.2.2.dist-info → architect_py-5.0.0b2.dist-info/licenses}/LICENSE +0 -0
@@ -2,7 +2,7 @@
|
|
2
2
|
# filename: definitions.json
|
3
3
|
|
4
4
|
from __future__ import annotations
|
5
|
-
from architect_py.
|
5
|
+
from architect_py.common_types import OrderDir
|
6
6
|
from datetime import datetime, timezone
|
7
7
|
|
8
8
|
from datetime import date, datetime, time
|
@@ -12,6 +12,8 @@ from typing import Annotated, Any, Dict, List, Literal, Optional, Union
|
|
12
12
|
|
13
13
|
from msgspec import Meta, Struct
|
14
14
|
|
15
|
+
from .Marketdata.Ticker import Ticker
|
16
|
+
|
15
17
|
Model = Any
|
16
18
|
|
17
19
|
|
@@ -49,7 +51,7 @@ class AccountPosition(Struct, omit_defaults=True):
|
|
49
51
|
Unrealized PNL of the position, if known.
|
50
52
|
"""
|
51
53
|
|
52
|
-
#
|
54
|
+
# Constructor that takes all field titles as arguments for convenience
|
53
55
|
@classmethod
|
54
56
|
def new(
|
55
57
|
cls,
|
@@ -131,7 +133,7 @@ class AccountStatistics(Struct, omit_defaults=True):
|
|
131
133
|
Yesterday total account equity.
|
132
134
|
"""
|
133
135
|
|
134
|
-
#
|
136
|
+
# Constructor that takes all field titles as arguments for convenience
|
135
137
|
@classmethod
|
136
138
|
def new(
|
137
139
|
cls,
|
@@ -159,32 +161,33 @@ class AccountStatistics(Struct, omit_defaults=True):
|
|
159
161
|
return f"AccountStatistics(cash_excess={self.cash_excess},equity={self.equity},position_margin={self.position_margin},purchasing_power={self.purchasing_power},realized_pnl={self.realized_pnl},total_margin={self.total_margin},unrealized_pnl={self.unrealized_pnl},yesterday_equity={self.yesterday_equity})"
|
160
162
|
|
161
163
|
|
162
|
-
class
|
163
|
-
|
164
|
-
|
165
|
-
|
164
|
+
class AlgoOrderStatus(int, Enum):
|
165
|
+
Working = 1
|
166
|
+
Rejected = 2
|
167
|
+
Paused = 63
|
168
|
+
Stopped = 127
|
166
169
|
|
167
170
|
|
168
|
-
class CancelStatus(
|
169
|
-
Pending =
|
170
|
-
Acked =
|
171
|
-
Rejected =
|
172
|
-
Out =
|
171
|
+
class CancelStatus(int, Enum):
|
172
|
+
Pending = 0
|
173
|
+
Acked = 1
|
174
|
+
Rejected = 2
|
175
|
+
Out = 127
|
173
176
|
|
174
177
|
|
175
|
-
class CandleWidth(
|
176
|
-
OneSecond =
|
177
|
-
FiveSecond =
|
178
|
-
OneMinute =
|
179
|
-
FifteenMinute =
|
180
|
-
OneHour =
|
181
|
-
OneDay =
|
178
|
+
class CandleWidth(int, Enum):
|
179
|
+
OneSecond = 1
|
180
|
+
FiveSecond = 5
|
181
|
+
OneMinute = 60
|
182
|
+
FifteenMinute = 900
|
183
|
+
OneHour = 3600
|
184
|
+
OneDay = 86400
|
182
185
|
|
183
186
|
|
184
187
|
class CptyLogoutRequest(Struct, omit_defaults=True):
|
185
188
|
pass
|
186
189
|
|
187
|
-
#
|
190
|
+
# Constructor that takes all field titles as arguments for convenience
|
188
191
|
@classmethod
|
189
192
|
def new(
|
190
193
|
cls,
|
@@ -195,6 +198,35 @@ class CptyLogoutRequest(Struct, omit_defaults=True):
|
|
195
198
|
return f"CptyLogoutRequest()"
|
196
199
|
|
197
200
|
|
201
|
+
DateTimeOrUtc = datetime
|
202
|
+
|
203
|
+
|
204
|
+
class Deposit(Struct, omit_defaults=True):
|
205
|
+
account: str
|
206
|
+
amount: Decimal
|
207
|
+
description: str
|
208
|
+
timestamp: datetime
|
209
|
+
|
210
|
+
# Constructor that takes all field titles as arguments for convenience
|
211
|
+
@classmethod
|
212
|
+
def new(
|
213
|
+
cls,
|
214
|
+
account: str,
|
215
|
+
amount: Decimal,
|
216
|
+
description: str,
|
217
|
+
timestamp: datetime,
|
218
|
+
):
|
219
|
+
return cls(
|
220
|
+
account,
|
221
|
+
amount,
|
222
|
+
description,
|
223
|
+
timestamp,
|
224
|
+
)
|
225
|
+
|
226
|
+
def __str__(self) -> str:
|
227
|
+
return f"Deposit(account={self.account},amount={self.amount},description={self.description},timestamp={self.timestamp})"
|
228
|
+
|
229
|
+
|
198
230
|
class HealthMetric(Struct, omit_defaults=True):
|
199
231
|
timestamp: int
|
200
232
|
value: float
|
@@ -203,7 +235,7 @@ class HealthMetric(Struct, omit_defaults=True):
|
|
203
235
|
should_be_less_than: Optional[float] = None
|
204
236
|
should_be_less_than_or_equal_to: Optional[float] = None
|
205
237
|
|
206
|
-
#
|
238
|
+
# Constructor that takes all field titles as arguments for convenience
|
207
239
|
@classmethod
|
208
240
|
def new(
|
209
241
|
cls,
|
@@ -270,7 +302,7 @@ class L2BookDiff(Struct, omit_defaults=True):
|
|
270
302
|
tn: Annotated[int, Meta(ge=0, title="timestamp_ns")]
|
271
303
|
ts: Annotated[int, Meta(title="timestamp")]
|
272
304
|
|
273
|
-
#
|
305
|
+
# Constructor that takes all field titles as arguments for convenience
|
274
306
|
@classmethod
|
275
307
|
def new(
|
276
308
|
cls,
|
@@ -350,34 +382,15 @@ class L2BookDiff(Struct, omit_defaults=True):
|
|
350
382
|
return datetime.fromtimestamp(self.ts)
|
351
383
|
|
352
384
|
|
353
|
-
|
354
|
-
""
|
355
|
-
|
356
|
-
"""
|
357
|
-
|
358
|
-
seqid: str
|
359
|
-
seqno: Annotated[int, Meta(ge=0)]
|
360
|
-
|
361
|
-
# below is a constructor that takes all field titles as arguments for convenience
|
362
|
-
@classmethod
|
363
|
-
def new(
|
364
|
-
cls,
|
365
|
-
seqid: str,
|
366
|
-
seqno: int,
|
367
|
-
):
|
368
|
-
return cls(
|
369
|
-
seqid,
|
370
|
-
seqno,
|
371
|
-
)
|
372
|
-
|
373
|
-
def __str__(self) -> str:
|
374
|
-
return f"OrderId(seqid={self.seqid},seqno={self.seqno})"
|
385
|
+
OrderId = Annotated[
|
386
|
+
str, Meta(description="System-unique, persistent order identifiers")
|
387
|
+
]
|
375
388
|
|
376
389
|
|
377
390
|
class OrderOut(Struct, omit_defaults=True):
|
378
391
|
id: OrderId
|
379
392
|
|
380
|
-
#
|
393
|
+
# Constructor that takes all field titles as arguments for convenience
|
381
394
|
@classmethod
|
382
395
|
def new(
|
383
396
|
cls,
|
@@ -405,20 +418,20 @@ class OrderRejectReason(str, Enum):
|
|
405
418
|
Unknown = "Unknown"
|
406
419
|
|
407
420
|
|
408
|
-
class OrderSource(
|
409
|
-
API =
|
410
|
-
GUI =
|
411
|
-
Algo =
|
412
|
-
Reconciled =
|
413
|
-
CLI =
|
414
|
-
Telegram =
|
415
|
-
Other =
|
421
|
+
class OrderSource(int, Enum):
|
422
|
+
API = 0
|
423
|
+
GUI = 1
|
424
|
+
Algo = 2
|
425
|
+
Reconciled = 3
|
426
|
+
CLI = 4
|
427
|
+
Telegram = 5
|
428
|
+
Other = 255
|
416
429
|
|
417
430
|
|
418
431
|
class OrderStale(Struct, omit_defaults=True):
|
419
432
|
id: OrderId
|
420
433
|
|
421
|
-
#
|
434
|
+
# Constructor that takes all field titles as arguments for convenience
|
422
435
|
@classmethod
|
423
436
|
def new(
|
424
437
|
cls,
|
@@ -432,16 +445,266 @@ class OrderStale(Struct, omit_defaults=True):
|
|
432
445
|
return f"OrderStale(id={self.id})"
|
433
446
|
|
434
447
|
|
435
|
-
class OrderStatus(
|
436
|
-
Pending =
|
437
|
-
Open =
|
438
|
-
Rejected =
|
439
|
-
Out =
|
440
|
-
Canceling =
|
441
|
-
Canceled =
|
442
|
-
ReconciledOut =
|
443
|
-
Stale =
|
444
|
-
Unknown =
|
448
|
+
class OrderStatus(int, Enum):
|
449
|
+
Pending = 0
|
450
|
+
Open = 1
|
451
|
+
Rejected = 2
|
452
|
+
Out = 127
|
453
|
+
Canceling = 128
|
454
|
+
Canceled = 129
|
455
|
+
ReconciledOut = 130
|
456
|
+
Stale = 254
|
457
|
+
Unknown = 255
|
458
|
+
|
459
|
+
|
460
|
+
class OrderType(str, Enum):
|
461
|
+
LIMIT = "LIMIT"
|
462
|
+
STOP_LOSS_LIMIT = "STOP_LOSS_LIMIT"
|
463
|
+
TAKE_PROFIT_LIMIT = "TAKE_PROFIT_LIMIT"
|
464
|
+
|
465
|
+
|
466
|
+
class ProductCatalogInfo(Struct, omit_defaults=True):
|
467
|
+
"""
|
468
|
+
Loosely normalized information about exchange products; used to seed symbology loaders and populate extended product info;
|
469
|
+
|
470
|
+
Symbology loaders will use catalog fields to augment and/or cross-check any other load source.
|
471
|
+
"""
|
472
|
+
|
473
|
+
exchange: str
|
474
|
+
exchange_product: Annotated[str, Meta(description="Could be anything really")]
|
475
|
+
"""
|
476
|
+
Could be anything really
|
477
|
+
"""
|
478
|
+
category: Optional[str] = None
|
479
|
+
cqg_contract_symbol: Optional[str] = None
|
480
|
+
info_url: Optional[
|
481
|
+
Annotated[Optional[str], Meta(description="URL to more product info")]
|
482
|
+
] = None
|
483
|
+
"""
|
484
|
+
URL to more product info
|
485
|
+
"""
|
486
|
+
long_description: Optional[str] = None
|
487
|
+
multiplier: Optional[
|
488
|
+
Annotated[
|
489
|
+
Optional[Decimal],
|
490
|
+
Meta(description="For derivatives contracts, the multiplier"),
|
491
|
+
]
|
492
|
+
] = None
|
493
|
+
"""
|
494
|
+
For derivatives contracts, the multiplier
|
495
|
+
"""
|
496
|
+
price_display_format: Optional[str] = None
|
497
|
+
quote_currency: Optional[str] = None
|
498
|
+
schedule_description: Optional[str] = None
|
499
|
+
settle_method: Optional[str] = None
|
500
|
+
short_description: Optional[
|
501
|
+
Annotated[
|
502
|
+
Optional[str],
|
503
|
+
Meta(
|
504
|
+
description="Short description of the product, suitable for display in a bubble, for example"
|
505
|
+
),
|
506
|
+
]
|
507
|
+
] = None
|
508
|
+
"""
|
509
|
+
Short description of the product, suitable for display in a bubble, for example
|
510
|
+
"""
|
511
|
+
sub_category: Optional[str] = None
|
512
|
+
|
513
|
+
# Constructor that takes all field titles as arguments for convenience
|
514
|
+
@classmethod
|
515
|
+
def new(
|
516
|
+
cls,
|
517
|
+
exchange: str,
|
518
|
+
exchange_product: str,
|
519
|
+
category: Optional[str] = None,
|
520
|
+
cqg_contract_symbol: Optional[str] = None,
|
521
|
+
info_url: Optional[str] = None,
|
522
|
+
long_description: Optional[str] = None,
|
523
|
+
multiplier: Optional[Decimal] = None,
|
524
|
+
price_display_format: Optional[str] = None,
|
525
|
+
quote_currency: Optional[str] = None,
|
526
|
+
schedule_description: Optional[str] = None,
|
527
|
+
settle_method: Optional[str] = None,
|
528
|
+
short_description: Optional[str] = None,
|
529
|
+
sub_category: Optional[str] = None,
|
530
|
+
):
|
531
|
+
return cls(
|
532
|
+
exchange,
|
533
|
+
exchange_product,
|
534
|
+
category,
|
535
|
+
cqg_contract_symbol,
|
536
|
+
info_url,
|
537
|
+
long_description,
|
538
|
+
multiplier,
|
539
|
+
price_display_format,
|
540
|
+
quote_currency,
|
541
|
+
schedule_description,
|
542
|
+
settle_method,
|
543
|
+
short_description,
|
544
|
+
sub_category,
|
545
|
+
)
|
546
|
+
|
547
|
+
def __str__(self) -> str:
|
548
|
+
return f"ProductCatalogInfo(exchange={self.exchange},exchange_product={self.exchange_product},category={self.category},cqg_contract_symbol={self.cqg_contract_symbol},info_url={self.info_url},long_description={self.long_description},multiplier={self.multiplier},price_display_format={self.price_display_format},quote_currency={self.quote_currency},schedule_description={self.schedule_description},settle_method={self.settle_method},short_description={self.short_description},sub_category={self.sub_category})"
|
549
|
+
|
550
|
+
|
551
|
+
class RqdAccountStatistics(Struct, omit_defaults=True):
|
552
|
+
account_number: str
|
553
|
+
account_type: Optional[str] = None
|
554
|
+
as_of_date: Optional[str] = None
|
555
|
+
available_cash_balance: Optional[Decimal] = None
|
556
|
+
cash_available_for_withdrawal: Optional[Decimal] = None
|
557
|
+
cumulative_day_trade_pnl: Optional[Decimal] = None
|
558
|
+
day_trading_buying_power: Optional[Decimal] = None
|
559
|
+
day_trading_buying_power_high_water_mark: Optional[Decimal] = None
|
560
|
+
day_trading_buying_power_maintenance_margin_multiplier: Optional[Decimal] = None
|
561
|
+
day_trading_house_minimum_equity_margin_call_amount: Optional[Decimal] = None
|
562
|
+
day_trading_margin_call_amount: Optional[Decimal] = None
|
563
|
+
day_trading_minimum_equity_margin_call_amount: Optional[Decimal] = None
|
564
|
+
excess_sma_amount: Optional[Decimal] = None
|
565
|
+
house_initial_margin_requirement_adjustment_factor: Optional[Decimal] = None
|
566
|
+
house_margin_call_amount: Optional[Decimal] = None
|
567
|
+
house_margin_requirement: Optional[Decimal] = None
|
568
|
+
house_margin_requirement_adjustment_factor: Optional[Decimal] = None
|
569
|
+
is_day_trader: Optional[str] = None
|
570
|
+
maintenance_margin_requirement: Optional[Decimal] = None
|
571
|
+
margin_call_amount: Optional[Decimal] = None
|
572
|
+
marginable_equity: Optional[Decimal] = None
|
573
|
+
market_value_adjustment_factor: Optional[Decimal] = None
|
574
|
+
number_open_day_trading_margin_calls: Optional[Decimal] = None
|
575
|
+
option_only_maintenance_margin_requirement: Optional[Decimal] = None
|
576
|
+
option_trade_date_short_market_value: Optional[Decimal] = None
|
577
|
+
overall_current_sma_balance: Optional[Decimal] = None
|
578
|
+
overnight_buying_power: Optional[Decimal] = None
|
579
|
+
reg_t_initial_margin_requirement: Optional[Decimal] = None
|
580
|
+
reg_t_maintenance_margin_requirement_adjustment_factor: Optional[str] = None
|
581
|
+
reg_t_margin_call_amount: Optional[Decimal] = None
|
582
|
+
settlement_date_cash_balance: Optional[Decimal] = None
|
583
|
+
settlement_date_long_market_value: Optional[Decimal] = None
|
584
|
+
settlement_date_option_long_market_value: Optional[Decimal] = None
|
585
|
+
settlement_date_option_short_market_value: Optional[Decimal] = None
|
586
|
+
settlement_date_short_market_value: Optional[Decimal] = None
|
587
|
+
start_of_day_day_trading_buying_power: Optional[Decimal] = None
|
588
|
+
start_of_day_day_trading_buying_power_margin_call_amount: Optional[Decimal] = None
|
589
|
+
start_of_day_house_margin_call_amount: Optional[Decimal] = None
|
590
|
+
start_of_day_maintenance_margin_call_amount: Optional[Decimal] = None
|
591
|
+
start_of_day_reg_t_margin_call_amount: Optional[Decimal] = None
|
592
|
+
strategy_based_relief_adjustment_factor: Optional[Decimal] = None
|
593
|
+
total_equity: Optional[Decimal] = None
|
594
|
+
trade_date_cash_balance: Optional[Decimal] = None
|
595
|
+
trade_date_option_long_market_value: Optional[Decimal] = None
|
596
|
+
trade_date_total_long_market_value: Optional[Decimal] = None
|
597
|
+
trade_date_total_short_market_value: Optional[Decimal] = None
|
598
|
+
usable_sma_balance: Optional[Decimal] = None
|
599
|
+
|
600
|
+
# Constructor that takes all field titles as arguments for convenience
|
601
|
+
@classmethod
|
602
|
+
def new(
|
603
|
+
cls,
|
604
|
+
account_number: str,
|
605
|
+
account_type: Optional[str] = None,
|
606
|
+
as_of_date: Optional[str] = None,
|
607
|
+
available_cash_balance: Optional[Decimal] = None,
|
608
|
+
cash_available_for_withdrawal: Optional[Decimal] = None,
|
609
|
+
cumulative_day_trade_pnl: Optional[Decimal] = None,
|
610
|
+
day_trading_buying_power: Optional[Decimal] = None,
|
611
|
+
day_trading_buying_power_high_water_mark: Optional[Decimal] = None,
|
612
|
+
day_trading_buying_power_maintenance_margin_multiplier: Optional[
|
613
|
+
Decimal
|
614
|
+
] = None,
|
615
|
+
day_trading_house_minimum_equity_margin_call_amount: Optional[Decimal] = None,
|
616
|
+
day_trading_margin_call_amount: Optional[Decimal] = None,
|
617
|
+
day_trading_minimum_equity_margin_call_amount: Optional[Decimal] = None,
|
618
|
+
excess_sma_amount: Optional[Decimal] = None,
|
619
|
+
house_initial_margin_requirement_adjustment_factor: Optional[Decimal] = None,
|
620
|
+
house_margin_call_amount: Optional[Decimal] = None,
|
621
|
+
house_margin_requirement: Optional[Decimal] = None,
|
622
|
+
house_margin_requirement_adjustment_factor: Optional[Decimal] = None,
|
623
|
+
is_day_trader: Optional[str] = None,
|
624
|
+
maintenance_margin_requirement: Optional[Decimal] = None,
|
625
|
+
margin_call_amount: Optional[Decimal] = None,
|
626
|
+
marginable_equity: Optional[Decimal] = None,
|
627
|
+
market_value_adjustment_factor: Optional[Decimal] = None,
|
628
|
+
number_open_day_trading_margin_calls: Optional[Decimal] = None,
|
629
|
+
option_only_maintenance_margin_requirement: Optional[Decimal] = None,
|
630
|
+
option_trade_date_short_market_value: Optional[Decimal] = None,
|
631
|
+
overall_current_sma_balance: Optional[Decimal] = None,
|
632
|
+
overnight_buying_power: Optional[Decimal] = None,
|
633
|
+
reg_t_initial_margin_requirement: Optional[Decimal] = None,
|
634
|
+
reg_t_maintenance_margin_requirement_adjustment_factor: Optional[str] = None,
|
635
|
+
reg_t_margin_call_amount: Optional[Decimal] = None,
|
636
|
+
settlement_date_cash_balance: Optional[Decimal] = None,
|
637
|
+
settlement_date_long_market_value: Optional[Decimal] = None,
|
638
|
+
settlement_date_option_long_market_value: Optional[Decimal] = None,
|
639
|
+
settlement_date_option_short_market_value: Optional[Decimal] = None,
|
640
|
+
settlement_date_short_market_value: Optional[Decimal] = None,
|
641
|
+
start_of_day_day_trading_buying_power: Optional[Decimal] = None,
|
642
|
+
start_of_day_day_trading_buying_power_margin_call_amount: Optional[
|
643
|
+
Decimal
|
644
|
+
] = None,
|
645
|
+
start_of_day_house_margin_call_amount: Optional[Decimal] = None,
|
646
|
+
start_of_day_maintenance_margin_call_amount: Optional[Decimal] = None,
|
647
|
+
start_of_day_reg_t_margin_call_amount: Optional[Decimal] = None,
|
648
|
+
strategy_based_relief_adjustment_factor: Optional[Decimal] = None,
|
649
|
+
total_equity: Optional[Decimal] = None,
|
650
|
+
trade_date_cash_balance: Optional[Decimal] = None,
|
651
|
+
trade_date_option_long_market_value: Optional[Decimal] = None,
|
652
|
+
trade_date_total_long_market_value: Optional[Decimal] = None,
|
653
|
+
trade_date_total_short_market_value: Optional[Decimal] = None,
|
654
|
+
usable_sma_balance: Optional[Decimal] = None,
|
655
|
+
):
|
656
|
+
return cls(
|
657
|
+
account_number,
|
658
|
+
account_type,
|
659
|
+
as_of_date,
|
660
|
+
available_cash_balance,
|
661
|
+
cash_available_for_withdrawal,
|
662
|
+
cumulative_day_trade_pnl,
|
663
|
+
day_trading_buying_power,
|
664
|
+
day_trading_buying_power_high_water_mark,
|
665
|
+
day_trading_buying_power_maintenance_margin_multiplier,
|
666
|
+
day_trading_house_minimum_equity_margin_call_amount,
|
667
|
+
day_trading_margin_call_amount,
|
668
|
+
day_trading_minimum_equity_margin_call_amount,
|
669
|
+
excess_sma_amount,
|
670
|
+
house_initial_margin_requirement_adjustment_factor,
|
671
|
+
house_margin_call_amount,
|
672
|
+
house_margin_requirement,
|
673
|
+
house_margin_requirement_adjustment_factor,
|
674
|
+
is_day_trader,
|
675
|
+
maintenance_margin_requirement,
|
676
|
+
margin_call_amount,
|
677
|
+
marginable_equity,
|
678
|
+
market_value_adjustment_factor,
|
679
|
+
number_open_day_trading_margin_calls,
|
680
|
+
option_only_maintenance_margin_requirement,
|
681
|
+
option_trade_date_short_market_value,
|
682
|
+
overall_current_sma_balance,
|
683
|
+
overnight_buying_power,
|
684
|
+
reg_t_initial_margin_requirement,
|
685
|
+
reg_t_maintenance_margin_requirement_adjustment_factor,
|
686
|
+
reg_t_margin_call_amount,
|
687
|
+
settlement_date_cash_balance,
|
688
|
+
settlement_date_long_market_value,
|
689
|
+
settlement_date_option_long_market_value,
|
690
|
+
settlement_date_option_short_market_value,
|
691
|
+
settlement_date_short_market_value,
|
692
|
+
start_of_day_day_trading_buying_power,
|
693
|
+
start_of_day_day_trading_buying_power_margin_call_amount,
|
694
|
+
start_of_day_house_margin_call_amount,
|
695
|
+
start_of_day_maintenance_margin_call_amount,
|
696
|
+
start_of_day_reg_t_margin_call_amount,
|
697
|
+
strategy_based_relief_adjustment_factor,
|
698
|
+
total_equity,
|
699
|
+
trade_date_cash_balance,
|
700
|
+
trade_date_option_long_market_value,
|
701
|
+
trade_date_total_long_market_value,
|
702
|
+
trade_date_total_short_market_value,
|
703
|
+
usable_sma_balance,
|
704
|
+
)
|
705
|
+
|
706
|
+
def __str__(self) -> str:
|
707
|
+
return f"RqdAccountStatistics(account_number={self.account_number},account_type={self.account_type},as_of_date={self.as_of_date},available_cash_balance={self.available_cash_balance},cash_available_for_withdrawal={self.cash_available_for_withdrawal},cumulative_day_trade_pnl={self.cumulative_day_trade_pnl},day_trading_buying_power={self.day_trading_buying_power},day_trading_buying_power_high_water_mark={self.day_trading_buying_power_high_water_mark},day_trading_buying_power_maintenance_margin_multiplier={self.day_trading_buying_power_maintenance_margin_multiplier},day_trading_house_minimum_equity_margin_call_amount={self.day_trading_house_minimum_equity_margin_call_amount},day_trading_margin_call_amount={self.day_trading_margin_call_amount},day_trading_minimum_equity_margin_call_amount={self.day_trading_minimum_equity_margin_call_amount},excess_sma_amount={self.excess_sma_amount},house_initial_margin_requirement_adjustment_factor={self.house_initial_margin_requirement_adjustment_factor},house_margin_call_amount={self.house_margin_call_amount},house_margin_requirement={self.house_margin_requirement},house_margin_requirement_adjustment_factor={self.house_margin_requirement_adjustment_factor},is_day_trader={self.is_day_trader},maintenance_margin_requirement={self.maintenance_margin_requirement},margin_call_amount={self.margin_call_amount},marginable_equity={self.marginable_equity},market_value_adjustment_factor={self.market_value_adjustment_factor},number_open_day_trading_margin_calls={self.number_open_day_trading_margin_calls},option_only_maintenance_margin_requirement={self.option_only_maintenance_margin_requirement},option_trade_date_short_market_value={self.option_trade_date_short_market_value},overall_current_sma_balance={self.overall_current_sma_balance},overnight_buying_power={self.overnight_buying_power},reg_t_initial_margin_requirement={self.reg_t_initial_margin_requirement},reg_t_maintenance_margin_requirement_adjustment_factor={self.reg_t_maintenance_margin_requirement_adjustment_factor},reg_t_margin_call_amount={self.reg_t_margin_call_amount},settlement_date_cash_balance={self.settlement_date_cash_balance},settlement_date_long_market_value={self.settlement_date_long_market_value},settlement_date_option_long_market_value={self.settlement_date_option_long_market_value},settlement_date_option_short_market_value={self.settlement_date_option_short_market_value},settlement_date_short_market_value={self.settlement_date_short_market_value},start_of_day_day_trading_buying_power={self.start_of_day_day_trading_buying_power},start_of_day_day_trading_buying_power_margin_call_amount={self.start_of_day_day_trading_buying_power_margin_call_amount},start_of_day_house_margin_call_amount={self.start_of_day_house_margin_call_amount},start_of_day_maintenance_margin_call_amount={self.start_of_day_maintenance_margin_call_amount},start_of_day_reg_t_margin_call_amount={self.start_of_day_reg_t_margin_call_amount},strategy_based_relief_adjustment_factor={self.strategy_based_relief_adjustment_factor},total_equity={self.total_equity},trade_date_cash_balance={self.trade_date_cash_balance},trade_date_option_long_market_value={self.trade_date_option_long_market_value},trade_date_total_long_market_value={self.trade_date_total_long_market_value},trade_date_total_short_market_value={self.trade_date_total_short_market_value},usable_sma_balance={self.usable_sma_balance})"
|
445
708
|
|
446
709
|
|
447
710
|
class SortTickersBy(str, Enum):
|
@@ -451,10 +714,42 @@ class SortTickersBy(str, Enum):
|
|
451
714
|
ABS_CHANGE_DESC = "ABS_CHANGE_DESC"
|
452
715
|
|
453
716
|
|
717
|
+
class Statement(Struct, omit_defaults=True):
|
718
|
+
account: str
|
719
|
+
clearing_firm: str
|
720
|
+
filename: str
|
721
|
+
statement_date: date
|
722
|
+
statement_type: str
|
723
|
+
statement_uuid: str
|
724
|
+
|
725
|
+
# Constructor that takes all field titles as arguments for convenience
|
726
|
+
@classmethod
|
727
|
+
def new(
|
728
|
+
cls,
|
729
|
+
account: str,
|
730
|
+
clearing_firm: str,
|
731
|
+
filename: str,
|
732
|
+
statement_date: date,
|
733
|
+
statement_type: str,
|
734
|
+
statement_uuid: str,
|
735
|
+
):
|
736
|
+
return cls(
|
737
|
+
account,
|
738
|
+
clearing_firm,
|
739
|
+
filename,
|
740
|
+
statement_date,
|
741
|
+
statement_type,
|
742
|
+
statement_uuid,
|
743
|
+
)
|
744
|
+
|
745
|
+
def __str__(self) -> str:
|
746
|
+
return f"Statement(account={self.account},clearing_firm={self.clearing_firm},filename={self.filename},statement_date={self.statement_date},statement_type={self.statement_type},statement_uuid={self.statement_uuid})"
|
747
|
+
|
748
|
+
|
454
749
|
class GoodTilDate(Struct, omit_defaults=True):
|
455
750
|
GTD: datetime
|
456
751
|
|
457
|
-
#
|
752
|
+
# Constructor that takes all field titles as arguments for convenience
|
458
753
|
@classmethod
|
459
754
|
def new(
|
460
755
|
cls,
|
@@ -483,27 +778,33 @@ TimeInForce = Union[GoodTilDate, TimeInForceEnum]
|
|
483
778
|
TraderIdOrEmail = str
|
484
779
|
|
485
780
|
|
486
|
-
|
487
|
-
|
488
|
-
realized_twap: Optional[Decimal] = None
|
781
|
+
UserId = str
|
782
|
+
|
489
783
|
|
490
|
-
|
784
|
+
class Withdrawal(Struct, omit_defaults=True):
|
785
|
+
account: str
|
786
|
+
amount: Decimal
|
787
|
+
description: str
|
788
|
+
timestamp: datetime
|
789
|
+
|
790
|
+
# Constructor that takes all field titles as arguments for convenience
|
491
791
|
@classmethod
|
492
792
|
def new(
|
493
793
|
cls,
|
494
|
-
|
495
|
-
|
794
|
+
account: str,
|
795
|
+
amount: Decimal,
|
796
|
+
description: str,
|
797
|
+
timestamp: datetime,
|
496
798
|
):
|
497
799
|
return cls(
|
498
|
-
|
499
|
-
|
800
|
+
account,
|
801
|
+
amount,
|
802
|
+
description,
|
803
|
+
timestamp,
|
500
804
|
)
|
501
805
|
|
502
806
|
def __str__(self) -> str:
|
503
|
-
return f"
|
504
|
-
|
505
|
-
|
506
|
-
UserId = str
|
807
|
+
return f"Withdrawal(account={self.account},amount={self.amount},description={self.description},timestamp={self.timestamp})"
|
507
808
|
|
508
809
|
|
509
810
|
class AccountPermissions(Struct, omit_defaults=True):
|
@@ -517,7 +818,7 @@ class AccountPermissions(Struct, omit_defaults=True):
|
|
517
818
|
trade: bool
|
518
819
|
view: bool
|
519
820
|
|
520
|
-
#
|
821
|
+
# Constructor that takes all field titles as arguments for convenience
|
521
822
|
@classmethod
|
522
823
|
def new(
|
523
824
|
cls,
|
@@ -550,13 +851,10 @@ class DerivativeKind(str, Enum):
|
|
550
851
|
Quanto = "Quanto"
|
551
852
|
|
552
853
|
|
553
|
-
class FillKind(
|
554
|
-
Normal =
|
555
|
-
Reversal =
|
556
|
-
Correction =
|
557
|
-
|
558
|
-
|
559
|
-
HumanDuration = str
|
854
|
+
class FillKind(int, Enum):
|
855
|
+
Normal = 0
|
856
|
+
Reversal = 1
|
857
|
+
Correction = 2
|
560
858
|
|
561
859
|
|
562
860
|
class Unit(str, Enum):
|
@@ -567,7 +865,7 @@ class Unit(str, Enum):
|
|
567
865
|
class MinOrderQuantityUnit(Struct, omit_defaults=True):
|
568
866
|
unit: Unit
|
569
867
|
|
570
|
-
#
|
868
|
+
# Constructor that takes all field titles as arguments for convenience
|
571
869
|
@classmethod
|
572
870
|
def new(
|
573
871
|
cls,
|
@@ -593,7 +891,7 @@ PriceDisplayFormat = str
|
|
593
891
|
class Fiat(Struct, omit_defaults=True):
|
594
892
|
product_type: Literal["Fiat"]
|
595
893
|
|
596
|
-
#
|
894
|
+
# Constructor that takes all field titles as arguments for convenience
|
597
895
|
@classmethod
|
598
896
|
def new(
|
599
897
|
cls,
|
@@ -610,7 +908,7 @@ class Fiat(Struct, omit_defaults=True):
|
|
610
908
|
class Commodity(Struct, omit_defaults=True):
|
611
909
|
product_type: Literal["Commodity"]
|
612
910
|
|
613
|
-
#
|
911
|
+
# Constructor that takes all field titles as arguments for convenience
|
614
912
|
@classmethod
|
615
913
|
def new(
|
616
914
|
cls,
|
@@ -627,7 +925,7 @@ class Commodity(Struct, omit_defaults=True):
|
|
627
925
|
class Crypto(Struct, omit_defaults=True):
|
628
926
|
product_type: Literal["Crypto"]
|
629
927
|
|
630
|
-
#
|
928
|
+
# Constructor that takes all field titles as arguments for convenience
|
631
929
|
@classmethod
|
632
930
|
def new(
|
633
931
|
cls,
|
@@ -645,7 +943,7 @@ class Equity(Struct, omit_defaults=True):
|
|
645
943
|
product_type: Literal["Equity"]
|
646
944
|
easy_to_borrow: Optional[bool] = None
|
647
945
|
|
648
|
-
#
|
946
|
+
# Constructor that takes all field titles as arguments for convenience
|
649
947
|
@classmethod
|
650
948
|
def new(
|
651
949
|
cls,
|
@@ -664,7 +962,7 @@ class Equity(Struct, omit_defaults=True):
|
|
664
962
|
class Index(Struct, omit_defaults=True):
|
665
963
|
product_type: Literal["Index"]
|
666
964
|
|
667
|
-
#
|
965
|
+
# Constructor that takes all field titles as arguments for convenience
|
668
966
|
@classmethod
|
669
967
|
def new(
|
670
968
|
cls,
|
@@ -687,7 +985,7 @@ class Future(Struct, omit_defaults=True):
|
|
687
985
|
series: Optional[str] = None
|
688
986
|
underlying: Optional[str] = None
|
689
987
|
|
690
|
-
#
|
988
|
+
# Constructor that takes all field titles as arguments for convenience
|
691
989
|
@classmethod
|
692
990
|
def new(
|
693
991
|
cls,
|
@@ -719,7 +1017,7 @@ class Perpetual(Struct, omit_defaults=True):
|
|
719
1017
|
product_type: Literal["Perpetual"]
|
720
1018
|
underlying: Optional[str] = None
|
721
1019
|
|
722
|
-
#
|
1020
|
+
# Constructor that takes all field titles as arguments for convenience
|
723
1021
|
@classmethod
|
724
1022
|
def new(
|
725
1023
|
cls,
|
@@ -742,7 +1040,7 @@ class Perpetual(Struct, omit_defaults=True):
|
|
742
1040
|
class Unknown(Struct, omit_defaults=True):
|
743
1041
|
product_type: Literal["Unknown"]
|
744
1042
|
|
745
|
-
#
|
1043
|
+
# Constructor that takes all field titles as arguments for convenience
|
746
1044
|
@classmethod
|
747
1045
|
def new(
|
748
1046
|
cls,
|
@@ -756,10 +1054,62 @@ class Unknown(Struct, omit_defaults=True):
|
|
756
1054
|
return f"Unknown(product_type={self.product_type})"
|
757
1055
|
|
758
1056
|
|
1057
|
+
class PutOrCall(str, Enum):
|
1058
|
+
P = "P"
|
1059
|
+
C = "C"
|
1060
|
+
|
1061
|
+
|
1062
|
+
class SnapshotOrUpdateForStringAndProductCatalogInfo1(Struct, omit_defaults=True):
|
1063
|
+
snapshot: Dict[str, ProductCatalogInfo]
|
1064
|
+
|
1065
|
+
# Constructor that takes all field titles as arguments for convenience
|
1066
|
+
@classmethod
|
1067
|
+
def new(
|
1068
|
+
cls,
|
1069
|
+
snapshot: Dict[str, ProductCatalogInfo],
|
1070
|
+
):
|
1071
|
+
return cls(
|
1072
|
+
snapshot,
|
1073
|
+
)
|
1074
|
+
|
1075
|
+
def __str__(self) -> str:
|
1076
|
+
return (
|
1077
|
+
f"SnapshotOrUpdateForStringAndProductCatalogInfo1(snapshot={self.snapshot})"
|
1078
|
+
)
|
1079
|
+
|
1080
|
+
|
1081
|
+
Update6 = List[Union[str, Optional[ProductCatalogInfo]]]
|
1082
|
+
|
1083
|
+
|
1084
|
+
class SnapshotOrUpdateForStringAndProductCatalogInfo2(Struct, omit_defaults=True):
|
1085
|
+
updates: List[Update6]
|
1086
|
+
|
1087
|
+
# Constructor that takes all field titles as arguments for convenience
|
1088
|
+
@classmethod
|
1089
|
+
def new(
|
1090
|
+
cls,
|
1091
|
+
updates: List[Update6],
|
1092
|
+
):
|
1093
|
+
return cls(
|
1094
|
+
updates,
|
1095
|
+
)
|
1096
|
+
|
1097
|
+
def __str__(self) -> str:
|
1098
|
+
return (
|
1099
|
+
f"SnapshotOrUpdateForStringAndProductCatalogInfo2(updates={self.updates})"
|
1100
|
+
)
|
1101
|
+
|
1102
|
+
|
1103
|
+
SnapshotOrUpdateForStringAndProductCatalogInfo = Union[
|
1104
|
+
SnapshotOrUpdateForStringAndProductCatalogInfo1,
|
1105
|
+
SnapshotOrUpdateForStringAndProductCatalogInfo2,
|
1106
|
+
]
|
1107
|
+
|
1108
|
+
|
759
1109
|
class SnapshotOrUpdateForStringAndString1(Struct, omit_defaults=True):
|
760
1110
|
snapshot: Dict[str, str]
|
761
1111
|
|
762
|
-
#
|
1112
|
+
# Constructor that takes all field titles as arguments for convenience
|
763
1113
|
@classmethod
|
764
1114
|
def new(
|
765
1115
|
cls,
|
@@ -773,17 +1123,17 @@ class SnapshotOrUpdateForStringAndString1(Struct, omit_defaults=True):
|
|
773
1123
|
return f"SnapshotOrUpdateForStringAndString1(snapshot={self.snapshot})"
|
774
1124
|
|
775
1125
|
|
776
|
-
|
1126
|
+
Update7 = List[Union[str, Optional[str]]]
|
777
1127
|
|
778
1128
|
|
779
1129
|
class SnapshotOrUpdateForStringAndString2(Struct, omit_defaults=True):
|
780
|
-
updates: List[
|
1130
|
+
updates: List[Update7]
|
781
1131
|
|
782
|
-
#
|
1132
|
+
# Constructor that takes all field titles as arguments for convenience
|
783
1133
|
@classmethod
|
784
1134
|
def new(
|
785
1135
|
cls,
|
786
|
-
updates: List[
|
1136
|
+
updates: List[Update7],
|
787
1137
|
):
|
788
1138
|
return cls(
|
789
1139
|
updates,
|
@@ -801,7 +1151,7 @@ SnapshotOrUpdateForStringAndString = Union[
|
|
801
1151
|
class SimpleDecimal(Struct, omit_defaults=True):
|
802
1152
|
simple: Decimal
|
803
1153
|
|
804
|
-
#
|
1154
|
+
# Constructor that takes all field titles as arguments for convenience
|
805
1155
|
@classmethod
|
806
1156
|
def new(
|
807
1157
|
cls,
|
@@ -821,7 +1171,7 @@ Threshold = List[Decimal]
|
|
821
1171
|
class Varying1(Struct, omit_defaults=True):
|
822
1172
|
thresholds: List[Threshold]
|
823
1173
|
|
824
|
-
#
|
1174
|
+
# Constructor that takes all field titles as arguments for convenience
|
825
1175
|
@classmethod
|
826
1176
|
def new(
|
827
1177
|
cls,
|
@@ -842,7 +1192,7 @@ class Varying(Struct, omit_defaults=True):
|
|
842
1192
|
|
843
1193
|
varying: Varying1
|
844
1194
|
|
845
|
-
#
|
1195
|
+
# Constructor that takes all field titles as arguments for convenience
|
846
1196
|
@classmethod
|
847
1197
|
def new(
|
848
1198
|
cls,
|
@@ -859,606 +1209,6 @@ class Varying(Struct, omit_defaults=True):
|
|
859
1209
|
TickSize = Union[SimpleDecimal, Varying]
|
860
1210
|
|
861
1211
|
|
862
|
-
class TimeZone(str, Enum):
|
863
|
-
Africa_Abidjan = "Africa/Abidjan"
|
864
|
-
Africa_Accra = "Africa/Accra"
|
865
|
-
Africa_Addis_Ababa = "Africa/Addis_Ababa"
|
866
|
-
Africa_Algiers = "Africa/Algiers"
|
867
|
-
Africa_Asmara = "Africa/Asmara"
|
868
|
-
Africa_Asmera = "Africa/Asmera"
|
869
|
-
Africa_Bamako = "Africa/Bamako"
|
870
|
-
Africa_Bangui = "Africa/Bangui"
|
871
|
-
Africa_Banjul = "Africa/Banjul"
|
872
|
-
Africa_Bissau = "Africa/Bissau"
|
873
|
-
Africa_Blantyre = "Africa/Blantyre"
|
874
|
-
Africa_Brazzaville = "Africa/Brazzaville"
|
875
|
-
Africa_Bujumbura = "Africa/Bujumbura"
|
876
|
-
Africa_Cairo = "Africa/Cairo"
|
877
|
-
Africa_Casablanca = "Africa/Casablanca"
|
878
|
-
Africa_Ceuta = "Africa/Ceuta"
|
879
|
-
Africa_Conakry = "Africa/Conakry"
|
880
|
-
Africa_Dakar = "Africa/Dakar"
|
881
|
-
Africa_Dar_es_Salaam = "Africa/Dar_es_Salaam"
|
882
|
-
Africa_Djibouti = "Africa/Djibouti"
|
883
|
-
Africa_Douala = "Africa/Douala"
|
884
|
-
Africa_El_Aaiun = "Africa/El_Aaiun"
|
885
|
-
Africa_Freetown = "Africa/Freetown"
|
886
|
-
Africa_Gaborone = "Africa/Gaborone"
|
887
|
-
Africa_Harare = "Africa/Harare"
|
888
|
-
Africa_Johannesburg = "Africa/Johannesburg"
|
889
|
-
Africa_Juba = "Africa/Juba"
|
890
|
-
Africa_Kampala = "Africa/Kampala"
|
891
|
-
Africa_Khartoum = "Africa/Khartoum"
|
892
|
-
Africa_Kigali = "Africa/Kigali"
|
893
|
-
Africa_Kinshasa = "Africa/Kinshasa"
|
894
|
-
Africa_Lagos = "Africa/Lagos"
|
895
|
-
Africa_Libreville = "Africa/Libreville"
|
896
|
-
Africa_Lome = "Africa/Lome"
|
897
|
-
Africa_Luanda = "Africa/Luanda"
|
898
|
-
Africa_Lubumbashi = "Africa/Lubumbashi"
|
899
|
-
Africa_Lusaka = "Africa/Lusaka"
|
900
|
-
Africa_Malabo = "Africa/Malabo"
|
901
|
-
Africa_Maputo = "Africa/Maputo"
|
902
|
-
Africa_Maseru = "Africa/Maseru"
|
903
|
-
Africa_Mbabane = "Africa/Mbabane"
|
904
|
-
Africa_Mogadishu = "Africa/Mogadishu"
|
905
|
-
Africa_Monrovia = "Africa/Monrovia"
|
906
|
-
Africa_Nairobi = "Africa/Nairobi"
|
907
|
-
Africa_Ndjamena = "Africa/Ndjamena"
|
908
|
-
Africa_Niamey = "Africa/Niamey"
|
909
|
-
Africa_Nouakchott = "Africa/Nouakchott"
|
910
|
-
Africa_Ouagadougou = "Africa/Ouagadougou"
|
911
|
-
Africa_Porto_Novo = "Africa/Porto-Novo"
|
912
|
-
Africa_Sao_Tome = "Africa/Sao_Tome"
|
913
|
-
Africa_Timbuktu = "Africa/Timbuktu"
|
914
|
-
Africa_Tripoli = "Africa/Tripoli"
|
915
|
-
Africa_Tunis = "Africa/Tunis"
|
916
|
-
Africa_Windhoek = "Africa/Windhoek"
|
917
|
-
America_Adak = "America/Adak"
|
918
|
-
America_Anchorage = "America/Anchorage"
|
919
|
-
America_Anguilla = "America/Anguilla"
|
920
|
-
America_Antigua = "America/Antigua"
|
921
|
-
America_Araguaina = "America/Araguaina"
|
922
|
-
America_Argentina_Buenos_Aires = "America/Argentina/Buenos_Aires"
|
923
|
-
America_Argentina_Catamarca = "America/Argentina/Catamarca"
|
924
|
-
America_Argentina_ComodRivadavia = "America/Argentina/ComodRivadavia"
|
925
|
-
America_Argentina_Cordoba = "America/Argentina/Cordoba"
|
926
|
-
America_Argentina_Jujuy = "America/Argentina/Jujuy"
|
927
|
-
America_Argentina_La_Rioja = "America/Argentina/La_Rioja"
|
928
|
-
America_Argentina_Mendoza = "America/Argentina/Mendoza"
|
929
|
-
America_Argentina_Rio_Gallegos = "America/Argentina/Rio_Gallegos"
|
930
|
-
America_Argentina_Salta = "America/Argentina/Salta"
|
931
|
-
America_Argentina_San_Juan = "America/Argentina/San_Juan"
|
932
|
-
America_Argentina_San_Luis = "America/Argentina/San_Luis"
|
933
|
-
America_Argentina_Tucuman = "America/Argentina/Tucuman"
|
934
|
-
America_Argentina_Ushuaia = "America/Argentina/Ushuaia"
|
935
|
-
America_Aruba = "America/Aruba"
|
936
|
-
America_Asuncion = "America/Asuncion"
|
937
|
-
America_Atikokan = "America/Atikokan"
|
938
|
-
America_Atka = "America/Atka"
|
939
|
-
America_Bahia = "America/Bahia"
|
940
|
-
America_Bahia_Banderas = "America/Bahia_Banderas"
|
941
|
-
America_Barbados = "America/Barbados"
|
942
|
-
America_Belem = "America/Belem"
|
943
|
-
America_Belize = "America/Belize"
|
944
|
-
America_Blanc_Sablon = "America/Blanc-Sablon"
|
945
|
-
America_Boa_Vista = "America/Boa_Vista"
|
946
|
-
America_Bogota = "America/Bogota"
|
947
|
-
America_Boise = "America/Boise"
|
948
|
-
America_Buenos_Aires = "America/Buenos_Aires"
|
949
|
-
America_Cambridge_Bay = "America/Cambridge_Bay"
|
950
|
-
America_Campo_Grande = "America/Campo_Grande"
|
951
|
-
America_Cancun = "America/Cancun"
|
952
|
-
America_Caracas = "America/Caracas"
|
953
|
-
America_Catamarca = "America/Catamarca"
|
954
|
-
America_Cayenne = "America/Cayenne"
|
955
|
-
America_Cayman = "America/Cayman"
|
956
|
-
America_Chicago = "America/Chicago"
|
957
|
-
America_Chihuahua = "America/Chihuahua"
|
958
|
-
America_Ciudad_Juarez = "America/Ciudad_Juarez"
|
959
|
-
America_Coral_Harbour = "America/Coral_Harbour"
|
960
|
-
America_Cordoba = "America/Cordoba"
|
961
|
-
America_Costa_Rica = "America/Costa_Rica"
|
962
|
-
America_Coyhaique = "America/Coyhaique"
|
963
|
-
America_Creston = "America/Creston"
|
964
|
-
America_Cuiaba = "America/Cuiaba"
|
965
|
-
America_Curacao = "America/Curacao"
|
966
|
-
America_Danmarkshavn = "America/Danmarkshavn"
|
967
|
-
America_Dawson = "America/Dawson"
|
968
|
-
America_Dawson_Creek = "America/Dawson_Creek"
|
969
|
-
America_Denver = "America/Denver"
|
970
|
-
America_Detroit = "America/Detroit"
|
971
|
-
America_Dominica = "America/Dominica"
|
972
|
-
America_Edmonton = "America/Edmonton"
|
973
|
-
America_Eirunepe = "America/Eirunepe"
|
974
|
-
America_El_Salvador = "America/El_Salvador"
|
975
|
-
America_Ensenada = "America/Ensenada"
|
976
|
-
America_Fort_Nelson = "America/Fort_Nelson"
|
977
|
-
America_Fort_Wayne = "America/Fort_Wayne"
|
978
|
-
America_Fortaleza = "America/Fortaleza"
|
979
|
-
America_Glace_Bay = "America/Glace_Bay"
|
980
|
-
America_Godthab = "America/Godthab"
|
981
|
-
America_Goose_Bay = "America/Goose_Bay"
|
982
|
-
America_Grand_Turk = "America/Grand_Turk"
|
983
|
-
America_Grenada = "America/Grenada"
|
984
|
-
America_Guadeloupe = "America/Guadeloupe"
|
985
|
-
America_Guatemala = "America/Guatemala"
|
986
|
-
America_Guayaquil = "America/Guayaquil"
|
987
|
-
America_Guyana = "America/Guyana"
|
988
|
-
America_Halifax = "America/Halifax"
|
989
|
-
America_Havana = "America/Havana"
|
990
|
-
America_Hermosillo = "America/Hermosillo"
|
991
|
-
America_Indiana_Indianapolis = "America/Indiana/Indianapolis"
|
992
|
-
America_Indiana_Knox = "America/Indiana/Knox"
|
993
|
-
America_Indiana_Marengo = "America/Indiana/Marengo"
|
994
|
-
America_Indiana_Petersburg = "America/Indiana/Petersburg"
|
995
|
-
America_Indiana_Tell_City = "America/Indiana/Tell_City"
|
996
|
-
America_Indiana_Vevay = "America/Indiana/Vevay"
|
997
|
-
America_Indiana_Vincennes = "America/Indiana/Vincennes"
|
998
|
-
America_Indiana_Winamac = "America/Indiana/Winamac"
|
999
|
-
America_Indianapolis = "America/Indianapolis"
|
1000
|
-
America_Inuvik = "America/Inuvik"
|
1001
|
-
America_Iqaluit = "America/Iqaluit"
|
1002
|
-
America_Jamaica = "America/Jamaica"
|
1003
|
-
America_Jujuy = "America/Jujuy"
|
1004
|
-
America_Juneau = "America/Juneau"
|
1005
|
-
America_Kentucky_Louisville = "America/Kentucky/Louisville"
|
1006
|
-
America_Kentucky_Monticello = "America/Kentucky/Monticello"
|
1007
|
-
America_Knox_IN = "America/Knox_IN"
|
1008
|
-
America_Kralendijk = "America/Kralendijk"
|
1009
|
-
America_La_Paz = "America/La_Paz"
|
1010
|
-
America_Lima = "America/Lima"
|
1011
|
-
America_Los_Angeles = "America/Los_Angeles"
|
1012
|
-
America_Louisville = "America/Louisville"
|
1013
|
-
America_Lower_Princes = "America/Lower_Princes"
|
1014
|
-
America_Maceio = "America/Maceio"
|
1015
|
-
America_Managua = "America/Managua"
|
1016
|
-
America_Manaus = "America/Manaus"
|
1017
|
-
America_Marigot = "America/Marigot"
|
1018
|
-
America_Martinique = "America/Martinique"
|
1019
|
-
America_Matamoros = "America/Matamoros"
|
1020
|
-
America_Mazatlan = "America/Mazatlan"
|
1021
|
-
America_Mendoza = "America/Mendoza"
|
1022
|
-
America_Menominee = "America/Menominee"
|
1023
|
-
America_Merida = "America/Merida"
|
1024
|
-
America_Metlakatla = "America/Metlakatla"
|
1025
|
-
America_Mexico_City = "America/Mexico_City"
|
1026
|
-
America_Miquelon = "America/Miquelon"
|
1027
|
-
America_Moncton = "America/Moncton"
|
1028
|
-
America_Monterrey = "America/Monterrey"
|
1029
|
-
America_Montevideo = "America/Montevideo"
|
1030
|
-
America_Montreal = "America/Montreal"
|
1031
|
-
America_Montserrat = "America/Montserrat"
|
1032
|
-
America_Nassau = "America/Nassau"
|
1033
|
-
America_New_York = "America/New_York"
|
1034
|
-
America_Nipigon = "America/Nipigon"
|
1035
|
-
America_Nome = "America/Nome"
|
1036
|
-
America_Noronha = "America/Noronha"
|
1037
|
-
America_North_Dakota_Beulah = "America/North_Dakota/Beulah"
|
1038
|
-
America_North_Dakota_Center = "America/North_Dakota/Center"
|
1039
|
-
America_North_Dakota_New_Salem = "America/North_Dakota/New_Salem"
|
1040
|
-
America_Nuuk = "America/Nuuk"
|
1041
|
-
America_Ojinaga = "America/Ojinaga"
|
1042
|
-
America_Panama = "America/Panama"
|
1043
|
-
America_Pangnirtung = "America/Pangnirtung"
|
1044
|
-
America_Paramaribo = "America/Paramaribo"
|
1045
|
-
America_Phoenix = "America/Phoenix"
|
1046
|
-
America_Port_au_Prince = "America/Port-au-Prince"
|
1047
|
-
America_Port_of_Spain = "America/Port_of_Spain"
|
1048
|
-
America_Porto_Acre = "America/Porto_Acre"
|
1049
|
-
America_Porto_Velho = "America/Porto_Velho"
|
1050
|
-
America_Puerto_Rico = "America/Puerto_Rico"
|
1051
|
-
America_Punta_Arenas = "America/Punta_Arenas"
|
1052
|
-
America_Rainy_River = "America/Rainy_River"
|
1053
|
-
America_Rankin_Inlet = "America/Rankin_Inlet"
|
1054
|
-
America_Recife = "America/Recife"
|
1055
|
-
America_Regina = "America/Regina"
|
1056
|
-
America_Resolute = "America/Resolute"
|
1057
|
-
America_Rio_Branco = "America/Rio_Branco"
|
1058
|
-
America_Rosario = "America/Rosario"
|
1059
|
-
America_Santa_Isabel = "America/Santa_Isabel"
|
1060
|
-
America_Santarem = "America/Santarem"
|
1061
|
-
America_Santiago = "America/Santiago"
|
1062
|
-
America_Santo_Domingo = "America/Santo_Domingo"
|
1063
|
-
America_Sao_Paulo = "America/Sao_Paulo"
|
1064
|
-
America_Scoresbysund = "America/Scoresbysund"
|
1065
|
-
America_Shiprock = "America/Shiprock"
|
1066
|
-
America_Sitka = "America/Sitka"
|
1067
|
-
America_St_Barthelemy = "America/St_Barthelemy"
|
1068
|
-
America_St_Johns = "America/St_Johns"
|
1069
|
-
America_St_Kitts = "America/St_Kitts"
|
1070
|
-
America_St_Lucia = "America/St_Lucia"
|
1071
|
-
America_St_Thomas = "America/St_Thomas"
|
1072
|
-
America_St_Vincent = "America/St_Vincent"
|
1073
|
-
America_Swift_Current = "America/Swift_Current"
|
1074
|
-
America_Tegucigalpa = "America/Tegucigalpa"
|
1075
|
-
America_Thule = "America/Thule"
|
1076
|
-
America_Thunder_Bay = "America/Thunder_Bay"
|
1077
|
-
America_Tijuana = "America/Tijuana"
|
1078
|
-
America_Toronto = "America/Toronto"
|
1079
|
-
America_Tortola = "America/Tortola"
|
1080
|
-
America_Vancouver = "America/Vancouver"
|
1081
|
-
America_Virgin = "America/Virgin"
|
1082
|
-
America_Whitehorse = "America/Whitehorse"
|
1083
|
-
America_Winnipeg = "America/Winnipeg"
|
1084
|
-
America_Yakutat = "America/Yakutat"
|
1085
|
-
America_Yellowknife = "America/Yellowknife"
|
1086
|
-
Antarctica_Casey = "Antarctica/Casey"
|
1087
|
-
Antarctica_Davis = "Antarctica/Davis"
|
1088
|
-
Antarctica_DumontDUrville = "Antarctica/DumontDUrville"
|
1089
|
-
Antarctica_Macquarie = "Antarctica/Macquarie"
|
1090
|
-
Antarctica_Mawson = "Antarctica/Mawson"
|
1091
|
-
Antarctica_McMurdo = "Antarctica/McMurdo"
|
1092
|
-
Antarctica_Palmer = "Antarctica/Palmer"
|
1093
|
-
Antarctica_Rothera = "Antarctica/Rothera"
|
1094
|
-
Antarctica_South_Pole = "Antarctica/South_Pole"
|
1095
|
-
Antarctica_Syowa = "Antarctica/Syowa"
|
1096
|
-
Antarctica_Troll = "Antarctica/Troll"
|
1097
|
-
Antarctica_Vostok = "Antarctica/Vostok"
|
1098
|
-
Arctic_Longyearbyen = "Arctic/Longyearbyen"
|
1099
|
-
Asia_Aden = "Asia/Aden"
|
1100
|
-
Asia_Almaty = "Asia/Almaty"
|
1101
|
-
Asia_Amman = "Asia/Amman"
|
1102
|
-
Asia_Anadyr = "Asia/Anadyr"
|
1103
|
-
Asia_Aqtau = "Asia/Aqtau"
|
1104
|
-
Asia_Aqtobe = "Asia/Aqtobe"
|
1105
|
-
Asia_Ashgabat = "Asia/Ashgabat"
|
1106
|
-
Asia_Ashkhabad = "Asia/Ashkhabad"
|
1107
|
-
Asia_Atyrau = "Asia/Atyrau"
|
1108
|
-
Asia_Baghdad = "Asia/Baghdad"
|
1109
|
-
Asia_Bahrain = "Asia/Bahrain"
|
1110
|
-
Asia_Baku = "Asia/Baku"
|
1111
|
-
Asia_Bangkok = "Asia/Bangkok"
|
1112
|
-
Asia_Barnaul = "Asia/Barnaul"
|
1113
|
-
Asia_Beirut = "Asia/Beirut"
|
1114
|
-
Asia_Bishkek = "Asia/Bishkek"
|
1115
|
-
Asia_Brunei = "Asia/Brunei"
|
1116
|
-
Asia_Calcutta = "Asia/Calcutta"
|
1117
|
-
Asia_Chita = "Asia/Chita"
|
1118
|
-
Asia_Choibalsan = "Asia/Choibalsan"
|
1119
|
-
Asia_Chongqing = "Asia/Chongqing"
|
1120
|
-
Asia_Chungking = "Asia/Chungking"
|
1121
|
-
Asia_Colombo = "Asia/Colombo"
|
1122
|
-
Asia_Dacca = "Asia/Dacca"
|
1123
|
-
Asia_Damascus = "Asia/Damascus"
|
1124
|
-
Asia_Dhaka = "Asia/Dhaka"
|
1125
|
-
Asia_Dili = "Asia/Dili"
|
1126
|
-
Asia_Dubai = "Asia/Dubai"
|
1127
|
-
Asia_Dushanbe = "Asia/Dushanbe"
|
1128
|
-
Asia_Famagusta = "Asia/Famagusta"
|
1129
|
-
Asia_Gaza = "Asia/Gaza"
|
1130
|
-
Asia_Harbin = "Asia/Harbin"
|
1131
|
-
Asia_Hebron = "Asia/Hebron"
|
1132
|
-
Asia_Ho_Chi_Minh = "Asia/Ho_Chi_Minh"
|
1133
|
-
Asia_Hong_Kong = "Asia/Hong_Kong"
|
1134
|
-
Asia_Hovd = "Asia/Hovd"
|
1135
|
-
Asia_Irkutsk = "Asia/Irkutsk"
|
1136
|
-
Asia_Istanbul = "Asia/Istanbul"
|
1137
|
-
Asia_Jakarta = "Asia/Jakarta"
|
1138
|
-
Asia_Jayapura = "Asia/Jayapura"
|
1139
|
-
Asia_Jerusalem = "Asia/Jerusalem"
|
1140
|
-
Asia_Kabul = "Asia/Kabul"
|
1141
|
-
Asia_Kamchatka = "Asia/Kamchatka"
|
1142
|
-
Asia_Karachi = "Asia/Karachi"
|
1143
|
-
Asia_Kashgar = "Asia/Kashgar"
|
1144
|
-
Asia_Kathmandu = "Asia/Kathmandu"
|
1145
|
-
Asia_Katmandu = "Asia/Katmandu"
|
1146
|
-
Asia_Khandyga = "Asia/Khandyga"
|
1147
|
-
Asia_Kolkata = "Asia/Kolkata"
|
1148
|
-
Asia_Krasnoyarsk = "Asia/Krasnoyarsk"
|
1149
|
-
Asia_Kuala_Lumpur = "Asia/Kuala_Lumpur"
|
1150
|
-
Asia_Kuching = "Asia/Kuching"
|
1151
|
-
Asia_Kuwait = "Asia/Kuwait"
|
1152
|
-
Asia_Macao = "Asia/Macao"
|
1153
|
-
Asia_Macau = "Asia/Macau"
|
1154
|
-
Asia_Magadan = "Asia/Magadan"
|
1155
|
-
Asia_Makassar = "Asia/Makassar"
|
1156
|
-
Asia_Manila = "Asia/Manila"
|
1157
|
-
Asia_Muscat = "Asia/Muscat"
|
1158
|
-
Asia_Nicosia = "Asia/Nicosia"
|
1159
|
-
Asia_Novokuznetsk = "Asia/Novokuznetsk"
|
1160
|
-
Asia_Novosibirsk = "Asia/Novosibirsk"
|
1161
|
-
Asia_Omsk = "Asia/Omsk"
|
1162
|
-
Asia_Oral = "Asia/Oral"
|
1163
|
-
Asia_Phnom_Penh = "Asia/Phnom_Penh"
|
1164
|
-
Asia_Pontianak = "Asia/Pontianak"
|
1165
|
-
Asia_Pyongyang = "Asia/Pyongyang"
|
1166
|
-
Asia_Qatar = "Asia/Qatar"
|
1167
|
-
Asia_Qostanay = "Asia/Qostanay"
|
1168
|
-
Asia_Qyzylorda = "Asia/Qyzylorda"
|
1169
|
-
Asia_Rangoon = "Asia/Rangoon"
|
1170
|
-
Asia_Riyadh = "Asia/Riyadh"
|
1171
|
-
Asia_Saigon = "Asia/Saigon"
|
1172
|
-
Asia_Sakhalin = "Asia/Sakhalin"
|
1173
|
-
Asia_Samarkand = "Asia/Samarkand"
|
1174
|
-
Asia_Seoul = "Asia/Seoul"
|
1175
|
-
Asia_Shanghai = "Asia/Shanghai"
|
1176
|
-
Asia_Singapore = "Asia/Singapore"
|
1177
|
-
Asia_Srednekolymsk = "Asia/Srednekolymsk"
|
1178
|
-
Asia_Taipei = "Asia/Taipei"
|
1179
|
-
Asia_Tashkent = "Asia/Tashkent"
|
1180
|
-
Asia_Tbilisi = "Asia/Tbilisi"
|
1181
|
-
Asia_Tehran = "Asia/Tehran"
|
1182
|
-
Asia_Tel_Aviv = "Asia/Tel_Aviv"
|
1183
|
-
Asia_Thimbu = "Asia/Thimbu"
|
1184
|
-
Asia_Thimphu = "Asia/Thimphu"
|
1185
|
-
Asia_Tokyo = "Asia/Tokyo"
|
1186
|
-
Asia_Tomsk = "Asia/Tomsk"
|
1187
|
-
Asia_Ujung_Pandang = "Asia/Ujung_Pandang"
|
1188
|
-
Asia_Ulaanbaatar = "Asia/Ulaanbaatar"
|
1189
|
-
Asia_Ulan_Bator = "Asia/Ulan_Bator"
|
1190
|
-
Asia_Urumqi = "Asia/Urumqi"
|
1191
|
-
Asia_Ust_Nera = "Asia/Ust-Nera"
|
1192
|
-
Asia_Vientiane = "Asia/Vientiane"
|
1193
|
-
Asia_Vladivostok = "Asia/Vladivostok"
|
1194
|
-
Asia_Yakutsk = "Asia/Yakutsk"
|
1195
|
-
Asia_Yangon = "Asia/Yangon"
|
1196
|
-
Asia_Yekaterinburg = "Asia/Yekaterinburg"
|
1197
|
-
Asia_Yerevan = "Asia/Yerevan"
|
1198
|
-
Atlantic_Azores = "Atlantic/Azores"
|
1199
|
-
Atlantic_Bermuda = "Atlantic/Bermuda"
|
1200
|
-
Atlantic_Canary = "Atlantic/Canary"
|
1201
|
-
Atlantic_Cape_Verde = "Atlantic/Cape_Verde"
|
1202
|
-
Atlantic_Faeroe = "Atlantic/Faeroe"
|
1203
|
-
Atlantic_Faroe = "Atlantic/Faroe"
|
1204
|
-
Atlantic_Jan_Mayen = "Atlantic/Jan_Mayen"
|
1205
|
-
Atlantic_Madeira = "Atlantic/Madeira"
|
1206
|
-
Atlantic_Reykjavik = "Atlantic/Reykjavik"
|
1207
|
-
Atlantic_South_Georgia = "Atlantic/South_Georgia"
|
1208
|
-
Atlantic_St_Helena = "Atlantic/St_Helena"
|
1209
|
-
Atlantic_Stanley = "Atlantic/Stanley"
|
1210
|
-
Australia_ACT = "Australia/ACT"
|
1211
|
-
Australia_Adelaide = "Australia/Adelaide"
|
1212
|
-
Australia_Brisbane = "Australia/Brisbane"
|
1213
|
-
Australia_Broken_Hill = "Australia/Broken_Hill"
|
1214
|
-
Australia_Canberra = "Australia/Canberra"
|
1215
|
-
Australia_Currie = "Australia/Currie"
|
1216
|
-
Australia_Darwin = "Australia/Darwin"
|
1217
|
-
Australia_Eucla = "Australia/Eucla"
|
1218
|
-
Australia_Hobart = "Australia/Hobart"
|
1219
|
-
Australia_LHI = "Australia/LHI"
|
1220
|
-
Australia_Lindeman = "Australia/Lindeman"
|
1221
|
-
Australia_Lord_Howe = "Australia/Lord_Howe"
|
1222
|
-
Australia_Melbourne = "Australia/Melbourne"
|
1223
|
-
Australia_NSW = "Australia/NSW"
|
1224
|
-
Australia_North = "Australia/North"
|
1225
|
-
Australia_Perth = "Australia/Perth"
|
1226
|
-
Australia_Queensland = "Australia/Queensland"
|
1227
|
-
Australia_South = "Australia/South"
|
1228
|
-
Australia_Sydney = "Australia/Sydney"
|
1229
|
-
Australia_Tasmania = "Australia/Tasmania"
|
1230
|
-
Australia_Victoria = "Australia/Victoria"
|
1231
|
-
Australia_West = "Australia/West"
|
1232
|
-
Australia_Yancowinna = "Australia/Yancowinna"
|
1233
|
-
Brazil_Acre = "Brazil/Acre"
|
1234
|
-
Brazil_DeNoronha = "Brazil/DeNoronha"
|
1235
|
-
Brazil_East = "Brazil/East"
|
1236
|
-
Brazil_West = "Brazil/West"
|
1237
|
-
CET = "CET"
|
1238
|
-
CST6CDT = "CST6CDT"
|
1239
|
-
Canada_Atlantic = "Canada/Atlantic"
|
1240
|
-
Canada_Central = "Canada/Central"
|
1241
|
-
Canada_Eastern = "Canada/Eastern"
|
1242
|
-
Canada_Mountain = "Canada/Mountain"
|
1243
|
-
Canada_Newfoundland = "Canada/Newfoundland"
|
1244
|
-
Canada_Pacific = "Canada/Pacific"
|
1245
|
-
Canada_Saskatchewan = "Canada/Saskatchewan"
|
1246
|
-
Canada_Yukon = "Canada/Yukon"
|
1247
|
-
Chile_Continental = "Chile/Continental"
|
1248
|
-
Chile_EasterIsland = "Chile/EasterIsland"
|
1249
|
-
Cuba = "Cuba"
|
1250
|
-
EET = "EET"
|
1251
|
-
EST = "EST"
|
1252
|
-
EST5EDT = "EST5EDT"
|
1253
|
-
Egypt = "Egypt"
|
1254
|
-
Eire = "Eire"
|
1255
|
-
Etc_GMT = "Etc/GMT"
|
1256
|
-
Etc_GMT_0 = "Etc/GMT+0"
|
1257
|
-
Etc_GMT_1 = "Etc/GMT+1"
|
1258
|
-
Etc_GMT_10 = "Etc/GMT+10"
|
1259
|
-
Etc_GMT_11 = "Etc/GMT+11"
|
1260
|
-
Etc_GMT_12 = "Etc/GMT+12"
|
1261
|
-
Etc_GMT_2 = "Etc/GMT+2"
|
1262
|
-
Etc_GMT_3 = "Etc/GMT+3"
|
1263
|
-
Etc_GMT_4 = "Etc/GMT+4"
|
1264
|
-
Etc_GMT_5 = "Etc/GMT+5"
|
1265
|
-
Etc_GMT_6 = "Etc/GMT+6"
|
1266
|
-
Etc_GMT_7 = "Etc/GMT+7"
|
1267
|
-
Etc_GMT_8 = "Etc/GMT+8"
|
1268
|
-
Etc_GMT_9 = "Etc/GMT+9"
|
1269
|
-
Etc_GMT_0_1 = "Etc/GMT-0"
|
1270
|
-
Etc_GMT_1_1 = "Etc/GMT-1"
|
1271
|
-
Etc_GMT_10_1 = "Etc/GMT-10"
|
1272
|
-
Etc_GMT_11_1 = "Etc/GMT-11"
|
1273
|
-
Etc_GMT_12_1 = "Etc/GMT-12"
|
1274
|
-
Etc_GMT_13 = "Etc/GMT-13"
|
1275
|
-
Etc_GMT_14 = "Etc/GMT-14"
|
1276
|
-
Etc_GMT_2_1 = "Etc/GMT-2"
|
1277
|
-
Etc_GMT_3_1 = "Etc/GMT-3"
|
1278
|
-
Etc_GMT_4_1 = "Etc/GMT-4"
|
1279
|
-
Etc_GMT_5_1 = "Etc/GMT-5"
|
1280
|
-
Etc_GMT_6_1 = "Etc/GMT-6"
|
1281
|
-
Etc_GMT_7_1 = "Etc/GMT-7"
|
1282
|
-
Etc_GMT_8_1 = "Etc/GMT-8"
|
1283
|
-
Etc_GMT_9_1 = "Etc/GMT-9"
|
1284
|
-
Etc_GMT0 = "Etc/GMT0"
|
1285
|
-
Etc_Greenwich = "Etc/Greenwich"
|
1286
|
-
Etc_UCT = "Etc/UCT"
|
1287
|
-
Etc_UTC = "Etc/UTC"
|
1288
|
-
Etc_Universal = "Etc/Universal"
|
1289
|
-
Etc_Zulu = "Etc/Zulu"
|
1290
|
-
Europe_Amsterdam = "Europe/Amsterdam"
|
1291
|
-
Europe_Andorra = "Europe/Andorra"
|
1292
|
-
Europe_Astrakhan = "Europe/Astrakhan"
|
1293
|
-
Europe_Athens = "Europe/Athens"
|
1294
|
-
Europe_Belfast = "Europe/Belfast"
|
1295
|
-
Europe_Belgrade = "Europe/Belgrade"
|
1296
|
-
Europe_Berlin = "Europe/Berlin"
|
1297
|
-
Europe_Bratislava = "Europe/Bratislava"
|
1298
|
-
Europe_Brussels = "Europe/Brussels"
|
1299
|
-
Europe_Bucharest = "Europe/Bucharest"
|
1300
|
-
Europe_Budapest = "Europe/Budapest"
|
1301
|
-
Europe_Busingen = "Europe/Busingen"
|
1302
|
-
Europe_Chisinau = "Europe/Chisinau"
|
1303
|
-
Europe_Copenhagen = "Europe/Copenhagen"
|
1304
|
-
Europe_Dublin = "Europe/Dublin"
|
1305
|
-
Europe_Gibraltar = "Europe/Gibraltar"
|
1306
|
-
Europe_Guernsey = "Europe/Guernsey"
|
1307
|
-
Europe_Helsinki = "Europe/Helsinki"
|
1308
|
-
Europe_Isle_of_Man = "Europe/Isle_of_Man"
|
1309
|
-
Europe_Istanbul = "Europe/Istanbul"
|
1310
|
-
Europe_Jersey = "Europe/Jersey"
|
1311
|
-
Europe_Kaliningrad = "Europe/Kaliningrad"
|
1312
|
-
Europe_Kiev = "Europe/Kiev"
|
1313
|
-
Europe_Kirov = "Europe/Kirov"
|
1314
|
-
Europe_Kyiv = "Europe/Kyiv"
|
1315
|
-
Europe_Lisbon = "Europe/Lisbon"
|
1316
|
-
Europe_Ljubljana = "Europe/Ljubljana"
|
1317
|
-
Europe_London = "Europe/London"
|
1318
|
-
Europe_Luxembourg = "Europe/Luxembourg"
|
1319
|
-
Europe_Madrid = "Europe/Madrid"
|
1320
|
-
Europe_Malta = "Europe/Malta"
|
1321
|
-
Europe_Mariehamn = "Europe/Mariehamn"
|
1322
|
-
Europe_Minsk = "Europe/Minsk"
|
1323
|
-
Europe_Monaco = "Europe/Monaco"
|
1324
|
-
Europe_Moscow = "Europe/Moscow"
|
1325
|
-
Europe_Nicosia = "Europe/Nicosia"
|
1326
|
-
Europe_Oslo = "Europe/Oslo"
|
1327
|
-
Europe_Paris = "Europe/Paris"
|
1328
|
-
Europe_Podgorica = "Europe/Podgorica"
|
1329
|
-
Europe_Prague = "Europe/Prague"
|
1330
|
-
Europe_Riga = "Europe/Riga"
|
1331
|
-
Europe_Rome = "Europe/Rome"
|
1332
|
-
Europe_Samara = "Europe/Samara"
|
1333
|
-
Europe_San_Marino = "Europe/San_Marino"
|
1334
|
-
Europe_Sarajevo = "Europe/Sarajevo"
|
1335
|
-
Europe_Saratov = "Europe/Saratov"
|
1336
|
-
Europe_Simferopol = "Europe/Simferopol"
|
1337
|
-
Europe_Skopje = "Europe/Skopje"
|
1338
|
-
Europe_Sofia = "Europe/Sofia"
|
1339
|
-
Europe_Stockholm = "Europe/Stockholm"
|
1340
|
-
Europe_Tallinn = "Europe/Tallinn"
|
1341
|
-
Europe_Tirane = "Europe/Tirane"
|
1342
|
-
Europe_Tiraspol = "Europe/Tiraspol"
|
1343
|
-
Europe_Ulyanovsk = "Europe/Ulyanovsk"
|
1344
|
-
Europe_Uzhgorod = "Europe/Uzhgorod"
|
1345
|
-
Europe_Vaduz = "Europe/Vaduz"
|
1346
|
-
Europe_Vatican = "Europe/Vatican"
|
1347
|
-
Europe_Vienna = "Europe/Vienna"
|
1348
|
-
Europe_Vilnius = "Europe/Vilnius"
|
1349
|
-
Europe_Volgograd = "Europe/Volgograd"
|
1350
|
-
Europe_Warsaw = "Europe/Warsaw"
|
1351
|
-
Europe_Zagreb = "Europe/Zagreb"
|
1352
|
-
Europe_Zaporozhye = "Europe/Zaporozhye"
|
1353
|
-
Europe_Zurich = "Europe/Zurich"
|
1354
|
-
GB = "GB"
|
1355
|
-
GB_Eire = "GB-Eire"
|
1356
|
-
GMT = "GMT"
|
1357
|
-
GMT_0 = "GMT+0"
|
1358
|
-
GMT_0_1 = "GMT-0"
|
1359
|
-
GMT0 = "GMT0"
|
1360
|
-
Greenwich = "Greenwich"
|
1361
|
-
HST = "HST"
|
1362
|
-
Hongkong = "Hongkong"
|
1363
|
-
Iceland = "Iceland"
|
1364
|
-
Indian_Antananarivo = "Indian/Antananarivo"
|
1365
|
-
Indian_Chagos = "Indian/Chagos"
|
1366
|
-
Indian_Christmas = "Indian/Christmas"
|
1367
|
-
Indian_Cocos = "Indian/Cocos"
|
1368
|
-
Indian_Comoro = "Indian/Comoro"
|
1369
|
-
Indian_Kerguelen = "Indian/Kerguelen"
|
1370
|
-
Indian_Mahe = "Indian/Mahe"
|
1371
|
-
Indian_Maldives = "Indian/Maldives"
|
1372
|
-
Indian_Mauritius = "Indian/Mauritius"
|
1373
|
-
Indian_Mayotte = "Indian/Mayotte"
|
1374
|
-
Indian_Reunion = "Indian/Reunion"
|
1375
|
-
Iran = "Iran"
|
1376
|
-
Israel = "Israel"
|
1377
|
-
Jamaica = "Jamaica"
|
1378
|
-
Japan = "Japan"
|
1379
|
-
Kwajalein = "Kwajalein"
|
1380
|
-
Libya = "Libya"
|
1381
|
-
MET = "MET"
|
1382
|
-
MST = "MST"
|
1383
|
-
MST7MDT = "MST7MDT"
|
1384
|
-
Mexico_BajaNorte = "Mexico/BajaNorte"
|
1385
|
-
Mexico_BajaSur = "Mexico/BajaSur"
|
1386
|
-
Mexico_General = "Mexico/General"
|
1387
|
-
NZ = "NZ"
|
1388
|
-
NZ_CHAT = "NZ-CHAT"
|
1389
|
-
Navajo = "Navajo"
|
1390
|
-
PRC = "PRC"
|
1391
|
-
PST8PDT = "PST8PDT"
|
1392
|
-
Pacific_Apia = "Pacific/Apia"
|
1393
|
-
Pacific_Auckland = "Pacific/Auckland"
|
1394
|
-
Pacific_Bougainville = "Pacific/Bougainville"
|
1395
|
-
Pacific_Chatham = "Pacific/Chatham"
|
1396
|
-
Pacific_Chuuk = "Pacific/Chuuk"
|
1397
|
-
Pacific_Easter = "Pacific/Easter"
|
1398
|
-
Pacific_Efate = "Pacific/Efate"
|
1399
|
-
Pacific_Enderbury = "Pacific/Enderbury"
|
1400
|
-
Pacific_Fakaofo = "Pacific/Fakaofo"
|
1401
|
-
Pacific_Fiji = "Pacific/Fiji"
|
1402
|
-
Pacific_Funafuti = "Pacific/Funafuti"
|
1403
|
-
Pacific_Galapagos = "Pacific/Galapagos"
|
1404
|
-
Pacific_Gambier = "Pacific/Gambier"
|
1405
|
-
Pacific_Guadalcanal = "Pacific/Guadalcanal"
|
1406
|
-
Pacific_Guam = "Pacific/Guam"
|
1407
|
-
Pacific_Honolulu = "Pacific/Honolulu"
|
1408
|
-
Pacific_Johnston = "Pacific/Johnston"
|
1409
|
-
Pacific_Kanton = "Pacific/Kanton"
|
1410
|
-
Pacific_Kiritimati = "Pacific/Kiritimati"
|
1411
|
-
Pacific_Kosrae = "Pacific/Kosrae"
|
1412
|
-
Pacific_Kwajalein = "Pacific/Kwajalein"
|
1413
|
-
Pacific_Majuro = "Pacific/Majuro"
|
1414
|
-
Pacific_Marquesas = "Pacific/Marquesas"
|
1415
|
-
Pacific_Midway = "Pacific/Midway"
|
1416
|
-
Pacific_Nauru = "Pacific/Nauru"
|
1417
|
-
Pacific_Niue = "Pacific/Niue"
|
1418
|
-
Pacific_Norfolk = "Pacific/Norfolk"
|
1419
|
-
Pacific_Noumea = "Pacific/Noumea"
|
1420
|
-
Pacific_Pago_Pago = "Pacific/Pago_Pago"
|
1421
|
-
Pacific_Palau = "Pacific/Palau"
|
1422
|
-
Pacific_Pitcairn = "Pacific/Pitcairn"
|
1423
|
-
Pacific_Pohnpei = "Pacific/Pohnpei"
|
1424
|
-
Pacific_Ponape = "Pacific/Ponape"
|
1425
|
-
Pacific_Port_Moresby = "Pacific/Port_Moresby"
|
1426
|
-
Pacific_Rarotonga = "Pacific/Rarotonga"
|
1427
|
-
Pacific_Saipan = "Pacific/Saipan"
|
1428
|
-
Pacific_Samoa = "Pacific/Samoa"
|
1429
|
-
Pacific_Tahiti = "Pacific/Tahiti"
|
1430
|
-
Pacific_Tarawa = "Pacific/Tarawa"
|
1431
|
-
Pacific_Tongatapu = "Pacific/Tongatapu"
|
1432
|
-
Pacific_Truk = "Pacific/Truk"
|
1433
|
-
Pacific_Wake = "Pacific/Wake"
|
1434
|
-
Pacific_Wallis = "Pacific/Wallis"
|
1435
|
-
Pacific_Yap = "Pacific/Yap"
|
1436
|
-
Poland = "Poland"
|
1437
|
-
Portugal = "Portugal"
|
1438
|
-
ROC = "ROC"
|
1439
|
-
ROK = "ROK"
|
1440
|
-
Singapore = "Singapore"
|
1441
|
-
Turkey = "Turkey"
|
1442
|
-
UCT = "UCT"
|
1443
|
-
US_Alaska = "US/Alaska"
|
1444
|
-
US_Aleutian = "US/Aleutian"
|
1445
|
-
US_Arizona = "US/Arizona"
|
1446
|
-
US_Central = "US/Central"
|
1447
|
-
US_East_Indiana = "US/East-Indiana"
|
1448
|
-
US_Eastern = "US/Eastern"
|
1449
|
-
US_Hawaii = "US/Hawaii"
|
1450
|
-
US_Indiana_Starke = "US/Indiana-Starke"
|
1451
|
-
US_Michigan = "US/Michigan"
|
1452
|
-
US_Mountain = "US/Mountain"
|
1453
|
-
US_Pacific = "US/Pacific"
|
1454
|
-
US_Samoa = "US/Samoa"
|
1455
|
-
UTC = "UTC"
|
1456
|
-
Universal = "Universal"
|
1457
|
-
W_SU = "W-SU"
|
1458
|
-
WET = "WET"
|
1459
|
-
Zulu = "Zulu"
|
1460
|
-
|
1461
|
-
|
1462
1212
|
AccountName = str
|
1463
1213
|
|
1464
1214
|
|
@@ -1466,7 +1216,7 @@ class OptionLike(Struct, omit_defaults=True):
|
|
1466
1216
|
strike: Decimal
|
1467
1217
|
expiration: Optional[datetime] = None
|
1468
1218
|
|
1469
|
-
#
|
1219
|
+
# Constructor that takes all field titles as arguments for convenience
|
1470
1220
|
@classmethod
|
1471
1221
|
def new(
|
1472
1222
|
cls,
|
@@ -1485,7 +1235,7 @@ class OptionLike(Struct, omit_defaults=True):
|
|
1485
1235
|
class EventContractSeriesInstance2(Struct, omit_defaults=True):
|
1486
1236
|
OptionLike: OptionLike
|
1487
1237
|
|
1488
|
-
#
|
1238
|
+
# Constructor that takes all field titles as arguments for convenience
|
1489
1239
|
@classmethod
|
1490
1240
|
def new(
|
1491
1241
|
cls,
|
@@ -1499,6 +1249,33 @@ class EventContractSeriesInstance2(Struct, omit_defaults=True):
|
|
1499
1249
|
return f"EventContractSeriesInstance2(OptionLike={self.OptionLike})"
|
1500
1250
|
|
1501
1251
|
|
1252
|
+
class OptionsSeriesInstance(Struct, omit_defaults=True):
|
1253
|
+
"""
|
1254
|
+
A specific option from a series.
|
1255
|
+
"""
|
1256
|
+
|
1257
|
+
expiration: datetime
|
1258
|
+
put_or_call: PutOrCall
|
1259
|
+
strike: Decimal
|
1260
|
+
|
1261
|
+
# Constructor that takes all field titles as arguments for convenience
|
1262
|
+
@classmethod
|
1263
|
+
def new(
|
1264
|
+
cls,
|
1265
|
+
expiration: datetime,
|
1266
|
+
put_or_call: PutOrCall,
|
1267
|
+
strike: Decimal,
|
1268
|
+
):
|
1269
|
+
return cls(
|
1270
|
+
expiration,
|
1271
|
+
put_or_call,
|
1272
|
+
strike,
|
1273
|
+
)
|
1274
|
+
|
1275
|
+
def __str__(self) -> str:
|
1276
|
+
return f"OptionsSeriesInstance(expiration={self.expiration},put_or_call={self.put_or_call},strike={self.strike})"
|
1277
|
+
|
1278
|
+
|
1502
1279
|
class SpreadLeg(Struct, omit_defaults=True):
|
1503
1280
|
product: str
|
1504
1281
|
quantity: Annotated[
|
@@ -1511,7 +1288,7 @@ class SpreadLeg(Struct, omit_defaults=True):
|
|
1511
1288
|
Some spreads have different ratios for their legs, like buy 1 A, sell 2 B, buy 1 C; We would represent that with quantities in the legs: 1, -2, 1
|
1512
1289
|
"""
|
1513
1290
|
|
1514
|
-
#
|
1291
|
+
# Constructor that takes all field titles as arguments for convenience
|
1515
1292
|
@classmethod
|
1516
1293
|
def new(
|
1517
1294
|
cls,
|
@@ -1530,7 +1307,7 @@ class SpreadLeg(Struct, omit_defaults=True):
|
|
1530
1307
|
class Outcome(Struct, omit_defaults=True):
|
1531
1308
|
name: str
|
1532
1309
|
|
1533
|
-
#
|
1310
|
+
# Constructor that takes all field titles as arguments for convenience
|
1534
1311
|
@classmethod
|
1535
1312
|
def new(
|
1536
1313
|
cls,
|
@@ -1544,11 +1321,6 @@ class Outcome(Struct, omit_defaults=True):
|
|
1544
1321
|
return f"Outcome(name={self.name})"
|
1545
1322
|
|
1546
1323
|
|
1547
|
-
class PutOrCall(str, Enum):
|
1548
|
-
P = "P"
|
1549
|
-
C = "C"
|
1550
|
-
|
1551
|
-
|
1552
1324
|
class AberrantFill(Struct, omit_defaults=True):
|
1553
1325
|
"""
|
1554
1326
|
Fills which we received but couldn't parse fully, return details best effort
|
@@ -1559,7 +1331,7 @@ class AberrantFill(Struct, omit_defaults=True):
|
|
1559
1331
|
a: Optional[Annotated[Optional[str], Meta(title="account")]] = None
|
1560
1332
|
atn: Optional[Annotated[Optional[int], Meta(title="recv_time_ns")]] = None
|
1561
1333
|
ats: Optional[Annotated[Optional[int], Meta(title="recv_time")]] = None
|
1562
|
-
d: Optional[Annotated[Optional[OrderDir], Meta(title="
|
1334
|
+
d: Optional[Annotated[Optional[OrderDir], Meta(title="dir")]] = None
|
1563
1335
|
f: Optional[Annotated[Optional[Decimal], Meta(title="fee")]] = None
|
1564
1336
|
fu: Optional[Annotated[Optional[str], Meta(title="fee_currency")]] = None
|
1565
1337
|
k: Optional[Annotated[Optional[FillKind], Meta(title="fill_kind")]] = None
|
@@ -1572,7 +1344,7 @@ class AberrantFill(Struct, omit_defaults=True):
|
|
1572
1344
|
u: Optional[Annotated[Optional[UserId], Meta(title="trader")]] = None
|
1573
1345
|
xid: Optional[Annotated[Optional[str], Meta(title="exchange_fill_id")]] = None
|
1574
1346
|
|
1575
|
-
#
|
1347
|
+
# Constructor that takes all field titles as arguments for convenience
|
1576
1348
|
@classmethod
|
1577
1349
|
def new(
|
1578
1350
|
cls,
|
@@ -1581,7 +1353,7 @@ class AberrantFill(Struct, omit_defaults=True):
|
|
1581
1353
|
account: Optional[str] = None,
|
1582
1354
|
recv_time_ns: Optional[int] = None,
|
1583
1355
|
recv_time: Optional[int] = None,
|
1584
|
-
|
1356
|
+
dir: Optional[OrderDir] = None,
|
1585
1357
|
fee: Optional[Decimal] = None,
|
1586
1358
|
fee_currency: Optional[str] = None,
|
1587
1359
|
fill_kind: Optional[FillKind] = None,
|
@@ -1600,7 +1372,7 @@ class AberrantFill(Struct, omit_defaults=True):
|
|
1600
1372
|
account,
|
1601
1373
|
recv_time_ns,
|
1602
1374
|
recv_time,
|
1603
|
-
|
1375
|
+
dir,
|
1604
1376
|
fee,
|
1605
1377
|
fee_currency,
|
1606
1378
|
fill_kind,
|
@@ -1615,7 +1387,7 @@ class AberrantFill(Struct, omit_defaults=True):
|
|
1615
1387
|
)
|
1616
1388
|
|
1617
1389
|
def __str__(self) -> str:
|
1618
|
-
return f"AberrantFill(fill_id={self.id},execution_venue={self.x},account={self.a},recv_time_ns={self.atn},recv_time={self.ats},
|
1390
|
+
return f"AberrantFill(fill_id={self.id},execution_venue={self.x},account={self.a},recv_time_ns={self.atn},recv_time={self.ats},dir={self.d},fee={self.f},fee_currency={self.fu},fill_kind={self.k},order_id={self.oid},price={self.p},quantity={self.q},symbol={self.s},trade_time_ns={self.tn},trade_time={self.ts},trader={self.u},exchange_fill_id={self.xid})"
|
1619
1391
|
|
1620
1392
|
@property
|
1621
1393
|
def fill_id(self) -> str:
|
@@ -1658,11 +1430,11 @@ class AberrantFill(Struct, omit_defaults=True):
|
|
1658
1430
|
self.ats = value
|
1659
1431
|
|
1660
1432
|
@property
|
1661
|
-
def
|
1433
|
+
def dir(self) -> Optional[OrderDir]:
|
1662
1434
|
return self.d
|
1663
1435
|
|
1664
|
-
@
|
1665
|
-
def
|
1436
|
+
@dir.setter
|
1437
|
+
def dir(self, value: Optional[OrderDir]) -> None:
|
1666
1438
|
self.d = value
|
1667
1439
|
|
1668
1440
|
@property
|
@@ -1759,7 +1531,7 @@ class CancelReject(Struct, omit_defaults=True):
|
|
1759
1531
|
xid: str
|
1760
1532
|
rm: Optional[str] = None
|
1761
1533
|
|
1762
|
-
#
|
1534
|
+
# Constructor that takes all field titles as arguments for convenience
|
1763
1535
|
@classmethod
|
1764
1536
|
def new(
|
1765
1537
|
cls,
|
@@ -1781,7 +1553,7 @@ class CptyLoginRequest(Struct, omit_defaults=True):
|
|
1781
1553
|
account: str
|
1782
1554
|
trader: UserId
|
1783
1555
|
|
1784
|
-
#
|
1556
|
+
# Constructor that takes all field titles as arguments for convenience
|
1785
1557
|
@classmethod
|
1786
1558
|
def new(
|
1787
1559
|
cls,
|
@@ -1822,7 +1594,7 @@ class ExecutionInfo(Struct, omit_defaults=True):
|
|
1822
1594
|
initial_margin: Optional[Decimal] = None
|
1823
1595
|
maintenance_margin: Optional[Decimal] = None
|
1824
1596
|
|
1825
|
-
#
|
1597
|
+
# Constructor that takes all field titles as arguments for convenience
|
1826
1598
|
@classmethod
|
1827
1599
|
def new(
|
1828
1600
|
cls,
|
@@ -1853,7 +1625,7 @@ class ExecutionInfo(Struct, omit_defaults=True):
|
|
1853
1625
|
|
1854
1626
|
|
1855
1627
|
class Fill(Struct, omit_defaults=True):
|
1856
|
-
d: Annotated[OrderDir, Meta(title="
|
1628
|
+
d: Annotated[OrderDir, Meta(title="dir")]
|
1857
1629
|
id: Annotated[str, Meta(title="fill_id")]
|
1858
1630
|
k: Annotated[FillKind, Meta(title="fill_kind")]
|
1859
1631
|
p: Annotated[Decimal, Meta(title="price")]
|
@@ -1900,11 +1672,11 @@ class Fill(Struct, omit_defaults=True):
|
|
1900
1672
|
u: Optional[Annotated[Optional[UserId], Meta(title="trader")]] = None
|
1901
1673
|
xid: Optional[Annotated[Optional[str], Meta(title="exchange_fill_id")]] = None
|
1902
1674
|
|
1903
|
-
#
|
1675
|
+
# Constructor that takes all field titles as arguments for convenience
|
1904
1676
|
@classmethod
|
1905
1677
|
def new(
|
1906
1678
|
cls,
|
1907
|
-
|
1679
|
+
dir: OrderDir,
|
1908
1680
|
fill_id: str,
|
1909
1681
|
fill_kind: FillKind,
|
1910
1682
|
price: Decimal,
|
@@ -1924,7 +1696,7 @@ class Fill(Struct, omit_defaults=True):
|
|
1924
1696
|
exchange_fill_id: Optional[str] = None,
|
1925
1697
|
):
|
1926
1698
|
return cls(
|
1927
|
-
|
1699
|
+
dir,
|
1928
1700
|
fill_id,
|
1929
1701
|
fill_kind,
|
1930
1702
|
price,
|
@@ -1945,14 +1717,14 @@ class Fill(Struct, omit_defaults=True):
|
|
1945
1717
|
)
|
1946
1718
|
|
1947
1719
|
def __str__(self) -> str:
|
1948
|
-
return f"Fill(
|
1720
|
+
return f"Fill(dir={self.d},fill_id={self.id},fill_kind={self.k},price={self.p},quantity={self.q},symbol={self.s},trade_time_ns={self.tn},trade_time={self.ts},execution_venue={self.x},account={self.a},is_taker={self.agg},recv_time_ns={self.atn},recv_time={self.ats},fee={self.f},fee_currency={self.fu},order_id={self.oid},trader={self.u},exchange_fill_id={self.xid})"
|
1949
1721
|
|
1950
1722
|
@property
|
1951
|
-
def
|
1723
|
+
def dir(self) -> OrderDir:
|
1952
1724
|
return self.d
|
1953
1725
|
|
1954
|
-
@
|
1955
|
-
def
|
1726
|
+
@dir.setter
|
1727
|
+
def dir(self, value: OrderDir) -> None:
|
1956
1728
|
self.d = value
|
1957
1729
|
|
1958
1730
|
@property
|
@@ -2092,11 +1864,90 @@ class Fill(Struct, omit_defaults=True):
|
|
2092
1864
|
self.xid = value
|
2093
1865
|
|
2094
1866
|
|
1867
|
+
class OptionsContract(Struct, omit_defaults=True):
|
1868
|
+
expiration: date
|
1869
|
+
put_or_call: PutOrCall
|
1870
|
+
strike: Decimal
|
1871
|
+
ticker: Ticker
|
1872
|
+
underlying: str
|
1873
|
+
in_the_money: Optional[bool] = None
|
1874
|
+
|
1875
|
+
# Constructor that takes all field titles as arguments for convenience
|
1876
|
+
@classmethod
|
1877
|
+
def new(
|
1878
|
+
cls,
|
1879
|
+
expiration: date,
|
1880
|
+
put_or_call: PutOrCall,
|
1881
|
+
strike: Decimal,
|
1882
|
+
ticker: Ticker,
|
1883
|
+
underlying: str,
|
1884
|
+
in_the_money: Optional[bool] = None,
|
1885
|
+
):
|
1886
|
+
return cls(
|
1887
|
+
expiration,
|
1888
|
+
put_or_call,
|
1889
|
+
strike,
|
1890
|
+
ticker,
|
1891
|
+
underlying,
|
1892
|
+
in_the_money,
|
1893
|
+
)
|
1894
|
+
|
1895
|
+
def __str__(self) -> str:
|
1896
|
+
return f"OptionsContract(expiration={self.expiration},put_or_call={self.put_or_call},strike={self.strike},ticker={self.ticker},underlying={self.underlying},in_the_money={self.in_the_money})"
|
1897
|
+
|
1898
|
+
|
1899
|
+
class OptionsGreeks(Struct, omit_defaults=True):
|
1900
|
+
delta: Decimal
|
1901
|
+
expiration: date
|
1902
|
+
gamma: Decimal
|
1903
|
+
implied_volatility: Decimal
|
1904
|
+
put_or_call: PutOrCall
|
1905
|
+
rho: Decimal
|
1906
|
+
strike: Decimal
|
1907
|
+
symbol: str
|
1908
|
+
theta: Decimal
|
1909
|
+
underlying: str
|
1910
|
+
vega: Decimal
|
1911
|
+
|
1912
|
+
# Constructor that takes all field titles as arguments for convenience
|
1913
|
+
@classmethod
|
1914
|
+
def new(
|
1915
|
+
cls,
|
1916
|
+
delta: Decimal,
|
1917
|
+
expiration: date,
|
1918
|
+
gamma: Decimal,
|
1919
|
+
implied_volatility: Decimal,
|
1920
|
+
put_or_call: PutOrCall,
|
1921
|
+
rho: Decimal,
|
1922
|
+
strike: Decimal,
|
1923
|
+
symbol: str,
|
1924
|
+
theta: Decimal,
|
1925
|
+
underlying: str,
|
1926
|
+
vega: Decimal,
|
1927
|
+
):
|
1928
|
+
return cls(
|
1929
|
+
delta,
|
1930
|
+
expiration,
|
1931
|
+
gamma,
|
1932
|
+
implied_volatility,
|
1933
|
+
put_or_call,
|
1934
|
+
rho,
|
1935
|
+
strike,
|
1936
|
+
symbol,
|
1937
|
+
theta,
|
1938
|
+
underlying,
|
1939
|
+
vega,
|
1940
|
+
)
|
1941
|
+
|
1942
|
+
def __str__(self) -> str:
|
1943
|
+
return f"OptionsGreeks(delta={self.delta},expiration={self.expiration},gamma={self.gamma},implied_volatility={self.implied_volatility},put_or_call={self.put_or_call},rho={self.rho},strike={self.strike},symbol={self.symbol},theta={self.theta},underlying={self.underlying},vega={self.vega})"
|
1944
|
+
|
1945
|
+
|
2095
1946
|
class OptionsSeriesInfo(Struct, omit_defaults=True):
|
2096
1947
|
derivative_kind: DerivativeKind
|
2097
1948
|
exercise_type: OptionsExerciseType
|
2098
1949
|
expiration_time_of_day: time
|
2099
|
-
expiration_time_zone:
|
1950
|
+
expiration_time_zone: str
|
2100
1951
|
is_cash_settled: bool
|
2101
1952
|
multiplier: Decimal
|
2102
1953
|
options_series: str
|
@@ -2105,14 +1956,14 @@ class OptionsSeriesInfo(Struct, omit_defaults=True):
|
|
2105
1956
|
underlying: str
|
2106
1957
|
venue_discriminant: Optional[str] = None
|
2107
1958
|
|
2108
|
-
#
|
1959
|
+
# Constructor that takes all field titles as arguments for convenience
|
2109
1960
|
@classmethod
|
2110
1961
|
def new(
|
2111
1962
|
cls,
|
2112
1963
|
derivative_kind: DerivativeKind,
|
2113
1964
|
exercise_type: OptionsExerciseType,
|
2114
1965
|
expiration_time_of_day: time,
|
2115
|
-
expiration_time_zone:
|
1966
|
+
expiration_time_zone: str,
|
2116
1967
|
is_cash_settled: bool,
|
2117
1968
|
multiplier: Decimal,
|
2118
1969
|
options_series: str,
|
@@ -2143,7 +1994,7 @@ class OrderAck(Struct, omit_defaults=True):
|
|
2143
1994
|
id: Annotated[OrderId, Meta(title="order_id")]
|
2144
1995
|
eid: Optional[Annotated[Optional[str], Meta(title="exchange_order_id")]] = None
|
2145
1996
|
|
2146
|
-
#
|
1997
|
+
# Constructor that takes all field titles as arguments for convenience
|
2147
1998
|
@classmethod
|
2148
1999
|
def new(
|
2149
2000
|
cls,
|
@@ -2179,7 +2030,7 @@ class OrderCanceled(Struct, omit_defaults=True):
|
|
2179
2030
|
id: OrderId
|
2180
2031
|
xid: Optional[str] = None
|
2181
2032
|
|
2182
|
-
#
|
2033
|
+
# Constructor that takes all field titles as arguments for convenience
|
2183
2034
|
@classmethod
|
2184
2035
|
def new(
|
2185
2036
|
cls,
|
@@ -2199,7 +2050,7 @@ class OrderCanceling(Struct, omit_defaults=True):
|
|
2199
2050
|
id: OrderId
|
2200
2051
|
xid: Optional[str] = None
|
2201
2052
|
|
2202
|
-
#
|
2053
|
+
# Constructor that takes all field titles as arguments for convenience
|
2203
2054
|
@classmethod
|
2204
2055
|
def new(
|
2205
2056
|
cls,
|
@@ -2217,25 +2068,41 @@ class OrderCanceling(Struct, omit_defaults=True):
|
|
2217
2068
|
|
2218
2069
|
class OrderReject(Struct, omit_defaults=True):
|
2219
2070
|
id: OrderId
|
2220
|
-
r: OrderRejectReason
|
2221
|
-
rm: Optional[str] = None
|
2071
|
+
r: Annotated[OrderRejectReason, Meta(title="reject_reason")]
|
2072
|
+
rm: Optional[Annotated[Optional[str], Meta(title="message")]] = None
|
2222
2073
|
|
2223
|
-
#
|
2074
|
+
# Constructor that takes all field titles as arguments for convenience
|
2224
2075
|
@classmethod
|
2225
2076
|
def new(
|
2226
2077
|
cls,
|
2227
2078
|
id: OrderId,
|
2228
|
-
|
2229
|
-
|
2079
|
+
reject_reason: OrderRejectReason,
|
2080
|
+
message: Optional[str] = None,
|
2230
2081
|
):
|
2231
2082
|
return cls(
|
2232
2083
|
id,
|
2233
|
-
|
2234
|
-
|
2084
|
+
reject_reason,
|
2085
|
+
message,
|
2235
2086
|
)
|
2236
2087
|
|
2237
2088
|
def __str__(self) -> str:
|
2238
|
-
return f"OrderReject(id={self.id},
|
2089
|
+
return f"OrderReject(id={self.id},reject_reason={self.r},message={self.rm})"
|
2090
|
+
|
2091
|
+
@property
|
2092
|
+
def reject_reason(self) -> OrderRejectReason:
|
2093
|
+
return self.r
|
2094
|
+
|
2095
|
+
@reject_reason.setter
|
2096
|
+
def reject_reason(self, value: OrderRejectReason) -> None:
|
2097
|
+
self.r = value
|
2098
|
+
|
2099
|
+
@property
|
2100
|
+
def message(self) -> Optional[str]:
|
2101
|
+
return self.rm
|
2102
|
+
|
2103
|
+
@message.setter
|
2104
|
+
def message(self, value: Optional[str]) -> None:
|
2105
|
+
self.rm = value
|
2239
2106
|
|
2240
2107
|
|
2241
2108
|
class SnapshotOrUpdateForAliasKindAndSnapshotOrUpdateForStringAndString1(
|
@@ -2243,7 +2110,7 @@ class SnapshotOrUpdateForAliasKindAndSnapshotOrUpdateForStringAndString1(
|
|
2243
2110
|
):
|
2244
2111
|
snapshot: Dict[str, SnapshotOrUpdateForStringAndString]
|
2245
2112
|
|
2246
|
-
#
|
2113
|
+
# Constructor that takes all field titles as arguments for convenience
|
2247
2114
|
@classmethod
|
2248
2115
|
def new(
|
2249
2116
|
cls,
|
@@ -2265,7 +2132,7 @@ class SnapshotOrUpdateForAliasKindAndSnapshotOrUpdateForStringAndString2(
|
|
2265
2132
|
):
|
2266
2133
|
updates: List[Update]
|
2267
2134
|
|
2268
|
-
#
|
2135
|
+
# Constructor that takes all field titles as arguments for convenience
|
2269
2136
|
@classmethod
|
2270
2137
|
def new(
|
2271
2138
|
cls,
|
@@ -2288,7 +2155,7 @@ SnapshotOrUpdateForAliasKindAndSnapshotOrUpdateForStringAndString = Union[
|
|
2288
2155
|
class SnapshotOrUpdateForStringAndOptionsSeriesInfo1(Struct, omit_defaults=True):
|
2289
2156
|
snapshot: Dict[str, OptionsSeriesInfo]
|
2290
2157
|
|
2291
|
-
#
|
2158
|
+
# Constructor that takes all field titles as arguments for convenience
|
2292
2159
|
@classmethod
|
2293
2160
|
def new(
|
2294
2161
|
cls,
|
@@ -2310,7 +2177,7 @@ Update1 = List[Union[str, Optional[OptionsSeriesInfo]]]
|
|
2310
2177
|
class SnapshotOrUpdateForStringAndOptionsSeriesInfo2(Struct, omit_defaults=True):
|
2311
2178
|
updates: List[Update1]
|
2312
2179
|
|
2313
|
-
#
|
2180
|
+
# Constructor that takes all field titles as arguments for convenience
|
2314
2181
|
@classmethod
|
2315
2182
|
def new(
|
2316
2183
|
cls,
|
@@ -2330,49 +2197,58 @@ SnapshotOrUpdateForStringAndOptionsSeriesInfo = Union[
|
|
2330
2197
|
]
|
2331
2198
|
|
2332
2199
|
|
2333
|
-
class
|
2334
|
-
|
2335
|
-
|
2336
|
-
|
2337
|
-
interval: HumanDuration
|
2338
|
-
quantity: Decimal
|
2339
|
-
reject_lockout: HumanDuration
|
2340
|
-
symbol: str
|
2341
|
-
take_through_frac: Optional[Decimal] = None
|
2200
|
+
class SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndProductCatalogInfo1(
|
2201
|
+
Struct
|
2202
|
+
):
|
2203
|
+
snapshot: Dict[str, SnapshotOrUpdateForStringAndProductCatalogInfo]
|
2342
2204
|
|
2343
|
-
#
|
2205
|
+
# Constructor that takes all field titles as arguments for convenience
|
2344
2206
|
@classmethod
|
2345
2207
|
def new(
|
2346
2208
|
cls,
|
2347
|
-
|
2348
|
-
end_time: datetime,
|
2349
|
-
execution_venue: str,
|
2350
|
-
interval: HumanDuration,
|
2351
|
-
quantity: Decimal,
|
2352
|
-
reject_lockout: HumanDuration,
|
2353
|
-
symbol: str,
|
2354
|
-
take_through_frac: Optional[Decimal] = None,
|
2209
|
+
snapshot: Dict[str, SnapshotOrUpdateForStringAndProductCatalogInfo],
|
2355
2210
|
):
|
2356
2211
|
return cls(
|
2357
|
-
|
2358
|
-
|
2359
|
-
|
2360
|
-
|
2361
|
-
|
2362
|
-
|
2363
|
-
|
2364
|
-
|
2212
|
+
snapshot,
|
2213
|
+
)
|
2214
|
+
|
2215
|
+
def __str__(self) -> str:
|
2216
|
+
return f"SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndProductCatalogInfo1(snapshot={self.snapshot})"
|
2217
|
+
|
2218
|
+
|
2219
|
+
Update4 = List[Union[str, Optional[SnapshotOrUpdateForStringAndProductCatalogInfo]]]
|
2220
|
+
|
2221
|
+
|
2222
|
+
class SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndProductCatalogInfo2(
|
2223
|
+
Struct
|
2224
|
+
):
|
2225
|
+
updates: List[Update4]
|
2226
|
+
|
2227
|
+
# Constructor that takes all field titles as arguments for convenience
|
2228
|
+
@classmethod
|
2229
|
+
def new(
|
2230
|
+
cls,
|
2231
|
+
updates: List[Update4],
|
2232
|
+
):
|
2233
|
+
return cls(
|
2234
|
+
updates,
|
2365
2235
|
)
|
2366
2236
|
|
2367
2237
|
def __str__(self) -> str:
|
2368
|
-
return f"
|
2238
|
+
return f"SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndProductCatalogInfo2(updates={self.updates})"
|
2239
|
+
|
2240
|
+
|
2241
|
+
SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndProductCatalogInfo = Union[
|
2242
|
+
SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndProductCatalogInfo1,
|
2243
|
+
SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndProductCatalogInfo2,
|
2244
|
+
]
|
2369
2245
|
|
2370
2246
|
|
2371
2247
|
class Account(Struct, omit_defaults=True):
|
2372
2248
|
id: str
|
2373
2249
|
name: AccountName
|
2374
2250
|
|
2375
|
-
#
|
2251
|
+
# Constructor that takes all field titles as arguments for convenience
|
2376
2252
|
@classmethod
|
2377
2253
|
def new(
|
2378
2254
|
cls,
|
@@ -2392,7 +2268,7 @@ class FutureSpread(Struct, omit_defaults=True):
|
|
2392
2268
|
legs: List[SpreadLeg]
|
2393
2269
|
product_type: Literal["FutureSpread"]
|
2394
2270
|
|
2395
|
-
#
|
2271
|
+
# Constructor that takes all field titles as arguments for convenience
|
2396
2272
|
@classmethod
|
2397
2273
|
def new(
|
2398
2274
|
cls,
|
@@ -2408,10 +2284,33 @@ class FutureSpread(Struct, omit_defaults=True):
|
|
2408
2284
|
return f"FutureSpread(legs={self.legs},product_type={self.product_type})"
|
2409
2285
|
|
2410
2286
|
|
2287
|
+
class Option(Struct, omit_defaults=True):
|
2288
|
+
instance: OptionsSeriesInstance
|
2289
|
+
product_type: Literal["Option"]
|
2290
|
+
series: str
|
2291
|
+
|
2292
|
+
# Constructor that takes all field titles as arguments for convenience
|
2293
|
+
@classmethod
|
2294
|
+
def new(
|
2295
|
+
cls,
|
2296
|
+
instance: OptionsSeriesInstance,
|
2297
|
+
product_type: Literal["Option"],
|
2298
|
+
series: str,
|
2299
|
+
):
|
2300
|
+
return cls(
|
2301
|
+
instance,
|
2302
|
+
product_type,
|
2303
|
+
series,
|
2304
|
+
)
|
2305
|
+
|
2306
|
+
def __str__(self) -> str:
|
2307
|
+
return f"Option(instance={self.instance},product_type={self.product_type},series={self.series})"
|
2308
|
+
|
2309
|
+
|
2411
2310
|
class SnapshotOrUpdateForStringAndExecutionInfo1(Struct, omit_defaults=True):
|
2412
2311
|
snapshot: Dict[str, ExecutionInfo]
|
2413
2312
|
|
2414
|
-
#
|
2313
|
+
# Constructor that takes all field titles as arguments for convenience
|
2415
2314
|
@classmethod
|
2416
2315
|
def new(
|
2417
2316
|
cls,
|
@@ -2425,17 +2324,17 @@ class SnapshotOrUpdateForStringAndExecutionInfo1(Struct, omit_defaults=True):
|
|
2425
2324
|
return f"SnapshotOrUpdateForStringAndExecutionInfo1(snapshot={self.snapshot})"
|
2426
2325
|
|
2427
2326
|
|
2428
|
-
|
2327
|
+
Update5 = List[Union[str, Optional[ExecutionInfo]]]
|
2429
2328
|
|
2430
2329
|
|
2431
2330
|
class SnapshotOrUpdateForStringAndExecutionInfo2(Struct, omit_defaults=True):
|
2432
|
-
updates: List[
|
2331
|
+
updates: List[Update5]
|
2433
2332
|
|
2434
|
-
#
|
2333
|
+
# Constructor that takes all field titles as arguments for convenience
|
2435
2334
|
@classmethod
|
2436
2335
|
def new(
|
2437
2336
|
cls,
|
2438
|
-
updates: List[
|
2337
|
+
updates: List[Update5],
|
2439
2338
|
):
|
2440
2339
|
return cls(
|
2441
2340
|
updates,
|
@@ -2454,7 +2353,7 @@ SnapshotOrUpdateForStringAndExecutionInfo = Union[
|
|
2454
2353
|
class Enumerated(Struct, omit_defaults=True):
|
2455
2354
|
outcome: Outcome
|
2456
2355
|
|
2457
|
-
#
|
2356
|
+
# Constructor that takes all field titles as arguments for convenience
|
2458
2357
|
@classmethod
|
2459
2358
|
def new(
|
2460
2359
|
cls,
|
@@ -2471,7 +2370,7 @@ class Enumerated(Struct, omit_defaults=True):
|
|
2471
2370
|
class EventContractSeriesInstance1(Struct, omit_defaults=True):
|
2472
2371
|
Enumerated: Enumerated
|
2473
2372
|
|
2474
|
-
#
|
2373
|
+
# Constructor that takes all field titles as arguments for convenience
|
2475
2374
|
@classmethod
|
2476
2375
|
def new(
|
2477
2376
|
cls,
|
@@ -2490,39 +2389,12 @@ EventContractSeriesInstance = Union[
|
|
2490
2389
|
]
|
2491
2390
|
|
2492
2391
|
|
2493
|
-
class OptionsSeriesInstance(Struct, omit_defaults=True):
|
2494
|
-
"""
|
2495
|
-
A specific option from a series.
|
2496
|
-
"""
|
2497
|
-
|
2498
|
-
expiration: datetime
|
2499
|
-
put_or_call: PutOrCall
|
2500
|
-
strike: Decimal
|
2501
|
-
|
2502
|
-
# below is a constructor that takes all field titles as arguments for convenience
|
2503
|
-
@classmethod
|
2504
|
-
def new(
|
2505
|
-
cls,
|
2506
|
-
expiration: datetime,
|
2507
|
-
put_or_call: PutOrCall,
|
2508
|
-
strike: Decimal,
|
2509
|
-
):
|
2510
|
-
return cls(
|
2511
|
-
expiration,
|
2512
|
-
put_or_call,
|
2513
|
-
strike,
|
2514
|
-
)
|
2515
|
-
|
2516
|
-
def __str__(self) -> str:
|
2517
|
-
return f"OptionsSeriesInstance(expiration={self.expiration},put_or_call={self.put_or_call},strike={self.strike})"
|
2518
|
-
|
2519
|
-
|
2520
2392
|
class AccountWithPermissions(Struct, omit_defaults=True):
|
2521
2393
|
account: Account
|
2522
2394
|
permissions: AccountPermissions
|
2523
2395
|
trader: UserId
|
2524
2396
|
|
2525
|
-
#
|
2397
|
+
# Constructor that takes all field titles as arguments for convenience
|
2526
2398
|
@classmethod
|
2527
2399
|
def new(
|
2528
2400
|
cls,
|
@@ -2545,7 +2417,7 @@ class SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndExecutionInfo1(
|
|
2545
2417
|
):
|
2546
2418
|
snapshot: Dict[str, SnapshotOrUpdateForStringAndExecutionInfo]
|
2547
2419
|
|
2548
|
-
#
|
2420
|
+
# Constructor that takes all field titles as arguments for convenience
|
2549
2421
|
@classmethod
|
2550
2422
|
def new(
|
2551
2423
|
cls,
|
@@ -2567,7 +2439,7 @@ class SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndExecutionInfo2(
|
|
2567
2439
|
):
|
2568
2440
|
updates: List[Update3]
|
2569
2441
|
|
2570
|
-
#
|
2442
|
+
# Constructor that takes all field titles as arguments for convenience
|
2571
2443
|
@classmethod
|
2572
2444
|
def new(
|
2573
2445
|
cls,
|
@@ -2587,35 +2459,12 @@ SnapshotOrUpdateForStringAndSnapshotOrUpdateForStringAndExecutionInfo = Union[
|
|
2587
2459
|
]
|
2588
2460
|
|
2589
2461
|
|
2590
|
-
class Option(Struct, omit_defaults=True):
|
2591
|
-
instance: OptionsSeriesInstance
|
2592
|
-
product_type: Literal["Option"]
|
2593
|
-
series: str
|
2594
|
-
|
2595
|
-
# below is a constructor that takes all field titles as arguments for convenience
|
2596
|
-
@classmethod
|
2597
|
-
def new(
|
2598
|
-
cls,
|
2599
|
-
instance: OptionsSeriesInstance,
|
2600
|
-
product_type: Literal["Option"],
|
2601
|
-
series: str,
|
2602
|
-
):
|
2603
|
-
return cls(
|
2604
|
-
instance,
|
2605
|
-
product_type,
|
2606
|
-
series,
|
2607
|
-
)
|
2608
|
-
|
2609
|
-
def __str__(self) -> str:
|
2610
|
-
return f"Option(instance={self.instance},product_type={self.product_type},series={self.series})"
|
2611
|
-
|
2612
|
-
|
2613
2462
|
class EventContract(Struct, omit_defaults=True):
|
2614
2463
|
instance: EventContractSeriesInstance
|
2615
2464
|
product_type: Literal["EventContract"]
|
2616
2465
|
series: str
|
2617
2466
|
|
2618
|
-
#
|
2467
|
+
# Constructor that takes all field titles as arguments for convenience
|
2619
2468
|
@classmethod
|
2620
2469
|
def new(
|
2621
2470
|
cls,
|
@@ -2653,7 +2502,7 @@ class ProductInfo(Struct, omit_defaults=True):
|
|
2653
2502
|
price_display_format: Optional[PriceDisplayFormat] = None
|
2654
2503
|
primary_venue: Optional[str] = None
|
2655
2504
|
|
2656
|
-
#
|
2505
|
+
# Constructor that takes all field titles as arguments for convenience
|
2657
2506
|
@classmethod
|
2658
2507
|
def new(
|
2659
2508
|
cls,
|
@@ -2674,7 +2523,7 @@ class ProductInfo(Struct, omit_defaults=True):
|
|
2674
2523
|
class SnapshotOrUpdateForStringAndProductInfo1(Struct, omit_defaults=True):
|
2675
2524
|
snapshot: Dict[str, ProductInfo]
|
2676
2525
|
|
2677
|
-
#
|
2526
|
+
# Constructor that takes all field titles as arguments for convenience
|
2678
2527
|
@classmethod
|
2679
2528
|
def new(
|
2680
2529
|
cls,
|
@@ -2694,7 +2543,7 @@ Update2 = List[Union[str, Optional[ProductInfo]]]
|
|
2694
2543
|
class SnapshotOrUpdateForStringAndProductInfo2(Struct, omit_defaults=True):
|
2695
2544
|
updates: List[Update2]
|
2696
2545
|
|
2697
|
-
#
|
2546
|
+
# Constructor that takes all field titles as arguments for convenience
|
2698
2547
|
@classmethod
|
2699
2548
|
def new(
|
2700
2549
|
cls,
|