aboutsummaryrefslogtreecommitdiffstats
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/risk/portfolio.py13
1 files changed, 11 insertions, 2 deletions
diff --git a/python/risk/portfolio.py b/python/risk/portfolio.py
index 9d87a6a6..1c7eca0d 100644
--- a/python/risk/portfolio.py
+++ b/python/risk/portfolio.py
@@ -10,7 +10,8 @@ from .swaptions import get_swaption_portfolio
from .bonds import subprime_risk, clo_risk, crt_risk
from .indices import get_index_portfolio
from serenitas.utils.db import dbengine
-from serenitas.utils.db2 import dawn_pool, dbconn
+from serenitas.utils.db2 import dbconn
+from serenitas.utils.pool import dawn_pool
from pandas.tseries.offsets import BDay
@@ -34,7 +35,6 @@ def build_portfolio(position_date, value_date=None, fund="SERCGMAST"):
portf = get_tranche_portfolio(position_date, conn, False, fund)
swaption_portf = get_swaption_portfolio(position_date, conn, fund)
portf += swaption_portf
- syn_portf = deepcopy(portf)
curve_portf = get_index_portfolio(
position_date, conn, fund, include_strategies="%CURVE"
@@ -42,6 +42,15 @@ def build_portfolio(position_date, value_date=None, fund="SERCGMAST"):
nocurve_portf = get_index_portfolio(
position_date, conn, fund, exclude_strategies="%CURVE"
)
+ basis_portf = get_index_portfolio(
+ position_date, conn, fund, include_strategies="%BASIS"
+ )
+ portf.add_trade(
+ hy_equiv_trade(value_date, -basis_portf.hy_equiv),
+ ("CASH_BASIS", "negate_basis_trades"),
+ )
+
+ syn_portf = deepcopy(portf)
portf += nocurve_portf
curve_portf.value_date = value_date
curve_portf.mark()