aboutsummaryrefslogtreecommitdiffstats
path: root/python/yieldcurve.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/yieldcurve.py')
-rw-r--r--python/yieldcurve.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/python/yieldcurve.py b/python/yieldcurve.py
index 007115e0..230a7acd 100644
--- a/python/yieldcurve.py
+++ b/python/yieldcurve.py
@@ -18,7 +18,7 @@ from quantlib.time.date import pydate_from_qldate
import numpy as np
from quantlib.quotes import SimpleQuote
-from db import dbconn, dbengine
+from db import serenitas_engine
from pyisda.curve import YieldCurve
from pyisda.date import BadDay
import warnings
@@ -30,7 +30,7 @@ def load_curves(currency="USD", date=None):
if date:
sql_str += " WHERE effective_date=%s"
- with closing(dbconn('serenitasdb')) as conn:
+ with closing(serenitas_engine.raw_connection()) as conn:
with conn.cursor() as c:
if date:
c.execute(sql_str, (date,))
@@ -226,8 +226,8 @@ def build_curves(currency="USD"):
isda_ibor = IborIndex("IsdaIbor", Period(6, Months), 2, EURCurrency(),
calendar, ModifiedFollowing, False, Actual360())
fix_freq = Annual
- engine = dbengine('serenitasdb')
- rates = pd.read_sql_table('{}_rates'.format(currency.lower()), engine,
+ rates = pd.read_sql_table('{}_rates'.format(currency.lower()),
+ serenitas_engine,
index_col='effective_date')
quotes = [SimpleQuote() for c in rates.columns]
gen = zip(quotes, rates.columns)
@@ -237,7 +237,7 @@ def build_curves(currency="USD"):
fix_freq, ModifiedFollowing,
Thirty360(), isda_ibor) for q, t in gen]
sql_str = f"INSERT INTO {currency}_curves VALUES(%s, %s) ON CONFLICT DO NOTHING"
- conn = dbconn('serenitasdb')
+ conn = serenitas_engine.raw_connection()
for effective_date, curve_data in rates.iterrows():
print(effective_date)
settings.evaluation_date = Date.from_datetime(effective_date)
@@ -253,6 +253,7 @@ def build_curves(currency="USD"):
with conn.cursor() as c:
c.execute(sql_str, (effective_date, lz4.block.compress(jp_yc.__getstate__())))
conn.commit()
+ conn.close()
if __name__ == "__main__":