aboutsummaryrefslogtreecommitdiffstats
path: root/python/analytics/index.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/analytics/index.py')
-rw-r--r--python/analytics/index.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/python/analytics/index.py b/python/analytics/index.py
index f8504916..1ff01b8b 100644
--- a/python/analytics/index.py
+++ b/python/analytics/index.py
@@ -313,13 +313,12 @@ class Index():
class ForwardIndex(Index):
def __init__(self, index, forward_date):
self.index = index
- self.forward_date = forward_date
- self.step_in_date = forward_date + datetime.timedelta(days=1)
- value_date = (pd.Timestamp(forward_date) + 3* BDay()).date()
- a = index._fee_leg.pv(index.trade_date, self.step_in_date,
+ step_in_date = forward_date + datetime.timedelta(days=1)
+ self.exercise_date_settle = (pd.Timestamp(forward_date) + 3* BDay()).date()
+ a = index._fee_leg.pv(index.trade_date, step_in_date,
index.trade_date, index._yc, index._sc, False)
- Delta = index._fee_leg.accrued(self.step_in_date)
- df = index._yc.discount_factor(value_date)
+ Delta = index._fee_leg.accrued(step_in_date)
+ df = index._yc.discount_factor(self.exercise_date_settle)
q = index._sc.survival_probability(forward_date)
self._forward_annuity = a - Delta * df * q
self._forward_pv = self._forward_annuity * (index.spread - index.fixed_rate) * 1e-4