diff options
| -rw-r--r-- | sql/dawn.sql | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/sql/dawn.sql b/sql/dawn.sql index d71d5783..ddb1cdb0 100644 --- a/sql/dawn.sql +++ b/sql/dawn.sql @@ -3021,15 +3021,6 @@ create table id_mapping( PRIMARY KEY (date, trade_type, serenitas_id) ); -CREATE TABLE citco_id_mapping ( - "date" date NOT NULL, - "trade_type" text NOT NULL, - serenitas_id int4 NOT NULL, - citco_id text NOT NULL, - PRIMARY KEY (date, trade_type, serenitas_id) -); - - CREATE TABLE tranche_cashflows( date date NOT NULL, tranche_id integer NOT NULL, @@ -3836,10 +3827,11 @@ AS SELECT tranche_risk.date, tranche_risk.index_duration, tranche_risk.hy_equiv, cds.initial_margin_percentage, - tranche_risk.ir_dv01 + tranche_risk.ir_dv01, + im.init_fix_id FROM tranche_risk LEFT JOIN cds ON tranche_risk.tranche_id = cds.id - LEFT JOIN lateral (SELECT citco_id FROM citco_id_mapping WHERE date >= tranche_risk.date AND serenitas_id=tranche_risk.tranche_id ORDER BY date limit 1) cim on TRUE + LEFT JOIN lateral (SELECT init_fix_id FROM id_mapping im LEFT JOIN isosel_accrued ia ON im.globeop_id =ia.init_order_id WHERE ia.period_end_date =tranche_risk.date AND im.serenitas_id=tranche_risk.tranche_id ORDER BY date DESC LIMIT 1) im on TRUE FULL JOIN ( SELECT isosel_accrued.init_fix_id AS fix_id, isosel_accrued.init_order_id AS admin_id, isosel_accrued.period_end_date, @@ -3848,7 +3840,7 @@ AS SELECT tranche_risk.date, sum(- isosel_accrued."position") AS admin_notional FROM isosel_accrued WHERE isosel_accrued.liqd_date IS NULL - GROUP BY isosel_accrued.init_fix_id, isosel_accrued.init_order_id, isosel_accrued.period_end_date) a ON a.fix_id = coalesce(cim.citco_id, concat('SCCDS', tranche_risk.tranche_id)) AND a.period_end_date = tranche_risk.date + GROUP BY isosel_accrued.init_fix_id, isosel_accrued.init_order_id, isosel_accrued.period_end_date) a ON a.fix_id = coalesce(im.init_fix_id, concat('SCCDS', tranche_risk.tranche_id)) AND a.period_end_date = tranche_risk.date LEFT JOIN index_version ON cds.security_id::text = index_version.redindexcode LEFT JOIN external_marks_deriv ON cds.cpty_id = external_marks_deriv.identifier AND external_marks_deriv.date = tranche_risk.date WHERE cds.fund = 'ISOSEL'::fund @@ -3935,7 +3927,7 @@ AS SELECT tranche_risk.date, CREATE TABLE isosel_accrued ( "status" text NULL, - tid text NULL, + tid int4 NULL, tid_fwd_date date NULL, fund_abbrev text NULL, trader_name text NULL, |
