aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--python/cds_rebook.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/python/cds_rebook.py b/python/cds_rebook.py
index 165aaccf..fad69c12 100644
--- a/python/cds_rebook.py
+++ b/python/cds_rebook.py
@@ -19,10 +19,11 @@ def get_outstanding_positions(trade_date, fcm):
return r
-def default_adjustment(company_id, end_date):
+def default_adjustment(company_id, seniority, end_date):
r = serenitas_engine.execute(
- "SELECT recovery, event_date, auction_date FROM defaulted " "WHERE id=%s",
- (company_id,),
+ "SELECT recovery, event_date, auction_date FROM defaulted WHERE id=%s "
+ "AND seniority=%s",
+ (company_id, seniority),
)
recovery, event_date, auction_date = next(r)
fee = 1 - recovery
@@ -41,11 +42,11 @@ PORTFOLIO = {
}
-def rebook(trade_date, company_id, fcm):
+def rebook(trade_date, company_id, seniority, fcm):
upfront_settle_date = trade_date + 3 * BDay()
effective_date = trade_date + datetime.timedelta(days=1)
for r in get_outstanding_positions(trade_date, fcm):
- accrual_days, fee = default_adjustment(company_id, r["maturity"])
+ accrual_days, fee = default_adjustment(company_id, seniority, r["maturity"])
index_new = CreditIndex(
redcode=r["nextredindexcode"],
maturity=r["maturity"],