1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
from bbg_helpers import init_bbg_session, retreive_data, process_msgs
import pandas as pd
from sqlalchemy import create_engine
from pandas.tseries.offsets import BDay
engine = create_engine('postgresql://dawn_user@debian/dawndb')
session = init_bbg_session('192.168.0.14', 8194)
fields = ["START_ACC_DT", "MTG_FACTOR_PAY_DT", "CUR_CPN", "INT_ACC",
"DAYS_ACC", "MTG_FACE_AMT", "MTG_FACTOR", "MTG_PREV_FACTOR", "MTG_FACTOR_PRINC_PAY",
"MTG_PRINC_LOSSES", "CRNCY"]
workdate = pd.datetime(2015, 7, 24)
securities = pd.read_sql_query("select * from list_positions(%s)", engine, params=(workdate.date(),))
securities.loc[securities.identifier.str.endswith('_A'),'bbg_id'] = securities.identifier.str.slice(stop=9)
securities.loc[~securities.identifier.str.endswith('_A'),'bbg_id'] = securities.identifier.str.slice(stop=12)
sec = [s + " Mtge" if s!='XS0295516776' else s +" Corp" for s in securities.bbg_id.tolist()]
data = retreive_data(session, sec, fields, workdate)
df = process_msgs(data, fields)
df.to_csv('pomme6.csv')
|