lusid-sdk 2.1.847__py3-none-any.whl → 2.1.849__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. lusid/configuration.py +1 -1
  2. lusid/models/bond.py +8 -2
  3. lusid/models/cap_floor.py +8 -2
  4. lusid/models/cds_index.py +8 -2
  5. lusid/models/complex_bond.py +8 -2
  6. lusid/models/contract_for_difference.py +8 -2
  7. lusid/models/create_derived_property_definition_request.py +3 -3
  8. lusid/models/create_identifier_definition_request.py +3 -3
  9. lusid/models/create_property_definition_request.py +3 -3
  10. lusid/models/credit_default_swap.py +8 -2
  11. lusid/models/equity_option.py +8 -2
  12. lusid/models/equity_swap.py +8 -2
  13. lusid/models/exchange_traded_option.py +8 -2
  14. lusid/models/fixed_leg.py +8 -2
  15. lusid/models/flexible_deposit.py +8 -2
  16. lusid/models/flexible_loan.py +9 -3
  17. lusid/models/floating_leg.py +8 -2
  18. lusid/models/forward_rate_agreement.py +8 -2
  19. lusid/models/fund_share_class.py +8 -2
  20. lusid/models/funding_leg.py +8 -2
  21. lusid/models/future.py +8 -2
  22. lusid/models/fx_forward.py +8 -2
  23. lusid/models/fx_option.py +8 -2
  24. lusid/models/fx_swap.py +8 -2
  25. lusid/models/identifier_definition.py +3 -3
  26. lusid/models/inflation_leg.py +8 -2
  27. lusid/models/inflation_linked_bond.py +8 -2
  28. lusid/models/inflation_swap.py +8 -2
  29. lusid/models/interest_rate_swap.py +8 -2
  30. lusid/models/interest_rate_swaption.py +8 -2
  31. lusid/models/loan_facility.py +9 -3
  32. lusid/models/property_definition.py +3 -3
  33. lusid/models/property_definition_search_result.py +3 -3
  34. lusid/models/property_domain.py +1 -0
  35. lusid/models/repo.py +8 -2
  36. lusid/models/simple_cash_flow_loan.py +9 -3
  37. lusid/models/staged_modification.py +1 -1
  38. lusid/models/term_deposit.py +8 -2
  39. lusid/models/total_return_swap.py +8 -2
  40. {lusid_sdk-2.1.847.dist-info → lusid_sdk-2.1.849.dist-info}/METADATA +1 -1
  41. {lusid_sdk-2.1.847.dist-info → lusid_sdk-2.1.849.dist-info}/RECORD +42 -42
  42. {lusid_sdk-2.1.847.dist-info → lusid_sdk-2.1.849.dist-info}/WHEEL +0 -0
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.7953\n"\
448
+ "Version of the API: 0.11.7961\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/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():
@@ -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, 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")
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, CheckDefinition, 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', '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')")
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', 'CheckDefinition', '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', 'CheckDefinition', '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, 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")
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, CheckDefinition, 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', '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')")
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', 'CheckDefinition', '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', 'CheckDefinition', '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, 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")
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, CheckDefinition, 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', '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')")
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', 'CheckDefinition', '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', 'CheckDefinition', '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():
@@ -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():
@@ -24,6 +24,7 @@ from lusid.models.additional_payment import AdditionalPayment
24
24
  from lusid.models.flow_conventions import FlowConventions
25
25
  from lusid.models.instrument_leg import InstrumentLeg
26
26
  from lusid.models.lusid_instrument import LusidInstrument
27
+ from lusid.models.time_zone_conventions import TimeZoneConventions
27
28
 
28
29
  class EquitySwap(LusidInstrument):
