blob: 31c96029f2a91eed56f6d8bad00037fb1fd7a24d (
plain)
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
|
from analytics.cms_spread import CmsSpread
from pathlib import Path
import os
import pandas as pd
DAILY_DIR = Path(os.environ["DAILY_DIR"])
r = []
today = pd.Timestamp.today()
trade = CmsSpread.from_tradeid(1)
dr = pd.bdate_range("2018-01-19", today, closed="left", normalize=True)
for d in dr:
trade.value_date = d
r.append(trade.pv)
def gs_navs(trade_id='LTAAB4ZN3333L6TTSH7.0.0.0'):
# load gs navs for a given trade
dates = []
r = []
for fname in (DAILY_DIR / "GS_reports").glob("Trade_Detail*.xls"):
m = re.match("[^\d]*(\d{2}_.{3}_\d{4})", fname.name)
if m:
date_string, = m.groups()
dates.append(datetime.datetime.strptime(date_string, "%d_%b_%Y"))
df = pd.read_excel(fname, skiprows=9, skipfooter=77)
r.append(df.set_index('Trade Id').loc[trade_id, 'NPV (USD)'])
s = pd.Series(r, dates)
s = s.sort_index()
#remove the IA until it settled
s[:2] -= 68750.00
return -s
|