aboutsummaryrefslogtreecommitdiffstats
path: root/sql/dawn.sql
diff options
context:
space:
mode:
Diffstat (limited to 'sql/dawn.sql')
-rw-r--r--sql/dawn.sql15
1 files changed, 8 insertions, 7 deletions
diff --git a/sql/dawn.sql b/sql/dawn.sql
index 66c3058c..5ac6e602 100644
--- a/sql/dawn.sql
+++ b/sql/dawn.sql
@@ -1906,7 +1906,7 @@ df.columns = df.columns.droplevel(level=0)
df = df.reindex(columns=source_list).reset_index()
for t in (df.itertuples(index=False)):
- yield [t[0], t[1]] + [None if np.isnan(v) else v for v in t[2:]]
+ yield [t[0], t[1]] + [None if np.isnan(v) else v for v in t[2:]]]
$$ LANGUAGE plpython3u;
@@ -1921,7 +1921,7 @@ SELECT tranche_risk.date, tranche_id as trade_id, b.globeop_id, security_desc, i
duration, delta, gamma, theta, tranche_factor,
tranche_risk.corr_attach, tranche_risk.corr_detach,
tranche_risk.upfront, tranche_risk.running,
- index_refprice, index_refspread, index_duration, initial_margin_percentage
+ index_refprice, index_refspread, index_duration, initial_margin_percentage, indexfactor
FROM tranche_risk
LEFT JOIN LATERAL
(SELECT full_globeop_id, globeop_id FROM id_mapping WHERE id_mapping.serenitas_id=tranche_id AND date <= tranche_risk.date ORDER by date desc LIMIT 1) b ON true
@@ -1949,7 +1949,7 @@ SELECT tranche_risk.date, tranche_id as trade_id, security_desc, index, series,
duration, delta, gamma, theta, tranche_factor,
tranche_risk.corr_attach, tranche_risk.corr_detach,
tranche_risk.upfront, tranche_risk.running,
- index_refprice, index_refspread, index_duration, initial_margin_percentage
+ index_refprice, index_refspread, index_duration, initial_margin_percentage, indexfactor
FROM tranche_risk
LEFT JOIN cds ON (tranche_id=id)
LEFT JOIN (SELECT as_of_date, link_ref, (CASE WHEN coupon_rate=0 THEN current_notional ELSE -current_notional END) AS admin_notional, base_market_value AS admin_clean_nav FROM bowdst_val WHERE security_description_1 LIKE 'TRNCH%' AND base_market_value!=0) b ON link_ref=format('SCCDS%s',tranche_id) AND as_of_date=tranche_risk.date
@@ -1971,7 +1971,7 @@ SELECT tranche_risk.date, tranche_id as trade_id, security_desc, index, series,
duration, delta, gamma, theta, tranche_factor,
tranche_risk.corr_attach, tranche_risk.corr_detach,
tranche_risk.upfront, tranche_risk.running,
- index_refprice, index_refspread, index_duration, initial_margin_percentage
+ index_refprice, index_refspread, index_duration, initial_margin_percentage, indexfactor
FROM tranche_risk
LEFT JOIN cds ON (tranche_id=id)
LEFT JOIN (SELECT accounting_date, security_id, quantity * (CASE WHEN long_short_indicator = 'S' THEN 1. ELSE -1. END) AS admin_notional, (local_market_value - quantity) * fx_rate AS admin_clean_nav
@@ -1984,7 +1984,7 @@ ORDER BY index, series, orig_attach;
CREATE OR REPLACE FUNCTION tranche_risk_agg(p_date date, p_fund fund DEFAULT 'SERCGMAST'::fund)
RETURNS TABLE(date date, security_desc varchar(32), index index_type, series smallint, admin_notional float, admin_clean_nav float,
-maturity date, serenitas_notional float, tranche_factor float, running float, serenitas_clean_nav float, serenitas_accrued float, initial_margin float, theta float, duration float, delta float, upfront float, index_refprice float, index_refspread float, orig_attach smallint, orig_detach smallint, index_duration float, gamma float) AS $$
+maturity date, serenitas_notional float, tranche_factor float, running float, serenitas_clean_nav float, serenitas_accrued float, initial_margin float, theta float, duration float, delta float, upfront float, index_refprice float, index_refspread float, orig_attach smallint, orig_detach smallint, index_duration float, gamma float, indexfactor float) AS $$
DECLARE
query text;
fund text;
@@ -2004,7 +2004,7 @@ query := 'SELECT date, security_desc, index, series, sum(admin_notional),
avg(upfront), avg(index_refprice),
avg(index_refspread),
orig_attach, orig_detach, avg(index_duration),
- avg(gamma)
+ avg(gamma), avg(indexfactor)
FROM tranche_risk_%I
GROUP BY date, index, security_desc, series, orig_attach, orig_detach, maturity
HAVING date=$1
@@ -2024,7 +2024,7 @@ SELECT tranche_risk.date, tranche_id AS trade_id, fund, security_desc, index, se
duration, delta, gamma, theta, tranche_factor,
tranche_risk.corr_attach, tranche_risk.corr_detach,
tranche_risk.upfront, tranche_risk.running,
- index_refprice, index_refspread, index_duration, initial_margin_percentage, ia as cpty_ia
+ index_refprice, index_refspread, index_duration, initial_margin_percentage, ia as cpty_ia, indexfactor
FROM tranche_risk
LEFT JOIN cds ON (tranche_id=id)
LEFT JOIN index_version ON (security_id=redindexcode)
@@ -2199,3 +2199,4 @@ CREATE TABLE tranche_cashflows(
currency currency,
PRIMARY KEY (date, tranche_id)
);
+