lusid-sdk 2.1.846__py3-none-any.whl → 2.1.848__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.
- lusid/__init__.py +2 -2
- lusid/api/investor_records_api.py +2 -2
- lusid/api/legal_entities_api.py +2 -2
- lusid/api/persons_api.py +2 -2
- lusid/configuration.py +1 -1
- lusid/models/__init__.py +2 -2
- lusid/models/bond.py +8 -2
- lusid/models/cap_floor.py +8 -2
- lusid/models/cds_index.py +8 -2
- lusid/models/complex_bond.py +8 -2
- lusid/models/contract_for_difference.py +8 -2
- lusid/models/create_derived_property_definition_request.py +3 -3
- lusid/models/create_identifier_definition_request.py +3 -3
- lusid/models/create_property_definition_request.py +3 -3
- lusid/models/credit_default_swap.py +8 -2
- lusid/models/equity_option.py +8 -2
- lusid/models/equity_swap.py +8 -2
- lusid/models/exchange_traded_option.py +8 -2
- lusid/models/fixed_leg.py +8 -2
- lusid/models/flexible_deposit.py +8 -2
- lusid/models/flexible_loan.py +9 -3
- lusid/models/floating_leg.py +8 -2
- lusid/models/forward_rate_agreement.py +8 -2
- lusid/models/fund_share_class.py +8 -2
- lusid/models/funding_leg.py +8 -2
- lusid/models/future.py +8 -2
- lusid/models/fx_forward.py +8 -2
- lusid/models/fx_option.py +8 -2
- lusid/models/fx_swap.py +8 -2
- lusid/models/identifier_definition.py +3 -3
- lusid/models/inflation_leg.py +8 -2
- lusid/models/inflation_linked_bond.py +8 -2
- lusid/models/inflation_swap.py +8 -2
- lusid/models/interest_rate_swap.py +8 -2
- lusid/models/interest_rate_swaption.py +8 -2
- lusid/models/investor.py +1 -1
- lusid/models/{upsert_investor.py → investor_identifier.py} +10 -10
- lusid/models/loan_facility.py +9 -3
- lusid/models/property_definition.py +3 -3
- lusid/models/property_definition_search_result.py +3 -3
- lusid/models/property_domain.py +1 -0
- lusid/models/repo.py +8 -2
- lusid/models/simple_cash_flow_loan.py +9 -3
- lusid/models/term_deposit.py +8 -2
- lusid/models/total_return_swap.py +8 -2
- lusid/models/upsert_investor_record_request.py +7 -7
- {lusid_sdk-2.1.846.dist-info → lusid_sdk-2.1.848.dist-info}/METADATA +5 -5
- {lusid_sdk-2.1.846.dist-info → lusid_sdk-2.1.848.dist-info}/RECORD +49 -49
- {lusid_sdk-2.1.846.dist-info → lusid_sdk-2.1.848.dist-info}/WHEEL +0 -0
lusid/__init__.py
CHANGED
@@ -654,6 +654,7 @@ from lusid.models.intermediate_compliance_step import IntermediateComplianceStep
|
|
654
654
|
from lusid.models.intermediate_compliance_step_request import IntermediateComplianceStepRequest
|
655
655
|
from lusid.models.intermediate_securities_distribution_event import IntermediateSecuritiesDistributionEvent
|
656
656
|
from lusid.models.investor import Investor
|
657
|
+
from lusid.models.investor_identifier import InvestorIdentifier
|
657
658
|
from lusid.models.investor_record import InvestorRecord
|
658
659
|
from lusid.models.ir_vol_cube_data import IrVolCubeData
|
659
660
|
from lusid.models.ir_vol_dependency import IrVolDependency
|
@@ -1262,7 +1263,6 @@ from lusid.models.upsert_instrument_events_response import UpsertInstrumentEvent
|
|
1262
1263
|
from lusid.models.upsert_instrument_properties_response import UpsertInstrumentPropertiesResponse
|
1263
1264
|
from lusid.models.upsert_instrument_property_request import UpsertInstrumentPropertyRequest
|
1264
1265
|
from lusid.models.upsert_instruments_response import UpsertInstrumentsResponse
|
1265
|
-
from lusid.models.upsert_investor import UpsertInvestor
|
1266
1266
|
from lusid.models.upsert_investor_record_request import UpsertInvestorRecordRequest
|
1267
1267
|
from lusid.models.upsert_investor_records_response import UpsertInvestorRecordsResponse
|
1268
1268
|
from lusid.models.upsert_legal_entities_response import UpsertLegalEntitiesResponse
|
@@ -1977,6 +1977,7 @@ __all__ = [
|
|
1977
1977
|
"IntermediateComplianceStepRequest",
|
1978
1978
|
"IntermediateSecuritiesDistributionEvent",
|
1979
1979
|
"Investor",
|
1980
|
+
"InvestorIdentifier",
|
1980
1981
|
"InvestorRecord",
|
1981
1982
|
"IrVolCubeData",
|
1982
1983
|
"IrVolDependency",
|
@@ -2585,7 +2586,6 @@ __all__ = [
|
|
2585
2586
|
"UpsertInstrumentPropertiesResponse",
|
2586
2587
|
"UpsertInstrumentPropertyRequest",
|
2587
2588
|
"UpsertInstrumentsResponse",
|
2588
|
-
"UpsertInvestor",
|
2589
2589
|
"UpsertInvestorRecordRequest",
|
2590
2590
|
"UpsertInvestorRecordsResponse",
|
2591
2591
|
"UpsertLegalEntitiesResponse",
|
@@ -655,7 +655,7 @@ class InvestorRecordsApi:
|
|
655
655
|
|
656
656
|
@validate_arguments
|
657
657
|
def upsert_investor_records(self, success_mode : Annotated[StrictStr, Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, UpsertInvestorRecordRequest], Field(..., description="A collection of requests to create or update Investor Records.")], async_req: Optional[bool]=None, **kwargs) -> Union[UpsertInvestorRecordsResponse, Awaitable[UpsertInvestorRecordsResponse]]: # noqa: E501
|
658
|
-
"""[EARLY ACCESS] UpsertInvestorRecords:
|
658
|
+
"""[EARLY ACCESS] UpsertInvestorRecords: Upsert investor records # noqa: E501
|
659
659
|
|
660
660
|
Creates or updates a collection of Investor Records # noqa: E501
|
661
661
|
This method makes a synchronous HTTP request by default. To make an
|
@@ -688,7 +688,7 @@ class InvestorRecordsApi:
|
|
688
688
|
|
689
689
|
@validate_arguments
|
690
690
|
def upsert_investor_records_with_http_info(self, success_mode : Annotated[StrictStr, Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, UpsertInvestorRecordRequest], Field(..., description="A collection of requests to create or update Investor Records.")], **kwargs) -> ApiResponse: # noqa: E501
|
691
|
-
"""[EARLY ACCESS] UpsertInvestorRecords:
|
691
|
+
"""[EARLY ACCESS] UpsertInvestorRecords: Upsert investor records # noqa: E501
|
692
692
|
|
693
693
|
Creates or updates a collection of Investor Records # noqa: E501
|
694
694
|
This method makes a synchronous HTTP request by default. To make an
|
lusid/api/legal_entities_api.py
CHANGED
@@ -3029,7 +3029,7 @@ class LegalEntitiesApi:
|
|
3029
3029
|
|
3030
3030
|
@validate_arguments
|
3031
3031
|
def upsert_legal_entities(self, success_mode : Annotated[StrictStr, Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, UpsertLegalEntityRequest], Field(..., description="A collection of requests to create or update Legal Entities.")], async_req: Optional[bool]=None, **kwargs) -> Union[UpsertLegalEntitiesResponse, Awaitable[UpsertLegalEntitiesResponse]]: # noqa: E501
|
3032
|
-
"""[EARLY ACCESS] UpsertLegalEntities:
|
3032
|
+
"""[EARLY ACCESS] UpsertLegalEntities: Batch upsert Legal Entities # noqa: E501
|
3033
3033
|
|
3034
3034
|
Creates or updates a collection of Legal Entities # noqa: E501
|
3035
3035
|
This method makes a synchronous HTTP request by default. To make an
|
@@ -3062,7 +3062,7 @@ class LegalEntitiesApi:
|
|
3062
3062
|
|
3063
3063
|
@validate_arguments
|
3064
3064
|
def upsert_legal_entities_with_http_info(self, success_mode : Annotated[StrictStr, Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, UpsertLegalEntityRequest], Field(..., description="A collection of requests to create or update Legal Entities.")], **kwargs) -> ApiResponse: # noqa: E501
|
3065
|
-
"""[EARLY ACCESS] UpsertLegalEntities:
|
3065
|
+
"""[EARLY ACCESS] UpsertLegalEntities: Batch upsert Legal Entities # noqa: E501
|
3066
3066
|
|
3067
3067
|
Creates or updates a collection of Legal Entities # noqa: E501
|
3068
3068
|
This method makes a synchronous HTTP request by default. To make an
|
lusid/api/persons_api.py
CHANGED
@@ -3380,7 +3380,7 @@ class PersonsApi:
|
|
3380
3380
|
|
3381
3381
|
@validate_arguments
|
3382
3382
|
def upsert_persons(self, success_mode : Annotated[StrictStr, Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, UpsertPersonRequest], Field(..., description="A collection of requests to create or update Person(s).")], async_req: Optional[bool]=None, **kwargs) -> Union[UpsertPersonsResponse, Awaitable[UpsertPersonsResponse]]: # noqa: E501
|
3383
|
-
"""[EARLY ACCESS] UpsertPersons:
|
3383
|
+
"""[EARLY ACCESS] UpsertPersons: Batch upsert Persons # noqa: E501
|
3384
3384
|
|
3385
3385
|
Create or updates a collection of person(s). # noqa: E501
|
3386
3386
|
This method makes a synchronous HTTP request by default. To make an
|
@@ -3413,7 +3413,7 @@ class PersonsApi:
|
|
3413
3413
|
|
3414
3414
|
@validate_arguments
|
3415
3415
|
def upsert_persons_with_http_info(self, success_mode : Annotated[StrictStr, Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, UpsertPersonRequest], Field(..., description="A collection of requests to create or update Person(s).")], **kwargs) -> ApiResponse: # noqa: E501
|
3416
|
-
"""[EARLY ACCESS] UpsertPersons:
|
3416
|
+
"""[EARLY ACCESS] UpsertPersons: Batch upsert Persons # noqa: E501
|
3417
3417
|
|
3418
3418
|
Create or updates a collection of person(s). # noqa: E501
|
3419
3419
|
This method makes a synchronous HTTP request by default. To make an
|
lusid/configuration.py
CHANGED
@@ -445,7 +445,7 @@ class Configuration:
|
|
445
445
|
return "Python SDK Debug Report:\n"\
|
446
446
|
"OS: {env}\n"\
|
447
447
|
"Python Version: {pyversion}\n"\
|
448
|
-
"Version of the API: 0.11.
|
448
|
+
"Version of the API: 0.11.7960\n"\
|
449
449
|
"SDK Package Version: {package_version}".\
|
450
450
|
format(env=sys.platform, pyversion=sys.version, package_version=package_version)
|
451
451
|
|
lusid/models/__init__.py
CHANGED
@@ -566,6 +566,7 @@ from lusid.models.intermediate_compliance_step import IntermediateComplianceStep
|
|
566
566
|
from lusid.models.intermediate_compliance_step_request import IntermediateComplianceStepRequest
|
567
567
|
from lusid.models.intermediate_securities_distribution_event import IntermediateSecuritiesDistributionEvent
|
568
568
|
from lusid.models.investor import Investor
|
569
|
+
from lusid.models.investor_identifier import InvestorIdentifier
|
569
570
|
from lusid.models.investor_record import InvestorRecord
|
570
571
|
from lusid.models.ir_vol_cube_data import IrVolCubeData
|
571
572
|
from lusid.models.ir_vol_dependency import IrVolDependency
|
@@ -1174,7 +1175,6 @@ from lusid.models.upsert_instrument_events_response import UpsertInstrumentEvent
|
|
1174
1175
|
from lusid.models.upsert_instrument_properties_response import UpsertInstrumentPropertiesResponse
|
1175
1176
|
from lusid.models.upsert_instrument_property_request import UpsertInstrumentPropertyRequest
|
1176
1177
|
from lusid.models.upsert_instruments_response import UpsertInstrumentsResponse
|
1177
|
-
from lusid.models.upsert_investor import UpsertInvestor
|
1178
1178
|
from lusid.models.upsert_investor_record_request import UpsertInvestorRecordRequest
|
1179
1179
|
from lusid.models.upsert_investor_records_response import UpsertInvestorRecordsResponse
|
1180
1180
|
from lusid.models.upsert_legal_entities_response import UpsertLegalEntitiesResponse
|
@@ -1802,6 +1802,7 @@ __all__ = [
|
|
1802
1802
|
"IntermediateComplianceStepRequest",
|
1803
1803
|
"IntermediateSecuritiesDistributionEvent",
|
1804
1804
|
"Investor",
|
1805
|
+
"InvestorIdentifier",
|
1805
1806
|
"InvestorRecord",
|
1806
1807
|
"IrVolCubeData",
|
1807
1808
|
"IrVolDependency",
|
@@ -2410,7 +2411,6 @@ __all__ = [
|
|
2410
2411
|
"UpsertInstrumentPropertiesResponse",
|
2411
2412
|
"UpsertInstrumentPropertyRequest",
|
2412
2413
|
"UpsertInstrumentsResponse",
|
2413
|
-
"UpsertInvestor",
|
2414
2414
|
"UpsertInvestorRecordRequest",
|
2415
2415
|
"UpsertInvestorRecordsResponse",
|
2416
2416
|
"UpsertLegalEntitiesResponse",
|
lusid/models/bond.py
CHANGED
@@ -24,6 +24,7 @@ from lusid.models.ex_dividend_configuration import ExDividendConfiguration
|
|
24
24
|
from lusid.models.flow_conventions import FlowConventions
|
25
25
|
from lusid.models.lusid_instrument import LusidInstrument
|
26
26
|
from lusid.models.rounding_convention import RoundingConvention
|
27
|
+
from lusid.models.time_zone_conventions import TimeZoneConventions
|
27
28
|
from lusid.models.trading_conventions import TradingConventions
|
28
29
|
|
29
30
|
class Bond(LusidInstrument):
|
@@ -45,9 +46,10 @@ class Bond(LusidInstrument):
|
|
45
46
|
ex_dividend_configuration: Optional[ExDividendConfiguration] = Field(None, alias="exDividendConfiguration")
|
46
47
|
original_issue_price: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="originalIssuePrice", description="The price the bond was issued at. This is to be entered as a percentage of par, for example a value of 98.5 would represent 98.5%.")
|
47
48
|
trading_conventions: Optional[TradingConventions] = Field(None, alias="tradingConventions")
|
49
|
+
time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
|
48
50
|
instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
|
49
51
|
additional_properties: Dict[str, Any] = {}
|
50
|
-
__properties = ["instrumentType", "startDate", "maturityDate", "domCcy", "flowConventions", "principal", "couponRate", "identifiers", "exDividendDays", "initialCouponDate", "firstCouponPayDate", "calculationType", "roundingConventions", "exDividendConfiguration", "originalIssuePrice", "tradingConventions"]
|
52
|
+
__properties = ["instrumentType", "startDate", "maturityDate", "domCcy", "flowConventions", "principal", "couponRate", "identifiers", "exDividendDays", "initialCouponDate", "firstCouponPayDate", "calculationType", "roundingConventions", "exDividendConfiguration", "originalIssuePrice", "tradingConventions", "timeZoneConventions"]
|
51
53
|
|
52
54
|
@validator('instrument_type')
|
53
55
|
def instrument_type_validate_enum(cls, value):
|
@@ -157,6 +159,9 @@ class Bond(LusidInstrument):
|
|
157
159
|
# override the default output from pydantic by calling `to_dict()` of trading_conventions
|
158
160
|
if self.trading_conventions:
|
159
161
|
_dict['tradingConventions'] = self.trading_conventions.to_dict()
|
162
|
+
# override the default output from pydantic by calling `to_dict()` of time_zone_conventions
|
163
|
+
if self.time_zone_conventions:
|
164
|
+
_dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
|
160
165
|
# puts key-value pairs in additional_properties in the top level
|
161
166
|
if self.additional_properties is not None:
|
162
167
|
for _key, _value in self.additional_properties.items():
|
@@ -224,7 +229,8 @@ class Bond(LusidInstrument):
|
|
224
229
|
"rounding_conventions": [RoundingConvention.from_dict(_item) for _item in obj.get("roundingConventions")] if obj.get("roundingConventions") is not None else None,
|
225
230
|
"ex_dividend_configuration": ExDividendConfiguration.from_dict(obj.get("exDividendConfiguration")) if obj.get("exDividendConfiguration") is not None else None,
|
226
231
|
"original_issue_price": obj.get("originalIssuePrice"),
|
227
|
-
"trading_conventions": TradingConventions.from_dict(obj.get("tradingConventions")) if obj.get("tradingConventions") is not None else None
|
232
|
+
"trading_conventions": TradingConventions.from_dict(obj.get("tradingConventions")) if obj.get("tradingConventions") is not None else None,
|
233
|
+
"time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
|
228
234
|
})
|
229
235
|
# store additional fields in additional_properties
|
230
236
|
for _key in obj.keys():
|
lusid/models/cap_floor.py
CHANGED
@@ -23,6 +23,7 @@ from pydantic.v1 import StrictStr, Field, Field, StrictBool, StrictFloat, Strict
|
|
23
23
|
from lusid.models.additional_payment import AdditionalPayment
|
24
24
|
from lusid.models.floating_leg import FloatingLeg
|
25
25
|
from lusid.models.lusid_instrument import LusidInstrument
|
26
|
+
from lusid.models.time_zone_conventions import TimeZoneConventions
|
26
27
|
|
27
28
|
class CapFloor(LusidInstrument):
|
28
29
|
"""
|
@@ -34,9 +35,10 @@ class CapFloor(LusidInstrument):
|
|
34
35
|
include_first_caplet: StrictBool = Field(..., alias="includeFirstCaplet", description="Include first caplet flag.")
|
35
36
|
underlying_floating_leg: FloatingLeg = Field(..., alias="underlyingFloatingLeg")
|
36
37
|
additional_payments: Optional[conlist(AdditionalPayment)] = Field(None, alias="additionalPayments", description="Optional additional payments at a given date e.g. to level off an uneven equity swap. The dates must be distinct and either all payments are Pay or all payments are Receive.")
|
38
|
+
time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
|
37
39
|
instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
|
38
40
|
additional_properties: Dict[str, Any] = {}
|
39
|
-
__properties = ["instrumentType", "capFloorType", "capStrike", "floorStrike", "includeFirstCaplet", "underlyingFloatingLeg", "additionalPayments"]
|
41
|
+
__properties = ["instrumentType", "capFloorType", "capStrike", "floorStrike", "includeFirstCaplet", "underlyingFloatingLeg", "additionalPayments", "timeZoneConventions"]
|
40
42
|
|
41
43
|
@validator('instrument_type')
|
42
44
|
def instrument_type_validate_enum(cls, value):
|
@@ -140,6 +142,9 @@ class CapFloor(LusidInstrument):
|
|
140
142
|
if _item:
|
141
143
|
_items.append(_item.to_dict())
|
142
144
|
_dict['additionalPayments'] = _items
|
145
|
+
# override the default output from pydantic by calling `to_dict()` of time_zone_conventions
|
146
|
+
if self.time_zone_conventions:
|
147
|
+
_dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
|
143
148
|
# puts key-value pairs in additional_properties in the top level
|
144
149
|
if self.additional_properties is not None:
|
145
150
|
for _key, _value in self.additional_properties.items():
|
@@ -178,7 +183,8 @@ class CapFloor(LusidInstrument):
|
|
178
183
|
"floor_strike": obj.get("floorStrike"),
|
179
184
|
"include_first_caplet": obj.get("includeFirstCaplet"),
|
180
185
|
"underlying_floating_leg": FloatingLeg.from_dict(obj.get("underlyingFloatingLeg")) if obj.get("underlyingFloatingLeg") is not None else None,
|
181
|
-
"additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None
|
186
|
+
"additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None,
|
187
|
+
"time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
|
182
188
|
})
|
183
189
|
# store additional fields in additional_properties
|
184
190
|
for _key in obj.keys():
|
lusid/models/cds_index.py
CHANGED
@@ -25,6 +25,7 @@ from lusid.models.basket import Basket
|
|
25
25
|
from lusid.models.cds_flow_conventions import CdsFlowConventions
|
26
26
|
from lusid.models.flow_convention_name import FlowConventionName
|
27
27
|
from lusid.models.lusid_instrument import LusidInstrument
|
28
|
+
from lusid.models.time_zone_conventions import TimeZoneConventions
|
28
29
|
|
29
30
|
class CdsIndex(LusidInstrument):
|
30
31
|
"""
|
@@ -39,9 +40,10 @@ class CdsIndex(LusidInstrument):
|
|
39
40
|
convention_name: Optional[FlowConventionName] = Field(None, alias="conventionName")
|
40
41
|
notional: Union[StrictFloat, StrictInt] = Field(..., description="The notional quantity that applies to both the premium and protection legs.")
|
41
42
|
additional_payments: Optional[conlist(AdditionalPayment)] = Field(None, alias="additionalPayments", description="Optional additional payments at a given date e.g. to level off an uneven swap. The dates must be distinct and either all payments are Pay or all payments are Receive.")
|
43
|
+
time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
|
42
44
|
instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
|
43
45
|
additional_properties: Dict[str, Any] = {}
|
44
|
-
__properties = ["instrumentType", "startDate", "maturityDate", "flowConventions", "couponRate", "identifiers", "basket", "conventionName", "notional", "additionalPayments"]
|
46
|
+
__properties = ["instrumentType", "startDate", "maturityDate", "flowConventions", "couponRate", "identifiers", "basket", "conventionName", "notional", "additionalPayments", "timeZoneConventions"]
|
45
47
|
|
46
48
|
@validator('instrument_type')
|
47
49
|
def instrument_type_validate_enum(cls, value):
|
@@ -151,6 +153,9 @@ class CdsIndex(LusidInstrument):
|
|
151
153
|
if _item:
|
152
154
|
_items.append(_item.to_dict())
|
153
155
|
_dict['additionalPayments'] = _items
|
156
|
+
# override the default output from pydantic by calling `to_dict()` of time_zone_conventions
|
157
|
+
if self.time_zone_conventions:
|
158
|
+
_dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
|
154
159
|
# puts key-value pairs in additional_properties in the top level
|
155
160
|
if self.additional_properties is not None:
|
156
161
|
for _key, _value in self.additional_properties.items():
|
@@ -182,7 +187,8 @@ class CdsIndex(LusidInstrument):
|
|
182
187
|
"basket": Basket.from_dict(obj.get("basket")) if obj.get("basket") is not None else None,
|
183
188
|
"convention_name": FlowConventionName.from_dict(obj.get("conventionName")) if obj.get("conventionName") is not None else None,
|
184
189
|
"notional": obj.get("notional"),
|
185
|
-
"additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None
|
190
|
+
"additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None,
|
191
|
+
"time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
|
186
192
|
})
|
187
193
|
# store additional fields in additional_properties
|
188
194
|
for _key in obj.keys():
|
lusid/models/complex_bond.py
CHANGED
@@ -23,6 +23,7 @@ from pydantic.v1 import StrictStr, Field, Field, StrictBool, StrictFloat, Strict
|
|
23
23
|
from lusid.models.lusid_instrument import LusidInstrument
|
24
24
|
from lusid.models.rounding_convention import RoundingConvention
|
25
25
|
from lusid.models.schedule import Schedule
|
26
|
+
from lusid.models.time_zone_conventions import TimeZoneConventions
|
26
27
|
from lusid.models.trading_conventions import TradingConventions
|
27
28
|
|
28
29
|
class ComplexBond(LusidInstrument):
|
@@ -37,9 +38,10 @@ class ComplexBond(LusidInstrument):
|
|
37
38
|
asset_backed: Optional[StrictBool] = Field(None, alias="assetBacked", description="If this flag is set to true, then the outstanding notional and principal repayments will be calculated based on pool factors in the quote store. Usually AssetBacked bonds also require a RollConvention setting of within the FlowConventions any given rates schedule (to ensure payment dates always happen on the same day of the month) and US Agency MBSs with Pay Delay features also require their rates schedules to include an ExDividendConfiguration to drive the lag between interest accrual and payment.")
|
38
39
|
asset_pool_identifier: Optional[StrictStr] = Field(None,alias="assetPoolIdentifier", description="Identifier used to retrieve pool factor information about this bond from the quote store. This is typically the bond's ISIN, but can also be ClientInternal. Please ensure you align the MarketDataKeyRule with the correct Quote (Quote.ClientInternal.* or Quote.Isin.*)")
|
39
40
|
trading_conventions: Optional[TradingConventions] = Field(None, alias="tradingConventions")
|
41
|
+
time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
|
40
42
|
instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
|
41
43
|
additional_properties: Dict[str, Any] = {}
|
42
|
-
__properties = ["instrumentType", "identifiers", "calculationType", "schedules", "originalIssuePrice", "roundingConventions", "assetBacked", "assetPoolIdentifier", "tradingConventions"]
|
44
|
+
__properties = ["instrumentType", "identifiers", "calculationType", "schedules", "originalIssuePrice", "roundingConventions", "assetBacked", "assetPoolIdentifier", "tradingConventions", "timeZoneConventions"]
|
43
45
|
|
44
46
|
@validator('instrument_type')
|
45
47
|
def instrument_type_validate_enum(cls, value):
|
@@ -150,6 +152,9 @@ class ComplexBond(LusidInstrument):
|
|
150
152
|
# override the default output from pydantic by calling `to_dict()` of trading_conventions
|
151
153
|
if self.trading_conventions:
|
152
154
|
_dict['tradingConventions'] = self.trading_conventions.to_dict()
|
155
|
+
# override the default output from pydantic by calling `to_dict()` of time_zone_conventions
|
156
|
+
if self.time_zone_conventions:
|
157
|
+
_dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
|
153
158
|
# puts key-value pairs in additional_properties in the top level
|
154
159
|
if self.additional_properties is not None:
|
155
160
|
for _key, _value in self.additional_properties.items():
|
@@ -210,7 +215,8 @@ class ComplexBond(LusidInstrument):
|
|
210
215
|
"rounding_conventions": [RoundingConvention.from_dict(_item) for _item in obj.get("roundingConventions")] if obj.get("roundingConventions") is not None else None,
|
211
216
|
"asset_backed": obj.get("assetBacked"),
|
212
217
|
"asset_pool_identifier": obj.get("assetPoolIdentifier"),
|
213
|
-
"trading_conventions": TradingConventions.from_dict(obj.get("tradingConventions")) if obj.get("tradingConventions") is not None else None
|
218
|
+
"trading_conventions": TradingConventions.from_dict(obj.get("tradingConventions")) if obj.get("tradingConventions") is not None else None,
|
219
|
+
"time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
|
214
220
|
})
|
215
221
|
# store additional fields in additional_properties
|
216
222
|
for _key in obj.keys():
|
@@ -21,6 +21,7 @@ from datetime import datetime
|
|
21
21
|
from typing import Any, Dict, Optional, Union
|
22
22
|
from pydantic.v1 import StrictStr, Field, Field, StrictFloat, StrictInt, StrictStr, constr, validator
|
23
23
|
from lusid.models.lusid_instrument import LusidInstrument
|
24
|
+
from lusid.models.time_zone_conventions import TimeZoneConventions
|
24
25
|
|
25
26
|
class ContractForDifference(LusidInstrument):
|
26
27
|
"""
|
@@ -37,9 +38,10 @@ class ContractForDifference(LusidInstrument):
|
|
37
38
|
underlying_identifier: Optional[StrictStr] = Field(None,alias="underlyingIdentifier", description="External market codes and identifiers for the CFD, e.g. RIC. Supported string (enumeration) values are: [LusidInstrumentId, Isin, Sedol, Cusip, ClientInternal, Figi, RIC, QuotePermId, REDCode, BBGId, ICECode].")
|
38
39
|
lot_size: Optional[StrictInt] = Field(None, alias="lotSize", description="CFD LotSize, the minimum number of shares that can be bought or sold at once. Optional, if set must be non-negative, if not set defaults to 1.")
|
39
40
|
underlying: Optional[LusidInstrument] = None
|
41
|
+
time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
|
40
42
|
instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
|
41
43
|
additional_properties: Dict[str, Any] = {}
|
42
|
-
__properties = ["instrumentType", "startDate", "maturityDate", "code", "contractSize", "payCcy", "referenceRate", "type", "underlyingCcy", "underlyingIdentifier", "lotSize", "underlying"]
|
44
|
+
__properties = ["instrumentType", "startDate", "maturityDate", "code", "contractSize", "payCcy", "referenceRate", "type", "underlyingCcy", "underlyingIdentifier", "lotSize", "underlying", "timeZoneConventions"]
|
43
45
|
|
44
46
|
@validator('instrument_type')
|
45
47
|
def instrument_type_validate_enum(cls, value):
|
@@ -136,6 +138,9 @@ class ContractForDifference(LusidInstrument):
|
|
136
138
|
# override the default output from pydantic by calling `to_dict()` of underlying
|
137
139
|
if self.underlying:
|
138
140
|
_dict['underlying'] = self.underlying.to_dict()
|
141
|
+
# override the default output from pydantic by calling `to_dict()` of time_zone_conventions
|
142
|
+
if self.time_zone_conventions:
|
143
|
+
_dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
|
139
144
|
# puts key-value pairs in additional_properties in the top level
|
140
145
|
if self.additional_properties is not None:
|
141
146
|
for _key, _value in self.additional_properties.items():
|
@@ -179,7 +184,8 @@ class ContractForDifference(LusidInstrument):
|
|
179
184
|
"underlying_ccy": obj.get("underlyingCcy"),
|
180
185
|
"underlying_identifier": obj.get("underlyingIdentifier"),
|
181
186
|
"lot_size": obj.get("lotSize"),
|
182
|
-
"underlying": LusidInstrument.from_dict(obj.get("underlying")) if obj.get("underlying") is not None else None
|
187
|
+
"underlying": LusidInstrument.from_dict(obj.get("underlying")) if obj.get("underlying") is not None else None,
|
188
|
+
"time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
|
183
189
|
})
|
184
190
|
# store additional fields in additional_properties
|
185
191
|
for _key in obj.keys():
|
@@ -26,7 +26,7 @@ class CreateDerivedPropertyDefinitionRequest(BaseModel):
|
|
26
26
|
"""
|
27
27
|
CreateDerivedPropertyDefinitionRequest
|
28
28
|
"""
|
29
|
-
domain: StrictStr = Field(...,alias="domain", description="The domain that the property exists in. Not all available values are currently supported, please check the documentation: https://support.lusid.com/knowledgebase/article/KA-01719/. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
29
|
+
domain: StrictStr = Field(...,alias="domain", description="The domain that the property exists in. Not all available values are currently supported, please check the documentation: https://support.lusid.com/knowledgebase/article/KA-01719/. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, InvestmentAccount, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
30
30
|
scope: StrictStr = Field(...,alias="scope", description="The scope that the property exists in.")
|
31
31
|
code: StrictStr = Field(...,alias="code", description="The code of the property. Together with the domain and scope this uniquely identifies the property.")
|
32
32
|
display_name: StrictStr = Field(...,alias="displayName", description="The display name of the property.")
|
@@ -91,8 +91,8 @@ class CreateDerivedPropertyDefinitionRequest(BaseModel):
|
|
91
91
|
if "domain" != "type":
|
92
92
|
return value
|
93
93
|
|
94
|
-
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
95
|
-
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
94
|
+
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
95
|
+
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
96
96
|
return value
|
97
97
|
|
98
98
|
class Config:
|
@@ -26,7 +26,7 @@ class CreateIdentifierDefinitionRequest(BaseModel):
|
|
26
26
|
"""
|
27
27
|
CreateIdentifierDefinitionRequest
|
28
28
|
"""
|
29
|
-
domain: StrictStr = Field(...,alias="domain", description="The type of entity to which the identifier can be attached. Supported values are \"Instrument\", \"Person\", \"LegalEntity\"and \"CustomEntity\". The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
29
|
+
domain: StrictStr = Field(...,alias="domain", description="The type of entity to which the identifier can be attached. Supported values are \"Instrument\", \"Person\", \"LegalEntity\"and \"CustomEntity\". The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, InvestmentAccount, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
30
30
|
identifier_scope: StrictStr = Field(...,alias="identifierScope", description="The scope that the identifier definition exists in.")
|
31
31
|
identifier_type: StrictStr = Field(...,alias="identifierType", description="What the identifier represents. Together with \"domain\" and \"identifierScope\" this uniquely identifies the identifier definition.")
|
32
32
|
life_time: StrictStr = Field(...,alias="lifeTime", description="Describes whether an identifier value is associated with an entity for all effective dates (“Perpetual”) or applies within a specified effective date range (“TimeVariant”). The available values are: Perpetual, TimeVariant")
|
@@ -92,8 +92,8 @@ class CreateIdentifierDefinitionRequest(BaseModel):
|
|
92
92
|
if "domain" != "type":
|
93
93
|
return value
|
94
94
|
|
95
|
-
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
96
|
-
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
95
|
+
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
96
|
+
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
97
97
|
return value
|
98
98
|
|
99
99
|
@validator('life_time')
|
@@ -26,7 +26,7 @@ class CreatePropertyDefinitionRequest(BaseModel):
|
|
26
26
|
"""
|
27
27
|
CreatePropertyDefinitionRequest
|
28
28
|
"""
|
29
|
-
domain: StrictStr = Field(...,alias="domain", description="The domain that the property exists in. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
29
|
+
domain: StrictStr = Field(...,alias="domain", description="The domain that the property exists in. The available values are: NotDefined, Transaction, Portfolio, Holding, ReferenceHolding, TransactionConfiguration, Instrument, CutLabelDefinition, Analytic, PortfolioGroup, Person, AccessMetadata, Order, UnitResult, MarketData, ConfigurationRecipe, Allocation, Calendar, LegalEntity, InvestorRecord, InvestmentAccount, Placement, Execution, Block, Participation, Package, OrderInstruction, NextBestAction, CustomEntity, InstrumentEvent, Account, ChartOfAccounts, CustodianAccount, Abor, AborConfiguration, Fund, FundConfiguration, Fee, Reconciliation, PropertyDefinition, Compliance, DiaryEntry, Leg, DerivedValuation, Timeline, ClosedPeriod, AddressKeyDefinition, AmortisationRuleSet, AnalyticsSetInventory, AtomUnitResult, CleardownModule, ComplexMarketData, ComplianceRunSummary, ComplianceRule, ComplianceRunInfo, CorporateActionSource, CounterpartyAgreement, CustomEntityDefinition, DataType, Dialect, EventHandler, GeneralLedgerProfile, PostingModule, Quote, RecipeComposer, ReconciliationRunBreak, ReferenceList, RelationDefinition, ReturnBlockIndex, SRSDocument, SRSIndex, TransactionTemplate, TransactionTemplateScope, TransactionType, TransactionTypeConfig, TranslationScript, TaskDefinition, TaskInstance, Worker, StagingRuleSet, IdentifierDefinition")
|
30
30
|
scope: StrictStr = Field(...,alias="scope", description="The scope that the property exists in.")
|
31
31
|
code: StrictStr = Field(...,alias="code", description="The code of the property. Together with the domain and scope this uniquely identifies the property.")
|
32
32
|
value_required: Optional[StrictBool] = Field(None, alias="valueRequired", description="This field is not implemented and should be disregarded.")
|
@@ -93,8 +93,8 @@ class CreatePropertyDefinitionRequest(BaseModel):
|
|
93
93
|
if "domain" != "type":
|
94
94
|
return value
|
95
95
|
|
96
|
-
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
97
|
-
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
96
|
+
if value not in ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition'):
|
97
|
+
raise ValueError("must be one of enum values ('NotDefined', 'Transaction', 'Portfolio', 'Holding', 'ReferenceHolding', 'TransactionConfiguration', 'Instrument', 'CutLabelDefinition', 'Analytic', 'PortfolioGroup', 'Person', 'AccessMetadata', 'Order', 'UnitResult', 'MarketData', 'ConfigurationRecipe', 'Allocation', 'Calendar', 'LegalEntity', 'InvestorRecord', 'InvestmentAccount', 'Placement', 'Execution', 'Block', 'Participation', 'Package', 'OrderInstruction', 'NextBestAction', 'CustomEntity', 'InstrumentEvent', 'Account', 'ChartOfAccounts', 'CustodianAccount', 'Abor', 'AborConfiguration', 'Fund', 'FundConfiguration', 'Fee', 'Reconciliation', 'PropertyDefinition', 'Compliance', 'DiaryEntry', 'Leg', 'DerivedValuation', 'Timeline', 'ClosedPeriod', 'AddressKeyDefinition', 'AmortisationRuleSet', 'AnalyticsSetInventory', 'AtomUnitResult', 'CleardownModule', 'ComplexMarketData', 'ComplianceRunSummary', 'ComplianceRule', 'ComplianceRunInfo', 'CorporateActionSource', 'CounterpartyAgreement', 'CustomEntityDefinition', 'DataType', 'Dialect', 'EventHandler', 'GeneralLedgerProfile', 'PostingModule', 'Quote', 'RecipeComposer', 'ReconciliationRunBreak', 'ReferenceList', 'RelationDefinition', 'ReturnBlockIndex', 'SRSDocument', 'SRSIndex', 'TransactionTemplate', 'TransactionTemplateScope', 'TransactionType', 'TransactionTypeConfig', 'TranslationScript', 'TaskDefinition', 'TaskInstance', 'Worker', 'StagingRuleSet', 'IdentifierDefinition')")
|
98
98
|
return value
|
99
99
|
|
100
100
|
@validator('life_time')
|
@@ -25,6 +25,7 @@ from lusid.models.cds_flow_conventions import CdsFlowConventions
|
|
25
25
|
from lusid.models.cds_protection_detail_specification import CdsProtectionDetailSpecification
|
26
26
|
from lusid.models.flow_convention_name import FlowConventionName
|
27
27
|
from lusid.models.lusid_instrument import LusidInstrument
|
28
|
+
from lusid.models.time_zone_conventions import TimeZoneConventions
|
28
29
|
|
29
30
|
class CreditDefaultSwap(LusidInstrument):
|
30
31
|
"""
|
@@ -39,9 +40,10 @@ class CreditDefaultSwap(LusidInstrument):
|
|
39
40
|
notional: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="The notional protected by the Credit Default Swap")
|
40
41
|
protection_detail_specification: Optional[CdsProtectionDetailSpecification] = Field(None, alias="protectionDetailSpecification")
|
41
42
|
additional_payments: Optional[conlist(AdditionalPayment)] = Field(None, alias="additionalPayments", description="Optional additional payments at a given date e.g. to level off an uneven swap. The dates must be distinct and either all payments are Pay or all payments are Receive.")
|
43
|
+
time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
|
42
44
|
instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
|
43
45
|
additional_properties: Dict[str, Any] = {}
|
44
|
-
__properties = ["instrumentType", "ticker", "startDate", "maturityDate", "flowConventions", "couponRate", "conventionName", "notional", "protectionDetailSpecification", "additionalPayments"]
|
46
|
+
__properties = ["instrumentType", "ticker", "startDate", "maturityDate", "flowConventions", "couponRate", "conventionName", "notional", "protectionDetailSpecification", "additionalPayments", "timeZoneConventions"]
|
45
47
|
|
46
48
|
@validator('instrument_type')
|
47
49
|
def instrument_type_validate_enum(cls, value):
|
@@ -151,6 +153,9 @@ class CreditDefaultSwap(LusidInstrument):
|
|
151
153
|
if _item:
|
152
154
|
_items.append(_item.to_dict())
|
153
155
|
_dict['additionalPayments'] = _items
|
156
|
+
# override the default output from pydantic by calling `to_dict()` of time_zone_conventions
|
157
|
+
if self.time_zone_conventions:
|
158
|
+
_dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
|
154
159
|
# puts key-value pairs in additional_properties in the top level
|
155
160
|
if self.additional_properties is not None:
|
156
161
|
for _key, _value in self.additional_properties.items():
|
@@ -192,7 +197,8 @@ class CreditDefaultSwap(LusidInstrument):
|
|
192
197
|
"convention_name": FlowConventionName.from_dict(obj.get("conventionName")) if obj.get("conventionName") is not None else None,
|
193
198
|
"notional": obj.get("notional"),
|
194
199
|
"protection_detail_specification": CdsProtectionDetailSpecification.from_dict(obj.get("protectionDetailSpecification")) if obj.get("protectionDetailSpecification") is not None else None,
|
195
|
-
"additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None
|
200
|
+
"additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None,
|
201
|
+
"time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
|
196
202
|
})
|
197
203
|
# store additional fields in additional_properties
|
198
204
|
for _key in obj.keys():
|
lusid/models/equity_option.py
CHANGED
@@ -22,6 +22,7 @@ from typing import Any, Dict, List, Optional, Union
|
|
22
22
|
from pydantic.v1 import StrictStr, Field, Field, StrictFloat, StrictInt, StrictStr, conlist, constr, validator
|
23
23
|
from lusid.models.lusid_instrument import LusidInstrument
|
24
24
|
from lusid.models.premium import Premium
|
25
|
+
from lusid.models.time_zone_conventions import TimeZoneConventions
|
25
26
|
|
26
27
|
class EquityOption(LusidInstrument):
|
27
28
|
"""
|
@@ -44,9 +45,10 @@ class EquityOption(LusidInstrument):
|
|
44
45
|
delivery_days: Optional[StrictInt] = Field(None, alias="deliveryDays", description="Number of business days between exercise date and settlement of the option payoff or underlying.")
|
45
46
|
business_day_convention: Optional[StrictStr] = Field(None,alias="businessDayConvention", description="Business day convention for option exercise date to settlement date calculation. Supported string (enumeration) values are: [NoAdjustment, Previous, P, Following, F, ModifiedPrevious, MP, ModifiedFollowing, MF, HalfMonthModifiedFollowing, Nearest].")
|
46
47
|
settlement_calendars: Optional[conlist(StrictStr)] = Field(None, alias="settlementCalendars", description="Holiday calendars for option exercise date to settlement date calculation.")
|
48
|
+
time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
|
47
49
|
instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
|
48
50
|
additional_properties: Dict[str, Any] = {}
|
49
|
-
__properties = ["instrumentType", "startDate", "optionMaturityDate", "optionSettlementDate", "deliveryType", "optionType", "strike", "domCcy", "underlyingIdentifier", "code", "equityOptionType", "numberOfShares", "premium", "exerciseType", "underlying", "deliveryDays", "businessDayConvention", "settlementCalendars"]
|
51
|
+
__properties = ["instrumentType", "startDate", "optionMaturityDate", "optionSettlementDate", "deliveryType", "optionType", "strike", "domCcy", "underlyingIdentifier", "code", "equityOptionType", "numberOfShares", "premium", "exerciseType", "underlying", "deliveryDays", "businessDayConvention", "settlementCalendars", "timeZoneConventions"]
|
50
52
|
|
51
53
|
@validator('instrument_type')
|
52
54
|
def instrument_type_validate_enum(cls, value):
|
@@ -146,6 +148,9 @@ class EquityOption(LusidInstrument):
|
|
146
148
|
# override the default output from pydantic by calling `to_dict()` of underlying
|
147
149
|
if self.underlying:
|
148
150
|
_dict['underlying'] = self.underlying.to_dict()
|
151
|
+
# override the default output from pydantic by calling `to_dict()` of time_zone_conventions
|
152
|
+
if self.time_zone_conventions:
|
153
|
+
_dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
|
149
154
|
# puts key-value pairs in additional_properties in the top level
|
150
155
|
if self.additional_properties is not None:
|
151
156
|
for _key, _value in self.additional_properties.items():
|
@@ -220,7 +225,8 @@ class EquityOption(LusidInstrument):
|
|
220
225
|
"underlying": LusidInstrument.from_dict(obj.get("underlying")) if obj.get("underlying") is not None else None,
|
221
226
|
"delivery_days": obj.get("deliveryDays"),
|
222
227
|
"business_day_convention": obj.get("businessDayConvention"),
|
223
|
-
"settlement_calendars": obj.get("settlementCalendars")
|
228
|
+
"settlement_calendars": obj.get("settlementCalendars"),
|
229
|
+
"time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
|
224
230
|
})
|
225
231
|
# store additional fields in additional_properties
|
226
232
|
for _key in obj.keys():
|