diff options
| -rw-r--r-- | python/analytics/portfolio.py | 3 | ||||
| -rw-r--r-- | python/risk/indices.py | 7 |
2 files changed, 7 insertions, 3 deletions
diff --git a/python/analytics/portfolio.py b/python/analytics/portfolio.py index 0ba7d55a..fa98d3c8 100644 --- a/python/analytics/portfolio.py +++ b/python/analytics/portfolio.py @@ -81,6 +81,9 @@ class Portfolio: raise ValueError(f"{trade_id} not found") return trade + def __bool__(self): + return self.trades != [] + @property def indices(self): return [t for t in self.trades if isinstance(t, CreditIndex)] diff --git a/python/risk/indices.py b/python/risk/indices.py index 81b39f18..a8181ab7 100644 --- a/python/risk/indices.py +++ b/python/risk/indices.py @@ -103,7 +103,8 @@ def insert_curve_risk( with conn.cursor() as c: for strat in strategies: portf = get_index_portfolio(d, conn, strat, exclude_redcode=["2I65BYDU6"]) - var = VaR(portf, period="daily") - strat_name = "*" if isinstance(strat, tuple) else strat - c.execute(sql_str, (d, strat_name, var, "USD")) + if portf: + var = VaR(portf, period="daily") + strat_name = "*" if isinstance(strat, tuple) else strat + c.execute(sql_str, (d, strat_name, var, "USD")) conn.commit() |
