diff options
Diffstat (limited to 'python/citco_ops/bowdst.py')
| -rw-r--r-- | python/citco_ops/bowdst.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/python/citco_ops/bowdst.py b/python/citco_ops/bowdst.py index 527a35a8..15759895 100644 --- a/python/citco_ops/bowdst.py +++ b/python/citco_ops/bowdst.py @@ -3,6 +3,8 @@ import datetime from serenitas.ops.trade_dataclasses import Deal, Ccy from typing import ClassVar +_nt_to_currency = {"EURO - EUR": "EUR", "U.S. DOLLARS - USD": "USD"} + @dataclass class Wire(Deal, table_name="custodian_wires", deal_type="custodian_wires"): @@ -43,3 +45,18 @@ class BowdstWire(Wire, fund="BOWDST"): else line["Transaction Description 2"], unique_ref=line["Reference Number"], ) + + +class IsoselWire(Wire, fund="ISOSEL"): + @classmethod + def from_passport_line(cls, line: dict): + return cls( + date=line["Through date"], + entry_date=line["D-GL-POST"], + value_date=line["D-TRAN-EFF"], + pay_date=line["D-TRAN-EFF"], + currency=_nt_to_currency[line["N-GL-AC30"]], + amount=line["Net amount - local"], + wire_details=line["narrative"], + unique_ref=line["C-EXTL-SYS-TRN-DSC-3"], + ) |
