aboutsummaryrefslogtreecommitdiffstats
path: root/python/analytics/tranche_basket.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/analytics/tranche_basket.py')
-rw-r--r--python/analytics/tranche_basket.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/python/analytics/tranche_basket.py b/python/analytics/tranche_basket.py
index 53303cc6..9f3cc4fc 100644
--- a/python/analytics/tranche_basket.py
+++ b/python/analytics/tranche_basket.py
@@ -593,7 +593,7 @@ class DualCorrTranche:
warnings.warn(str(e))
if "ref" in kwargs and self.index_type != "BS":
quotes = kwargs["ref"]
- if isinstance(d, dict):
+ if isinstance(quotes, dict):
ref = quotes[(self.index_type, self.series, self.tenor)]
elif isinstance(quotes, float):
ref = quotes
@@ -636,7 +636,7 @@ class DualCorrTranche:
else:
d = self.value_date
i = 0
- while i < 5:
+ while i < 10:
try:
self._skew = Skew.from_desc(
self.index_type, self.series, self.tenor, value_date=d
@@ -644,10 +644,14 @@ class DualCorrTranche:
except MissingDataError as e:
logger.warning(str(e))
d -= bus_day
- logger.info(f"trying {d}")
+ logger.info(f"trying {d.date()}")
i += 1
else:
break
+ else:
+ logger.error(
+ f"Could not find skew data for {self.index_type}{self.series}"
+ )
moneyness_eq = self.K / self.expected_loss()
self.rho = self._skew(moneyness_eq)
if self.detach == 100: