diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/bbg_cds_quotes.py | 35 |
1 files changed, 24 insertions, 11 deletions
diff --git a/python/bbg_cds_quotes.py b/python/bbg_cds_quotes.py index d3df764d..0354475b 100644 --- a/python/bbg_cds_quotes.py +++ b/python/bbg_cds_quotes.py @@ -7,34 +7,47 @@ from markit.import_quotes import get_index_list, get_basketids from utils import SerenitasFileHandler from utils.db import dbconn -logger = logging.getLogger('bbg_quotes') +logger = logging.getLogger("bbg_quotes") fh = SerenitasFileHandler("bbg_quotes.log") logger.addHandler(fh) logger.setLevel(logging.INFO) workdate = datetime.date.today() -serenitasdb = dbconn('serenitasdb') +serenitasdb = dbconn("serenitasdb") basket_ids = get_basketids(serenitasdb, workdate) bbg_tickers = set(get_bbg_tickers(serenitasdb, basket_ids, workdate)) logger.info("got bbg tickers") -securities = [f'{ticker} Curncy' for ticker in bbg_tickers] -fields = ['UPFRONT_RUNNING_SPREAD', 'UPFRONT_BID', 'UPFRONT_ASK', 'CDS_RECOVERY_RT'] +securities = [f"{ticker} Curncy" for ticker in bbg_tickers] +fields = ["UPFRONT_RUNNING_SPREAD", "UPFRONT_BID", "UPFRONT_ASK", "CDS_RECOVERY_RT"] r = {} with init_bbg_session(BBG_IP) as session: - for pcs in ['CBGN', 'CMAN']: #, 'CMAN', 'MSG1']: + for pcs in ["CBGN", "CMAN"]: # , 'CMAN', 'MSG1']: logger.info(f"Retrieving quotes for {pcs}") - r[pcs] = retrieve_data(session, securities, fields, overrides={'PRICING_SOURCE': pcs}) + r[pcs] = retrieve_data( + session, securities, fields, overrides={"PRICING_SOURCE": pcs} + ) sql_str = f"INSERT INTO cds_quotes VALUES({','.join(['%s'] * 8)})" + def build_tuple(k, v, workdate, source): - return (workdate, k.split()[0], v.get('UPFRONT_BID'), - v.get('UPFRONT_ASK'), v.get('UPFRONT_RUNNING_SPREAD'), - v.get('UPFRONT_RUNNING_SPREAD'), source, v.get('CDS_RECOVERY_RT')) + return ( + workdate, + k.split()[0], + v.get("UPFRONT_BID"), + v.get("UPFRONT_ASK"), + v.get("UPFRONT_RUNNING_SPREAD"), + v.get("UPFRONT_RUNNING_SPREAD"), + source, + v.get("CDS_RECOVERY_RT"), + ) + -for pcs in ['CBGN', 'CMAN']: +for pcs in ["CBGN", "CMAN"]: logger.info(f"Inserting quotes for {pcs}") with serenitasdb.cursor() as c: - c.executemany(sql_str, [build_tuple(k, v, workdate, pcs) for k, v in r[pcs].items()]) + c.executemany( + sql_str, [build_tuple(k, v, workdate, pcs) for k, v in r[pcs].items()] + ) serenitasdb.commit() |
