lusid-sdk 2.1.913__py3-none-any.whl → 2.1.915__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 (332) hide show
  1. lusid/api/abor_api.py +66 -66
  2. lusid/api/abor_configuration_api.py +32 -32
  3. lusid/api/address_key_definition_api.py +10 -10
  4. lusid/api/aggregated_returns_api.py +12 -12
  5. lusid/api/aggregation_api.py +10 -10
  6. lusid/api/allocations_api.py +24 -24
  7. lusid/api/amortisation_rule_sets_api.py +24 -24
  8. lusid/api/application_metadata_api.py +6 -6
  9. lusid/api/blocks_api.py +18 -18
  10. lusid/api/calendars_api.py +34 -34
  11. lusid/api/chart_of_accounts_api.py +122 -122
  12. lusid/api/check_definitions_api.py +38 -38
  13. lusid/api/complex_market_data_api.py +36 -36
  14. lusid/api/compliance_api.py +34 -34
  15. lusid/api/configuration_recipe_api.py +20 -20
  16. lusid/api/conventions_api.py +18 -18
  17. lusid/api/corporate_action_sources_api.py +32 -32
  18. lusid/api/counterparties_api.py +12 -12
  19. lusid/api/custom_data_models_api.py +16 -16
  20. lusid/api/custom_entities_api.py +40 -40
  21. lusid/api/custom_entity_definitions_api.py +10 -10
  22. lusid/api/custom_entity_types_api.py +10 -10
  23. lusid/api/cut_label_definitions_api.py +8 -8
  24. lusid/api/data_types_api.py +34 -34
  25. lusid/api/derived_transaction_portfolios_api.py +6 -6
  26. lusid/api/entities_api.py +20 -20
  27. lusid/api/executions_api.py +18 -18
  28. lusid/api/fee_types_api.py +8 -8
  29. lusid/api/fund_configuration_api.py +38 -38
  30. lusid/api/funds_api.py +139 -130
  31. lusid/api/group_reconciliations_api.py +84 -84
  32. lusid/api/identifier_definitions_api.py +30 -30
  33. lusid/api/instrument_event_types_api.py +40 -40
  34. lusid/api/instrument_events_api.py +34 -34
  35. lusid/api/instruments_api.py +138 -138
  36. lusid/api/investment_accounts_api.py +24 -24
  37. lusid/api/investor_records_api.py +26 -26
  38. lusid/api/legacy_compliance_api.py +46 -46
  39. lusid/api/legal_entities_api.py +114 -114
  40. lusid/api/order_graph_api.py +6 -6
  41. lusid/api/order_instructions_api.py +18 -18
  42. lusid/api/order_management_api.py +28 -28
  43. lusid/api/orders_api.py +18 -18
  44. lusid/api/packages_api.py +18 -18
  45. lusid/api/participations_api.py +18 -18
  46. lusid/api/persons_api.py +114 -114
  47. lusid/api/placements_api.py +18 -18
  48. lusid/api/portfolio_groups_api.py +156 -156
  49. lusid/api/portfolios_api.py +128 -128
  50. lusid/api/property_definitions_api.py +74 -74
  51. lusid/api/queryable_keys_api.py +6 -6
  52. lusid/api/quotes_api.py +36 -36
  53. lusid/api/reconciliations_api.py +42 -42
  54. lusid/api/reference_lists_api.py +8 -8
  55. lusid/api/reference_portfolio_api.py +30 -30
  56. lusid/api/relation_definitions_api.py +14 -14
  57. lusid/api/relationship_definitions_api.py +32 -32
  58. lusid/api/scopes_api.py +12 -12
  59. lusid/api/scripted_translation_api.py +22 -22
  60. lusid/api/search_api.py +28 -28
  61. lusid/api/sequences_api.py +20 -20
  62. lusid/api/staged_modifications_api.py +20 -20
  63. lusid/api/staging_rule_set_api.py +18 -18
  64. lusid/api/structured_result_data_api.py +38 -38
  65. lusid/api/system_configuration_api.py +20 -20
  66. lusid/api/tax_rule_sets_api.py +34 -34
  67. lusid/api/timelines_api.py +68 -68
  68. lusid/api/transaction_configuration_api.py +18 -18
  69. lusid/api/transaction_fees_api.py +42 -42
  70. lusid/api/transaction_portfolios_api.py +450 -450
  71. lusid/api/transfer_agency_api.py +2 -2
  72. lusid/api/translation_api.py +4 -4
  73. lusid/api/workspace_api.py +24 -24
  74. lusid/configuration.py +1 -1
  75. lusid/models/access_metadata_value.py +1 -1
  76. lusid/models/accumulation_event.py +1 -1
  77. lusid/models/additional_payment.py +1 -1
  78. lusid/models/address_definition.py +2 -2
  79. lusid/models/adjust_global_commitment_event.py +2 -2
  80. lusid/models/adjust_holding_for_date_request.py +1 -1
  81. lusid/models/adjust_holding_request.py +1 -1
  82. lusid/models/aggregate_spec.py +1 -1
  83. lusid/models/aggregation_context.py +1 -1
  84. lusid/models/aggregation_options.py +3 -3
  85. lusid/models/allocation.py +1 -1
  86. lusid/models/amortisation_event.py +2 -2
  87. lusid/models/append_fx_forward_curve_by_quote_reference.py +1 -1
  88. lusid/models/asset_leg.py +2 -2
  89. lusid/models/basket.py +1 -1
  90. lusid/models/block.py +1 -1
  91. lusid/models/bond.py +5 -5
  92. lusid/models/bond_conversion_entry.py +3 -3
  93. lusid/models/bond_conversion_schedule.py +5 -5
  94. lusid/models/bond_coupon_event.py +1 -1
  95. lusid/models/bond_principal_event.py +1 -1
  96. lusid/models/bucketed_cash_flow_response.py +3 -3
  97. lusid/models/cancel_single_holding_adjustment_request.py +1 -1
  98. lusid/models/cap_floor.py +2 -2
  99. lusid/models/cash_and_security_offer_election.py +1 -1
  100. lusid/models/cash_dependency.py +2 -2
  101. lusid/models/cash_flow_event.py +1 -1
  102. lusid/models/cash_flow_lineage.py +2 -2
  103. lusid/models/cash_offer_election.py +1 -1
  104. lusid/models/cds_flow_conventions.py +5 -5
  105. lusid/models/cds_index.py +4 -4
  106. lusid/models/cds_protection_detail_specification.py +3 -3
  107. lusid/models/change_item.py +1 -1
  108. lusid/models/close_event.py +1 -1
  109. lusid/models/collateral.py +2 -2
  110. lusid/models/complex_bond.py +4 -4
  111. lusid/models/complex_market_data.py +1 -1
  112. lusid/models/complex_market_data_id.py +1 -1
  113. lusid/models/compounding.py +6 -6
  114. lusid/models/configuration_recipe.py +1 -1
  115. lusid/models/constant_volatility_surface.py +2 -2
  116. lusid/models/constituents_adjustment_header.py +1 -1
  117. lusid/models/contract_for_difference.py +6 -6
  118. lusid/models/conversion_event.py +9 -9
  119. lusid/models/corporate_action_transition_component_request.py +1 -1
  120. lusid/models/counterparty_agreement.py +1 -1
  121. lusid/models/counterparty_risk_information.py +1 -1
  122. lusid/models/counterparty_signatory.py +1 -1
  123. lusid/models/credit_default_swap.py +4 -4
  124. lusid/models/credit_premium_cash_flow_event.py +1 -1
  125. lusid/models/credit_rating.py +1 -1
  126. lusid/models/credit_spread_curve_data.py +3 -3
  127. lusid/models/credit_support_annex.py +6 -6
  128. lusid/models/curve_options.py +2 -2
  129. lusid/models/data_definition.py +3 -3
  130. lusid/models/data_map_key.py +1 -1
  131. lusid/models/data_mapping.py +1 -1
  132. lusid/models/dependency_source_filter.py +6 -6
  133. lusid/models/dialect.py +1 -1
  134. lusid/models/dialect_schema.py +1 -1
  135. lusid/models/discounting_dependency.py +2 -2
  136. lusid/models/dividend_option_event.py +1 -1
  137. lusid/models/dividend_reinvestment_event.py +1 -1
  138. lusid/models/early_redemption_election.py +1 -1
  139. lusid/models/early_redemption_event.py +2 -2
  140. lusid/models/economic_dependency.py +1 -1
  141. lusid/models/equity.py +1 -1
  142. lusid/models/equity_curve_by_prices_data.py +1 -1
  143. lusid/models/equity_curve_dependency.py +2 -2
  144. lusid/models/equity_model_options.py +1 -1
  145. lusid/models/equity_option.py +7 -7
  146. lusid/models/equity_swap.py +6 -6
  147. lusid/models/equity_vol_dependency.py +2 -2
  148. lusid/models/event_date_range.py +1 -1
  149. lusid/models/ex_dividend_configuration.py +3 -3
  150. lusid/models/exchange_traded_option.py +1 -1
  151. lusid/models/exchange_traded_option_contract_details.py +5 -5
  152. lusid/models/execution.py +1 -1
  153. lusid/models/exercise_event.py +1 -1
  154. lusid/models/exotic_instrument.py +1 -1
  155. lusid/models/expiry_event.py +1 -1
  156. lusid/models/fixed_leg.py +1 -1
  157. lusid/models/fixed_leg_all_of_overrides.py +1 -1
  158. lusid/models/fixed_schedule.py +3 -3
  159. lusid/models/flexible_deposit.py +2 -2
  160. lusid/models/flexible_loan.py +2 -2
  161. lusid/models/flexible_repo.py +10 -10
  162. lusid/models/flexible_repo_cash_flow_event.py +2 -2
  163. lusid/models/flexible_repo_collateral_event.py +2 -2
  164. lusid/models/flexible_repo_interest_payment_event.py +2 -2
  165. lusid/models/flexible_repo_partial_closure_event.py +5 -5
  166. lusid/models/float_schedule.py +5 -5
  167. lusid/models/floating_leg.py +1 -1
  168. lusid/models/flow_convention_name.py +1 -1
  169. lusid/models/flow_conventions.py +9 -9
  170. lusid/models/forward_rate_agreement.py +1 -1
  171. lusid/models/fund_calendar_entry.py +21 -1
  172. lusid/models/fund_share_class.py +4 -4
  173. lusid/models/fund_valuation_request.py +4 -4
  174. lusid/models/fund_valuation_schedule.py +4 -4
  175. lusid/models/funding_leg.py +3 -3
  176. lusid/models/future.py +4 -4
  177. lusid/models/future_expiry_event.py +1 -1
  178. lusid/models/future_mark_to_market_event.py +1 -1
  179. lusid/models/futures_contract_details.py +5 -5
  180. lusid/models/fx_conventions.py +1 -1
  181. lusid/models/fx_dependency.py +1 -1
  182. lusid/models/fx_forward.py +6 -6
  183. lusid/models/fx_forward_curve_by_quote_reference.py +3 -3
  184. lusid/models/fx_forward_model_options.py +1 -1
  185. lusid/models/fx_forward_settlement_event.py +6 -6
  186. lusid/models/fx_forward_tenor_curve_data.py +2 -2
  187. lusid/models/fx_forward_tenor_pips_curve_data.py +2 -2
  188. lusid/models/fx_forwards_dependency.py +3 -3
  189. lusid/models/fx_linked_notional_schedule.py +1 -1
  190. lusid/models/fx_option.py +8 -8
  191. lusid/models/fx_rate_schedule.py +1 -1
  192. lusid/models/fx_swap.py +2 -2
  193. lusid/models/fx_tenor_convention.py +1 -1
  194. lusid/models/fx_vol_dependency.py +2 -2
  195. lusid/models/get_reference_portfolio_constituents_response.py +1 -1
  196. lusid/models/group_of_market_data_key_rules.py +2 -2
  197. lusid/models/holding_context.py +1 -1
  198. lusid/models/holding_pricing_info.py +2 -2
  199. lusid/models/index_convention.py +4 -4
  200. lusid/models/index_projection_dependency.py +2 -2
  201. lusid/models/industry_classifier.py +1 -1
  202. lusid/models/inflation_index_conventions.py +4 -4
  203. lusid/models/inflation_leg.py +5 -5
  204. lusid/models/inflation_linked_bond.py +6 -6
  205. lusid/models/inflation_swap.py +3 -3
  206. lusid/models/informational_event.py +3 -3
  207. lusid/models/inline_valuation_request.py +6 -6
  208. lusid/models/inline_valuations_reconciliation_request.py +1 -1
  209. lusid/models/instrument_capabilities.py +1 -1
  210. lusid/models/instrument_definition_format.py +2 -2
  211. lusid/models/instrument_event.py +1 -1
  212. lusid/models/instrument_leg.py +1 -1
  213. lusid/models/interest_rate_swap.py +4 -4
  214. lusid/models/interest_rate_swaption.py +2 -2
  215. lusid/models/ir_vol_dependency.py +2 -2
  216. lusid/models/lapse_election.py +1 -1
  217. lusid/models/leg_definition.py +8 -8
  218. lusid/models/list_complex_market_data_with_meta_data_response.py +1 -1
  219. lusid/models/loan_facility.py +3 -3
  220. lusid/models/loan_facility_contract_rollover_event.py +2 -2
  221. lusid/models/loan_interest_repayment_event.py +2 -2
  222. lusid/models/loan_principal_repayment_event.py +3 -3
  223. lusid/models/lusid_instrument.py +1 -1
  224. lusid/models/lusid_trade_ticket.py +1 -1
  225. lusid/models/mark_to_market_conventions.py +1 -1
  226. lusid/models/market_context.py +4 -4
  227. lusid/models/market_context_suppliers.py +1 -1
  228. lusid/models/market_data_key_rule.py +7 -7
  229. lusid/models/market_data_options.py +1 -1
  230. lusid/models/market_data_specific_rule.py +6 -6
  231. lusid/models/market_data_type.py +1 -1
  232. lusid/models/market_options.py +1 -1
  233. lusid/models/market_quote.py +1 -1
  234. lusid/models/mastered_instrument.py +1 -1
  235. lusid/models/match_criterion.py +1 -1
  236. lusid/models/maturity_event.py +1 -1
  237. lusid/models/mbs_coupon_event.py +1 -1
  238. lusid/models/mbs_interest_deferral_event.py +1 -1
  239. lusid/models/mbs_interest_shortfall_event.py +1 -1
  240. lusid/models/mbs_principal_event.py +1 -1
  241. lusid/models/mbs_principal_write_off_event.py +1 -1
  242. lusid/models/model_options.py +1 -1
  243. lusid/models/model_selection.py +1 -1
  244. lusid/models/opaque_dependency.py +1 -1
  245. lusid/models/opaque_market_data.py +3 -3
  246. lusid/models/option_entry.py +1 -1
  247. lusid/models/option_exercise_cash_event.py +3 -3
  248. lusid/models/option_exercise_election.py +1 -1
  249. lusid/models/option_exercise_physical_event.py +3 -3
  250. lusid/models/optionality_schedule.py +2 -2
  251. lusid/models/order_flow_configuration.py +1 -1
  252. lusid/models/partial_closure_constituent.py +3 -3
  253. lusid/models/portfolio_result_data_key_rule.py +1 -1
  254. lusid/models/pre_trade_configuration.py +1 -1
  255. lusid/models/pricing_context.py +3 -3
  256. lusid/models/pricing_options.py +9 -9
  257. lusid/models/property_domain.py +1 -1
  258. lusid/models/property_reference_data_value.py +1 -1
  259. lusid/models/quote_dependency.py +1 -1
  260. lusid/models/quote_series_id.py +1 -1
  261. lusid/models/raw_vendor_event.py +1 -1
  262. lusid/models/recipe_value.py +1 -1
  263. lusid/models/reconcile_date_time_rule.py +1 -1
  264. lusid/models/reconcile_numeric_rule.py +1 -1
  265. lusid/models/reconcile_string_rule.py +1 -1
  266. lusid/models/reconciled_transaction.py +2 -2
  267. lusid/models/reconciliation_line.py +1 -1
  268. lusid/models/reconciliation_request.py +3 -3
  269. lusid/models/reconciliation_rule.py +1 -1
  270. lusid/models/relative_date_offset.py +2 -2
  271. lusid/models/repo.py +8 -8
  272. lusid/models/repo_cash_flow_event.py +4 -4
  273. lusid/models/repo_partial_closure_event.py +5 -5
  274. lusid/models/repurchase_offer_event.py +4 -4
  275. lusid/models/reset_event.py +1 -1
  276. lusid/models/result_data_key_rule.py +1 -1
  277. lusid/models/result_data_schema.py +1 -1
  278. lusid/models/result_key_rule.py +1 -1
  279. lusid/models/result_value.py +1 -1
  280. lusid/models/result_value0_d.py +1 -1
  281. lusid/models/result_value_date_time_offset.py +1 -1
  282. lusid/models/result_value_decimal.py +1 -1
  283. lusid/models/result_value_int.py +1 -1
  284. lusid/models/return_zero_pv_options.py +1 -1
  285. lusid/models/rounding_convention.py +4 -4
  286. lusid/models/schedule.py +1 -1
  287. lusid/models/scrip_dividend_event.py +1 -1
  288. lusid/models/security_election.py +2 -2
  289. lusid/models/security_offer_election.py +1 -1
  290. lusid/models/side_configuration_data.py +1 -1
  291. lusid/models/side_configuration_data_request.py +1 -1
  292. lusid/models/simple_cash_flow_loan.py +2 -2
  293. lusid/models/simple_instrument.py +2 -2
  294. lusid/models/simple_rounding_convention.py +2 -2
  295. lusid/models/step_schedule.py +3 -3
  296. lusid/models/stock_dividend_event.py +1 -1
  297. lusid/models/structured_result_data.py +1 -1
  298. lusid/models/swap_cash_flow_event.py +1 -1
  299. lusid/models/swap_principal_event.py +1 -1
  300. lusid/models/tender_offer_election.py +1 -1
  301. lusid/models/term_deposit.py +1 -1
  302. lusid/models/term_deposit_interest_event.py +1 -1
  303. lusid/models/term_deposit_principal_event.py +1 -1
  304. lusid/models/time_zone_conventions.py +1 -1
  305. lusid/models/total_return_swap.py +3 -3
  306. lusid/models/trading_conventions.py +3 -3
  307. lusid/models/transaction_reconciliation_request_v2.py +3 -3
  308. lusid/models/translate_entities_inlined_request.py +1 -1
  309. lusid/models/translate_entities_request.py +1 -1
  310. lusid/models/translate_instrument_definitions_request.py +1 -1
  311. lusid/models/translate_trade_ticket_request.py +1 -1
  312. lusid/models/translation_input.py +1 -1
  313. lusid/models/trigger_event.py +1 -1
  314. lusid/models/typed_resource_id.py +2 -2
  315. lusid/models/unmatched_holding_method.py +1 -1
  316. lusid/models/upsert_cds_flow_conventions_request.py +1 -1
  317. lusid/models/upsert_counterparty_agreement_request.py +1 -1
  318. lusid/models/upsert_flow_conventions_request.py +1 -1
  319. lusid/models/upsert_fund_bookmark_request.py +3 -3
  320. lusid/models/upsert_index_convention_request.py +1 -1
  321. lusid/models/upsert_quote_request.py +1 -1
  322. lusid/models/upsert_recipe_request.py +1 -1
  323. lusid/models/valuation_request.py +5 -5
  324. lusid/models/valuation_schedule.py +5 -5
  325. lusid/models/valuations_reconciliation_request.py +2 -2
  326. lusid/models/vendor_model_rule.py +3 -3
  327. lusid/models/virtual_document.py +1 -1
  328. lusid/models/weighted_instrument.py +2 -2
  329. lusid/models/weighted_instrument_in_line_lookup_identifiers.py +1 -1
  330. {lusid_sdk-2.1.913.dist-info → lusid_sdk-2.1.915.dist-info}/METADATA +3 -3
  331. {lusid_sdk-2.1.913.dist-info → lusid_sdk-2.1.915.dist-info}/RECORD +332 -332
  332. {lusid_sdk-2.1.913.dist-info → lusid_sdk-2.1.915.dist-info}/WHEEL +0 -0
