aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--python/risk/__main__.py8
-rw-r--r--python/risk/bonds.py14
-rw-r--r--python/risk/indices.py10
-rw-r--r--python/risk/swaptions.py3
-rw-r--r--python/risk/tranches.py2
5 files changed, 21 insertions, 16 deletions
diff --git a/python/risk/__main__.py b/python/risk/__main__.py
index 5607999b..2c690ba7 100644
--- a/python/risk/__main__.py
+++ b/python/risk/__main__.py
@@ -1,10 +1,14 @@
+import os
+
+os.environ["SERENITAS_APP_NAME"] = "risk"
+
import serenitas.analytics
import argparse
import datetime
from serenitas.utils.db import dbengine
from serenitas.utils.db2 import dawn_pool, dbconn
from .bonds import subprime_risk, clo_risk, crt_risk, insert_subprime_risk
-from serenitas.analytics import init_ontr
+from serenitas.analytics.base import Trade
from serenitas.analytics.dates import prev_business_day
from .indices import insert_curve_risk
from .swaptions import get_swaption_portfolio, insert_swaption_portfolio
@@ -21,7 +25,7 @@ parser.add_argument(
args = parser.parse_args()
workdate = args.cob
-init_ontr(workdate)
+Trade.init_ontr(workdate)
serenitas.analytics._include_todays_cashflows = True
serenitas.analytics._local = False
diff --git a/python/risk/bonds.py b/python/risk/bonds.py
index 4f622355..c9dfbdea 100644
--- a/python/risk/bonds.py
+++ b/python/risk/bonds.py
@@ -1,12 +1,12 @@
import pandas as pd
import numpy as np
-from serenitas import analytics
+from serenitas.analytics.base import Trade
import datetime
from enum import Enum, auto
from serenitas.analytics.yieldcurve import YC
from serenitas.analytics.index import CreditIndex
-from serenitas.analytics import on_the_run
+from serenitas.analytics.index_data import on_the_run
class AssetClass(Enum):
@@ -85,7 +85,7 @@ def get_df(date, engine, *, zero_factor=False):
def subprime_risk(date, conn, engine, model_date=None, fund="SERCGMAST"):
- analytics.init_ontr(date)
+ Trade.init_ontr(date)
if model_date is None:
sql_string = (
"SELECT distinct timestamp::date FROM priced "
@@ -146,11 +146,11 @@ def subprime_risk(date, conn, engine, model_date=None, fund="SERCGMAST"):
delta_ir=df_calc.delta_ir_io + df_calc.delta_ir_po,
# use original notional for 0 factor bonds to calc yield
curr_ntl=df_calc.notional * df_calc.factor.where(df_calc.factor != 0.0, 1.0),
- # assume beta and ontr is initialized from analytics
+ # assume beta and ontr is initialized from init_ontr
hy_equiv=(
df_calc.delta_yield
- / analytics._ontr["HY"].risky_annuity
- * analytics._beta["SUBPRIME"]
+ / Trade._ontr["HY"].risky_annuity
+ * Trade._beta["SUBPRIME"]
* 1e2
* df_calc.local_market_value
/ df_calc.pv3
@@ -272,7 +272,7 @@ def crt_risk(date, dawn_conn, crt_engine, fund="SERCGMAST"):
hy_equiv=(
df.modDur
/ hy_ontr.risky_annuity
- * analytics._beta["CRT"]
+ * Trade._beta["CRT"]
* df.notional
* df.factor
),
diff --git a/python/risk/indices.py b/python/risk/indices.py
index ef97d306..60f6da3e 100644
--- a/python/risk/indices.py
+++ b/python/risk/indices.py
@@ -1,10 +1,10 @@
import datetime
import logging
import pandas as pd
-from serenitas.analytics import on_the_run, Portfolio, CreditIndex
-from serenitas.analytics.index_data import index_returns
+from serenitas.analytics.api import Portfolio, CreditIndex
+from serenitas.analytics.index_data import on_the_run, index_returns
from math import sqrt
-from psycopg2.extensions import connection
+from psycopg import Connection
from typing import Iterable, Tuple, Union
logger = logging.getLogger(__name__)
@@ -12,7 +12,7 @@ logger = logging.getLogger(__name__)
def get_index_portfolio(
d: datetime.date,
- conn: connection,
+ conn: Connection,
fund: str = "SERCGMAST",
strategies: Union[Tuple[str], str] = (),
include_strategies: Union[str, None] = None,
@@ -121,7 +121,7 @@ def VaR(portf: Portfolio, quantile=0.05, years: int = 5, period="monthly"):
def insert_curve_risk(
d: datetime.date,
- conn: connection,
+ conn: Connection,
fund: str = "SERCGMAST",
strategies: Tuple[str] = ("SER_IGCURVE",),
):
diff --git a/python/risk/swaptions.py b/python/risk/swaptions.py
index e91543ba..e35ab21b 100644
--- a/python/risk/swaptions.py
+++ b/python/risk/swaptions.py
@@ -1,6 +1,7 @@
import logging
-from serenitas.analytics import Portfolio, BlackSwaption, DataError
+from serenitas.analytics.api import Portfolio, BlackSwaption
+from serenitas.utils.db2 import DataError
from psycopg import sql
logger = logging.getLogger(__name__)
diff --git a/python/risk/tranches.py b/python/risk/tranches.py
index be09b9d2..18f1b0f5 100644
--- a/python/risk/tranches.py
+++ b/python/risk/tranches.py
@@ -1,4 +1,4 @@
-from serenitas.analytics import Portfolio, DualCorrTranche
+from serenitas.analytics.api import Portfolio, DualCorrTranche
import logging
logger = logging.getLogger(__name__)