aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--python/position_file_isosel.py254
1 files changed, 127 insertions, 127 deletions
diff --git a/python/position_file_isosel.py b/python/position_file_isosel.py
index 22c8fc4e..d97d86f7 100644
--- a/python/position_file_isosel.py
+++ b/python/position_file_isosel.py
@@ -97,40 +97,40 @@ def positions_otc(conn, date):
obj["DealCurrencyA"] = "USD"
obj["Product Type"] = "Bond"
yield obj
- # c.execute(
- # "WITH tmp AS (SELECT bbg_ticker, fund, security_desc, currency, maturity, sum(quantity * (2*buysell::int-1)) OVER (PARTITION BY bbg_ticker, fund, security_desc, currency, maturity) notional FROM futures "
- # "WHERE fund='ISOSEL' AND trade_date <= %s) "
- # "SELECT bbg_ticker, notional, code AS cp_code, cash_account, security_desc, currency, maturity FROM tmp LEFT JOIN accounts USING (fund) WHERE tmp.notional != 0 AND account_type='Future';",
- # (date,),
- # )
- # trades = []
- # for row in c:
- # obj = row._asdict()
- # obj["Client Name"] = "HEDGEMARK"
- # obj["Fund Name"] = "BOS_PAT_BOWDOIN"
- # rename_keys(
- # obj,
- # {
- # "bbg_ticker": "Underlying (ISIN / CUSP / RED CODES)",
- # "notional": "NotionalA",
- # "cp_code": "Prime Broker",
- # "cash_account": "AccountNumber",
- # "security_desc": "SecurityDescription",
- # "currency": "DealCurrencyA",
- # "maturity": "MaturityDate",
- # },
- # )
- # obj["COB Date"] = date
- # obj["Product Type"] = "Futures"
- # yield obj
c.execute(
- "SELECT trb.trade_id, trb.serenitas_clean_nav + trb.serenitas_accrued as mtm, trb.notional * trb.tranche_factor as active_notional, cds.* FROM tranche_risk_selene trb left join cds on trade_id=id WHERE date=%s",
+ "WITH tmp AS (SELECT bbg_ticker, fund, security_desc, currency, maturity, sum(quantity * (2*buysell::int-1)) OVER (PARTITION BY bbg_ticker, fund, security_desc, currency, maturity) notional FROM futures "
+ "WHERE fund='ISOSEL' AND trade_date <= %s) "
+ "SELECT bbg_ticker, notional, code AS cp_code, cash_account, security_desc, currency, maturity FROM tmp LEFT JOIN accounts USING (fund) WHERE tmp.notional != 0 AND account_type='Future';",
(date,),
)
+ trades = []
for row in c:
obj = row._asdict()
obj["Client Name"] = "HEDGEMARK"
obj["Fund Name"] = "BOS_PAT_BOWDOIN"
+ rename_keys(
+ obj,
+ {
+ "bbg_ticker": "Underlying (ISIN / CUSP / RED CODES)",
+ "notional": "NotionalA",
+ "cp_code": "Prime Broker",
+ "cash_account": "AccountNumber",
+ "security_desc": "SecurityDescription",
+ "currency": "DealCurrencyA",
+ "maturity": "MaturityDate",
+ },
+ )
+ obj["COB Date"] = date
+ obj["Product Type"] = "Futures"
+ yield obj
+ c.execute(
+ "SELECT trb.trade_id, trb.serenitas_clean_nav + trb.serenitas_accrued as mtm, trb.notional * trb.tranche_factor as active_notional, cds.* FROM tranche_risk_selene trb left join cds on trade_id=id WHERE date=%s",
+ (date,),
+ )
+ for row in c:
+ obj = row._asdict()
+ obj["Client Name"] = "INNOCAP"
+ obj["Fund Name"] = "ISOSEL"
obj["Product Type"] = "Credit Index Tranche"
obj["TransactionIndicator (Buy/Sell)"] = (
"B" if obj["protection"] == "Buyer" else "S"
@@ -154,110 +154,110 @@ def positions_otc(conn, date):
},
)
yield obj
- # c.execute(
- # "SELECT abs(spr.notional) AS active_notional, spr.serenitas_nav, swaptions.*, index_version_markit.annexdate FROM list_swaption_positions_and_risks(%s, 'ISOSEL') spr LEFT JOIN swaptions ON deal_id=dealid LEFT JOIN index_version_markit ON swaptions.security_id=redindexcode;",
- # (date,),
- # )
- # for row in c:
- # obj = row._asdict()
- # obj["Client Name"] = "HEDGEMARK"
- # obj["Fund Name"] = "BOS_PAT_BOWDOIN"
- # obj["Product Type"] = "CD Swaption"
- # obj["TransactionIndicator (Buy/Sell)"] = "B" if obj["buysell"] else "S"
- # obj["PutCall Indicator (Call/Put)"] = (
- # "P" if obj["option_type"] == "PAYER" else "C"
- # )
- # obj["Exercise Type"] = "European"
- # obj["MTM Currency"] = "USD"
- # obj["COB Date"] = date
- # rename_keys(
- # obj,
- # {
- # "dealid": "Unique Deal ID",
- # "cp_code": "Counterparty",
- # "currency": "DealCurrencyA",
- # "active_notional": "NotionalA",
- # "fixed_rate": "FixedRate",
- # "strike": "Strike",
- # "annexdate": "EffectiveDate",
- # "trade_date": "Start Date",
- # "maturity": "Maturity Date",
- # "expiration_date": "Underlying Maturity",
- # "security_id": "Underlying (ISIN / CUSP / RED CODES)",
- # "security_desc": "Underlying Desc",
- # "serenitas_nav": "MTM Valuation",
- # },
- # )
- # yield obj
+ c.execute(
+ "SELECT abs(spr.notional) AS active_notional, spr.serenitas_nav, swaptions.*, index_version_markit.annexdate FROM list_swaption_positions_and_risks(%s, 'ISOSEL') spr LEFT JOIN swaptions ON deal_id=dealid LEFT JOIN index_version_markit ON swaptions.security_id=redindexcode;",
+ (date,),
+ )
+ for row in c:
+ obj = row._asdict()
+ obj["Client Name"] = "INNOCAP"
+ obj["Fund Name"] = "ISOSEL"
+ obj["Product Type"] = "CD Swaption"
+ obj["TransactionIndicator (Buy/Sell)"] = "B" if obj["buysell"] else "S"
+ obj["PutCall Indicator (Call/Put)"] = (
+ "P" if obj["option_type"] == "PAYER" else "C"
+ )
+ obj["Exercise Type"] = "European"
+ obj["MTM Currency"] = "USD"
+ obj["COB Date"] = date
+ rename_keys(
+ obj,
+ {
+ "dealid": "Unique Deal ID",
+ "cp_code": "Counterparty",
+ "currency": "DealCurrencyA",
+ "active_notional": "NotionalA",
+ "fixed_rate": "FixedRate",
+ "strike": "Strike",
+ "annexdate": "EffectiveDate",
+ "trade_date": "Start Date",
+ "maturity": "Maturity Date",
+ "expiration_date": "Underlying Maturity",
+ "security_id": "Underlying (ISIN / CUSP / RED CODES)",
+ "security_desc": "Underlying Desc",
+ "serenitas_nav": "MTM Valuation",
+ },
+ )
+ yield obj
- # c.execute(
- # "SELECT abs(spr.notional) AS active_notional, spr.nav, swaptions.*, index_version_markit.effectivedate FROM list_ir_swaption_positions(%s, 'ISOSEL') spr LEFT JOIN swaptions ON deal_id=dealid LEFT JOIN index_version_markit ON swaptions.security_id=redindexcode;",
- # (date,),
- # )
- # for row in c:
- # obj = row._asdict()
- # obj["Client Name"] = "HEDGEMARK"
- # obj["Fund Name"] = "BOS_PAT_BOWDOIN"
- # obj["Product Type"] = "Swaption"
- # obj["TransactionIndicator (Buy/Sell)"] = "B" if obj["buysell"] else "S"
- # obj["PutCall Indicator (Call/Put)"] = (
- # "P" if obj["option_type"] == "PAYER" else "C"
- # )
- # obj["Exercise Type"] = "European"
- # obj["MTM Currency"] = "USD"
- # obj["COB Date"] = date
+ c.execute(
+ "SELECT abs(spr.notional) AS active_notional, spr.nav, swaptions.*, index_version_markit.effectivedate FROM list_ir_swaption_positions(%s, 'ISOSEL') spr LEFT JOIN swaptions ON deal_id=dealid LEFT JOIN index_version_markit ON swaptions.security_id=redindexcode;",
+ (date,),
+ )
+ for row in c:
+ obj = row._asdict()
+ obj["Client Name"] = "HEDGEMARK"
+ obj["Fund Name"] = "BOS_PAT_BOWDOIN"
+ obj["Product Type"] = "Swaption"
+ obj["TransactionIndicator (Buy/Sell)"] = "B" if obj["buysell"] else "S"
+ obj["PutCall Indicator (Call/Put)"] = (
+ "P" if obj["option_type"] == "PAYER" else "C"
+ )
+ obj["Exercise Type"] = "European"
+ obj["MTM Currency"] = "USD"
+ obj["COB Date"] = date
- # rename_keys(
- # obj,
- # {
- # "dealid": "Unique Deal ID",
- # "cp_code": "Counterparty",
- # "currency": "DealCurrencyA",
- # "active_notional": "NotionalA",
- # "fixed_rate": "FixedRate",
- # "strike": "Strike",
- # "effectivedate": "Effective Date",
- # "trade_date": "Start Date",
- # "maturity": "Maturity Date",
- # "expiration_date": "Underlying Maturity",
- # "security_id": "Underlying (ISIN / CUSP / RED CODES)",
- # "security_desc": "Underlying Desc",
- # "nav": "MTM Valuation",
- # },
- # )
- # yield obj
+ rename_keys(
+ obj,
+ {
+ "dealid": "Unique Deal ID",
+ "cp_code": "Counterparty",
+ "currency": "DealCurrencyA",
+ "active_notional": "NotionalA",
+ "fixed_rate": "FixedRate",
+ "strike": "Strike",
+ "effectivedate": "Effective Date",
+ "trade_date": "Start Date",
+ "maturity": "Maturity Date",
+ "expiration_date": "Underlying Maturity",
+ "security_id": "Underlying (ISIN / CUSP / RED CODES)",
+ "security_desc": "Underlying Desc",
+ "nav": "MTM Valuation",
+ },
+ )
+ yield obj
- # c.execute(
- # "SELECT cds.*, ivm.effectivedate FROM list_cds_marks(%s, null, 'ISOSEL') cds LEFT JOIN index_version_markit ivm ON security_id=redindexcode;",
- # (date,),
- # )
- # for row in c:
- # obj = row._asdict()
- # obj["Client Name"] = "HEDGEMARK"
- # obj["Fund Name"] = "BOS_PAT_BOWDOIN"
- # obj["Counterparty"] = "GS"
- # obj["Product Type"] = "Credit Index"
- # obj["Unique Deal ID"] = obj["security_id"]
- # obj["TransactionIndicator (Buy/Sell)"] = "B" if obj["notional"] > 0 else "S"
- # obj["DealCurrencyA"] = "EUR" if obj["index"] in ("EU", "XO") else "USD"
- # obj["NotionalA"] = abs(obj["notional"]) * obj["factor"]
- # obj["Start Date"] = date
- # obj["MTM Currency"] = "USD"
- # obj["MTM Valuation"] = obj["clean_nav"] + obj["accrued"]
- # obj["COB Date"] = date
- # obj["Clearing House Name"] = "ICE"
- # obj["FixedRate"] = obj["coupon"] * 100
- # rename_keys(
- # obj,
- # {
- # "effectivedate": "Effective Date",
- # "maturity": "Maturity Date",
- # "security_id": "Underlying (ISIN / CUSP / RED CODES)",
- # "security_desc": "Underlying Desc",
- # },
- # )
+ c.execute(
+ "SELECT cds.*, ivm.effectivedate FROM list_cds_marks(%s, null, 'ISOSEL') cds LEFT JOIN index_version_markit ivm ON security_id=redindexcode;",
+ (date,),
+ )
+ for row in c:
+ obj = row._asdict()
+ obj["Client Name"] = "HEDGEMARK"
+ obj["Fund Name"] = "BOS_PAT_BOWDOIN"
+ obj["Counterparty"] = "GS"
+ obj["Product Type"] = "Credit Index"
+ obj["Unique Deal ID"] = obj["security_id"]
+ obj["TransactionIndicator (Buy/Sell)"] = "B" if obj["notional"] > 0 else "S"
+ obj["DealCurrencyA"] = "EUR" if obj["index"] in ("EU", "XO") else "USD"
+ obj["NotionalA"] = abs(obj["notional"]) * obj["factor"]
+ obj["Start Date"] = date
+ obj["MTM Currency"] = "USD"
+ obj["MTM Valuation"] = obj["clean_nav"] + obj["accrued"]
+ obj["COB Date"] = date
+ obj["Clearing House Name"] = "ICE"
+ obj["FixedRate"] = obj["coupon"] * 100
+ rename_keys(
+ obj,
+ {
+ "effectivedate": "Effective Date",
+ "maturity": "Maturity Date",
+ "security_id": "Underlying (ISIN / CUSP / RED CODES)",
+ "security_desc": "Underlying Desc",
+ },
+ )
- # yield obj
+ yield obj
if __name__ == "__main__":