aboutsummaryrefslogtreecommitdiffstats
path: root/python/risk/bonds.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/risk/bonds.py')
-rw-r--r--python/risk/bonds.py17
1 files changed, 6 insertions, 11 deletions
diff --git a/python/risk/bonds.py b/python/risk/bonds.py
index 8b5d2801..da86cfa6 100644
--- a/python/risk/bonds.py
+++ b/python/risk/bonds.py
@@ -221,16 +221,11 @@ def get_portfolio(date, conn, asset_class: AssetClass, fund="SERCGMAST"):
conn,
params=(date, asset_class.name, fund),
)
- if asset_class is AssetClass.CLO:
- with conn.cursor() as c:
- c.execute(
- "SELECT cusip, identifier FROM securities WHERE asset_class = 'CLO'"
- )
- cusip_map = {identifier: cusip for cusip, identifier in c.fetchall()}
- df["cusip"] = df["identifier"].replace(cusip_map)
- else: # only CLOs used ISIN for now
- df["cusip"] = df.identifier.str.slice(0, 9)
- return df.set_index("cusip")
+ with conn.cursor() as c:
+ c.execute("SELECT identifier, figi FROM securities WHERE asset_class = 'CLO'")
+ figi_map = {identifier: figi for identifier, figi in c.fetchall()}
+ df["figi"] = df["identifier"].replace(figi_map)
+ return df.set_index("figi")
def crt_risk(date, dawn_conn, crt_engine, fund="SERCGMAST"):
@@ -302,7 +297,7 @@ def clo_risk(date, dawn_conn, et_conn, fund="SERCGMAST"):
if df.empty:
return None
placeholders = ",".join(["%s"] * df.shape[0])
- sql_string = f"SELECT * FROM historical_cusip_risk(%s, {placeholders})"
+ sql_string = f"SELECT * FROM historical_tranche_risk(%s, {placeholders})"
model = pd.read_sql_query(
sql_string, et_conn, parse_dates=["pricingdate"], params=(date, *df.index)
)