diff options
Diffstat (limited to 'python/analytics/basket_index.py')
| -rw-r--r-- | python/analytics/basket_index.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/python/analytics/basket_index.py b/python/analytics/basket_index.py index 7ea2c053..2d84e564 100644 --- a/python/analytics/basket_index.py +++ b/python/analytics/basket_index.py @@ -74,15 +74,14 @@ class BasketIndex(CreditIndex): ) self._update_factor(value_date) self.issue_date = self.index_desc.issue_date[0] - self.index_desc = self.index_desc.loc[tenors] - self.index_desc = self.index_desc.sort_values("maturity") + self.index_desc = self.index_desc.loc[tenors].sort_values("maturity") self.tenors = {t: m.date() for t, m in self.index_desc.maturity.items()} maturities = self.index_desc.maturity.dt.to_pydatetime() self.index_desc = self.index_desc.reset_index().set_index("maturity") self.index_desc.tenor = self.index_desc.tenor.astype(tenor_t) max_tenor = int(tenors[-1][:-2]) self._curve_tenors = tuple( - [t for t in (0.5, 1, 2, 3, 4, 5, 7, 10) if t <= max_tenor] + t for t in (0.5, 1, 2, 3, 4, 5, 7, 10) if t <= max_tenor ) curves = get_singlenames_curves( index_type, series, value_date, self._curve_tenors @@ -177,6 +176,9 @@ class BasketIndex(CreditIndex): # so pick arbitrarily the 1 year point return np.array([c.recovery_rates[0] for _, c in self.curves]) + def spreads(self): + return super().spreads(self.yc) + def pv(self, maturity=None, epsilon=0.0, coupon=None): if maturity is None: r = [] |
