aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/risk/bonds.py14
1 files changed, 7 insertions, 7 deletions
diff --git a/python/risk/bonds.py b/python/risk/bonds.py
index 95dc63fe..697e4d72 100644
--- a/python/risk/bonds.py
+++ b/python/risk/bonds.py
@@ -84,8 +84,8 @@ def get_df(date, engine, *, zero_factor=False):
return df_prices.join(df_percentiles, how="left")
-def subprime_risk(pos_date, conn, engine, model_date=None, fund="SERCGMAST"):
- analytics.init_ontr(pos_date)
+def subprime_risk(date, conn, engine, model_date=None, fund="SERCGMAST"):
+ analytics.init_ontr(date)
if model_date is None:
sql_string = (
"SELECT distinct timestamp::date FROM priced "
@@ -93,12 +93,12 @@ def subprime_risk(pos_date, conn, engine, model_date=None, fund="SERCGMAST"):
"AND date(timestamp) BETWEEN %s AND %s ORDER BY timestamp DESC"
)
with conn.cursor() as c:
- c.execute(sql_string, (pos_date - datetime.timedelta(days=15), pos_date))
+ c.execute(sql_string, (date - datetime.timedelta(days=15), date))
(model_date,) = c.fetchone()
df = get_df(model_date, engine, zero_factor=False)
df_zero = get_df(model_date, engine, zero_factor=True)
df.loc[df_zero.index] = df_zero
- df_pos = get_portfolio(pos_date, conn, AssetClass.Subprime, fund)
+ df_pos = get_portfolio(date, conn, AssetClass.Subprime, fund).set_index("cusip")
df_pv = df.xs("pv", axis=1, level=0)
df_pv.columns = ["pv1", "pv2", "pv3"]
df_pv_perct = df.xs("PV", axis=1, level=0)
@@ -137,7 +137,7 @@ def subprime_risk(pos_date, conn, engine, model_date=None, fund="SERCGMAST"):
)
df_calc = df_pos.join(df_risk)
- yc = YC(evaluation_date=pos_date)
+ yc = YC(evaluation_date=date)
df_calc = df_calc.assign(
bond_yield=df_calc.modDur.apply(
@@ -155,7 +155,7 @@ def subprime_risk(pos_date, conn, engine, model_date=None, fund="SERCGMAST"):
* df_calc.local_market_value
/ df_calc.pv3
),
- date=pd.Timestamp(pos_date),
+ date=pd.Timestamp(date),
)
df_calc = df_calc[(df_calc.usd_market_value != 0)]
df_calc.bond_yield += (
@@ -232,7 +232,7 @@ def crt_risk(date, dawn_conn, crt_engine, fund="SERCGMAST"):
hy_ontr = CreditIndex("HY", on_the_run("HY", date), "5yr", date)
hy_ontr.mark()
yc = YC(evaluation_date=date)
- df = get_portfolio(date, dawn_conn, AssetClass.CRT, fund)
+ df = get_portfolio(date, dawn_conn, AssetClass.CRT, fund).set_index("cusip")
scen = {
datetime.date(2019, 5, 31): "base",
datetime.date(2020, 1, 29): "hpi3_ir3",