@@ -27,10 +27,10 @@ from lusid.models.trading_conventions import TradingConventions
27
27
 
28
28
  class FlexibleDeposit(LusidInstrument):
29
29
  """
30
- LUSID flexible deposit instrument. Represents the basic building block of a bank account structure that can handle deferred interest payments. # noqa: E501
30
+ LUSID flexible deposit instrument. Represents the basic building block of a bank account structure that can handle deferred interest payments. # noqa: E501
31
31
  """
32
32
  start_date: datetime = Field(..., alias="startDate", description="The start date of the instrument. This is normally synonymous with the trade-date.")
33
- maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
33
+ maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
34
34
  dom_ccy: StrictStr = Field(...,alias="domCcy", description="The domestic currency of the instrument.")
35
35
  schedules: conlist(Schedule) = Field(..., description="Repayment schedules for the deposit instrument.")
36
36
  trading_conventions: Optional[TradingConventions] = Field(None, alias="tradingConventions")
@@ -26,10 +26,10 @@ from lusid.models.time_zone_conventions import TimeZoneConventions
26
26
 
27
27
  class FlexibleLoan(LusidInstrument):
28
28
  """
29
- LUSID flexible loan instrument. Represents the basic building block of a more complex loan structure that can handle deferred interest payments. # noqa: E501
29
+ LUSID flexible loan instrument. Represents the basic building block of a more complex loan structure that can handle deferred interest payments. # noqa: E501
30
30
  """
31
31
  start_date: datetime = Field(..., alias="startDate", description="The start date of the instrument. This is normally synonymous with the trade-date.")
32
- maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
32
+ maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
33
33
  dom_ccy: StrictStr = Field(...,alias="domCcy", description="The domestic currency of the instrument.")
34
34
  schedules: conlist(Schedule) = Field(..., description="Repayment schedules for the loan.")
35
35
  time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
@@ -31,18 +31,18 @@ class FlexibleRepo(LusidInstrument):
31
31
  Lusid representation of a repurchase agreement, where one party sells some collateral and agrees to re-buy it at a later date for some given price. # noqa: E501
