diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/notify_bowdst.py | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/python/notify_bowdst.py b/python/notify_bowdst.py index 25b22ac0..66ce9911 100644 --- a/python/notify_bowdst.py +++ b/python/notify_bowdst.py @@ -6,11 +6,18 @@ from io import StringIO from exchangelib import FileAttachment from serenitas.utils.exchange import ExchangeMessage +from serenitas.utils import SerenitasFileHandler +import logging + +fh = SerenitasFileHandler("mismatched_trades.log") +logger = logging.getLogger("notify_bowdst") +logger.addHandler(fh) +logger.setLevel(logging.WARNING) + conn = dbconn("dawndb") cob = (datetime.date.today() - BDay(1)).date() dates = [str((cob - datetime.timedelta(days=days))) for days in range(60)] -# dates = [str((cob - BDay(days)).date()) for days in range(60)] -df_rates = pd.concat( +df = pd.concat( { date: pd.read_sql_query( f"""SELECT *, notional * factor as db_notional FROM list_cds_marks( %(date)s , NULL, 'BOWDST');""", @@ -19,8 +26,7 @@ df_rates = pd.concat( ) for date in dates } -) -df = df_rates.droplevel(level=1) +).droplevel(level=1) data = df[df.index == str(cob)][ ["tenor", "security_desc", "security_id", "globeop_notional", "db_notional"] ] @@ -49,7 +55,9 @@ for row in inaccurate_balances.itertuples(): params={"date": date, "security_desc": security_desc}, ) if len(csv[pd.to_datetime(csv["trade_date"]) >= (cob - BDay(1))].index) != 0: - print(len(csv[pd.to_datetime(csv["trade_date"]) >= (cob - BDay(1))].index)) + logger.error( + f"Mismatch balance {row.security_desc} {row.globeop_notional} :{row.db_notional} Trades Recently" + ) continue csv.to_csv(buf) attachments = [ |
