1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
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)
|