32
32
  """
33
33
  start_date: datetime = Field(..., alias="startDate", description="The start date of the instrument. This is normally synonymous with the trade-date.")
34
- maturity_date: Optional[datetime] = Field(None, alias="maturityDate", description="The maturity date of the instrument. This is the date at which the repurchase will occur for a TermRepo. Optional for OpenRepo, but if not provided, defaults to the StartDate plus a long period (e.g. 2099-12-31).")
35
- buyer_or_seller: StrictStr = Field(...,alias="buyerOrSeller", description="Is the user the Buyer or the Seller of this repo? Every repo agreement has two sides, a buyer and a seller. The Buyer pays the PurchasePrice to the Seller in exchange for legal ownership of the collateral. At Maturity, the Buyer then receives the RepurchasePrice in exchange for returning legal ownership of the collateral. Controls the direction of purchase and repurchase cashflows, as well as the recipient of cashflows from the collateral. Supported string (enumeration) values are: [Buyer, Seller].")
34
+ maturity_date: Optional[datetime] = Field(None, alias="maturityDate", description="The maturity date of the instrument. This is the date at which the repurchase will occur for a TermRepo. Optional for OpenRepo, but if not provided, defaults to the StartDate plus a long period (e.g. 2099-12-31).")
35
+ buyer_or_seller: StrictStr = Field(...,alias="buyerOrSeller", description="Is the user the Buyer or the Seller of this repo? Every repo agreement has two sides, a buyer and a seller. The Buyer pays the PurchasePrice to the Seller in exchange for legal ownership of the collateral. At Maturity, the Buyer then receives the RepurchasePrice in exchange for returning legal ownership of the collateral. Controls the direction of purchase and repurchase cashflows, as well as the recipient of cashflows from the collateral. Supported string (enumeration) values are: [Buyer, Seller].")
36
36
  repo_ccy: StrictStr = Field(...,alias="repoCcy", description="Currency of the purchase and repurchase prices. May differ from the currencies on any collateral.")
37
- repo_type: StrictStr = Field(...,alias="repoType", description="The type of the repurchase agreement, Open or Term. If Term, the repurchase automatically takes place at Maturity. If Open, the agreement is rolled by the given tenor, and an interest cashflow is paid out with each roll, unless manually triggered by a FlexibleRepoFullClosureEvent. Supported string (enumeration) values are: [OpenRepo, TermRepo].")
38
- accrual_basis: Optional[StrictStr] = Field(None,alias="accrualBasis", description="For calculation of interest, the accrual day count to be used. Required if no RepoRateSchedules are provided. If both RepoRateSchedules and AccrualBasis are provided, then AccrualBasis will take precedence. Supported string (enumeration) values are: [Actual360, Act360, MoneyMarket, Actual365, Act365, Thirty360, ThirtyU360, Bond, ThirtyE360, EuroBond, ActualActual, ActAct, ActActIsda, ActActIsma, ActActIcma, OneOne, Act364, Act365F, Act365L, Act365_25, Act252, Bus252, NL360, NL365, ActActAFB, Act365Cad, ThirtyActIsda, Thirty365Isda, ThirtyEActIsda, ThirtyE360Isda, ThirtyE365Isda, ThirtyU360EOM].")
37
+ repo_type: StrictStr = Field(...,alias="repoType", description="The type of the repurchase agreement, Open or Term. If Term, the repurchase automatically takes place at Maturity. If Open, the agreement is rolled by the given tenor, and an interest cashflow is paid out with each roll, unless manually triggered by a FlexibleRepoFullClosureEvent. Supported string (enumeration) values are: [OpenRepo, TermRepo].")
38
+ accrual_basis: Optional[StrictStr] = Field(None,alias="accrualBasis", description="For calculation of interest, the accrual day count to be used. Required if no RepoRateSchedules are provided. If both RepoRateSchedules and AccrualBasis are provided, then AccrualBasis will take precedence. Supported string (enumeration) values are: [Actual360, Act360, MoneyMarket, Actual365, Act365, Thirty360, ThirtyU360, Bond, ThirtyE360, EuroBond, ActualActual, ActAct, ActActIsda, ActActIsma, ActActIcma, OneOne, Act364, Act365F, Act365L, Act365_25, Act252, Bus252, NL360, NL365, ActActAFB, Act365Cad, ThirtyActIsda, Thirty365Isda, ThirtyEActIsda, ThirtyE360Isda, ThirtyE365Isda, ThirtyU360EOM].")
39
39
  collateral: Optional[Collateral] = None
40
- haircut: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Haircut on the value of the collateral, used to calculate PurchasePrice if not provided directly. Haircut or Margin should be specified if PurchasePrice is not specified.")
41
- margin: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Initial margin on the value of the collateral, used to calculate PurchasePrice if not provided directly. Haircut or Margin should be specified if PurchasePrice is not specified.")
42
- open_repo_rolling_period: Optional[StrictStr] = Field(None,alias="openRepoRollingPeriod", description="Required if the RepoType is Open. The tenor representing the mandatory roll period if the FlexibleRepo is not manually matured. If a user matures the FlexibleRepo via an instrument event, then the repurchase will delay until the end of this rolling period. Generally this is set to 1D (one day), i.e. the repurchase will occur on the same day as the instrument event, though any valid tenor is accepted with TenorUnit set to Day, Week, Month, or Year. Note that TenorUnit T is not accepted here.")
43
- purchase_price: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="purchasePrice", description="The initial purchase price of the collateral. If provided directly in this field, then Collateral.CollateralValue, Haircut, and Margin should not be provided.")
44
- repo_rate_schedules: Optional[conlist(Schedule)] = Field(None, alias="repoRateSchedules", description="Schedules used to calculate the repurchase price and any interest payments on the FlexibleRepo. Only one schedule may be provided, and must be of type FixedSchedule or FloatSchedule. If RepoType is OpenRepo, a FixedSchedule or FloatSchedule must be provided to calculate the expected Repo Rate, and RepurchasePrice must be omitted. If RepoType is TermRepo, only one of RepurchasePrice and RepoRateSchedules should be provided. If a RepoRateSchedule is provided on a TermRepo, the PaymentFrequency in the FlowConventions should be 1T. StubType must be set to None, and no ExDividend configuration should be provided.")
45
- repurchase_price: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="repurchasePrice", description="The repurchase price of the repo, if known. Only one of RepurchasePrice and RepoRateSchedules should be provided. In the case of an OpenRepo, RepurchasePrice should not be provided, and RepoRateSchedules should be provided instead in order to calculate the RepoRate.")
40
+ haircut: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Haircut on the value of the collateral, used to calculate PurchasePrice if not provided directly. Haircut or Margin should be specified if PurchasePrice is not specified.")
41
+ margin: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Initial margin on the value of the collateral, used to calculate PurchasePrice if not provided directly. Haircut or Margin should be specified if PurchasePrice is not specified.")
42
+ open_repo_rolling_period: Optional[StrictStr] = Field(None,alias="openRepoRollingPeriod", description="Required if the RepoType is Open. The tenor representing the mandatory roll period if the FlexibleRepo is not manually matured. If a user matures the FlexibleRepo via an instrument event, then the repurchase will delay until the end of this rolling period. Generally this is set to 1D (one day), i.e. the repurchase will occur on the same day as the instrument event, though any valid tenor is accepted with TenorUnit set to Day, Week, Month, or Year. Note that TenorUnit T is not accepted here.")
43
+ purchase_price: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="purchasePrice", description="The initial purchase price of the collateral. If provided directly in this field, then Collateral.CollateralValue, Haircut, and Margin should not be provided.")
44
+ repo_rate_schedules: Optional[conlist(Schedule)] = Field(None, alias="repoRateSchedules", description="Schedules used to calculate the repurchase price and any interest payments on the FlexibleRepo. Only one schedule may be provided, and must be of type FixedSchedule or FloatSchedule. If RepoType is OpenRepo, a FixedSchedule or FloatSchedule must be provided to calculate the expected Repo Rate, and RepurchasePrice must be omitted. If RepoType is TermRepo, only one of RepurchasePrice and RepoRateSchedules should be provided. If a RepoRateSchedule is provided on a TermRepo, the PaymentFrequency in the FlowConventions should be 1T. StubType must be set to None, and no ExDividend configuration should be provided.")
45
+ repurchase_price: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="repurchasePrice", description="The repurchase price of the repo, if known. Only one of RepurchasePrice and RepoRateSchedules should be provided. In the case of an OpenRepo, RepurchasePrice should not be provided, and RepoRateSchedules should be provided instead in order to calculate the RepoRate.")
46
46
  time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
47
47
  trading_conventions: Optional[TradingConventions] = Field(None, alias="tradingConventions")
48
48
  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, FlexibleRepo")
@@ -24,12 +24,12 @@ from lusid.models.instrument_event import InstrumentEvent
24
24
 
25
25
  class FlexibleRepoCashFlowEvent(InstrumentEvent):
26
26
  """
27
- Definition of FlexibleRepoCashFlowEvent which represents a cash transfer as part of a repo contract modelled as a FlexibleRepo, either as part of the purchase leg or repurchase leg, or any early closure. # noqa: E501
27
+ Definition of FlexibleRepoCashFlowEvent which represents a cash transfer as part of a repo contract modelled as a FlexibleRepo, either as part of the purchase leg or repurchase leg, or any early closure. # noqa: E501
28
28
  """
29
29
  settlement_date: Optional[datetime] = Field(None, alias="settlementDate", description="Date that the cash payment settles. This is a required field.")
30
30
  entitlement_date: Optional[datetime] = Field(None, alias="entitlementDate", description="Date the recipient of the cash payment is entitled to receive the cash. This is a required field.")
31
31
  currency: StrictStr = Field(...,alias="currency", description="Currency of the payment. This is a required field.")
32
- cash_flow_per_unit: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="cashFlowPerUnit", description="Amount of cash to be paid per unit of the instrument. This amount is signed to indicate direction of the payment, i.e. as part of the purchase leg vs the repurchase leg. This field is optional. If not specified, the system will not generate a virtual transaction for this event.")
32
+ cash_flow_per_unit: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="cashFlowPerUnit", description="Amount of cash to be paid per unit of the instrument. This amount is signed to indicate direction of the payment, i.e. as part of the purchase leg vs the repurchase leg. This field is optional. If not specified, the system will not generate a virtual transaction for this event.")
33
33
  instrument_event_type: StrictStr = Field(...,alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent, FutureMarkToMarketEvent, AdjustGlobalCommitmentEvent, ContractInitialisationEvent, DrawdownEvent, LoanInterestRepaymentEvent, UpdateDepositAmountEvent, LoanPrincipalRepaymentEvent, DepositInterestPaymentEvent, DepositCloseEvent, LoanFacilityContractRolloverEvent, RepurchaseOfferEvent, RepoPartialClosureEvent, RepoCashFlowEvent, FlexibleRepoInterestPaymentEvent, FlexibleRepoCashFlowEvent, FlexibleRepoCollateralEvent, ConversionEvent, FlexibleRepoPartialClosureEvent, FlexibleRepoFullClosureEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "settlementDate", "entitlementDate", "currency", "cashFlowPerUnit"]
@@ -25,11 +25,11 @@ from lusid.models.new_instrument import NewInstrument
25
25
 
26
26
  class FlexibleRepoCollateralEvent(InstrumentEvent):
27
27
  """
28
- Definition of FlexibleRepoCollateralEvent which represents a single collateral transfer as part of a repo contract modelled as a FlexibleRepo, either as part of the purchase leg or repurchase leg, or any early closure. # noqa: E501
28
+ Definition of FlexibleRepoCollateralEvent which represents a single collateral transfer as part of a repo contract modelled as a FlexibleRepo, either as part of the purchase leg or repurchase leg, or any early closure. # noqa: E501
29
29
  """
30
30
  settlement_date: Optional[datetime] = Field(None, alias="settlementDate", description="Date at which the transfer of units settles. This is a required field.")
31
31
  entitlement_date: Optional[datetime] = Field(None, alias="entitlementDate", description="Date at which the recipient of the collateral is entitled to the units being transferred. This is a required field.")
32
- amount: Union[StrictFloat, StrictInt] = Field(..., description="The total amount of collateral being transferred as part of the repo contract. Signed to indicate direction of transfer. This is a required field.")
32
+ amount: Union[StrictFloat, StrictInt] = Field(..., description="The total amount of collateral being transferred as part of the repo contract. Signed to indicate direction of transfer. This is a required field.")
33
33
  collateral_instrument: NewInstrument = Field(..., alias="collateralInstrument")
34
34
  instrument_event_type: StrictStr = Field(...,alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent, FutureMarkToMarketEvent, AdjustGlobalCommitmentEvent, ContractInitialisationEvent, DrawdownEvent, LoanInterestRepaymentEvent, UpdateDepositAmountEvent, LoanPrincipalRepaymentEvent, DepositInterestPaymentEvent, DepositCloseEvent, LoanFacilityContractRolloverEvent, RepurchaseOfferEvent, RepoPartialClosureEvent, RepoCashFlowEvent, FlexibleRepoInterestPaymentEvent, FlexibleRepoCashFlowEvent, FlexibleRepoCollateralEvent, ConversionEvent, FlexibleRepoPartialClosureEvent, FlexibleRepoFullClosureEvent")
35
35
  additional_properties: Dict[str, Any] = {}
@@ -24,12 +24,12 @@ from lusid.models.instrument_event import InstrumentEvent
24
24
 
25
25
  class FlexibleRepoInterestPaymentEvent(InstrumentEvent):
26
26
  """
