aboutsummaryrefslogtreecommitdiffstats
path: root/python/analytics/index.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/analytics/index.py')
-rw-r--r--python/analytics/index.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/python/analytics/index.py b/python/analytics/index.py
index 8e3e9684..3abe5376 100644
--- a/python/analytics/index.py
+++ b/python/analytics/index.py
@@ -3,6 +3,7 @@ import array
import datetime
import pandas as pd
+from .basket_index import BasketIndex
from .credit_default_swap import CreditDefaultSwap
from . import serenitas_engine, dawn_engine
from .exceptions import MissingDataError
@@ -275,6 +276,16 @@ class CreditIndex(CreditDefaultSwap):
def cumloss(self):
return self._cumloss
+ def jtd_single_names(self, spreads=False):
+ """single names jump to defaut"""
+ bkt = BasketIndex(self.index_type, self.series, [self.tenor])
+ bkt.value_date = self.value_date
+ bkt.tweak([self.ref])
+ jtd = bkt.jtd_single_names() * self.notional
+ if spreads:
+ jtd["spread"] = bkt.spreads() * 10000
+ return jtd.unstack().swaplevel()
+
def __repr__(self):
if not self.spread:
raise ValueError("Market spread is missing!")