import os import os.path import csv import psycopg2 import pdb if os.name =='nt': root = "//WDsentinel/share/CorpCDOs" elif os.name == 'posix': root = '/home/share/CorpCDOs' conn = psycopg2.connect(database="ET", user="et_user", password="Serenitas1", host="192.168.1.108") cursor = conn.cursor() def cusips_from_dealname(dealname, curr = cursor): curr.execute("SELECT \"Deal Cusip List\" from latest_clo_universe " " where dealname = %s", (dealname,)) return curr.fetchone()[0] for dealname in ["abcl071", "ammcclo5", "atr5cdo", "blumt3", "callid6"]: cusips = cusips_from_dealname(dealname) price = [] wal = [] duration = [] for cusip in cusips: filename = cusip + "-PY.txt" i = 1 with open(os.path.join(root, "Scenarios", "Prices", filename)) as fh: csvinput = csv.DictReader(fh, dialect = 'excel-tab') for line in csvinput: if i==1: price.append(line) elif i==5: wal.append(line) elif i==6: duration.append(line) i = i+1 with open(os.path.join(root, "Scenarios", "Prices", dealname + "-price.csv"), "wb") as fh: csvoutput = csv.writer(fh) for i in range(100): csvoutput.writerow([price[j]['Scenario {0}'.format(i+1)] for j in range(len(cusips))]) with open(os.path.join(root, "Scenarios", "Prices", dealname + "-wal.csv"), "wb") as fh: csvoutput = csv.writer(fh) for i in range(100): csvoutput.writerow([wal[j]['Scenario {0}'.format(i+1)] for j in range(len(cusips))]) with open(os.path.join(root, "Scenarios", "Prices", dealname + "-duration.csv"), "wb") as fh: csvoutput = csv.writer(fh) for i in range(100): csvoutput.writerow([duration[j]['Scenario {0}'.format(i+1)] for j in range(len(cusips))]) cursor.close() conn.close()