27
- Definition of FlexibleRepoInterestPaymentEvent, which represents the regular interest payments associated with an open repo contract modelled as a FlexibleRepo. # noqa: E501
27
+ Definition of FlexibleRepoInterestPaymentEvent, which represents the regular interest payments associated with an open repo contract modelled as a FlexibleRepo. # noqa: E501
28
28
  """
29
29
  settlement_date: Optional[datetime] = Field(None, alias="settlementDate", description="Settlement date of the interest payment. This is a required field.")
30
30
  entitlement_date: Optional[datetime] = Field(None, alias="entitlementDate", description="EntitlementDate of the interest payment. This is a required field.")
31
31
  currency: StrictStr = Field(...,alias="currency", description="Currency of the interest payment. This is a required field.")
32
- interest_per_unit: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="interestPerUnit", description="Interest payment per unit held of the FlexibleRepo. This field is optional. If not specified, the system will not generate a virtual transaction for this event")
32
+ interest_per_unit: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="interestPerUnit", description="Interest payment per unit held of the FlexibleRepo. This field is optional. If not specified, the system will not generate a virtual transaction for this event")
33
33
  instrument_event_type: StrictStr = Field(...,alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent, FutureMarkToMarketEvent, AdjustGlobalCommitmentEvent, ContractInitialisationEvent, DrawdownEvent, LoanInterestRepaymentEvent, UpdateDepositAmountEvent, LoanPrincipalRepaymentEvent, DepositInterestPaymentEvent, DepositCloseEvent, LoanFacilityContractRolloverEvent, RepurchaseOfferEvent, RepoPartialClosureEvent, RepoCashFlowEvent, FlexibleRepoInterestPaymentEvent, FlexibleRepoCashFlowEvent, FlexibleRepoCollateralEvent, ConversionEvent, FlexibleRepoPartialClosureEvent, FlexibleRepoFullClosureEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "settlementDate", "entitlementDate", "currency", "interestPerUnit"]
@@ -25,12 +25,12 @@ from lusid.models.partial_closure_constituent import PartialClosureConstituent
25
25
 
26
26
  class FlexibleRepoPartialClosureEvent(InstrumentEvent):
27
27
  """
28
- Event representing the partial closure of a repurchase agreement. Each event reduces the outstanding notional and generates a corresponding receive-leg cashflow. The final maturity cashflow is adjusted accordingly. If multiple events are created, their effects compound. Once the total repaid amount reaches the original purchase price, no further receive-leg cashflows are generated. Any event exceeding the remaining notional is marked with a diagnostic to indicate it is invalid due to excessive repayment. For example, for a repo with a 5% rate, 1% haircut and collateral value of 100 (purchase price = 99), a partial closure of cash amount 10 followed by one of 100 results in only the first event producing a cashflow. The second, exceeding the remaining balance, is ignored and flagged with a diagnostic. The remaining balance is settled at maturity of the repurchase agreement. Specific to a instrument. # noqa: E501
28
+ Event representing the partial closure of a repurchase agreement. Each event reduces the outstanding notional and generates a corresponding receive-leg cashflow. The final maturity cashflow is adjusted accordingly. If multiple events are created, their effects compound. Once the total repaid amount reaches the original purchase price, no further receive-leg cashflows are generated. Any event exceeding the remaining notional is marked with a diagnostic to indicate it is invalid due to excessive repayment. For example, for a repo with a 5% rate, 1% haircut and collateral value of 100 (purchase price = 99), a partial closure of cash amount 10 followed by one of 100 results in only the first event producing a cashflow. The second, exceeding the remaining balance, is ignored and flagged with a diagnostic. The remaining balance is settled at maturity of the repurchase agreement. Specific to a instrument. # noqa: E501
29
29
  """
30
- entitlement_date: Optional[datetime] = Field(None, alias="entitlementDate", description="Required property. The date on which the counterparties become entitled to exchange cash as part of a partial closure of the repurchase agreement. The date must be before or on the settlement date, and on or before the maturity date of the repo.")
31
- settlement_date: Optional[datetime] = Field(None, alias="settlementDate", description="Required property. The date on which the exchange of cash is settled. The date must be on or after the entitlement date, and on or before the maturity date of the repo.")
32
- amount: Union[StrictFloat, StrictInt] = Field(..., description="The amount of cash to be exchanged as part of a partial closure of the repurchase agreement. Either the absolute cash amount or a percentage of the remaining amount, depending on the AmountType.")
33
- amount_type: StrictStr = Field(...,alias="amountType", description="AmountType of the cash amount to be exchanged as part of a partial closure of the repurchase agreement. Either percentage or absolute cash amount. Supported string (enumeration) values are: [Percentage, Units].")
30
+ entitlement_date: Optional[datetime] = Field(None, alias="entitlementDate", description="Required property. The date on which the counterparties become entitled to exchange cash as part of a partial closure of the repurchase agreement. The date must be before or on the settlement date, and on or before the maturity date of the repo.")
31
+ settlement_date: Optional[datetime] = Field(None, alias="settlementDate", description="Required property. The date on which the exchange of cash is settled. The date must be on or after the entitlement date, and on or before the maturity date of the repo.")
32
+ amount: Union[StrictFloat, StrictInt] = Field(..., description="The amount of cash to be exchanged as part of a partial closure of the repurchase agreement. Either the absolute cash amount or a percentage of the remaining amount, depending on the AmountType.")
33
+ amount_type: StrictStr = Field(...,alias="amountType", description="AmountType of the cash amount to be exchanged as part of a partial closure of the repurchase agreement. Either percentage or absolute cash amount. Supported string (enumeration) values are: [Percentage, Units].")
34
34
  partial_closure_constituents: conlist(PartialClosureConstituent) = Field(..., alias="partialClosureConstituents", description="List of the collateral instruments involved in this partial closure, along with how they are affected.")
35
35
  instrument_event_type: StrictStr = Field(...,alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent, FutureMarkToMarketEvent, AdjustGlobalCommitmentEvent, ContractInitialisationEvent, DrawdownEvent, LoanInterestRepaymentEvent, UpdateDepositAmountEvent, LoanPrincipalRepaymentEvent, DepositInterestPaymentEvent, DepositCloseEvent, LoanFacilityContractRolloverEvent, RepurchaseOfferEvent, RepoPartialClosureEvent, RepoCashFlowEvent, FlexibleRepoInterestPaymentEvent, FlexibleRepoCashFlowEvent, FlexibleRepoCollateralEvent, ConversionEvent, FlexibleRepoPartialClosureEvent, FlexibleRepoFullClosureEvent")
36
36
  additional_properties: Dict[str, Any] = {}
@@ -32,20 +32,20 @@ class FloatSchedule(Schedule):
32
32
  Schedule for floating rate coupon payments. # noqa: E501
33
33
  """
34
34
  start_date: Optional[datetime] = Field(None, alias="startDate", description="Date from which LUSID starts generating the payment schedule.")
35
- maturity_date: Optional[datetime] = Field(None, alias="maturityDate", description="Last date of the payment generation schedule. May not necessarily be the maturity date of the underlying instrument (e.g. in case the instrument has multiple payment schedules).")
35
+ maturity_date: Optional[datetime] = Field(None, alias="maturityDate", description="Last date of the payment generation schedule. May not necessarily be the maturity date of the underlying instrument (e.g. in case the instrument has multiple payment schedules).")
36
36
  flow_conventions: Optional[FlowConventions] = Field(None, alias="flowConventions")
37
37
  convention_name: Optional[FlowConventionName] = Field(None, alias="conventionName")
38
- ex_dividend_days: Optional[StrictInt] = Field(None, alias="exDividendDays", description="Optional. Number of calendar days in the ex-dividend period. If the settlement date falls in the ex-dividend period then the coupon paid is zero and the accrued interest is negative. If set, this must be a non-negative number. If not set, or set to 0, then there is no ex-dividend period. NOTE: This field is deprecated. If you wish to set the ExDividendDays on a bond, please use the ExDividendConfiguration.")
38
+ ex_dividend_days: Optional[StrictInt] = Field(None, alias="exDividendDays", description="Optional. Number of calendar days in the ex-dividend period. If the settlement date falls in the ex-dividend period then the coupon paid is zero and the accrued interest is negative. If set, this must be a non-negative number. If not set, or set to 0, then there is no ex-dividend period. NOTE: This field is deprecated. If you wish to set the ExDividendDays on a bond, please use the ExDividendConfiguration.")
39
39
  index_convention_name: Optional[FlowConventionName] = Field(None, alias="indexConventionName")
40
40
  index_conventions: Optional[IndexConvention] = Field(None, alias="indexConventions")
41
41
  notional: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Scaling factor, the quantity outstanding on which the rate will be paid.")
42
42
  payment_currency: StrictStr = Field(...,alias="paymentCurrency", description="Payment currency. This does not have to be the same as the nominal bond or observation/reset currency.")
43
43
  spread: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="Spread over floating rate given as a fraction.")
44
- stub_type: Optional[StrictStr] = Field(None,alias="stubType", description="When a payment schedule doesn't have regular payment intervals just because of the first and/or last coupons of the schedule, we call those irregular coupons stubs. This configuration specifies what type of stub is used when building the schedule Supported values are: None = this is a regular payment schedule with no stubs. DO NOT use it with irregular schedules or you will get incorrect and unexpected behaviour. ShortFront = this is an irregular payment schedule where only the first coupon is irregular, and covers a payment period that is shorter than the regular payment period. ShortBack = this is an irregular payment schedule where only the last coupon is irregular, and covers a payment period that is shorter than the regular payment period. LongFront = this is an irregular payment schedule where only the first coupon is irregular, and covers a payment period that is longer than the regular payment period. LongBack = this is an irregular payment schedule where only the last coupon is irregular, and covers a payment period that is longer than the regular payment period. Both = this is an irregular payment schedule where both the first and the last coupons are irregular, and the length of these periods is calculated based on the first coupon payment date that should have been explicitly set.")
44
+ stub_type: Optional[StrictStr] = Field(None,alias="stubType", description="When a payment schedule doesn't have regular payment intervals just because of the first and/or last coupons of the schedule, we call those irregular coupons stubs. This configuration specifies what type of stub is used when building the schedule Supported values are: None = this is a regular payment schedule with no stubs. DO NOT use it with irregular schedules or you will get incorrect and unexpected behaviour. ShortFront = this is an irregular payment schedule where only the first coupon is irregular, and covers a payment period that is shorter than the regular payment period. ShortBack = this is an irregular payment schedule where only the last coupon is irregular, and covers a payment period that is shorter than the regular payment period. LongFront = this is an irregular payment schedule where only the first coupon is irregular, and covers a payment period that is longer than the regular payment period. LongBack = this is an irregular payment schedule where only the last coupon is irregular, and covers a payment period that is longer than the regular payment period. Both = this is an irregular payment schedule where both the first and the last coupons are irregular, and the length of these periods is calculated based on the first coupon payment date that should have been explicitly set.")
45
45
  ex_dividend_configuration: Optional[ExDividendConfiguration] = Field(None, alias="exDividendConfiguration")
