aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--python/swaption_pnl.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/python/swaption_pnl.py b/python/swaption_pnl.py
index 910803b9..b80cbc3c 100644
--- a/python/swaption_pnl.py
+++ b/python/swaption_pnl.py
@@ -2,6 +2,7 @@ import datetime
import pandas as pd
from analytics.utils import get_fx
from dates import bus_day
+from psycopg2.errors import SyntaxError
from psycopg2.extensions import connection
from risk.swaptions import get_swaption_portfolio
from risk.indices import get_index_portfolio
@@ -34,11 +35,15 @@ def get_index_pv(
portf = get_index_portfolio(prev_day, conn, strategies)
nav = 0.0
with conn.cursor() as c:
- c.execute(
- "SELECT upfront, currency FROM cds WHERE trade_date=%s "
- "AND folder in %s",
- (prev_day, strategies),
- )
+ try:
+ c.execute(
+ "SELECT upfront, currency FROM cds WHERE trade_date=%s "
+ "AND folder in %s",
+ (prev_day, strategies),
+ )
+ except SyntaxError as e:
+ conn.reset()
+ raise e
for (fee, curr) in c:
nav += fee * get_fx(d, curr)
daily.append(nav + accrued)