diff options
| -rw-r--r-- | python/ops/__main__.py | 51 | ||||
| -rw-r--r-- | python/ops/process_queue.py | 52 |
2 files changed, 52 insertions, 51 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) diff --git a/python/ops/process_queue.py b/python/ops/process_queue.py index 8d88bda3..0dbb9e8b 100644 --- a/python/ops/process_queue.py +++ b/python/ops/process_queue.py @@ -1,4 +1,3 @@ -import argparse import blpapi import logging import psycopg @@ -16,9 +15,8 @@ except KeyError: from collections import defaultdict from pickle import dumps, loads -from serenitas.analytics.bbg_helpers import init_bbg_session, retrieve_data +from serenitas.analytics.bbg_helpers import retrieve_data -from serenitas.utils import get_redis_queue from tabulate import tabulate from .funds import Fund from .trade_dataclasses import DealKind @@ -395,51 +393,3 @@ def print_trade(trade): d = trade.copy() d["buysell"] = "Buy" if d["buysell"] else "Sell" return tabulate((k, v) for k, v in d.items()) - - -if __name__ == "__main__": - import os - - os.environ["SERENITAS_APP_NAME"] = "process_queue" - from functools import partial - from serenitas.utils.pool import dawn_pool - - 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) |
