diff options
Diffstat (limited to 'python/ops/__main__.py')
| -rw-r--r-- | python/ops/__main__.py | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/python/ops/__main__.py b/python/ops/__main__.py new file mode 100644 index 00000000..34445466 --- /dev/null +++ b/python/ops/__main__.py @@ -0,0 +1,51 @@ +import argparse +import os + +from functools import partial +from serenitas.analytics.bbg_helpers import init_bbg_session +from serenitas.utils.pool import dawn_pool +from serenitas.utils import get_redis_queue + +from .process_queue import process_indicative, process_upload, terminate_list + +os.environ["SERENITAS_APP_NAME"] = "process_queue" + +parser = argparse.ArgumentParser() +parser.add_argument( + "-n", "--no-upload", action="store_true", help="do not upload to Globeop" +) +args = parser.parse_args() +r = get_redis_queue() +with dawn_pool.connection() as conn, init_bbg_session() as session: + for trade_type in [ + "cds", + "swaption", + "repo", + "future", + "wire", + "spot", + "fx_swap", + "capfloor", + ]: + p_list = partial( + process_indicative, + trade_type=trade_type, + upload=not args.no_upload, + session=session, + conn=conn, + ) + r.transaction(p_list, trade_type) + p_upload = partial( + process_upload, + trade_type=trade_type, + upload=not args.no_upload, + ) + r.transaction(p_upload, trade_type) + + for trade_type in ("cds", "swaption", "capfloor"): + for fund in ("SERCGMAST", "BOWDST", "BRINKER"): + key = f"{trade_type}_{fund}_termination" + t_list = partial( + terminate_list, key=key, upload=not args.no_upload, conn=conn + ) + r.transaction(t_list, key) |
