summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pyisda/credit_index.pyx50
1 files changed, 25 insertions, 25 deletions
diff --git a/pyisda/credit_index.pyx b/pyisda/credit_index.pyx
index d527749..eb0c32e 100644
--- a/pyisda/credit_index.pyx
+++ b/pyisda/credit_index.pyx
@@ -49,7 +49,7 @@ cdef TContingentLeg* copyContingentLeg(TContingentLeg* leg) nogil:
cdef class CurveList:
@cython.initializedcheck(False)
- def __init__(self, list curves not None, double[:] weights=None, trade_date=None):
+ def __init__(self, list curves not None, double[:] weights=None, value_date=None):
cdef:
SpreadCurve sc
size_t i
@@ -62,8 +62,8 @@ cdef class CurveList:
raise TypeError("curves need to be a list of SpreadCurve")
self.T = vector[double](sc._thisptr.get().fNumItems)
- if trade_date is not None:
- self.base_date = pydate_to_TDate(trade_date)
+ if value_date is not None:
+ self.base_date = pydate_to_TDate(value_date)
else:
self.base_date = sc._thisptr.get().fBaseDate
@@ -144,11 +144,11 @@ cdef class CurveList:
return out
@property
- def trade_date(self):
+ def value_date(self):
return TDate_to_pydate(self.base_date)
- @trade_date.setter
- def trade_date(self, d):
+ @value_date.setter
+ def value_date(self, d):
self.base_date = pydate_to_TDate(d)
@property
@@ -205,8 +205,8 @@ cdef class CurveList:
@cython.auto_pickle(False)
cdef class CreditIndex(CurveList):
def __init__(self, start_date, maturities, list curves, double[:] weights=None,
- trade_date=None):
- CurveList.__init__(self, curves, weights, trade_date)
+ value_date=None):
+ CurveList.__init__(self, curves, weights, value_date)
self.start_date = pydate_to_TDate(start_date)
for d in maturities:
self._maturities.push_back(pydate_to_TDate(d))
@@ -295,10 +295,10 @@ cdef class CreditIndex(CurveList):
return h
#@cython.initializedcheck(False)
- def pv_vec(self, step_in_date, value_date, YieldCurve yc, double recovery_rate):
+ def pv_vec(self, step_in_date, cash_settle_date, YieldCurve yc, double recovery_rate):
cdef:
TDate step_in_date_c = pydate_to_TDate(step_in_date)
- TDate value_date_c = pydate_to_TDate(value_date)
+ TDate cash_settle_date_c = pydate_to_TDate(cash_settle_date)
np.npy_intp[2] n
n[0] = self._curves.size()
n[1] = self._maturities.size()
@@ -323,7 +323,7 @@ cdef class CreditIndex(CurveList):
for j in range(self._maturities.size()):
JpmcdsContingentLegPV(self.contingent_legs[j],
sc.fBaseDate,
- value_date_c,
+ cash_settle_date_c,
step_in_date_c,
yc._thisptr.get(),
sc,
@@ -332,7 +332,7 @@ cdef class CreditIndex(CurveList):
JpmcdsFeeLegPV(self.fee_legs[j],
sc.fBaseDate,
step_in_date_c,
- value_date_c,
+ cash_settle_date_c,
yc._thisptr.get(),
sc,
True,
@@ -351,12 +351,12 @@ cdef class CreditIndex(CurveList):
FeeLegAI(self.fee_legs[0], self.base_date, &accrued)
return accrued
- def pv(self, step_in_date, value_date, maturity, YieldCurve yc not None,
+ def pv(self, step_in_date, cash_settle_date, maturity, YieldCurve yc not None,
double recovery_rate, double fixed_rate, double epsilon=0.):
cdef:
TDate step_in_date_c = pydate_to_TDate(step_in_date)
- TDate value_date_c = pydate_to_TDate(value_date)
+ TDate cash_settle_date_c = pydate_to_TDate(cash_settle_date)
TDate maturity_c = pydate_to_TDate(maturity)
unsigned long mask = 0
vector[double] h
@@ -374,7 +374,7 @@ cdef class CreditIndex(CurveList):
raise ValueError("maturity is not correct")
h = vector[double](self.T.size())
- r = pv(self._curves, self.base_date, step_in_date_c, value_date_c,
+ r = pv(self._curves, self.base_date, step_in_date_c, cash_settle_date_c,
yc._thisptr.get(), legs, recovery_rate, fixed_rate,
self._weights, epsilon, h, self.T, mask)
if i == -1:
@@ -382,11 +382,11 @@ cdef class CreditIndex(CurveList):
JpmcdsFeeLegFree(legs.second)
return r
- def theta(self, step_in_date, value_date, maturity, YieldCurve yc not None,
+ def theta(self, step_in_date, cash_settle_date, maturity, YieldCurve yc not None,
double recovery_rate, double fixed_rate, double old_pv=nan("")):
cdef:
TDate step_in_date_c = pydate_to_TDate(step_in_date)
- TDate value_date_c = pydate_to_TDate(value_date)
+ TDate cash_settle_date_c = pydate_to_TDate(cash_settle_date)
TDate maturity_c = pydate_to_TDate(maturity)
TDate temp
vector[double] h
@@ -407,7 +407,7 @@ cdef class CreditIndex(CurveList):
legs.first = self.contingent_legs[i]
legs.second = self.fee_legs[i]
old_pv = pv(self._curves, self.base_date, step_in_date_c,
- value_date_c, yc._thisptr.get(), legs,
+ cash_settle_date_c, yc._thisptr.get(), legs,
recovery_rate, fixed_rate, self._weights,
0., h, self.T, 0)
if i == -1:
@@ -422,7 +422,7 @@ cdef class CreditIndex(CurveList):
legs.first = self.contingent_legs[i]
legs.second = self.fee_legs[i]
- cdef r = old_pv - pv(self._curves, self.base_date, step_in_date_c, value_date_c,
+ cdef r = old_pv - pv(self._curves, self.base_date, step_in_date_c, cash_settle_date_c,
yc._thisptr.get(), legs, recovery_rate, fixed_rate,
self._weights, 0., h, self.T, 0) + fixed_rate
if i == -1:
@@ -430,11 +430,11 @@ cdef class CreditIndex(CurveList):
JpmcdsFeeLegFree(legs.second)
return r
- def duration(self, step_in_date, value_date, maturity, YieldCurve yc not None):
+ def duration(self, step_in_date, cash_settle_date, maturity, YieldCurve yc not None):
cdef:
TDate step_in_date_c = pydate_to_TDate(step_in_date)
- TDate value_date_c = pydate_to_TDate(value_date)
+ TDate cash_settle_date_c = pydate_to_TDate(cash_settle_date)
TDate maturity_c = pydate_to_TDate(maturity)
TFeeLeg* fl
TStubMethod stub_type
@@ -467,7 +467,7 @@ cdef class CreditIndex(CurveList):
JpmcdsFeeLegPV(fl,
self.base_date,
step_in_date_c,
- value_date_c,
+ cash_settle_date_c,
yc._thisptr.get(),
sc.get(),
True,
@@ -580,7 +580,7 @@ cdef pair[TContingentLeg_ptr,TFeeLeg_ptr] get_legs(TDate maturity,
cdef double pv(vector[shared_ptr[TCurve]]& curves,
TDate base_date,
TDate step_in_date,
- TDate value_date,
+ TDate cash_settle_date,
TCurve* yc,
pair[TContingentLeg_ptr,TFeeLeg_ptr]& legs,
double recovery_rate,
@@ -606,7 +606,7 @@ cdef double pv(vector[shared_ptr[TCurve]]& curves,
tweaked_curve = c.get()
JpmcdsContingentLegPV(legs.first,
base_date,
- value_date,
+ cash_settle_date,
step_in_date,
yc,
tweaked_curve,
@@ -616,7 +616,7 @@ cdef double pv(vector[shared_ptr[TCurve]]& curves,
JpmcdsFeeLegPV(legs.second,
base_date,
step_in_date,
- value_date,
+ cash_settle_date,
yc,
tweaked_curve,
True,