46
46
  compounding: Optional[Compounding] = None
47
- reset_convention: Optional[StrictStr] = Field(None,alias="resetConvention", description="Control how resets are generated relative to payment convention(s). Supported string (enumeration) values are: [InAdvance, InArrears].")
48
- use_annualised_direct_rates: Optional[StrictBool] = Field(None, alias="useAnnualisedDirectRates", description="Flag indicating whether to use daily updated annualised interest rates for calculating the accrued interest. Defaults to false.")
47
+ reset_convention: Optional[StrictStr] = Field(None,alias="resetConvention", description="Control how resets are generated relative to payment convention(s). Supported string (enumeration) values are: [InAdvance, InArrears].")
48
+ use_annualised_direct_rates: Optional[StrictBool] = Field(None, alias="useAnnualisedDirectRates", description="Flag indicating whether to use daily updated annualised interest rates for calculating the accrued interest. Defaults to false.")
49
49
  schedule_type: StrictStr = Field(...,alias="scheduleType", description="The available values are: FixedSchedule, FloatSchedule, OptionalitySchedule, StepSchedule, Exercise, FxRateSchedule, FxLinkedNotionalSchedule, BondConversionSchedule, Invalid")
50
50
  additional_properties: Dict[str, Any] = {}
51
51
  __properties = ["scheduleType", "startDate", "maturityDate", "flowConventions", "conventionName", "exDividendDays", "indexConventionName", "indexConventions", "notional", "paymentCurrency", "spread", "stubType", "exDividendConfiguration", "compounding", "resetConvention", "useAnnualisedDirectRates"]
@@ -30,7 +30,7 @@ class FloatingLeg(InstrumentLeg):
30
30
  LUSID representation of a Floating Rate Leg. # noqa: E501
31
31
  """
32
32
  start_date: datetime = Field(..., alias="startDate", description="The start date of the instrument. This is normally synonymous with the trade-date.")
33
- maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
33
+ maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
34
34
  leg_definition: LegDefinition = Field(..., alias="legDefinition")
35
35
  notional: Union[StrictFloat, StrictInt] = Field(..., description="Scaling factor to apply to leg quantities.")
36
36
  overrides: Optional[FixedLegAllOfOverrides] = None
@@ -27,7 +27,7 @@ class FlowConventionName(BaseModel):
27
27
  """
28
28
  currency: StrictStr = Field(...,alias="currency", description="Currency of the flow convention name.")
29
29
  index_name: Optional[StrictStr] = Field(None,alias="indexName", description="The index, if present, that is required. e.g. \"IBOR\", \"OIS\" or \"SONIA\".")
30
- tenor: StrictStr = Field(...,alias="tenor", description="Tenor for the convention name. For more information on tenors, see [knowledge base article KA-02097](https://support.lusid.com/knowledgebase/article/KA-02097)")
30
+ tenor: StrictStr = Field(...,alias="tenor", description="Tenor for the convention name. For more information on tenors, see [knowledge base article KA-02097](https://support.lusid.com/knowledgebase/article/KA-02097)")
31
31
  __properties = ["currency", "indexName", "tenor"]
32
32
 
33
33
  class Config:
@@ -24,20 +24,20 @@ from lusid.models.relative_date_offset import RelativeDateOffset
24
24
 
25
25
  class FlowConventions(BaseModel):
26
26
  """
27
- A flow convention defines the specification for generation of the date schedule for a leg or set of cashflows. It determines the tenor of these and, how to map the unadjusted set of dates to dates which are 'good business days'. For example, if an unadjusted date falls on a Saturday or a bank holiday, should it be rolled forward or backward to obtain the adjusted date. For more information, see https://support.lusid.com/knowledgebase/article/KA-02055/ # noqa: E501
27
+ A flow convention defines the specification for generation of the date schedule for a leg or set of cashflows. It determines the tenor of these and, how to map the unadjusted set of dates to dates which are 'good business days'. For example, if an unadjusted date falls on a Saturday or a bank holiday, should it be rolled forward or backward to obtain the adjusted date. For more information, see https://support.lusid.com/knowledgebase/article/KA-02055/ # noqa: E501
28
28
  """
29
29
  currency: StrictStr = Field(...,alias="currency", description="Currency of the flow convention.")
30
- payment_frequency: StrictStr = Field(...,alias="paymentFrequency", description="When generating a multiperiod flow, or when the maturity of the flow is not given but the start date is, the tenor is the time-step from the anchor-date to the nominal maturity of the flow prior to any adjustment. For more information on tenors, see [knowledge base article KA-02097](https://support.lusid.com/knowledgebase/article/KA-02097)")
31
- day_count_convention: StrictStr = Field(...,alias="dayCountConvention", description="when calculating the fraction of a year between two dates, what convention is used to represent the number of days in a year and difference between them. For more information on day counts, see [knowledge base article KA-01798](https://support.lusid.com/knowledgebase/article/KA-01798) Supported string (enumeration) values are: [Actual360, Act360, MoneyMarket, Actual365, Act365, Thirty360, ThirtyU360, Bond, ThirtyE360, EuroBond, ActualActual, ActAct, ActActIsda, ActActIsma, ActActIcma, OneOne, Act364, Act365F, Act365L, Act365_25, Act252, Bus252, NL360, NL365, ActActAFB, Act365Cad, ThirtyActIsda, Thirty365Isda, ThirtyEActIsda, ThirtyE360Isda, ThirtyE365Isda, ThirtyU360EOM].")
32
- roll_convention: StrictStr = Field(...,alias="rollConvention", description="For backward compatibility, this can either specify a business day convention or a roll convention. If the business day convention is provided using the BusinessDayConvention property, this must be a valid roll convention. When used as a roll convention: The conventions specifying the rule used to generate dates in a schedule. Supported string (enumeration) values are: [None, EndOfMonth, IMM, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, FirstMonday, FirstTuesday, FirstWednesday, FirstThursday, FirstFriday, SecondMonday, SecondTuesday, SecondWednesday, SecondThursday, SecondFriday, ThirdMonday, ThirdTuesday, ThirdWednesday, ThirdThursday, ThirdFriday, FourthMonday, FourthTuesday, FourthWednesday, FourthThursday, FourthFriday, LastMonday, LastTuesday, LastWednesday, LastThursday, LastFriday]. When in backward compatible mode: Supported string (enumeration) values are: [NoAdjustment, None, Previous, P, Following, F, ModifiedPrevious, MP, ModifiedFollowing, MF, HalfMonthModifiedFollowing].")
30
+ payment_frequency: StrictStr = Field(...,alias="paymentFrequency", description="When generating a multiperiod flow, or when the maturity of the flow is not given but the start date is, the tenor is the time-step from the anchor-date to the nominal maturity of the flow prior to any adjustment. For more information on tenors, see [knowledge base article KA-02097](https://support.lusid.com/knowledgebase/article/KA-02097)")
31
+ day_count_convention: StrictStr = Field(...,alias="dayCountConvention", description="when calculating the fraction of a year between two dates, what convention is used to represent the number of days in a year and difference between them. For more information on day counts, see [knowledge base article KA-01798](https://support.lusid.com/knowledgebase/article/KA-01798) Supported string (enumeration) values are: [Actual360, Act360, MoneyMarket, Actual365, Act365, Thirty360, ThirtyU360, Bond, ThirtyE360, EuroBond, ActualActual, ActAct, ActActIsda, ActActIsma, ActActIcma, OneOne, Act364, Act365F, Act365L, Act365_25, Act252, Bus252, NL360, NL365, ActActAFB, Act365Cad, ThirtyActIsda, Thirty365Isda, ThirtyEActIsda, ThirtyE360Isda, ThirtyE365Isda, ThirtyU360EOM].")
32
+ roll_convention: StrictStr = Field(...,alias="rollConvention", description="For backward compatibility, this can either specify a business day convention or a roll convention. If the business day convention is provided using the BusinessDayConvention property, this must be a valid roll convention. When used as a roll convention: The conventions specifying the rule used to generate dates in a schedule. Supported string (enumeration) values are: [None, EndOfMonth, IMM, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, FirstMonday, FirstTuesday, FirstWednesday, FirstThursday, FirstFriday, SecondMonday, SecondTuesday, SecondWednesday, SecondThursday, SecondFriday, ThirdMonday, ThirdTuesday, ThirdWednesday, ThirdThursday, ThirdFriday, FourthMonday, FourthTuesday, FourthWednesday, FourthThursday, FourthFriday, LastMonday, LastTuesday, LastWednesday, LastThursday, LastFriday]. When in backward compatible mode: Supported string (enumeration) values are: [NoAdjustment, None, Previous, P, Following, F, ModifiedPrevious, MP, ModifiedFollowing, MF, HalfMonthModifiedFollowing].")
33
33
  payment_calendars: conlist(StrictStr) = Field(..., alias="paymentCalendars", description="An array of strings denoting holiday calendars that apply to generation of payment schedules.")
34
34
  reset_calendars: conlist(StrictStr) = Field(..., alias="resetCalendars", description="An array of strings denoting holiday calendars that apply to generation of reset schedules.")
35
- settle_days: Optional[StrictInt] = Field(None, alias="settleDays", description="DEPRECATED Number of Good Business Days between the trade date and the effective or settlement date of the instrument. This field is now deprecated and not picked up in schedule generation or adjustment to bond accrual start date. Defaulted to 0 if not set.")
35
+ settle_days: Optional[StrictInt] = Field(None, alias="settleDays", description="DEPRECATED Number of Good Business Days between the trade date and the effective or settlement date of the instrument. This field is now deprecated and not picked up in schedule generation or adjustment to bond accrual start date. Defaulted to 0 if not set.")
36
36
  reset_days: Optional[StrictInt] = Field(None, alias="resetDays", description="The number of Good Business Days between determination and payment of reset. Defaulted to 0 if not set.")
37
- leap_days_included: Optional[StrictBool] = Field(None, alias="leapDaysIncluded", description="If this flag is set to true, the 29th of February is included in the date schedule when the business roll convention is applied. If this flag is set to false, the business roll convention ignores February 29 for date schedules, cash flow payments etc. This flag defaults to true if not specified, i.e., leap days are included in a date schedule generation.")
38
- accrual_date_adjustment: Optional[StrictStr] = Field(None,alias="accrualDateAdjustment", description="Indicates if the accrual dates are adjusted using the business day convention. The default value is 'Adjusted'. Supported string (enumeration) values are: [Adjusted, Unadjusted].")
39
- business_day_convention: Optional[StrictStr] = Field(None,alias="businessDayConvention", description="When generating a set of dates, what convention should be used for adjusting dates that coincide with a non-business day. Supported string (enumeration) values are: [NoAdjustment, None, Previous, P, Following, F, ModifiedPrevious, MP, ModifiedFollowing, MF, HalfMonthModifiedFollowing, Nearest].")
40
- accrual_day_count_convention: Optional[StrictStr] = Field(None,alias="accrualDayCountConvention", description="Optional, if not set the main DayCountConvention is used for all accrual calculations. This only needs to be set when accrual uses a different day count to the coupon calculation.")
37
+ leap_days_included: Optional[StrictBool] = Field(None, alias="leapDaysIncluded", description="If this flag is set to true, the 29th of February is included in the date schedule when the business roll convention is applied. If this flag is set to false, the business roll convention ignores February 29 for date schedules, cash flow payments etc. This flag defaults to true if not specified, i.e., leap days are included in a date schedule generation.")
38
+ accrual_date_adjustment: Optional[StrictStr] = Field(None,alias="accrualDateAdjustment", description="Indicates if the accrual dates are adjusted using the business day convention. The default value is 'Adjusted'. Supported string (enumeration) values are: [Adjusted, Unadjusted].")
39
+ business_day_convention: Optional[StrictStr] = Field(None,alias="businessDayConvention", description="When generating a set of dates, what convention should be used for adjusting dates that coincide with a non-business day. Supported string (enumeration) values are: [NoAdjustment, None, Previous, P, Following, F, ModifiedPrevious, MP, ModifiedFollowing, MF, HalfMonthModifiedFollowing, Nearest].")
40
+ accrual_day_count_convention: Optional[StrictStr] = Field(None,alias="accrualDayCountConvention", description="Optional, if not set the main DayCountConvention is used for all accrual calculations. This only needs to be set when accrual uses a different day count to the coupon calculation.")
41
41
  coupon_payment_lag: Optional[RelativeDateOffset] = Field(None, alias="couponPaymentLag")
