diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/analytics/option.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/python/analytics/option.py b/python/analytics/option.py index 7e4e40ec..dad2af16 100644 --- a/python/analytics/option.py +++ b/python/analytics/option.py @@ -565,6 +565,8 @@ class ModelBasedVolSurface(VolSurface): self._opts = {'option_model': Swaption} elif type(self) is SABRVolSurface: self._opts = {'beta': 3.19 if index_type == "HY" else 1.84} + else: + raise TypeError("class needs to be SwaptionVolSurface, BlackSwaptionVolSurface or SABRVolSurface") def list(self, source=None, option_type=None): """returns list of vol surfaces""" @@ -580,9 +582,8 @@ class ModelBasedVolSurface(VolSurface): quotedate, source, option_type = surface_id quotes = self._quotes[(self._quotes.quotedate == quotedate) & (self._quotes.quote_source == source)] - quotes.dropna(subset= - ['pay_mid' if option_type == "payer" else 'rec_mid'], - inplace=True) + quotes = quotes.dropna(subset= + ['pay_mid' if option_type == "payer" else 'rec_mid']) self._index.ref = quotes.ref.iat[0] self._surfaces[surface_id] = _calibrate(self._index, quotes, self._option_model, |
