aboutsummaryrefslogtreecommitdiffstats
path: root/python/analytics/option.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/analytics/option.py')
-rw-r--r--python/analytics/option.py7
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,