aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/risk/indices.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/python/risk/indices.py b/python/risk/indices.py
index db6ca0c2..2766d4d1 100644
--- a/python/risk/indices.py
+++ b/python/risk/indices.py
@@ -22,7 +22,7 @@ def get_index_portfolio(
select_cols = [
"security_id AS redcode",
"security_desc",
- "sum(notional) AS notional",
+ "sum(notional) AS notional" if not by_strat else "notional",
"maturity",
]
if by_strat:
@@ -44,9 +44,8 @@ def get_index_portfolio(
params += (exclude_strategies,)
if folder_filter:
sql_str += " WHERE " + " AND ".join(folder_filter)
- sql_str += " GROUP BY security_id, security_desc, maturity"
- if by_strat:
- sql_str += ", folder"
+ if not by_strat:
+ sql_str += " GROUP BY security_id, security_desc, maturity"
with conn.cursor() as c:
c.execute(sql_str, params)
trades = [
@@ -63,8 +62,11 @@ def get_index_portfolio(
for rec in c
if rec.redcode not in exclude_redcode
]
- portf = Portfolio(*zip(*trades))
- portf.mark()
+ if trades:
+ portf = Portfolio(*zip(*trades))
+ portf.mark()
+ else:
+ portf = Portfolio([])
return portf