diff options
Diffstat (limited to 'python/analytics')
| -rw-r--r-- | python/analytics/index.py | 5 | ||||
| -rw-r--r-- | python/analytics/utils.py | 11 |
2 files changed, 2 insertions, 14 deletions
diff --git a/python/analytics/index.py b/python/analytics/index.py index f27bef6d..85842d15 100644 --- a/python/analytics/index.py +++ b/python/analytics/index.py @@ -148,7 +148,7 @@ class Index(object): raise ValueError("Direction needs to be either 'Buyer' or 'Seller'") def _update(self): - self._sc = SpreadCurve(self.value_date, self._yc, self.start_date, + self._sc = SpreadCurve(self._yc.base_date, self._yc, self.start_date, self._step_in_date, self._cash_settle_date, [self.end_date], np.array([self._spread]), np.zeros(1), np.array([self.recovery])) @@ -313,9 +313,6 @@ class Index(object): d = d.date() self.start_date = previous_twentieth(d) self._yc = get_curve(d, self.currency) - # use the rolled forward curve if we price something in the future - # if self._yc.base_date < d: - # self._yc = self._yc.expected_forward_curve(d) self._value_date = d self._step_in_date = d + datetime.timedelta(days=1) self._accrued = self._fee_leg.accrued(self._step_in_date) diff --git a/python/analytics/utils.py b/python/analytics/utils.py index 0341b7cc..f56d376d 100644 --- a/python/analytics/utils.py +++ b/python/analytics/utils.py @@ -3,7 +3,7 @@ import pandas as pd from scipy.special import h_roots from dateutil.relativedelta import relativedelta, FR import datetime -from pyisda.date import pydate_to_TDate +from pyisda.date import pydate_to_TDate, previous_twentieth from pandas.api.types import CategoricalDtype from quantlib.time.date import nth_weekday, Wednesday, Date @@ -14,15 +14,6 @@ def GHquad(n): Z, w = h_roots(n) return Z*np.sqrt(2), w/np.sqrt(np.pi) -def previous_twentieth(d): - r = d + relativedelta(day=20) - if r > d: - r -= relativedelta(months=1) - mod = r.month % 3 - if mod != 0: - r -= relativedelta(months=mod) - return r - def next_twentieth(d): r = d + relativedelta(day=20) if(r < d): |
