aboutsummaryrefslogtreecommitdiffstats
path: root/python/trade_dataclasses.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/trade_dataclasses.py')
-rw-r--r--python/trade_dataclasses.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/python/trade_dataclasses.py b/python/trade_dataclasses.py
index 99838ed0..7f3b1018 100644
--- a/python/trade_dataclasses.py
+++ b/python/trade_dataclasses.py
@@ -1336,7 +1336,7 @@ class SwaptionProduct(
obj["Active"] = "Y"
obj["Birth_date"] = obj["Birth_date"].strftime("%Y%m%d")
obj["Death_date"] = obj["Death_date"].strftime("%Y%m%d")
- obj["ExpirationDate"] = obj["Expiration Date"].strftime("%Y%m%d")
+ obj["ExpirationDate"] = obj["ExpirationDate"].strftime("%Y%m%d")
obj["Put/CallFlag"] = "C" if obj["callput"] else "P"
obj["OptionType"] = "Vanilla European"
return obj
@@ -1373,6 +1373,9 @@ class IRSProduct(
float_fixing_freq: str = field(default="Daily")
pay_interest_calc_method: str = field(default="Compound")
committed: bool = field(default=False)
+ security_desc: str = field(
+ init=False, metadata={"insert": False, "citco": "Sec_Desc"}, default=None
+ )
id: int = field(default=None, metadata={"insert": False})
dealid: str = field(
default=None, metadata={"insert": False, "citco": "UniqueIdentifier"}
@@ -1392,6 +1395,7 @@ class IRSProduct(
)
if results := c.fetchone():
(self.id, self.dealid, self.committed) = results
+ self.security_desc = f"SWAP IRS {self.float_index}-{self.fixed_rate}"
def __post_init__(self):
self.get_dealid()
@@ -1440,7 +1444,7 @@ class TRSProduct(
):
birth_date: datetime.date = field(metadata={"citco": "Birth_date"})
death_date: datetime.date = field(metadata={"citco": "Death_date"})
- underlying_security: str = field(metadata={"citco": "Underlying Security Id"})
+ underlying_security: str = field(metadata={"citco": "UnderlyingSecurityId"})
active: str = field(default=True, metadata={"citco": "Active"})
funding_daycount: str = field(default="ACT/360")
funding_freq: str = field(default="Quarterly")
@@ -1455,9 +1459,12 @@ class TRSProduct(
committed: bool = field(default=False)
instrument_type: str = field(default="TRS", metadata={"citco": "InstrumentType"})
funding_index: str = field(default="SOFRRATE", metadata={})
+ security_desc: str = field(
+ init=False, metadata={"insert": False, "citco": "Sec_Desc"}, default=None
+ )
id: int = field(default=None, metadata={"insert": False})
dealid: str = field(
- default=None, metadata={"insert": False, "citco": "Unique Identifier"}
+ default=None, metadata={"insert": False, "citco": "UniqueIdentifier"}
)
def get_dealid(self):
@@ -1474,6 +1481,8 @@ class TRSProduct(
)
if results := c.fetchone():
(self.id, self.dealid, self.committed) = results
+ _citco_trs = {"4J623JAA8": "IBOXHY_TRS"}
+ self.security_desc = _citco_trs[self.underlying_security]
def __post_init__(self):
self.get_dealid()