aboutsummaryrefslogtreecommitdiffstats
path: root/python/risk
diff options
context:
space:
mode:
Diffstat (limited to 'python/risk')
-rw-r--r--python/risk/forwards.py6
-rw-r--r--python/risk/trs.py15
2 files changed, 18 insertions, 3 deletions
diff --git a/python/risk/forwards.py b/python/risk/forwards.py
index 727551b6..9630127e 100644
--- a/python/risk/forwards.py
+++ b/python/risk/forwards.py
@@ -1,13 +1,13 @@
-from serenitas.analytics import Portfolio, FxForward
+from serenitas.analytics.api import Portfolio, FxForward
import logging
logger = logging.getLogger(__name__)
def get_forward_portfolio(date, conn, fund="SERCGMAST", **kwargs):
- sql_str = "SELECT dealid FROM spots where settle_date > %s and fund = %s"
+ sql_str = "SELECT dealid FROM forwards WHERE settle_date > %s AND trade_date <= %s AND fund = %s"
with conn.cursor() as c:
- c.execute(sql_str, (date, fund))
+ c.execute(sql_str, (date, date, fund))
trade_ids = [tid for (tid,) in c]
portf = Portfolio([FxForward.from_tradeid(tid) for tid in trade_ids], trade_ids)
diff --git a/python/risk/trs.py b/python/risk/trs.py
new file mode 100644
index 00000000..59b9ee35
--- /dev/null
+++ b/python/risk/trs.py
@@ -0,0 +1,15 @@
+from serenitas.analytics.api import Portfolio, TRS
+import logging
+
+logger = logging.getLogger(__name__)
+
+
+def get_trs_portfolio(date, conn, fund="SERCGMAST", **kwargs):
+ sql_str = "SELECT dealid FROM trs WHERE trade_date <= %s AND maturity_date > %s AND fund = %s"
+ with conn.cursor() as c:
+ c.execute(sql_str, (date, fund))
+ trade_ids = [tid for (tid,) in c]
+
+ portf = Portfolio([TRS.from_tradeid(tid) for tid in trade_ids], trade_ids)
+ portf.value_date = date
+ return portf