diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/collateral_calc.py | 34 |
1 files changed, 22 insertions, 12 deletions
diff --git a/python/collateral_calc.py b/python/collateral_calc.py index 7d314e39..08e34047 100644 --- a/python/collateral_calc.py +++ b/python/collateral_calc.py @@ -72,7 +72,10 @@ def download_baml_files(d=None): DATA_DIR = DAILY_DIR / "BAML_reports" sftp = get_baml_sftp_client() for f in sftp.listdir('outgoing'): - sftp.get(f"outgoing/{f}", localpath=DATA_DIR / f) + local_file = DATA_DIR / f + if not local_file.exists(): + sftp.get(f"outgoing/{f}", localpath=DATA_DIR / f) + def download_wells_files(d=None): DATA_DIR = DAILY_DIR / "Wells_reports" @@ -456,7 +459,7 @@ def citi_collateral(d, dawn_trades): return df -def send_email(dfs): +def send_email(d, dfs): pd.set_option('display.float_format', '{:.2f}'.format) content = HTMLBody('<html><body>' '<h3>At Morgan Stanley:</h3>' @@ -471,12 +474,19 @@ def send_email(dfs): '{}' '</body><html>'.format(*(df.to_html(index=False) for df in dfs))) em = ExchangeMessage() - em.send_email("IAM booking", content, + em.send_email(f"IAM booking {d:%Y-%m-%d}", content, ['serenitas.otc@sscinc.com'], ['nyops@lmcg.com']) if __name__ == "__main__": + import argparse + from dates import bus_day + parser = argparse.ArgumentParser() + parser.add_argument('workdate', nargs='?', + type=lambda s: pd.datetime.strptime(s, "%Y-%m-%d").date(), + default=pd.Timestamp.today().normalize()) + args = parser.parse_args() download_ms_emails() download_gs_emails() download_citi_emails() @@ -484,20 +494,20 @@ if __name__ == "__main__": download_baml_files() download_wells_files() dawn_trades = get_dawn_trades() - d = (pd.Timestamp.today() - BDay()).normalize() + df_citi = citi_collateral(args.workdate, dawn_trades) + args.workdate = args.workdate - bus_day try: - df_ms = ms_collateral(d, dawn_trades) + df_ms = ms_collateral(args.workdate, dawn_trades) except FileNotFoundError as e: logging.info(e) - df_ms = ms_collateral(d - BDay(), dawn_trades) + df_ms = ms_collateral(args.workdate-bus_day, dawn_trades) #df_sg = sg_collateral(d) - df_baml = baml_collateral(d) + df_baml = baml_collateral(args.workdate) try: - df_gs = gs_collateral(d, dawn_trades) + df_gs = gs_collateral(args.workdate, dawn_trades) except FileNotFoundError as e: logging.info(e) - df_gs = gs_collateral(d - BDay(), dawn_trades) - df_wells = wells_collateral(d) + df_gs = gs_collateral(args.workdate-busday, dawn_trades) + df_wells = wells_collateral(args.workdate) d = pd.Timestamp.today().normalize() - df_citi = citi_collateral(d, dawn_trades) - send_email([df_ms, df_baml, df_gs, df_citi, df_wells]) + send_email(args.workdate, [df_ms, df_baml, df_gs, df_citi, df_wells]) |