42
42
  scope: Optional[StrictStr] = Field(None,alias="scope", description="The scope used when updating or inserting the convention.")
43
43
  code: Optional[StrictStr] = Field(None,alias="code", description="The code of the convention.")
@@ -29,7 +29,7 @@ class ForwardRateAgreement(LusidInstrument):
29
29
  LUSID representation of a Forward Rate Agreement. # noqa: E501
30
30
  """
31
31
  start_date: datetime = Field(..., alias="startDate", description="The settlement date of the FRA")
32
- maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates beyond their last payment date.")
32
+ maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates beyond their last payment date.")
33
33
  dom_ccy: StrictStr = Field(...,alias="domCcy", description="The domestic currency of the instrument.")
34
34
  fixing_date: datetime = Field(..., alias="fixingDate", description="The date at which the rate to be paid, the reference rate, is confirmed/observed.")
35
35
  fra_rate: Union[StrictFloat, StrictInt] = Field(..., alias="fraRate", description="The rate at which the FRA is traded.")
@@ -20,6 +20,7 @@ import json
20
20
  from datetime import datetime
21
21
  from typing import Any, Dict, Optional
22
22
  from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictBool, StrictStr, constr, validator
23
+ from lusid.models.model_property import ModelProperty
23
24
  from lusid.models.version import Version
24
25
 
25
26
  class FundCalendarEntry(BaseModel):
@@ -35,9 +36,10 @@ class FundCalendarEntry(BaseModel):
35
36
  entry_type: StrictStr = Field(...,alias="entryType", description="The type of the Fund Calendar Entry. Only 'ValuationPoint' currently supported. The available values are: ValuationPointFundCalendarEntry, BookmarkFundCalendarEntry")
36
37
  status: Optional[StrictStr] = Field(None,alias="status", description="The status of the Fund Calendar Entry. Can be 'Estimate', 'Candidate' or 'Final'.")
37
38
  apply_clear_down: StrictBool = Field(..., alias="applyClearDown", description="Set to true if that closed period shoould have the clear down applied.")
39
+ properties: Optional[Dict[str, ModelProperty]] = Field(None, description="The properties for the Calendar Entry. These will be from the 'ClosedPeriod' domain.")
38
40
  version: Version = Field(...)
39
41
  href: Optional[StrictStr] = Field(None,alias="href", description="The specific Uniform Resource Identifier (URI) for this resource at the requested asAt datetime.")
40
- __properties = ["code", "displayName", "description", "navTypeCode", "effectiveAt", "asAt", "entryType", "status", "applyClearDown", "version", "href"]
42
+ __properties = ["code", "displayName", "description", "navTypeCode", "effectiveAt", "asAt", "entryType", "status", "applyClearDown", "properties", "version", "href"]
41
43
 
42
44
  @validator('entry_type')
43
45
  def entry_type_validate_enum(cls, value):
@@ -130,6 +132,13 @@ class FundCalendarEntry(BaseModel):
130
132
  exclude={
131
133
  },
132
134
  exclude_none=True)
135
+ # override the default output from pydantic by calling `to_dict()` of each value in properties (dict)
136
+ _field_dict = {}
137
+ if self.properties:
138
+ for _key in self.properties:
139
+ if self.properties[_key]:
140
+ _field_dict[_key] = self.properties[_key].to_dict()
141
+ _dict['properties'] = _field_dict
133
142
  # override the default output from pydantic by calling `to_dict()` of version
134
143
  if self.version:
135
144
  _dict['version'] = self.version.to_dict()
@@ -143,6 +152,11 @@ class FundCalendarEntry(BaseModel):
143
152
  if self.status is None and "status" in self.__fields_set__:
144
153
  _dict['status'] = None
145
154
 
155
+ # set to None if properties (nullable) is None
156
+ # and __fields_set__ contains the field
157
+ if self.properties is None and "properties" in self.__fields_set__:
158
+ _dict['properties'] = None
159
+
146
160
  # set to None if href (nullable) is None
147
161
  # and __fields_set__ contains the field
148
162
  if self.href is None and "href" in self.__fields_set__:
@@ -169,6 +183,12 @@ class FundCalendarEntry(BaseModel):
169
183
  "entry_type": obj.get("entryType"),
170
184
  "status": obj.get("status"),
171
185
  "apply_clear_down": obj.get("applyClearDown"),
186
+ "properties": dict(
187
+ (_k, ModelProperty.from_dict(_v))
188
+ for _k, _v in obj.get("properties").items()
189
+ )
190
+ if obj.get("properties") is not None
191
+ else None,
172
192
  "version": Version.from_dict(obj.get("version")) if obj.get("version") is not None else None,
173
193
  "href": obj.get("href")
174
194
  })
@@ -27,12 +27,12 @@ from lusid.models.trading_conventions import TradingConventions
27
27
 
28
28
  class FundShareClass(LusidInstrument):
29
29
  """
30
- LUSID representation of a FundShareClass. A ShareClass represents a pool of shares, held by investors, within a fund. A ShareClass can represent a differing investment approach by either Fees, Income, Currency Risk and Investor type. # noqa: E501
30
+ LUSID representation of a FundShareClass. A ShareClass represents a pool of shares, held by investors, within a fund. A ShareClass can represent a differing investment approach by either Fees, Income, Currency Risk and Investor type. # noqa: E501
31
31
  """
32
32
  short_code: StrictStr = Field(...,alias="shortCode", description="A short identifier, unique across a single fund, usually made up of the ShareClass components. Eg \"A Accumulation Euro Hedged Class\" could become \"A Acc H EUR\".")
33
- fund_share_class_type: StrictStr = Field(...,alias="fundShareClassType", description="The type of distribution that the ShareClass will calculate. Can be either 'Income' or 'Accumulation' - Income classes will pay out and Accumulation classes will retain their ShareClass attributable income. Supported string (enumeration) values are: [Income, Accumulation].")
34
- distribution_payment_type: StrictStr = Field(...,alias="distributionPaymentType", description="The tax treatment applied to any distributions calculated within the ShareClass. Can be either 'Net' (Distribution Calculated net of tax) or 'Gross' (Distribution calculated gross of tax). Supported string (enumeration) values are: [Gross, Net].")
35
- hedging: StrictStr = Field(...,alias="hedging", description="A flag to indicate the ShareClass is operating currency hedging as a means to limit currency risk as part of it's investment strategy. Supported string (enumeration) values are: [Invalid, None, ApplyHedging].")
33
+ fund_share_class_type: StrictStr = Field(...,alias="fundShareClassType", description="The type of distribution that the ShareClass will calculate. Can be either 'Income' or 'Accumulation' - Income classes will pay out and Accumulation classes will retain their ShareClass attributable income. Supported string (enumeration) values are: [Income, Accumulation].")
34
+ distribution_payment_type: StrictStr = Field(...,alias="distributionPaymentType", description="The tax treatment applied to any distributions calculated within the ShareClass. Can be either 'Net' (Distribution Calculated net of tax) or 'Gross' (Distribution calculated gross of tax). Supported string (enumeration) values are: [Gross, Net].")
35
+ hedging: StrictStr = Field(...,alias="hedging", description="A flag to indicate the ShareClass is operating currency hedging as a means to limit currency risk as part of it's investment strategy. Supported string (enumeration) values are: [Invalid, None, ApplyHedging].")
36
36
  dom_ccy: StrictStr = Field(...,alias="domCcy", description="The domestic currency of the instrument.")
37
37
  rounding_conventions: Optional[conlist(SimpleRoundingConvention)] = Field(None, alias="roundingConventions", description="Rounding Convention used for the FundShareClass quotes")
38
38
  trading_conventions: Optional[TradingConventions] = Field(None, alias="tradingConventions")
@@ -33,12 +33,12 @@ class FundValuationRequest(BaseModel):
33
33
  Specification object for the parameters of a valuation # noqa: E501
34
34
  """
35
35
  as_at: Optional[datetime] = Field(None, alias="asAt", description="The asAt date to use.")
36
- metrics: conlist(AggregateSpec) = Field(..., description="The set of specifications to calculate or retrieve during the valuation and present in the results. For example: AggregateSpec('Valuation/PV','Sum') for returning the PV (present value) of holdings AggregateSpec('Holding/default/Units','Sum') for returning the units of holidays AggregateSpec('Instrument/default/LusidInstrumentId','Value') for returning the Lusid Instrument identifier")
37
- group_by: Optional[conlist(StrictStr)] = Field(None, alias="groupBy", description="The set of items by which to perform grouping. This primarily matters when one or more of the metric operators is a mapping that reduces set size, e.g. sum or proportion. The group-by statement determines the set of keys by which to break the results out.")
38
- filters: Optional[conlist(PropertyFilter)] = Field(None, description="A set of filters to use to reduce the data found in a request. Equivalent to the 'where ...' part of a Sql select statement. For example, filter a set of values within a given range or matching a particular value.")
36
+ metrics: conlist(AggregateSpec) = Field(..., description="The set of specifications to calculate or retrieve during the valuation and present in the results. For example: AggregateSpec('Valuation/PV','Sum') for returning the PV (present value) of holdings AggregateSpec('Holding/default/Units','Sum') for returning the units of holidays AggregateSpec('Instrument/default/LusidInstrumentId','Value') for returning the Lusid Instrument identifier")
37
+ group_by: Optional[conlist(StrictStr)] = Field(None, alias="groupBy", description="The set of items by which to perform grouping. This primarily matters when one or more of the metric operators is a mapping that reduces set size, e.g. sum or proportion. The group-by statement determines the set of keys by which to break the results out.")
38
+ filters: Optional[conlist(PropertyFilter)] = Field(None, description="A set of filters to use to reduce the data found in a request. Equivalent to the 'where ...' part of a Sql select statement. For example, filter a set of values within a given range or matching a particular value.")
39
39
  sort: Optional[conlist(OrderBySpec)] = Field(None, description="A (possibly empty/null) set of specifications for how to order the results.")
40
40
  equip_with_subtotals: Optional[StrictBool] = Field(None, alias="equipWithSubtotals", description="Flag directing the Valuation call to populate the results with subtotals of aggregates.")
41
- return_result_as_expanded_types: Optional[StrictBool] = Field(None, alias="returnResultAsExpandedTypes", description="Financially meaningful results can be presented as either simple flat types or more complex expanded types. For example, the present value (PV) of a holding could be represented either as a simple decimal (with currency implied) or as a decimal-currency pair. This flag allows either representation to be returned. In the PV example, the returned value would be the decimal-currency pair if this flag is true, or the decimal only if this flag is false.")
41
+ return_result_as_expanded_types: Optional[StrictBool] = Field(None, alias="returnResultAsExpandedTypes", description="Financially meaningful results can be presented as either simple flat types or more complex expanded types. For example, the present value (PV) of a holding could be represented either as a simple decimal (with currency implied) or as a decimal-currency pair. This flag allows either representation to be returned. In the PV example, the returned value would be the decimal-currency pair if this flag is true, or the decimal only if this flag is false.")
42
42
  include_order_flow: Optional[OrderFlowConfiguration] = Field(None, alias="includeOrderFlow")