29
30
  """
@@ -41,9 +42,10 @@ class EquitySwap(LusidInstrument):
41
42
  underlying_identifier: StrictStr = Field(...,alias="underlyingIdentifier", description="External market codes and identifiers for the EquitySwap, e.g. RIC. Supported string (enumeration) values are: [LusidInstrumentId, Isin, Sedol, Cusip, ClientInternal, Figi, RIC, QuotePermId, REDCode, BBGId, ICECode].")
42
43
  equity_swap_dividend_payment_timing: Optional[StrictStr] = Field(None,alias="equitySwapDividendPaymentTiming", description="Determines how the payment of dividends is handled for the equity swap. Defaults to paying at the next Equity coupon date. Supported string (enumeration) values are: [PayAtNextEquityCouponDate, PayAtMaturityOfSwap, PayAtNextFundingLegCouponDate, PayAtPaymentDateOfDividendEvent].")
43
44
  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.")
45
+ time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
44
46
  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")
45
47
  additional_properties: Dict[str, Any] = {}
46
- __properties = ["instrumentType", "startDate", "maturityDate", "code", "equityFlowConventions", "fundingLeg", "includeDividends", "initialPrice", "notionalReset", "quantity", "underlyingIdentifier", "equitySwapDividendPaymentTiming", "additionalPayments"]
48
+ __properties = ["instrumentType", "startDate", "maturityDate", "code", "equityFlowConventions", "fundingLeg", "includeDividends", "initialPrice", "notionalReset", "quantity", "underlyingIdentifier", "equitySwapDividendPaymentTiming", "additionalPayments", "timeZoneConventions"]
47
49
 
48
50
  @validator('instrument_type')
49
51
  def instrument_type_validate_enum(cls, value):
@@ -150,6 +152,9 @@ class EquitySwap(LusidInstrument):
150
152
  if _item:
151
153
  _items.append(_item.to_dict())
152
154
  _dict['additionalPayments'] = _items
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():
@@ -189,7 +194,8 @@ class EquitySwap(LusidInstrument):
189
194
  "quantity": obj.get("quantity"),
190
195
  "underlying_identifier": obj.get("underlyingIdentifier"),
191
196
  "equity_swap_dividend_payment_timing": obj.get("equitySwapDividendPaymentTiming"),
192
- "additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None
197
+ "additional_payments": [AdditionalPayment.from_dict(_item) for _item in obj.get("additionalPayments")] if obj.get("additionalPayments") is not None else None,
198
+ "time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
193
199
  })
194
200
  # store additional fields in additional_properties
195
201
  for _key in obj.keys():
@@ -22,6 +22,7 @@ from typing import Any, Dict, Optional, Union
22
22
  from pydantic.v1 import StrictStr, Field, Field, StrictFloat, StrictInt, StrictStr, validator
23
23
  from lusid.models.exchange_traded_option_contract_details import ExchangeTradedOptionContractDetails
24
24
  from lusid.models.lusid_instrument import LusidInstrument
25
+ from lusid.models.time_zone_conventions import TimeZoneConventions
25
26
  from lusid.models.trading_conventions import TradingConventions
26
27
 
27
28
  class ExchangeTradedOption(LusidInstrument):
@@ -33,9 +34,10 @@ class ExchangeTradedOption(LusidInstrument):
33
34
  contracts: Union[StrictFloat, StrictInt] = Field(..., description="The number of contracts held.")
34
35
  ref_spot_price: Union[StrictFloat, StrictInt] = Field(..., alias="refSpotPrice", description="The reference spot price for the option at which the contract was entered into.")
35
36
  trading_conventions: Optional[TradingConventions] = Field(None, alias="tradingConventions")
37
+ time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
36
38
  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")
37
39
  additional_properties: Dict[str, Any] = {}
38
- __properties = ["instrumentType", "startDate", "contractDetails", "contracts", "refSpotPrice", "tradingConventions"]
40
+ __properties = ["instrumentType", "startDate", "contractDetails", "contracts", "refSpotPrice", "tradingConventions", "timeZoneConventions"]
39
41
 
40
42
  @validator('instrument_type')
41
43
  def instrument_type_validate_enum(cls, value):
@@ -135,6 +137,9 @@ class ExchangeTradedOption(LusidInstrument):
135
137
  # override the default output from pydantic by calling `to_dict()` of trading_conventions
136
138
  if self.trading_conventions:
137
139
  _dict['tradingConventions'] = self.trading_conventions.to_dict()
140
+ # override the default output from pydantic by calling `to_dict()` of time_zone_conventions
141
+ if self.time_zone_conventions:
142
+ _dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
138
143
  # puts key-value pairs in additional_properties in the top level
139
144
  if self.additional_properties is not None:
140
145
  for _key, _value in self.additional_properties.items():
@@ -157,7 +162,8 @@ class ExchangeTradedOption(LusidInstrument):
157
162
  "contract_details": ExchangeTradedOptionContractDetails.from_dict(obj.get("contractDetails")) if obj.get("contractDetails") is not None else None,
158
163
  "contracts": obj.get("contracts"),
159
164
  "ref_spot_price": obj.get("refSpotPrice"),
160
- "trading_conventions": TradingConventions.from_dict(obj.get("tradingConventions")) if obj.get("tradingConventions") is not None else None
165
+ "trading_conventions": TradingConventions.from_dict(obj.get("tradingConventions")) if obj.get("tradingConventions") is not None else None,
166
+ "time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
161
167
  })
162
168
  # store additional fields in additional_properties
163
169
  for _key in obj.keys():
lusid/models/fixed_leg.py CHANGED
@@ -23,6 +23,7 @@ from pydantic.v1 import StrictStr, Field, Field, StrictFloat, StrictInt, StrictS
23
23
  from lusid.models.fixed_leg_all_of_overrides import FixedLegAllOfOverrides
24
24
  from lusid.models.instrument_leg import InstrumentLeg
25
25
  from lusid.models.leg_definition import LegDefinition
26
+ from lusid.models.time_zone_conventions import TimeZoneConventions
26
27
 
27
28
  class FixedLeg(InstrumentLeg):
28
29
  """
