diff options
Diffstat (limited to 'python/risk/tranches.py')
| -rw-r--r-- | python/risk/tranches.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/python/risk/tranches.py b/python/risk/tranches.py index 5f1532cc..22291170 100644 --- a/python/risk/tranches.py +++ b/python/risk/tranches.py @@ -15,7 +15,7 @@ def get_tranche_portfolio(date, conn, by_strat=False, fund="SERCGMAST"): params = (date, date, fund) with conn.cursor() as c: c.execute(sql_string, params) - trade_ids = list(c) + trade_ids = [tuple(e) for e in c] if by_strat: portf = Portfolio([DualCorrTranche(redcode=t.security_id, maturity=t.maturity, @@ -35,7 +35,7 @@ def get_tranche_portfolio(date, conn, by_strat=False, fund="SERCGMAST"): portf.mark() return portf -def insert_tranche_risk(portf, conn): +def insert_tranche_portfolio(portf, conn): cols = ["clean_nav", "accrued", "theta", "duration", "delta", "upfront", "running", "index_refprice", "index_refspread", "index_duration"] @@ -44,9 +44,9 @@ def insert_tranche_risk(portf, conn): " ON CONFLICT (date, tranche_id) DO UPDATE " f"SET {update_str}") with conn.cursor() as c: - for trade_id, trade in portf.items(): + for (strat, trade_id), trade in portf.items(): c.execute(sql_str, (trade.value_date, - trade_id[1], + trade_id, trade.clean_pv, -trade._accrued * trade.notional, trade.theta(method="TLP"), |
