aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/Dawn/models.py2
-rw-r--r--python/collateral_calc.py30
-rw-r--r--python/load_globeop_report.py2
3 files changed, 18 insertions, 16 deletions
diff --git a/python/Dawn/models.py b/python/Dawn/models.py
index 5ddf0d31..45ea6a21 100644
--- a/python/Dawn/models.py
+++ b/python/Dawn/models.py
@@ -59,7 +59,7 @@ FUTURE_STRAT = ENUM('M_STR_MAV', 'M_MTG_IO', 'M_STR_MEZZ', 'M_MTG_RW', 'SER_ITRX
CASH_STRAT = ENUM('M_CSH_CASH', 'MBSCDSCSH', 'SER_IGCVECSH', 'SER_ITRXCVCSH', 'CSOCDSCSH',
'IGCDSCSH', 'HYCDSCSH', 'CLOCDSCSH', 'IGTCDSCSH', 'MACCDSCSH', 'M_STR_MEZZ',
- 'IRDEVCSH', 'TCDSCSH',
+ 'IRDEVCSH', 'TCSH', 'COCSH',
name='cash_strat')
SPOT_STRAT = ENUM('M_STR_MAV', 'M_STR_MEZZ', 'SER_ITRXCURVE', 'M_CSH_CASH',
diff --git a/python/collateral_calc.py b/python/collateral_calc.py
index e86c5786..d2283910 100644
--- a/python/collateral_calc.py
+++ b/python/collateral_calc.py
@@ -170,17 +170,17 @@ def baml_collateral(d):
df = df.groupby(level=[0, 1]).first()
positions['dirtyupfront'] = df.loc[positions.index, 'DIRTYUPFRONT']
positions['amount'] = positions['notional'] * positions['dirtyupfront']
+ positions.folder = positions.folder.map({'HEDGE_MBS': 'MBSCDSCSH',
+ 'SER_ITRXCURVE': 'SER_ITRXCVCSH',
+ 'SER_IGCURVE': 'SER_IGCVECSH',
+ 'HYOPTDEL': 'COCSH',
+ 'IGOPTDEL': 'COCSH',
+ 'SER_IGINX': 'TCSH'})
df = (positions.
groupby('folder').
agg({'amount': 'sum', 'currency': 'first'}).
reset_index('folder'))
df.columns = ['Strategy', 'Amount', 'Currency']
- df.Strategy = df.Strategy.map({'HEDGE_MBS': 'MBSCDSCSH',
- 'SER_ITRXCURVE': 'SER_ITRXCVCSH',
- 'SER_IGCURVE': 'SER_IGCVECSH',
- 'HYOPTDEL': 'HYCDSCSH',
- 'IGOPTDEL': 'IGCDSCSH',
- 'SER_IGINX': 'TCDSCSH'})
df_margin = pd.read_csv(DAILY_DIR / "BAML_reports" /
f"OTC_Moneyline_{d:%Y%m%d}.CSV",
usecols=['Statement Date', 'AT CCY', 'Initial Margin Requirement'],
@@ -309,18 +309,18 @@ def get_dawn_trades():
df_caps = pd.read_sql_query("SELECT cpty_id, folder FROM capfloors "
"WHERE cpty_id IS NOT NULL", dawn_engine)
df = pd.concat([df_cds, df_swaptions, df_caps])
- df = df.replace({"folder": {'IGREC': 'IGCDSCSH',
- 'IGPAYER': 'IGCDSCSH',
- 'HYPAYER': 'HYCDSCSH',
- 'HYREC': 'HYCDSCSH',
+ df = df.replace({"folder": {'IGREC': 'COCSH',
+ 'IGPAYER': 'COCSH',
+ 'HYPAYER': 'COCSH',
+ 'HYREC': 'COCSH',
'STEEP': 'IRDEVCSH',
'FLAT': 'IRDEVCSH',
'MBSCDS': 'MBSCDSCSH',
- 'IGMEZ': 'TCDSCSH',
- 'IGSNR': 'TCDSCSH',
- 'IGEQY': 'TCDSCSH',
- 'HYMEZ': 'TCDSCSH',
- 'BSPK': 'TCDSCSH'}})
+ 'IGMEZ': 'TCSH',
+ 'IGSNR': 'TCSH',
+ 'IGEQY': 'TCSH',
+ 'HYMEZ': 'TCSH',
+ 'BSPK': 'TCSH'}})
return df
def gs_collateral(d, dawn_trades):
diff --git a/python/load_globeop_report.py b/python/load_globeop_report.py
index 52a86cbc..0ce09187 100644
--- a/python/load_globeop_report.py
+++ b/python/load_globeop_report.py
@@ -34,6 +34,7 @@ def read_valuation_report(f):
df = df.rename(columns={'CounterPartyCode': 'counterparty'})
if "Strat" in df:
df.Strat = df.Strat.str.replace("^(SERCGMAST__){1,2}(M_|SER_)?", "", 1)
+ df = df.replace({"Strat": {"TCDSCSH": "TCSH"}})
if "Port" in df:
df.Port = df.Port.str.replace("^(SERCGMAST__){1,2}(SERG__|SERG_)?", "", 1)
df.columns = df.columns.str.lower()
@@ -50,6 +51,7 @@ def valuation_reports():
def read_pnl_report(f):
df = pd.read_csv(f)
df.Strat = df.Strat.str.replace("^(SERCGMAST__){1,2}(M_|SER_)?", "", 1)
+ df = df.replace({"Strat": {"TCDSCSH": "TCSH"}})
df.Port = df.Port.str.replace("^(SERCGMAST__){1,2}(SERG__|SERG_)?", "", 1)
df['LongShortIndicator'] = df['LongShortIndicator'].str.strip()
df.columns = df.columns.str.lower().str.replace(" ", "")