@@ -33,9 +34,10 @@ class FixedLeg(InstrumentLeg):
33
34
  leg_definition: LegDefinition = Field(..., alias="legDefinition")
34
35
  notional: Union[StrictFloat, StrictInt] = Field(...)
35
36
  overrides: Optional[FixedLegAllOfOverrides] = None
37
+ time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
36
38
  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")
37
39
  additional_properties: Dict[str, Any] = {}
38
- __properties = ["instrumentType", "startDate", "maturityDate", "legDefinition", "notional", "overrides"]
40
+ __properties = ["instrumentType", "startDate", "maturityDate", "legDefinition", "notional", "overrides", "timeZoneConventions"]
39
41
 
40
42
  @validator('instrument_type')
41
43
  def instrument_type_validate_enum(cls, value):
@@ -135,6 +137,9 @@ class FixedLeg(InstrumentLeg):
135
137
  # override the default output from pydantic by calling `to_dict()` of overrides
136
138
  if self.overrides:
137
139
  _dict['overrides'] = self.overrides.to_dict()
140
+ # override the default output from pydantic by calling `to_dict()` of time_zone_conventions
141
+ if self.time_zone_conventions:
142
+ _dict['timeZoneConventions'] = self.time_zone_conventions.to_dict()
138
143
  # puts key-value pairs in additional_properties in the top level
139
144
  if self.additional_properties is not None:
140
145
  for _key, _value in self.additional_properties.items():
@@ -162,7 +167,8 @@ class FixedLeg(InstrumentLeg):
162
167
  "maturity_date": obj.get("maturityDate"),
163
168
  "leg_definition": LegDefinition.from_dict(obj.get("legDefinition")) if obj.get("legDefinition") is not None else None,
164
169
  "notional": obj.get("notional"),
165
- "overrides": FixedLegAllOfOverrides.from_dict(obj.get("overrides")) if obj.get("overrides") is not None else None
170
+ "overrides": FixedLegAllOfOverrides.from_dict(obj.get("overrides")) if obj.get("overrides") is not None else None,
171
+ "time_zone_conventions": TimeZoneConventions.from_dict(obj.get("timeZoneConventions")) if obj.get("timeZoneConventions") is not None else None
166
172
  })
167
173
  # store additional fields in additional_properties
168
174
  for _key in obj.keys():