1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
import datetime
from mtm_status import get_latest_file
counterparty_contacts = {
("BAMSNY", "USD"): (
"dg.gcss_usip_mo@bofa.com",
"shalini.goel@bofa.com",
"dtcc.chasing@bofa.com",
"dg.cmbs-mbex_trade_support@bofa.com",
),
("BAMSNY", "EUR"): (
"emea_credit_fo_support@bofa.com",
"dtcc.chasing@bofa.com",
"dg.cmbs-mbex_trade_support@bofa.com",
),
("JPCBNY", "USD"): ("credit.na.affirmations@jpmorgan.com",),
("JPCBNY", "EUR"): ("JPM.creditassignmentseurope@jpmorgan.com"),
("MSCSNY", "USD"): ("msnovationsteam@morganstanley.com",),
("GOLDNY", "USD"): (
"Navneet.Sawant@gs.com",
"Vishal.Kanojia@ny.email.gs.com",
"NY-CDMO@ny.email.gs.com",
),
("GOLDNY", "EUR"): (
"Navneet.Sawant@gs.com",
"Vishal.Kanojia@ny.email.gs.com",
"LDNCDMO@gs.com",
),
("CITINY", "USD"): ("citiassignmentsus@citigroup.com, james.b.okun@citi.com"),
("CITINY", "EUR"): ("citiassignmentsus@citigroup.com, aaron.beasant@citi.com"),
("BNPBNY", "USD"): ("LM_Sales_Assistants@US.BNPParibas.com",),
("BNPBNY", "EUR"): ("CDSnovationsEurope@bnpparibas.com",),
}
def contact_novation_counterparties(date):
df = get_latest_file(date)
df = df[
(df["SwapType"].isin(["ASGM"]))
& (df["ThirdPartyStatus.1"].isin(["Pending Consent"]))
]
df = (
df.groupby(["ExecutingBroker", "RemainingBroker", "CurrencyCode"])[
"Novation Consent ID"
]
.apply(list)
.reset_index()
)
for row in df.itertuples():
print(row.ExecutingBroker, row.RemainingBroker, row.CurrencyCode, row[4])
if __name__ == "__main__":
contact_novation_counterparties(datetime.date(2023, 3, 14))
|