diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/pnl_explain.py | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/python/pnl_explain.py b/python/pnl_explain.py index 1a0c3187..0a3642ad 100644 --- a/python/pnl_explain.py +++ b/python/pnl_explain.py @@ -404,21 +404,11 @@ def get_pnl( pv2=False, ): if asset_class == "bond": - df_pnl = ( - df_instrument[["usd_market_value", "int_acc"]] - .groupby("date") - .sum() - .diff() - .sum(axis=1) - ) - df_pnl += ( - df_instrument[ - ["interest", "principal", "principal_payment", "accrued_payment"] - ] - .groupby("date") - .sum() - .sum(axis=1) - ) + g = df_instrument.groupby("date").sum() + df_pnl = g[["usd_market_value", "int_acc"]].diff().sum(axis=1) + df_pnl += g[ + ["interest", "principal", "principal_payment", "accrued_payment"] + ].sum(axis=1) return df_pnl elif asset_class == "tranche": if pv2: |
