aboutsummaryrefslogtreecommitdiffstats
path: root/python/Dawn/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/Dawn/utils.py')
-rw-r--r--python/Dawn/utils.py94
1 files changed, 0 insertions, 94 deletions
diff --git a/python/Dawn/utils.py b/python/Dawn/utils.py
index 2ce8beb8..75ef43d7 100644
--- a/python/Dawn/utils.py
+++ b/python/Dawn/utils.py
@@ -2,91 +2,6 @@ import pandas as pd
import os
import re
from pickle import dumps
-from sqlalchemy import create_engine
-
-def load_counterparties(engine):
- counterparties = pd.read_excel("/home/share/Daily/blotter.xlsm", 'Counterparties')
- counterparties[['city', 'state']] = counterparties.Location.str.split(", ", expand=True)
- counterparties.drop(['Location', 'Valuation Contact4', 'Valuation Contact4 Email'], axis=1, inplace=True)
- counterparties.rename(columns ={'CODE': 'code',
- 'DTC Number': 'dtc_number',
- 'Email1': 'sales_email',
- 'FIRM': 'name',
- 'Phone': 'sales_phone',
- 'Sales Contact': 'sales_contact',
- 'Valuation Contact1': 'valuation_contact1',
- 'Valuation Contact1 Email': 'valuation_email1',
- 'Valuation Contact2': 'valuation_contact2',
- 'Valuation Contact2 Email': 'valuation_email2',
- 'Valuation Contact3': 'valuation_contact3',
- 'Valuation Contact3 Email': 'valuation_email3',
- 'Valuation Note': 'notes'}, inplace=True)
- counterparties.to_sql('counterparties', engine, if_exists='append', index=False)
-
-def load_trades(engine, schema=None):
- blotter = pd.read_excel("/home/serenitas/Daily/Blotter.xlsm", 'Bonds',
- skiprows=[0, 1, 2, 3, 4])
- blotter.dropna(axis=0, subset=['Deal ID'], inplace=True)
- blotter = blotter.iloc[:,2:]
- blotter.drop(['Unnamed: %s' % (i,) for i in range(19, 28)] +
- ['Comments', 'Acc Int $', 'Counterparty'], axis=1, inplace=True)
- blotter.rename(columns = {'Date': 'trade_date',
- 'Settle Date': 'settle_date',
- 'Strategy': 'folder',
- 'Custodian': 'custodian',
- 'Cash Account': 'cashaccount',
- 'CP Alias': 'cp_code',
- 'CUSIP': 'cusip',
- 'ISIN': 'isin',
- 'Description': 'description',
- 'Buy/Sell': 'buysell',
- 'Notional': 'faceamount',
- 'Price': 'price',
- 'Acc Int': 'accrued',
- 'Asset Class': 'asset_class',
- 'Deal ID': 'id'}, inplace=True)
- blotter.buysell = blotter.buysell.apply(lambda x: x=='Buy')
- blotter['action'] = 'NEW'
- blotter['cashaccount'] = 'V0NSCLMAMB'
- blotter['id'] = blotter['id'].str.replace('[A-Z_]', '').astype('int')
- blotter.loc[blotter.asset_class == 'CLO','id'] = blotter.loc[blotter.asset_class == 'CLO','id'] + 5
- blotter.to_sql('bonds', engine, if_exists='append', index=False, schema=schema)
- return blotter
-
-def load_trades_futures(engine, schema=None):
- blotter = pd.read_excel("/home/serenitas/Daily/Blotter.xlsm", 'Futures',
- skiprows=[0, 1, 2, 3, 4])
- blotter.dropna(axis=0, subset=['Deal ID'], inplace=True)
- blotter = blotter.iloc[:,2:]
- blotter.drop(['Unnamed: %s' % (i,) for i in range(25, 27)] + \
- ['Deal Type', 'Asset Class', 'Initial Margin Currency', 'Client', 'State'],
- axis=1, inplace=True)
- blotter.rename(columns = {'Trade Date': 'trade_date',
- 'Settlement Date': 'settle_date',
- 'Cash Account': 'cashaccount',
- 'Strategy': 'folder',
- 'Quantity': 'quantity',
- 'Commission': 'commission',
- 'CP Alias': 'cp_code',
- 'Description': 'security_desc',
- 'Buy/Sell': 'buysell',
- 'Price': 'price',
- 'Deal ID': 'id',
- 'Exchange': 'exchange',
- 'Ticker': 'bbg_ticker',
- 'Maturity': 'maturity',
- 'Action': 'action',
- 'Custodian': 'custodian',
- 'Trade Currency': 'currency',
- 'Swap Type': 'swap_type',
- 'Counterparty': 'cp_code'}, inplace=True)
- blotter.buysell = blotter.buysell.apply(lambda x: x=='Buy')
- blotter['action'] = 'NEW'
- blotter['cashaccount'] = 'IANSCLMAFU'
- blotter['swap_type'] = 'FUTURE'
- blotter['id'] = blotter['id'].str.replace('[A-Z_]', '').astype('int')
- blotter.to_sql('futures', engine, if_exists='append', index=False, schema=schema)
- return blotter
def bump_rev(filename):
pattern = "([^r]*)(\srev(\d)|).pdf"
@@ -96,12 +11,3 @@ def bump_rev(filename):
def simple_serialize(obj):
return dumps({c.name: getattr(obj, c.name) for c in obj.__table__.columns})
-
-if __name__=="__main__":
- qa = False
- if qa:
- engine = create_engine('postgresql://qa@debian/dawndb')
- load_trades_futures(engine, 'qa')
- else:
- engine = create_engine('postgresql://dawn_user@debian/dawndb')
- load_trades_futures(engine)