aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--python/markit/rates.py2
-rw-r--r--python/yieldcurve.py7
2 files changed, 6 insertions, 3 deletions
diff --git a/python/markit/rates.py b/python/markit/rates.py
index 6fff3860..261e3db5 100644
--- a/python/markit/rates.py
+++ b/python/markit/rates.py
@@ -34,7 +34,7 @@ def downloadMarkitIRData(download_date=datetime.date.today(),
MarkitData = {'deposits': list(deposits),
'swaps': list(swaps),
'effectiveasof': pd.Timestamp(effectiveasof).date()}
- ql_yc = YC(currency=currency, MarkitData=MarkitData)
+ ql_yc = YC(currency=currency, MarkitData=MarkitData, evaluation_date=MarkitData['effectiveasof'])
jp_yc = ql_to_jp(ql_yc)
sql_str = "INSERT INTO {}_curves VALUES(%s, %s) ON CONFLICT DO NOTHING".format(currency)
with conn.cursor() as c:
diff --git a/python/yieldcurve.py b/python/yieldcurve.py
index 17e21a3e..94f7ceb1 100644
--- a/python/yieldcurve.py
+++ b/python/yieldcurve.py
@@ -147,10 +147,13 @@ def roll_yc(yc, forward_date):
dfs = np.array([yc.discount_factor(d, forward_date) for d in dates])
return YieldCurve.from_discount_factors(forward_date, dates, dfs, 'ACT/365F')
-def YC(helpers = None, currency="USD", MarkitData=None):
+def YC(helpers = None, currency="USD", MarkitData=None, evaluation_date=None):
if helpers is None:
- helpers = rate_helpers(currency, MarkitData)
+ helpers = rate_helpers(currency, MarkitData, evaluation_date)
calendar = WeekendsOnly()
+ settings = Settings()
+ if evaluation_date:
+ settings.evaluation_date = Date.from_datetime(evaluation_date)
return PiecewiseYieldCurve(BootstrapTrait.Discount, Interpolator.LogLinear,
0, calendar, helpers, Actual365Fixed())