diff options
Diffstat (limited to 'python/analytics/index.py')
| -rw-r--r-- | python/analytics/index.py | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/python/analytics/index.py b/python/analytics/index.py index fad1ba30..ebd0d82b 100644 --- a/python/analytics/index.py +++ b/python/analytics/index.py @@ -374,13 +374,14 @@ class Index(object): def shock(self, params, *, spread_shock, **kwargs): r = [] + actual_params = [p for p in params if hasattr(self, p)] orig_spread = self.spread for ss in spread_shock: self.spread = orig_spread * (1 + ss) - r.append([getattr(self, p) for p in params]) + r.append([getattr(self, p) for p in actual_params]) self.spread = orig_spread ind = pd.Index(spread_shock, name='spread_shock', fastpath=True) - return pd.DataFrame(r, index=ind, columns=params) + return pd.DataFrame(r, index=ind, columns=actual_params) @classmethod def from_name(cls, index=None, series=None, tenor=None, value_date=datetime.date.today(), |
