|
| 1 | +# pylint: disable=unused-import,missing-function-docstring,invalid-name |
| 2 | + |
| 3 | +# Works with CDM 5.x.x |
| 4 | + |
| 5 | +from datetime import date |
| 6 | +from cdm.event.common.Trade import Trade |
| 7 | +from cdm.event.common.TradeIdentifier import TradeIdentifier |
| 8 | +from cdm.product.template.TradableProduct import TradableProduct |
| 9 | +from cdm.product.template.Product import Product |
| 10 | +from cdm.product.template.TradeLot import TradeLot |
| 11 | +from cdm.base.staticdata.party.Counterparty import Counterparty |
| 12 | +from cdm.product.common.settlement.PriceQuantity import PriceQuantity |
| 13 | +from cdm.base.staticdata.party.CounterpartyRoleEnum import CounterpartyRoleEnum |
| 14 | +from cdm.base.staticdata.party.Party import Party |
| 15 | +from cdm.base.staticdata.party.PartyIdentifier import PartyIdentifier |
| 16 | +from cdm.base.staticdata.identifier.AssignedIdentifier import AssignedIdentifier |
| 17 | + |
| 18 | +def test_trade(): |
| 19 | + product = Product() |
| 20 | + price_quantity = PriceQuantity() |
| 21 | + trade_lot = TradeLot(priceQuantity=[price_quantity]) |
| 22 | + party_reference = Party(partyId=[PartyIdentifier(identifier="test")]) |
| 23 | + counterparty = [Counterparty(role=CounterpartyRoleEnum.PARTY_1, partyReference=party_reference), |
| 24 | + Counterparty(role=CounterpartyRoleEnum.PARTY_2, partyReference=party_reference)] |
| 25 | + tradable_product = TradableProduct(product=product, tradeLot=[trade_lot], counterparty=counterparty) |
| 26 | + trade_identifier=[TradeIdentifier(assignedIdentifier=[AssignedIdentifier(identifier="Acme")])] |
| 27 | + |
| 28 | + t = Trade( |
| 29 | + tradeDate=date(2023, 1, 1), |
| 30 | + tradableProduct=tradable_product, |
| 31 | + tradeIdentifier=trade_identifier |
| 32 | + ) |
| 33 | + print(t.model_dump()) |
| 34 | + print('Done!') |
| 35 | + |
| 36 | + |
| 37 | +if __name__ == '__main__': |
| 38 | + test_trade() |
| 39 | + |
| 40 | +# EOF |
0 commit comments