aboutsummaryrefslogtreecommitdiffstats
path: root/python/position.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/position.py')
-rw-r--r--python/position.py40
1 files changed, 18 insertions, 22 deletions
diff --git a/python/position.py b/python/position.py
index 6c071097..f3d79909 100644
--- a/python/position.py
+++ b/python/position.py
@@ -1,4 +1,4 @@
-from serenitas.analytics.bbg_helpers import init_bbg_session, retrieve_data
+from serenitas.analytics.bbg_helpers import bbg_retry, retrieve_data
from itertools import product
import datetime
import numpy as np
@@ -377,27 +377,23 @@ if __name__ == "__main__":
dawn_conn = dawn_engine.raw_connection()
serenitas_conn = serenitas_pool.getconn()
- retry = 0
- max_tries = 2
- while retry < max_tries:
- try:
- with init_bbg_session() as session:
- update_securities(dawn_engine, session, args.workdate)
- populate_cashflow_history(
- dawn_engine,
- session,
- args.workdate,
- ("SERCGMAST", "BRINKER", "BOWDST"),
- )
- update_fx(dawn_conn, session, ["EURUSD", "CADUSD"])
- update_swap_rates(serenitas_conn, session)
- update_cash_rates(serenitas_conn, session)
- for vol_type in ["N", "V"]:
- update_swaption_vol(serenitas_conn, session, vol_type=vol_type)
- except RuntimeError:
- retry += 1
- else:
- break
+
+ @bbg_retry(2)
+ def bbg_call(session, dawn_engine, dawn_conn, serenitas_conn, workdate):
+ update_securities(dawn_engine, session, args.workdate)
+ populate_cashflow_history(
+ dawn_engine,
+ session,
+ args.workdate,
+ ("SERCGMAST", "BRINKER", "BOWDST"),
+ )
+ update_fx(dawn_conn, session, ["EURUSD", "CADUSD"])
+ update_swap_rates(serenitas_conn, session)
+ update_cash_rates(serenitas_conn, session)
+ for vol_type in ["N", "V"]:
+ update_swaption_vol(serenitas_conn, session, vol_type=vol_type)
+
+ bbg_call(dawn_engine, dawn_conn, serenitas_conn, args.workdate)
serenitas_pool.putconn(serenitas_conn)
# with init_bbg_session(BBG_IP) as session:
# init_fx(session, engine, pd.datetime(2013, 1, 1))