aboutsummaryrefslogtreecommitdiffstats
path: root/python/collateral/baml_fcm.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/collateral/baml_fcm.py')
-rw-r--r--python/collateral/baml_fcm.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/python/collateral/baml_fcm.py b/python/collateral/baml_fcm.py
index f89bbc8f..b1459471 100644
--- a/python/collateral/baml_fcm.py
+++ b/python/collateral/baml_fcm.py
@@ -96,15 +96,18 @@ def collateral(d, positions, *, engine, fund="Serenitas", positions_irs, **kwarg
"EFFDATE",
"MATDATE",
"LEG1ROLLCONV",
+ "FLOATINGINDEX",
],
parse_dates=["MATDATE", "EFFDATE"],
)
df_rates.loc[df_rates["DIRECTION"] == "Rec", "NOTIONAL"] *= -1
df_rates["FIXEDRATE"] = df_rates["FIXEDRATE"].round(4)
- df_rates = df_rates.groupby(by=["MATDATE", "FIXEDRATE", "LEG1ROLLCONV"]).agg(
- {"NOTIONAL": "sum", "NPV": "sum"}
- )
- df_rates.index.names = ["maturity_date", "fixed_rate", "roll_day"]
+ _rate_index_mapping = {"USD-SOFR-COMPOUND": "SOFRRATE"}
+ df_rates["FLOATINGINDEX"] = df_rates["FLOATINGINDEX"].replace(_rate_index_mapping)
+ df_rates = df_rates.groupby(
+ by=["MATDATE", "FIXEDRATE", "LEG1ROLLCONV", "FLOATINGINDEX"]
+ ).agg({"NOTIONAL": "sum", "NPV": "sum"})
+ df_rates.index.names = ["maturity_date", "fixed_rate", "roll_day", "float_index"]
compare_notionals_rates(df_rates, positions_irs, "BAML")
positions_irs["Amount"] = df_rates.reindex(positions_irs.index)["NPV"]
positions_irs.folder.replace(STRATEGY_CASH_MAPPING, inplace=True)