43
43
  fund_valuation_schedule: FundValuationSchedule = Field(..., alias="fundValuationSchedule")
44
44
  market_data_overrides: Optional[MarketDataOverrides] = Field(None, alias="marketDataOverrides")
@@ -25,14 +25,14 @@ class FundValuationSchedule(BaseModel):
25
25
  """
26
26
  Specification object for the valuation schedule, how do we determine which days we wish to perform a valuation upon. # noqa: E501
27
27
  """
28
- effective_from: Optional[StrictStr] = Field(None,alias="effectiveFrom", description="If present, the EffectiveFrom and EffectiveAt dates are interpreted as a range of dates for which to perform a valuation. In this case, valuation is calculated for the portfolio(s) for each business day in the given range.")
28
+ effective_from: Optional[StrictStr] = Field(None,alias="effectiveFrom", description="If present, the EffectiveFrom and EffectiveAt dates are interpreted as a range of dates for which to perform a valuation. In this case, valuation is calculated for the portfolio(s) for each business day in the given range.")
29
29
  effective_at: Optional[StrictStr] = Field(None,alias="effectiveAt", description="The market data time, i.e. the time to run the valuation request effective of.")
30
30
  diary_entry: Optional[StrictStr] = Field(None,alias="diaryEntry", description="The diary entry to use for the valuation schedule. This is used to determine the date on which the valuation should be performed.")
31
31
  tenor: Optional[StrictStr] = Field(None,alias="tenor", description="Tenor, e.g \"1D\", \"1M\" to be used in generating the date schedule when effectiveFrom and effectiveAt are both given and are not the same.")
32
- roll_convention: Optional[StrictStr] = Field(None,alias="rollConvention", description="When Tenor is given and is \"1M\" or longer, this specifies the rule which should be used to generate the date schedule. For example, \"EndOfMonth\" to generate end of month dates, or \"1\" to specify the first day of the applicable month.")
33
- holiday_calendars: Optional[conlist(StrictStr)] = Field(None, alias="holidayCalendars", description="The holiday calendar(s) that should be used in determining the date schedule. Holiday calendar(s) are supplied by their names, for example, \"CoppClark\". Note that when the calendars are not available (e.g. when the user has insufficient permissions), a recipe setting will be used to determine whether the whole batch should then fail or whether the calendar not being available should simply be ignored.")
32
+ roll_convention: Optional[StrictStr] = Field(None,alias="rollConvention", description="When Tenor is given and is \"1M\" or longer, this specifies the rule which should be used to generate the date schedule. For example, \"EndOfMonth\" to generate end of month dates, or \"1\" to specify the first day of the applicable month.")
33
+ holiday_calendars: Optional[conlist(StrictStr)] = Field(None, alias="holidayCalendars", description="The holiday calendar(s) that should be used in determining the date schedule. Holiday calendar(s) are supplied by their names, for example, \"CoppClark\". Note that when the calendars are not available (e.g. when the user has insufficient permissions), a recipe setting will be used to determine whether the whole batch should then fail or whether the calendar not being available should simply be ignored.")
34
34
  valuation_date_times: Optional[conlist(StrictStr)] = Field(None, alias="valuationDateTimes", description="If given, this is the exact set of dates on which to perform a valuation. This will replace/override all other specified values if given.")
35
- business_day_convention: Optional[StrictStr] = Field(None,alias="businessDayConvention", description="When Tenor is given and is not equal to \"1D\", there may be cases where \"date + tenor\" land on non-business days around month end. In that case, the BusinessDayConvention, e.g. modified following \"MF\" would be applied to determine the next GBD.")
35
+ business_day_convention: Optional[StrictStr] = Field(None,alias="businessDayConvention", description="When Tenor is given and is not equal to \"1D\", there may be cases where \"date + tenor\" land on non-business days around month end. In that case, the BusinessDayConvention, e.g. modified following \"MF\" would be applied to determine the next GBD.")
36
36
  __properties = ["effectiveFrom", "effectiveAt", "diaryEntry", "tenor", "rollConvention", "holidayCalendars", "valuationDateTimes", "businessDayConvention"]
37
37
 
38
38
  class Config:
@@ -26,12 +26,12 @@ from lusid.models.time_zone_conventions import TimeZoneConventions
26
26
 
27
27
  class FundingLeg(InstrumentLeg):
28
28
  """
29
- LUSID representation of a Funding Leg with variable notional. This Funding Leg is a hybrid between a single leg swap and a loan facility; the notional is not fixed and can vary within a reset period. The model can be used to represent the funding leg of a basket of instruments (e.g. equities) where the contents of the basket can change over time. The actual notional history is stored in the FundingLegHistory object. The actual notional history is stored in the FundingLegHistory object. The main analytic calculated for this instrument is Accrual rather than PV. # noqa: E501
29
+ LUSID representation of a Funding Leg with variable notional. This Funding Leg is a hybrid between a single leg swap and a loan facility; the notional is not fixed and can vary within a reset period. The model can be used to represent the funding leg of a basket of instruments (e.g. equities) where the contents of the basket can change over time. The actual notional history is stored in the FundingLegHistory object. The actual notional history is stored in the FundingLegHistory object. The main analytic calculated for this instrument is Accrual rather than PV. # noqa: E501
30
30
  """
31
31
  start_date: datetime = Field(..., alias="startDate", description="The start date of the instrument. This is normally synonymous with the trade-date.")
32
- maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates beyond their last payment date.")
32
+ maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates beyond their last payment date.")
33
33
  leg_definition: LegDefinition = Field(..., alias="legDefinition")
34
- notional: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="The initial notional of the Funding Leg instrument. When \"RequiresFundingLegHistory\" property key is present in transaction key, during a GetValuation endpoint call (for instance), this field would overriden by the Funding Leg history's notional and this notional field would not be used in the pricing and accrual calculations. As such, we recommend setting this to 0 or not setting it at all. Please see the following Notebook example and Knowledge Base article: Notebook: https://github.com/finbourne/sample-notebooks/blob/master/examples/use-cases/instruments/Funding%20Leg%20Swap.ipynb Knowledge Base article: https://support.lusid.com/knowledgebase/article/KA-01764/")
34
+ notional: Optional[Union[StrictFloat, StrictInt]] = Field(None, description="The initial notional of the Funding Leg instrument. When \"RequiresFundingLegHistory\" property key is present in transaction key, during a GetValuation endpoint call (for instance), this field would overriden by the Funding Leg history's notional and this notional field would not be used in the pricing and accrual calculations. As such, we recommend setting this to 0 or not setting it at all. Please see the following Notebook example and Knowledge Base article: Notebook: https://github.com/finbourne/sample-notebooks/blob/master/examples/use-cases/instruments/Funding%20Leg%20Swap.ipynb Knowledge Base article: https://support.lusid.com/knowledgebase/article/KA-01764/")
35
35
  time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
36
36
  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, FlexibleRepo")
37
37
  additional_properties: Dict[str, Any] = {}
lusid/models/future.py CHANGED
@@ -28,17 +28,17 @@ from lusid.models.trading_conventions import TradingConventions
28
28
 
29
29
  class Future(LusidInstrument):
30
30
  """
31
- LUSID representation of a Future. Including, but not limited to, Equity Futures, Bond Futures, Index Futures, Currency Futures, and Interest Rate Futures. # noqa: E501
31
+ LUSID representation of a Future. Including, but not limited to, Equity Futures, Bond Futures, Index Futures, Currency Futures, and Interest Rate Futures. # noqa: E501
32
32
  """
33
33
  start_date: datetime = Field(..., alias="startDate", description="The start date of the instrument. This is normally synonymous with the trade-date.")
34
- maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
34
+ maturity_date: datetime = Field(..., alias="maturityDate", description="The final maturity date of the instrument. This means the last date on which the instruments makes a payment of any amount. For the avoidance of doubt, that is not necessarily prior to its last sensitivity date for the purposes of risk; e.g. instruments such as Constant Maturity Swaps (CMS) often have sensitivities to rates that may well be observed or set prior to the maturity date, but refer to a termination date beyond it.")
35
35
  identifiers: Dict[str, StrictStr] = Field(..., description="External market codes and identifiers for the bond, e.g. ISIN.")
36
36
  contract_details: FuturesContractDetails = Field(..., alias="contractDetails")
37
- contracts: Optional[Union[StrictFloat, StrictInt]] = Field(1, description="The number of contracts held. This is optional and will default to 1 if not set. Instrument events will only work when this field is 1. We recommend not using this field and instead relying on the number of holdings to represent the number of futures contracts.")
37
+ contracts: Optional[Union[StrictFloat, StrictInt]] = Field(1, description="The number of contracts held. This is optional and will default to 1 if not set. Instrument events will only work when this field is 1. We recommend not using this field and instead relying on the number of holdings to represent the number of futures contracts.")
38
38
  mark_to_market_conventions: Optional[MarkToMarketConventions] = Field(None, alias="markToMarketConventions")
39
39
  ref_spot_price: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="refSpotPrice", description="The reference spot price for the future at which the contract was entered into.")
40
40
  underlying: Optional[LusidInstrument] = None
41
- calculation_type: Optional[StrictStr] = Field(None,alias="calculationType", description="Calculation type for some Future instruments which have non-standard methodology. Optional, if not set defaults as follows: - If ExchangeCode is \"ASX\" and ContractCode is \"IR\" or \"BB\" set to ASX_BankBills - If ExchangeCode is \"ASX\" and ContractCode is \"YT\" set to ASX_3Year - If ExchangeCode is \"ASX\" and ContractCode is \"VT\" set to ASX_5Year - If ExchangeCode is \"ASX\" and ContractCode is \"XT\" set to ASX_10Year - If ExchangeCode is \"ASX\" and ContractCode is \"LT\" set to ASX_20Year - otherwise set to Standard Specific calculation types for bond and interest rate futures are: - [Standard] The default calculation type, which does not fit into any of the categories below. - [ASX_BankBills] Used for AUD and NZD futures “IR” and “BB” on ASX. 90D Bank Bills. - [ASX_3Year] Used for “YT” on ASX. 3YR semi-annual bond (6 coupons) @ 6%. - [ASX_5Year] Used for “VT” on ASX. 5yr semi-annual bond (10 coupons) @ 2%. - [ASX_10Year] Used for “XT” on ASX. 10yr semi-annual bond (20 coupons) @ 6%. - [ASX_20Year] Used for “LT” on ASX. 20yr semi-annual bond (40 coupons) @ 4%. - [B3_DI1] Used for “DI1” on B3. Average of 1D interbank deposit rates. - For futures with this calculation type, quote values are expected to be specified as a percentage. For example, a quoted rate of 13.205% should be specified as a quote of 13.205 with a face value of 100. Supported string (enumeration) values are: [Standard, ASX_BankBills, ASX_3Year, ASX_5Year, ASX_10Year, ASX_20Year, B3_DI1].")
41
+ calculation_type: Optional[StrictStr] = Field(None,alias="calculationType", description="Calculation type for some Future instruments which have non-standard methodology. Optional, if not set defaults as follows: - If ExchangeCode is \"ASX\" and ContractCode is \"IR\" or \"BB\" set to ASX_BankBills - If ExchangeCode is \"ASX\" and ContractCode is \"YT\" set to ASX_3Year - If ExchangeCode is \"ASX\" and ContractCode is \"VT\" set to ASX_5Year - If ExchangeCode is \"ASX\" and ContractCode is \"XT\" set to ASX_10Year - If ExchangeCode is \"ASX\" and ContractCode is \"LT\" set to ASX_20Year - otherwise set to Standard Specific calculation types for bond and interest rate futures are: - [Standard] The default calculation type, which does not fit into any of the categories below. - [ASX_BankBills] Used for AUD and NZD futures “IR” and “BB” on ASX. 90D Bank Bills. - [ASX_3Year] Used for “YT” on ASX. 3YR semi-annual bond (6 coupons) @ 6%. - [ASX_5Year] Used for “VT” on ASX. 5yr semi-annual bond (10 coupons) @ 2%. - [ASX_10Year] Used for “XT” on ASX. 10yr semi-annual bond (20 coupons) @ 6%. - [ASX_20Year] Used for “LT” on ASX. 20yr semi-annual bond (40 coupons) @ 4%. - [B3_DI1] Used for “DI1” on B3. Average of 1D interbank deposit rates. - For futures with this calculation type, quote values are expected to be specified as a percentage. For example, a quoted rate of 13.205% should be specified as a quote of 13.205 with a face value of 100. Supported string (enumeration) values are: [Standard, ASX_BankBills, ASX_3Year, ASX_5Year, ASX_10Year, ASX_20Year, B3_DI1].")
42
42
  trading_conventions: Optional[TradingConventions] = Field(None, alias="tradingConventions")
