aboutsummaryrefslogtreecommitdiffstats
path: root/python/pnl_explain.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/pnl_explain.py')
-rw-r--r--python/pnl_explain.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/python/pnl_explain.py b/python/pnl_explain.py
index 25e38127..91e4da49 100644
--- a/python/pnl_explain.py
+++ b/python/pnl_explain.py
@@ -328,6 +328,11 @@ def get_bond_pv(
cashflows = pd.read_sql_query(
"SELECT identifier, prev_cpn_date AS date, interest, principal "
"FROM factors_history fh "
+<<<<<<< HEAD
+=======
+ "left join securities b "
+ "on fh.identifier = b.figi "
+>>>>>>> 5984d5b5 (separate out join in get_bond_pv and turn index of get_pnl for bond into datetime)
"WHERE last_pay_date BETWEEN %s AND %s",
conn,
params=(start_date, end_date),
@@ -340,11 +345,18 @@ def get_bond_pv(
"principal_payment END) as principal_payment, "
"sum(CASE WHEN buysell THEN -accrued_payment ELSE "
"accrued_payment END) as accrued_payment, "
+<<<<<<< HEAD
"securities.asset_class "
"FROM bond_trades "
"LEFT JOIN securities USING (identifier) "
"WHERE trade_date BETWEEN %s AND %s AND fund=%s "
"GROUP BY date, figi, securities.asset_class",
+=======
+ "asset_class "
+ "FROM bond_trades WHERE trade_date BETWEEN %s AND %s "
+ "AND fund=%s "
+ "group by date, identifier, asset_class",
+>>>>>>> 5984d5b5 (separate out join in get_bond_pv and turn index of get_pnl for bond into datetime)
conn,
params=(start_date, end_date, fund),
parse_dates=["date"],
@@ -353,8 +365,12 @@ def get_bond_pv(
if asset_class is not None:
trades = trades[trades.asset_class == asset_class]
trades.drop("asset_class", axis=1, inplace=True)
+<<<<<<< HEAD
+ df = positions.join([cashflows, trades])
+=======
positions = positions.join(cashflows)
df = positions.join(trades)
+>>>>>>> 5984d5b5 (separate out join in get_bond_pv and turn index of get_pnl for bond into datetime)
df.interest *= df.notional / 100
df.principal *= df.notional / 100
return df