summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pyisda/credit_index.pyx14
1 files changed, 14 insertions, 0 deletions
diff --git a/pyisda/credit_index.pyx b/pyisda/credit_index.pyx
index f194c88..27511f9 100644
--- a/pyisda/credit_index.pyx
+++ b/pyisda/credit_index.pyx
@@ -535,6 +535,20 @@ cdef class CreditIndex(CurveList):
r.append(TDate_to_pydate(maturity))
return r
+ @maturities.setter
+ def maturities(self, list val):
+ cdef:
+ size_t i
+ pair[TContingentLeg_ptr, TFeeLeg_ptr] r
+
+ for i in range(self._maturities.size()):
+ self._maturities[i] = pydate_to_TDate(val[i])
+ free(self.contingent_legs[i])
+ JpmcdsFeeLegFree(self.fee_legs[i])
+ r = get_legs(self._maturities[i], self.start_date)
+ self.contingent_legs[i] = r.first
+ self.fee_legs[i] = r.second
+
def tweak_portfolio(self, double epsilon, maturity, bint inplace=True):
cdef:
TDate maturity_c = pydate_to_TDate(maturity)