43
43
  time_zone_conventions: Optional[TimeZoneConventions] = Field(None, alias="timeZoneConventions")
44
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, FlexibleRepo")
@@ -24,7 +24,7 @@ from lusid.models.instrument_event import InstrumentEvent
24
24
 
25
25
  class FutureExpiryEvent(InstrumentEvent):
26
26
  """
27
- Definition of a Future Expiry Event. This is an event that describes the expiry of a Future instrument. # noqa: E501
27
+ Definition of a Future Expiry Event. This is an event that describes the expiry of a Future instrument. # noqa: E501
28
28
  """
29
29
  expiry_date: Optional[datetime] = Field(None, alias="expiryDate", description="Expiry date of the Future instrument.")
30
30
  settlement_currency: StrictStr = Field(...,alias="settlementCurrency", description="Settlement currency of the Future instrument.")
@@ -24,7 +24,7 @@ from lusid.models.instrument_event import InstrumentEvent
24
24
 
25
25
  class FutureMarkToMarketEvent(InstrumentEvent):
26
26
  """
27
- Definition of a Future Mark to Market Event. Represents 'Mark to Market' daily settlement of Future instruments. # noqa: E501
27
+ Definition of a Future Mark to Market Event. Represents 'Mark to Market' daily settlement of Future instruments. # noqa: E501
28
28
  """
29
29
  effective_date: Optional[datetime] = Field(None, alias="effectiveDate", description="The date of the mark to market event.")
30
30
  settlement_currency: StrictStr = Field(...,alias="settlementCurrency", description="The currency in which the Future contract is paid.")
@@ -23,15 +23,15 @@ from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictFloat, StrictI
23
23
 
24
24
  class FuturesContractDetails(BaseModel):
25
25
  """
26
- Most, if not all, information about contracts is standardized. See, e.g. https://www.cmegroup.com/ for common codes and similar data. This appears to be in common use by well known market information providers, e.g. Bloomberg and Refinitiv. # noqa: E501
26
+ Most, if not all, information about contracts is standardized. See, e.g. https://www.cmegroup.com/ for common codes and similar data. This appears to be in common use by well known market information providers, e.g. Bloomberg and Refinitiv. # noqa: E501
27
27
  """
28
28
  dom_ccy: StrictStr = Field(...,alias="domCcy", description="Currency in which the contract is paid.")
29
29
  fgn_ccy: Optional[StrictStr] = Field(None,alias="fgnCcy", description="Currency of the underlying, for use with FX Futures")
30
- asset_class: Optional[StrictStr] = Field(None,alias="assetClass", description="The asset class of the underlying. Optional and will default to Unknown if not set. Supported string (enumeration) values are: [InterestRates, FX, Inflation, Equities, Credit, Commodities, Money].")
30
+ asset_class: Optional[StrictStr] = Field(None,alias="assetClass", description="The asset class of the underlying. Optional and will default to Unknown if not set. Supported string (enumeration) values are: [InterestRates, FX, Inflation, Equities, Credit, Commodities, Money].")
31
31
  contract_code: StrictStr = Field(...,alias="contractCode", description="The contract code used by the exchange, e.g. “CL” for Crude Oil, “ES” for E-mini SP 500, “FGBL” for Bund Futures, etc.")
32
- contract_month: Optional[StrictStr] = Field(None,alias="contractMonth", description="Which month does the contract trade for. Supported string (enumeration) values are: [F, G, H, J, K, M, N, Q, U, V, X, Z].")
32
+ contract_month: Optional[StrictStr] = Field(None,alias="contractMonth", description="Which month does the contract trade for. Supported string (enumeration) values are: [F, G, H, J, K, M, N, Q, U, V, X, Z].")
33
33
  contract_size: Union[StrictFloat, StrictInt] = Field(..., alias="contractSize", description="Size of a single contract.")
34
- convention: Optional[StrictStr] = Field(None,alias="convention", description="If appropriate, the day count convention method used in pricing (rates futures). For more information on day counts, see [knowledge base article KA-01798](https://support.lusid.com/knowledgebase/article/KA-01798) Supported string (enumeration) values are: [Actual360, Act360, MoneyMarket, Actual365, Act365, Thirty360, ThirtyU360, Bond, ThirtyE360, EuroBond, ActualActual, ActAct, ActActIsda, ActActIsma, ActActIcma, OneOne, Act364, Act365F, Act365L, Act365_25, Act252, Bus252, NL360, NL365, ActActAFB, Act365Cad, ThirtyActIsda, Thirty365Isda, ThirtyEActIsda, ThirtyE360Isda, ThirtyE365Isda, ThirtyU360EOM].")
34
+ convention: Optional[StrictStr] = Field(None,alias="convention", description="If appropriate, the day count convention method used in pricing (rates futures). For more information on day counts, see [knowledge base article KA-01798](https://support.lusid.com/knowledgebase/article/KA-01798) Supported string (enumeration) values are: [Actual360, Act360, MoneyMarket, Actual365, Act365, Thirty360, ThirtyU360, Bond, ThirtyE360, EuroBond, ActualActual, ActAct, ActActIsda, ActActIsma, ActActIcma, OneOne, Act364, Act365F, Act365L, Act365_25, Act252, Bus252, NL360, NL365, ActActAFB, Act365Cad, ThirtyActIsda, Thirty365Isda, ThirtyEActIsda, ThirtyE360Isda, ThirtyE365Isda, ThirtyU360EOM].")
35
35
  country: Optional[StrictStr] = Field(None,alias="country", description="Country (code) for the exchange.")
36
36
  description: Optional[StrictStr] = Field(None,alias="description", description="Description of contract.")
37
37
  exchange_code: StrictStr = Field(...,alias="exchangeCode", description="Exchange code for contract. This can be any string to uniquely identify the exchange (e.g. Exchange Name, MIC, BBG code).")
@@ -39,7 +39,7 @@ class FuturesContractDetails(BaseModel):
39
39
  ticker_step: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="tickerStep", description="Minimal step size change in ticker.")
40
40
  unit_value: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="unitValue", description="The value in the currency of a 1 unit change in the contract price.")
41
41
  calendars: Optional[conlist(StrictStr)] = Field(None, description="Holiday calendars that apply to yield-to-price conversions (i.e. for BRL futures).")
42
- delivery_type: Optional[StrictStr] = Field(None,alias="deliveryType", description="Delivery type to be used on settling the contract. Optional: Defaults to DeliveryType.Physical if not provided. Supported string (enumeration) values are: [Cash, Physical].")
42
+ delivery_type: Optional[StrictStr] = Field(None,alias="deliveryType", description="Delivery type to be used on settling the contract. Optional: Defaults to DeliveryType.Physical if not provided. Supported string (enumeration) values are: [Cash, Physical].")
43
43
  __properties = ["domCcy", "fgnCcy", "assetClass", "contractCode", "contractMonth", "contractSize", "convention", "country", "description", "exchangeCode", "exchangeName", "tickerStep", "unitValue", "calendars", "deliveryType"]
44
44
 
45
45
  class Config:
@@ -23,7 +23,7 @@ from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictStr, constr
23
23
 
24
24
  class FxConventions(BaseModel):
25
25
  """
26
- The conventions for the calculation of FX fixings, where the fixing rate is expected to be the amount of DomCcy per unit of FgnCcy. As an example, assume the required fixing is the WM/R 4pm mid closing rate for the USD amount per 1 EUR. This is published with RIC EURUSDFIXM=WM, which would be the FixingReference, with FgnCcy EUR and DomCcy USD. # noqa: E501
26
+ The conventions for the calculation of FX fixings, where the fixing rate is expected to be the amount of DomCcy per unit of FgnCcy. As an example, assume the required fixing is the WM/R 4pm mid closing rate for the USD amount per 1 EUR. This is published with RIC EURUSDFIXM=WM, which would be the FixingReference, with FgnCcy EUR and DomCcy USD. # noqa: E501
27
27
  """
28
28
  fgn_ccy: StrictStr = Field(...,alias="fgnCcy", description="The foreign currency")
29
29
  dom_ccy: StrictStr = Field(...,alias="domCcy", description="The domestic currency")
@@ -24,7 +24,7 @@ from lusid.models.economic_dependency import EconomicDependency
24
24
 
25
25
  class FxDependency(EconomicDependency):
26
26
  """
27
- For indicating a dependency on an fx rate. For example domestic-foreign for USD-JPY means that 1 unit (dollar) of domestic currency will buy you \"X\" units of foreign (Yen) currency; currently somewhere around 100. This is equivalently denoted as USDJPY and USD/JPY On the assumption that you wish to convert an amount in the domestic currency to the foreign, you would want the (dom,fgn) dependency; domfgn currency pair. On the assumption that you wish to convert an amount in the foreign currency to the domestic, you would want the (fgn,dom) dependency; fgndom currency pair. NB: There alternate descriptions for currency pairs that seem to vary between different banks and sectors of the industry, e.g. base and contract In pricing we are taking the convention that we will convert from FGN to DOM by DIVIDING through by the DOMFGN spot rate. # noqa: E501
27
+ For indicating a dependency on an fx rate. For example domestic-foreign for USD-JPY means that 1 unit (dollar) of domestic currency will buy you \"X\" units of foreign (Yen) currency; currently somewhere around 100. This is equivalently denoted as USDJPY and USD/JPY On the assumption that you wish to convert an amount in the domestic currency to the foreign, you would want the (dom,fgn) dependency; domfgn currency pair. On the assumption that you wish to convert an amount in the foreign currency to the domestic, you would want the (fgn,dom) dependency; fgndom currency pair. NB: There alternate descriptions for currency pairs that seem to vary between different banks and sectors of the industry, e.g. base and contract In pricing we are taking the convention that we will convert from FGN to DOM by DIVIDING through by the DOMFGN spot rate. # noqa: E501
28
28
  """
29
29
  domestic_currency: StrictStr = Field(...,alias="domesticCurrency", description="DomesticCurrency is the first currency in a currency pair quote e.g. eur-gbp, eur is the domestic currency.")
30
30
  foreign_currency: StrictStr = Field(...,alias="foreignCurrency", description="ForeignCurrency is the second currency in a currency pair quote e.g. eur-gbp, gbp is the foreign currency.")