diff options
Diffstat (limited to 'python/ctm_allocation.py')
| -rw-r--r-- | python/ctm_allocation.py | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/python/ctm_allocation.py b/python/ctm_allocation.py index 9e4eb419..7b612244 100644 --- a/python/ctm_allocation.py +++ b/python/ctm_allocation.py @@ -1,11 +1,5 @@ -from serenitas.utils.db import dawn_engine, dbconn -from serenitas.utils.exchange import ExchangeMessage, FileAttachment -from exchangelib import HTMLBody -import pandas as pd -from io import StringIO -import datetime import argparse -from pandas.tseries.offsets import BDay +import datetime from serenitas.ops.trade_dataclasses import BondDeal from serenitas.ops.funds import CTM @@ -17,15 +11,14 @@ if __name__ == "__main__": default=datetime.date.today(), ) args = parser.parse_args() - dawndb = dbconn("dawndb") - - df = pd.read_sql_query( - "SELECT ba.id, allocated, emailed FROM bonds LEFT JOIN bond_allocation ba ON bonds.id=ba.tradeid LEFT JOIN counterparties c ON cp_code=c.code WHERE trade_date=%s AND ctm_code IS NOT null;", - con=dawn_engine, - params=(args.trade_date,), - ) - with dawndb.cursor() as d: - for row in df.itertuples(): - CTM.stage(BondDeal.from_allocationid(row.id)) + with BondDeal._conn.cursor() as c: + c.execute( + "SELECT id FROM bonds LEFT JOIN counterparties ON cp_code=code " + "WHERE trade_date=%s AND ctm_code IS NOT NULL", + (args.trade_date,), + ) + for (tid,) in c: + trade = BondDeal.from_tradeid(tid) + CTM.stage(trade) buf, dest = CTM.build_buffer() CTM.upload(buf) |
