aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/cusip_universe.py62
1 files changed, 32 insertions, 30 deletions
diff --git a/python/cusip_universe.py b/python/cusip_universe.py
index a8bf08a5..b2b261a2 100644
--- a/python/cusip_universe.py
+++ b/python/cusip_universe.py
@@ -5,7 +5,6 @@ import datetime
from datetime import date
import csv
import pdb
-import re
if os.name=='nt':
root = "//WDSENTINEL/share/CorpCDOs/"
@@ -21,12 +20,18 @@ conn = psycopg2.connect(database="ET",
host="192.168.1.108")
cursor = conn.cursor()
-prog = re.compile("\((.*)\)")
-
# cursor.execute("delete from cusip_universe")
-workdate = '2012-12-11'
+workdate = '2013-01-04'
count = 0
+def sanitize_float(intex_float):
+ intex_float = intex_float.replace(",", "")
+ if "(" in intex_float:
+ intex_float = - float(intex_float[1:-1])
+ else:
+ intex_float = float(intex_float)
+ return intex_float
+
for cusip_universe_file in os.listdir(os.path.join(root, "data", "Trinfo_" + workdate)):
with open( os.path.join(root, "data", "Trinfo_" + workdate, cusip_universe_file), "r") as fh:
dr = csv.DictReader(fh, dialect='excel-tab')
@@ -38,35 +43,32 @@ for cusip_universe_file in os.listdir(os.path.join(root, "data", "Trinfo_" + wor
else:
continue
line["dealname"] = line["dealname"].lower()
- for key in ['Curr Balance', 'Orig Balance', 'Orig Attachment Point', 'Curr Attachment Point',
- 'Orig Detachment Point', 'Curr Detachment Point', 'Factor', 'Coupon']:
- line[key] = line[key].replace(",", "")
- if prog.match(line[key]):
- try:
- line[key] = float(prog.match(line[key]).group(1))
- except ValueError:
- pdb.set_trace()
- line[key] = convertToNone(line[key])
- if "," in str(line['Floater Spread']):
- line['Floater Spread'] = line['Floater Spread'].split(",")[0]
- for key in ['Floater Spread', 'Floater Index']:
- if prog.match(line[key]):
- try:
- line[key] = float(prog.match(line[key]).group(1))
- except ValueError:
- pdb.set_trace()
+ # for key in ['Curr Balance', 'Orig Balance', 'Orig Attachment Point', 'Curr Attachment Point',
+ # 'Orig Detachment Point', 'Curr Detachment Point', 'Factor', 'Coupon']:
+ # if line[key]:
+ # line[key] = sanitize_float(line[key])
+ for key in ['Curr Balance', 'Curr Attachment Point', 'Curr Detachment Point', 'Factor']:
+ if line[key]:
+ line[key] = sanitize_float(line[key])
line[key] = convertToNone(line[key])
- sqlstring = "INSERT INTO cusip_universe(cusip, ISIN, dealname, tranche," \
- "coupon, Orig_Balance, Curr_Balance, Factor, Orig_moody, Curr_moody, " \
- "Orig_attach, Orig_detach, Curr_attach, Curr_detach, Floater_Index," \
- "Spread) " \
- "VALUES (%(CUSIP)s, %(ISIN)s, %(dealname)s, %(tranche)s, %(Coupon)s, " \
- "%(Orig Balance)s, %(Curr Balance)s, %(Factor)s, %(Orig Moody)s, %(Curr Moody)s, " \
- "%(Orig Attachment Point)s, %(Orig Detachment Point)s, %(Curr Attachment Point)s," \
- "%(Curr Detachment Point)s, %(Floater Index)s, %(Floater Spread)s)"
+
+ # if "," in str(line['Floater Spread']):
+ # line['Floater Spread'] = line['Floater Spread'].split(",")[0]
+
+ # if line['Floater Spread']:
+ # line['Floater Spread'] = sanitize_float(line['Floater Spread'])
+
+ # sqlstring = "INSERT INTO cusip_universe(cusip, ISIN, dealname, tranche," \
+ # "coupon, Orig_Balance, Curr_Balance, Factor, Orig_moody, Curr_moody, " \
+ # "Orig_attach, Orig_detach, Curr_attach, Curr_detach, Floater_Index," \
+ # "Spread) " \
+ # "VALUES (%(CUSIP)s, %(ISIN)s, %(dealname)s, %(tranche)s, %(Coupon)s, " \
+ # "%(Orig Balance)s, %(Curr Balance)s, %(Factor)s, %(Orig Moody)s, %(Curr Moody)s, " \
+ # "%(Orig Attachment Point)s, %(Orig Detachment Point)s, %(Curr Attachment Point)s," \
+ # "%(Curr Detachment Point)s, %(Floater Index)s, %(Floater Spread)s)"
sqlstring = "UPDATE cusip_universe SET Curr_Balance = %(Curr Balance)s, Factor = %(Factor)s" \
- ", Curr_moody = %(Curr Moody)s, Curr_attach = %(Curr Attachment Point)s"
+ ", Curr_moody = %(Curr Moody)s, Curr_attach = %(Curr Attachment Point)s WHERE cusip = %(CUSIP)s"
try:
cursor.execute(sqlstring, line)