aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/reallocate_iam.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/python/reallocate_iam.py b/python/reallocate_iam.py
index 159e6e69..b0801393 100644
--- a/python/reallocate_iam.py
+++ b/python/reallocate_iam.py
@@ -5,7 +5,7 @@ from dataclasses import field, dataclass
from serenitas.ops.funds import Service
from serenitas.ops.trade_dataclasses import Deal, Fund
from serenitas.ops.headers import DealType
-from serenitas.analytics.dates import prev_business_day
+from serenitas.analytics.dates import prev_business_day, next_business_day
from serenitas.utils.db import dbconn
_bowdst_iam_cp = {
@@ -28,6 +28,7 @@ _serenitas_iam_cp = {
"JPM": "JPCBNY",
"WELLS": "WELFEI",
"CITI": "CITINY",
+ "BARCLAYS": "BARCNY",
}
@@ -150,12 +151,12 @@ def generate_new_iam_offset_trades(fund: str, cob: datetime.date, conn) -> "Iter
yield IAMDeal.from_dict(**trade_data)
-def update_matured_iam_trades(fund: str, cob: datetime.date, conn) -> "Iterable":
+def update_matured_iam_trades(fund: str, prev_date: datetime.date, conn) -> "Iterable":
"""Sets previous days as matured"""
with conn.cursor() as cursor:
cursor.execute(
"UPDATE iams SET maturity=%s WHERE maturity is NULL AND trade_date<=%s AND fund=%s RETURNING *",
- (cob, prev_business_day(cob), fund),
+ (next_business_day(prev_date), prev_date, fund),
)
for row in cursor:
trade_data = row._asdict() | {}
@@ -175,7 +176,7 @@ def build_iam(fund: str, cob: datetime.date, conn, upload: bool):
new_iam_offset.stage()
for iam in IAMDeal.commit(returning=True):
service.push_trade(iam, "NEW")
- for update_iam in update_matured_iam_trades(fund, cob, conn):
+ for update_iam in update_matured_iam_trades(fund, prev_business_day(cob), conn):
service.push_trade(update_iam, "UPDATE")
buf, dest = service.build_buffer(trade_type="iam")
if upload: